UPD: Wfx-plugin header

This commit is contained in:
Alexander Koblov 2023-12-04 23:08:06 +03:00
commit 766792120e

View file

@ -1,187 +1,118 @@
#include "common.h"
// contents of fsplugin.h version 2.0 (30.Jan.2009)
// contents of fsplugin.h version 2.1 (27.April.2010)
// ids for FsGetFile
#define FS_FILE_OK 0
#define FS_FILE_EXISTS 1
#define FS_FILE_NOTFOUND 2
#define FS_FILE_READERROR 3
#define FS_FILE_WRITEERROR 4
#define FS_FILE_USERABORT 5
#define FS_FILE_NOTSUPPORTED 6
#define FS_FILE_EXISTSRESUMEALLOWED 7
#define FS_EXEC_OK 0
#define FS_EXEC_ERROR 1
#define FS_EXEC_YOURSELF -1
#define FS_EXEC_SYMLINK -2
#define FS_COPYFLAGS_OVERWRITE 1
#define FS_COPYFLAGS_RESUME 2
#define FS_COPYFLAGS_MOVE 4
#define FS_COPYFLAGS_EXISTS_SAMECASE 8
#define FS_COPYFLAGS_EXISTS_DIFFERENTCASE 16
// flags for tRequestProc
#define RT_Other 0
#define RT_UserName 1
#define RT_Password 2
#define RT_Account 3
#define RT_UserNameFirewall 4
#define RT_PasswordFirewall 5
#define RT_TargetDir 6
#define RT_URL 7
#define RT_MsgOK 8
#define RT_MsgYesNo 9
#define RT_MsgOKCancel 10
// flags for tLogProc
#define MSGTYPE_CONNECT 1
#define MSGTYPE_DISCONNECT 2
#define MSGTYPE_DETAILS 3
#define MSGTYPE_TRANSFERCOMPLETE 4
#define MSGTYPE_CONNECTCOMPLETE 5
#define MSGTYPE_IMPORTANTERROR 6
#define MSGTYPE_OPERATIONCOMPLETE 7
// flags for FsStatusInfo
#define FS_STATUS_START 0
#define FS_STATUS_END 1
#define FS_STATUS_OP_LIST 1
#define FS_STATUS_OP_GET_SINGLE 2
#define FS_STATUS_OP_GET_MULTI 3
#define FS_STATUS_OP_PUT_SINGLE 4
#define FS_STATUS_OP_PUT_MULTI 5
#define FS_STATUS_OP_RENMOV_SINGLE 6
#define FS_STATUS_OP_RENMOV_MULTI 7
#define FS_STATUS_OP_DELETE 8
#define FS_STATUS_OP_ATTRIB 9
#define FS_STATUS_OP_MKDIR 10
#define FS_STATUS_OP_EXEC 11
#define FS_STATUS_OP_CALCSIZE 12
#define FS_STATUS_OP_SEARCH 13
#define FS_STATUS_OP_SEARCH_TEXT 14
#define FS_STATUS_OP_SYNC_SEARCH 15
#define FS_STATUS_OP_SYNC_GET 16
#define FS_STATUS_OP_SYNC_PUT 17
#define FS_STATUS_OP_SYNC_DELETE 18
#define FS_STATUS_OP_GET_MULTI_THREAD 19
#define FS_STATUS_OP_PUT_MULTI_THREAD 20
#define FS_ICONFLAG_SMALL 1
#define FS_ICONFLAG_BACKGROUND 2
#define FS_ICON_USEDEFAULT 0
#define FS_ICON_EXTRACTED 1
#define FS_ICON_EXTRACTED_DESTROY 2
#define FS_ICON_DELAYED 3
#define FS_BITMAP_NONE 0
#define FS_BITMAP_EXTRACTED 1
#define FS_BITMAP_EXTRACT_YOURSELF 2
#define FS_BITMAP_EXTRACT_YOURSELF_ANDDELETE 3
#define FS_BITMAP_CACHE 256
#define FS_CRYPT_SAVE_PASSWORD 1
#define FS_CRYPT_LOAD_PASSWORD 2
#define FS_CRYPT_LOAD_PASSWORD_NO_UI 3 // Load password only if master password has already been entered!
#define FS_CRYPT_COPY_PASSWORD 4 // Copy encrypted password to new connection name
#define FS_CRYPT_MOVE_PASSWORD 5 // Move password when renaming a connection
#define FS_CRYPT_DELETE_PASSWORD 6 // Delete password
#define FS_CRYPTOPT_MASTERPASS_SET 1 // The user already has a master password defined
#define BG_DOWNLOAD 1 // Plugin supports downloads in background
#define BG_UPLOAD 2 // Plugin supports uploads in background
#define BG_ASK_USER 4 // Plugin requires separate connection for background transfers -> ask user first
// flags for FsFindFirst/FsFindNext
#define FILE_ATTRIBUTE_DIRECTORY 16
#define FILE_ATTRIBUTE_REPARSE_POINT 0x00000400
#define FILE_ATTRIBUTE_UNIX_MODE 0x80000000
typedef struct {
DWORD SizeLow,SizeHigh;
FILETIME LastWriteTime;
int Attr;
} RemoteInfoStruct;
typedef struct {
int size;
DWORD PluginInterfaceVersionLow;
DWORD PluginInterfaceVersionHi;
char DefaultIniName[MAX_PATH];
int size;
DWORD PluginInterfaceVersionLow;
DWORD PluginInterfaceVersionHi;
char DefaultIniName[MAX_PATH];
} FsDefaultParamStruct;
// callback functions
@ -197,9 +128,9 @@ typedef BOOL (DCPCALL *tRequestProc)(int PluginNr,int RequestType,char* CustomTi
typedef BOOL (DCPCALL *tRequestProcW)(int PluginNr,int RequestType,WCHAR* CustomTitle,
WCHAR* CustomText,WCHAR* ReturnedText,int maxlen);
typedef int (DCPCALL *tCryptProc)(int PluginNr,int CryptoNr,int Mode,
char* ConnectionName,char* Password,int maxlen);
char* ConnectionName,char* Password,int maxlen);
typedef int (DCPCALL *tCryptProcW)(int PluginNr,int CryptoNr,int Mode,
WCHAR* ConnectionName,WCHAR* Password,int maxlen);
WCHAR* ConnectionName,WCHAR* Password,int maxlen);
// Function prototypes
int DCPCALL FsInit(int PluginNr,tProgressProc pProgressProc,
@ -306,20 +237,19 @@ typedef struct {
int size;
DWORD PluginInterfaceVersionLow;
DWORD PluginInterfaceVersionHi;
char DefaultIniName[MAX_PATH];
} ContentDefaultParamStruct;
typedef struct {
WORD wYear;
WORD wMonth;
WORD wDay;
WORD wYear;
WORD wMonth;
WORD wDay;
} tdateformat,*pdateformat;
typedef struct {
WORD wHour;
WORD wMinute;
WORD wSecond;
WORD wHour;
WORD wMinute;
WORD wSecond;
} ttimeformat,*ptimeformat;
int DCPCALL FsContentGetSupportedField(int FieldIndex,char* FieldName,char* Units,int maxlen);