Truncate Event

Fires when the OS needs to truncate (set the size of) a file.

Syntax

ANSI (Cross Platform)
virtual int FireTruncate(FUSETruncateEventParams *e);
typedef struct {
const char *Path;
int FileContext;
int64 Size;
int Result; int reserved; } FUSETruncateEventParams; Unicode (Windows) virtual INT FireTruncate(FUSETruncateEventParams *e);
typedef struct {
LPCWSTR Path;
INT FileContext;
LONG64 Size;
INT Result; INT reserved; } FUSETruncateEventParams;
#define EID_FUSE_TRUNCATE 22

virtual INT CBFSFUSE_CALL FireTruncate(LPWSTR &lpszPath, INT &iFileContext, LONG64 &lSize, INT &iResult);

Remarks

This event fires when the OS wants to set the size of the file, identified by either Path or FileContext.

Note: on non-Windows systems, FileContext may be 0 even for a file that is opened at the moment when the event fires.

The Size parameter contains the new file size. If the new size is larger than the old size, the added space is expected to be filled with null bytes ('\0').

The ResultCode parameter will always be 0 when the event is fired. If the event cannot be handled in a "successful" manner for some reason (e.g., a resource isn't available, security checks failed, etc.), set it to a negative error code value (e.g. -ENOENT to indicate that the file does not exist) to report an appropriate error. Please refer to the Error Reporting and Handling topic for more information.

Copyright (c) 2022 Callback Technologies, Inc. - All rights reserved.
CBFS FUSE 2020 C++ Edition - Version 20.0 [Build 8348]