summaryrefslogtreecommitdiff
path: root/vfs
diff options
context:
space:
mode:
authorTomas Bzatek <tbzatek@users.sourceforge.net>2008-11-14 20:40:43 +0100
committerTomas Bzatek <tbzatek@users.sourceforge.net>2008-11-14 20:40:43 +0100
commit75fe735e013a99e1d2a584eaeb0fa0a2ca5c1de7 (patch)
tree2c96bd1101a86342c1760d1879a1bf00d6c40b3e /vfs
parent938c467bae088e3cf47623b3eedbaf6685b11084 (diff)
downloadtuxcmd-75fe735e013a99e1d2a584eaeb0fa0a2ca5c1de7.tar.xz
VFS: Password reset support
Diffstat (limited to 'vfs')
-rw-r--r--vfs/UVFSCore.pas10
-rw-r--r--vfs/uVFSprototypes.pas6
2 files changed, 16 insertions, 0 deletions
diff --git a/vfs/UVFSCore.pas b/vfs/UVFSCore.pas
index 8bba788..a514512 100644
--- a/vfs/UVFSCore.pas
+++ b/vfs/UVFSCore.pas
@@ -66,6 +66,7 @@ type
FVFSGetServices: TVFSGetServices;
FVFSGetPasswordRequired: TVFSGetPasswordRequired;
FVFSSetCallbacks: TVFSSetCallbacks;
+ FVFSResetPassword: TVFSResetPassword;
public
ModuleHandle: Pointer;
FullPath: string; // module path
@@ -143,6 +144,7 @@ type
function TwoSameFiles(const Path1, Path2: string): boolean; override;
function GetPasswordRequired: boolean;
+ procedure ResetPassword;
published
property Path: string read GetPath write SetPath;
property BlockSize: Cardinal read GetBlockSize write SetBlockSize;
@@ -221,6 +223,7 @@ begin
@FVFSGetServices := dlsym(ModuleHandle, 'VFSGetServices');
@FVFSGetPasswordRequired := dlsym(ModuleHandle, 'VFSGetPasswordRequired');
@FVFSSetCallbacks := dlsym(ModuleHandle, 'VFSSetCallbacks');
+ @FVFSResetPassword := dlsym(ModuleHandle, 'VFSResetPassword');
// Initialize the extensions list
SetLength(Extensions, 0);
SetLength(Services, 0);
@@ -921,6 +924,13 @@ begin
else Result := False;
end;
+procedure TVFSEngine.ResetPassword;
+begin
+ if @FSourcePlugin.FVFSResetPassword <> nil then
+ FSourcePlugin.FVFSResetPassword(FGlobs);
+end;
+
+
(********************************************************************************************************************************)
(********************************************************************************************************************************)
function GetBinaryPath: string;
diff --git a/vfs/uVFSprototypes.pas b/vfs/uVFSprototypes.pas
index 43190a4..4ccde33 100644
--- a/vfs/uVFSprototypes.pas
+++ b/vfs/uVFSprototypes.pas
@@ -287,6 +287,12 @@ type
TVFSGetPasswordRequired = function (g:TVFSGlobs): LongBool; cdecl;
+
+ // Reset stored session password in the plugin
+ TVFSResetPassword = procedure (g: TVFSGlobs); cdecl;
+
+
+
/// pridat neco jako set_loglevel ??
//// pridat typ pluginu - jestli archive nebo protocol - prip. jeste pridat ktery protokoly je to schopno handlovat