@@ -361,6 +361,8 @@ FbException = class(Exception)
361361 ILogonInfo_networkProtocolPtr = function(this: ILogonInfo): PAnsiChar; cdecl;
362362 ILogonInfo_remoteAddressPtr = function(this: ILogonInfo): PAnsiChar; cdecl;
363363 ILogonInfo_authBlockPtr = function(this: ILogonInfo; length: CardinalPtr): BytePtr; cdecl;
364+ ILogonInfo_attachmentPtr = function(this: ILogonInfo; status: IStatus): IAttachment; cdecl;
365+ ILogonInfo_transactionPtr = function(this: ILogonInfo; status: IStatus): ITransaction; cdecl;
364366 IManagement_startPtr = procedure(this: IManagement; status: IStatus; logonInfo: ILogonInfo); cdecl;
365367 IManagement_executePtr = function(this: IManagement; status: IStatus; user: IUser; callback: IListUsers): Integer; cdecl;
366368 IManagement_commitPtr = procedure(this: IManagement; status: IStatus); cdecl;
@@ -1838,16 +1840,20 @@ LogonInfoVTable = class(VersionedVTable)
18381840 networkProtocol: ILogonInfo_networkProtocolPtr;
18391841 remoteAddress: ILogonInfo_remoteAddressPtr;
18401842 authBlock: ILogonInfo_authBlockPtr;
1843+ attachment: ILogonInfo_attachmentPtr;
1844+ transaction: ILogonInfo_transactionPtr;
18411845 end ;
18421846
18431847 ILogonInfo = class (IVersioned)
1844- const VERSION = 2 ;
1848+ const VERSION = 3 ;
18451849
18461850 function name (): PAnsiChar;
18471851 function role (): PAnsiChar;
18481852 function networkProtocol (): PAnsiChar;
18491853 function remoteAddress (): PAnsiChar;
18501854 function authBlock (length: CardinalPtr): BytePtr;
1855+ function attachment (status: IStatus): IAttachment;
1856+ function transaction (status: IStatus): ITransaction;
18511857 end ;
18521858
18531859 ILogonInfoImpl = class (ILogonInfo)
@@ -1858,6 +1864,8 @@ ILogonInfoImpl = class(ILogonInfo)
18581864 function networkProtocol (): PAnsiChar; virtual ; abstract ;
18591865 function remoteAddress (): PAnsiChar; virtual ; abstract ;
18601866 function authBlock (length: CardinalPtr): BytePtr; virtual ; abstract ;
1867+ function attachment (status: IStatus): IAttachment; virtual ; abstract ;
1868+ function transaction (status: IStatus): ITransaction; virtual ; abstract ;
18611869 end ;
18621870
18631871 ManagementVTable = class (PluginBaseVTable)
@@ -5993,6 +6001,18 @@ function ILogonInfo.authBlock(length: CardinalPtr): BytePtr;
59936001 Result := LogonInfoVTable(vTable).authBlock(Self, length);
59946002end ;
59956003
6004+ function ILogonInfo.attachment (status: IStatus): IAttachment;
6005+ begin
6006+ Result := LogonInfoVTable(vTable).attachment(Self, status);
6007+ FbException.checkException(status);
6008+ end ;
6009+
6010+ function ILogonInfo.transaction (status: IStatus): ITransaction;
6011+ begin
6012+ Result := LogonInfoVTable(vTable).transaction(Self, status);
6013+ FbException.checkException(status);
6014+ end ;
6015+
59966016procedure IManagement.start (status: IStatus; logonInfo: ILogonInfo);
59976017begin
59986018 ManagementVTable(vTable).start(Self, status, logonInfo);
@@ -9837,6 +9857,24 @@ function ILogonInfoImpl_authBlockDispatcher(this: ILogonInfo; length: CardinalPt
98379857 end
98389858end ;
98399859
9860+ function ILogonInfoImpl_attachmentDispatcher (this: ILogonInfo; status: IStatus): IAttachment; cdecl;
9861+ begin
9862+ try
9863+ Result := ILogonInfoImpl(this).attachment(status);
9864+ except
9865+ on e: Exception do FbException.catchException(status, e);
9866+ end
9867+ end ;
9868+
9869+ function ILogonInfoImpl_transactionDispatcher (this: ILogonInfo; status: IStatus): ITransaction; cdecl;
9870+ begin
9871+ try
9872+ Result := ILogonInfoImpl(this).transaction(status);
9873+ except
9874+ on e: Exception do FbException.catchException(status, e);
9875+ end
9876+ end ;
9877+
98409878var
98419879 ILogonInfoImpl_vTable: LogonInfoVTable;
98429880
@@ -12963,12 +13001,14 @@ initialization
1296313001 IListUsersImpl_vTable.list := @IListUsersImpl_listDispatcher;
1296413002
1296513003 ILogonInfoImpl_vTable := LogonInfoVTable.create;
12966- ILogonInfoImpl_vTable.version := 5 ;
13004+ ILogonInfoImpl_vTable.version := 7 ;
1296713005 ILogonInfoImpl_vTable.name := @ILogonInfoImpl_nameDispatcher;
1296813006 ILogonInfoImpl_vTable.role := @ILogonInfoImpl_roleDispatcher;
1296913007 ILogonInfoImpl_vTable.networkProtocol := @ILogonInfoImpl_networkProtocolDispatcher;
1297013008 ILogonInfoImpl_vTable.remoteAddress := @ILogonInfoImpl_remoteAddressDispatcher;
1297113009 ILogonInfoImpl_vTable.authBlock := @ILogonInfoImpl_authBlockDispatcher;
13010+ ILogonInfoImpl_vTable.attachment := @ILogonInfoImpl_attachmentDispatcher;
13011+ ILogonInfoImpl_vTable.transaction := @ILogonInfoImpl_transactionDispatcher;
1297213012
1297313013 IManagementImpl_vTable := ManagementVTable.create;
1297413014 IManagementImpl_vTable.version := 8 ;
0 commit comments