mirco m vilic commented on Feb 18, 2013

Re: IBM Lotus Notes ID Vault Database Scanner: An overview

Hi guys,

I've found that the Vault Scanner is currently not running on Linux operating systems. To quick fix the problem I added the following code in "VaultScanner4" agent (GetVaultDocuments function):

Do Until configDoc Is Nothing

Dim Temp1 As String

Dim Temp2 As String

Temp1 = configdoc.fldidvaultpath(0)

'// 18.02.2013 - Little quick change to make this also work on Linux systems.

Dim tmp1 As String

Dim tmp2 As String

Dim tmp3 As String

If Instr(Temp1, "\") Then

tmp1 = Temp1

Else

tmp1 = Strleftback(Temp1,"/")

tmp2 = Strrightback(Temp1,"/")

tmp3 = Strrightback(tmp1,"/")

tmp1 = tmp3 + "/" + tmp2

End If

Temp1 = tmp1

'// End Change

Temp2 = configdoc.fldidvaultserver(0)

Very simple and not sophisticated, but it works.

Shankar Venkatachalam1 commented on Dec 16, 2012

Re: IBM Lotus Notes ID Vault Database Scanner: An overview

@Dave -

I am happy to help you, however can you let me know, whether the tool has created temporary vault documents, on the scanner database. For the run time of 4.5 hours, how many documents are getting reported ?

Dave Bailey commented on Dec 10, 2012

Re: IBM Lotus Notes ID Vault Database Scanner: An overview

I have loaded this onto my server where the ID Vault is stored. I starting to run with my client - but it was very slow [so I stopped it]. I have setup a VMWare workstation with my ID running the Basic 8.5.3 client. This agent has been running for 4.5 hours, and has not gotten through the consumers whose last name starts with A.... How can I get this to run faster?

My ID Vault has 8,467 documents. My public directory has 9,973 person documents.

Shankar Venkatachalam commented on Oct 8, 2012

Re: IBM Lotus Notes ID Vault Database Scanner: An overview

Shankar Venkatachalam commented on Oct 8, 2012

Re: IBM Lotus Notes ID Vault Database Scanner: An overview

@Patrick Tippner :

Thanks for your comments. We will try to bring that enhancement shortly .

Patrick Tippner commented on Oct 5, 2012

Re: IBM Lotus Notes ID Vault Database Scanner: An overview

nice work! i was also looking into uploading missing ids to the vault using lotus script and c-api code this week. maybe you can add a button in order to upload a missing id to the vault to your application? here's the declaration of the c-api function and a snippet of the code i used to accomplish that job:

(...)

Const SECKFM_close_WriteIdFile = 1%

Const SECKFM_open_All = 0%

' STATUS FAR PASCAL SECidfPut( char *pUserName, char *pPassword, char *pIDFilePath, KFHANDLE *phKFC,

' char *pServerName, DWORD dwReservedFlags, WORD wReservedType, void *pReserved);

Declare Function SECidfPut Lib "nnotes" Alias "SECidfPut" (ByVal UserName As String, ByVal Password As String, _

ByVal FileName As String, phKFC As Long, ByVal ServerName As String, ByVal dwReserved As Long, _

ByVal wReserved As integer, ByVal pReserved As long) As Integer

'STATUS LNPUBLIC SECKFMOpen( KFHANDLE *phKFC, char *pIDFileName, char *pPassword, DWORD Flags, DWORD Reserved,

' void *pReserved);

Declare Function SECKFMOpen Lib "nnotes.dll" Alias "SECKFMOpen" (KFHANDLE As Long, ByVal pIDFileName As String, _

ByVal pPassword As String, ByVal retFlags As Long, ByVal dwReserved As Long, pReserved As Long) As Integer

'STATUS LNPUBLIC SECKFMClose( KFHANDLE *phKFC, DWORD Flags, DWORD Reserved, void *pReserved);

Declare Function SECKFMClose Lib "nnotes" Alias "SECKFMClose" (phKFC As Long, ByVal flags As Long, _

ByVal dwReserved As Long, ByVal pReserved As any) As Integer

(...)

IDfilename = ws.OpenFileDialog( False, "ID-Management - Please choose the ID-file to upload to the IDVault","ID-Files|*.id", "c:\Program Files\IBM\Lotus\Notes\Data\","c:\Program Files\IBM\Lotus\Notes\Data\user.id")

Password = ws.Prompt(PROMPT_PASSWORD, "ID-Management - Password prompt", "Please enter the Notes ID password.","")

Username = ws.Prompt(PROMPT_OKCANCELEDIT, "ID-Management - Username prompt", "Please enter the username.","cn=abc def/ou=ghi/o=jkl")

ret = SECKFMOpen(hKFC, cstr(IDfilename(0)), Password, SECKFM_open_All, 0, 0)

If ret <> 0 Then Error 1212, "Something went wrong"

ret = SECidfPut(Username,Password,CStr(IDFilename(0)),0,CStr(Servername),0,0,0)

If ret <> 0 Then Error 1212, "Something went wrong"

' Close the database to free its resources

ret = NSFDbClose(hdb)

ret = SECKFMClose(hKFC,SECKFM_close_WriteIdFile,0,0)

If ret <> 0 Then Error 1212, "Something went wrong"

Patrick Tippner commented on Oct 5, 2012

Re: IBM Lotus Notes ID Vault Database Scanner: An overview

nice work! i was also looking into uploading missing ids to the vault using lotus script and c-api code this week. maybe you can add a button in order to upload a missing id to the vault to your application? here's the declaration of the c-api function and a snippet of the code i used to accomplish that job:

(...)

Const SECKFM_close_WriteIdFile = 1%

Const SECKFM_open_All = 0%

' STATUS FAR PASCAL SECidfPut( char *pUserName, char *pPassword, char *pIDFilePath, KFHANDLE *phKFC,

' char *pServerName, DWORD dwReservedFlags, WORD wReservedType, void *pReserved);

Declare Function SECidfPut Lib "nnotes" Alias "SECidfPut" (ByVal UserName As String, ByVal Password As String, _

ByVal FileName As String, phKFC As Long, ByVal ServerName As String, ByVal dwReserved As Long, _

ByVal wReserved As integer, ByVal pReserved As long) As Integer

'STATUS LNPUBLIC SECKFMOpen( KFHANDLE *phKFC, char *pIDFileName, char *pPassword, DWORD Flags, DWORD Reserved,

' void *pReserved);

Declare Function SECKFMOpen Lib "nnotes.dll" Alias "SECKFMOpen" (KFHANDLE As Long, ByVal pIDFileName As String, _

ByVal pPassword As String, ByVal retFlags As Long, ByVal dwReserved As Long, pReserved As Long) As Integer

'STATUS LNPUBLIC SECKFMClose( KFHANDLE *phKFC, DWORD Flags, DWORD Reserved, void *pReserved);

Declare Function SECKFMClose Lib "nnotes" Alias "SECKFMClose" (phKFC As Long, ByVal flags As Long, _

ByVal dwReserved As Long, ByVal pReserved As any) As Integer

(...)

IDfilename = ws.OpenFileDialog( False, "ID-Management - Please choose the ID-file to upload to the IDVault","ID-Files|*.id", "c:\Program Files\IBM\Lotus\Notes\Data\","c:\Program Files\IBM\Lotus\Notes\Data\user.id")

Password = ws.Prompt(PROMPT_PASSWORD, "ID-Management - Password prompt", "Please enter the Notes ID password.","roland01")

Username = ws.Prompt(PROMPT_OKCANCELEDIT, "ID-Management - Username prompt", "Please enter the username.","cn=abc def/ou=ghi/o=jkl")

ret = SECKFMOpen(hKFC, cstr(IDfilename(0)), Password, SECKFM_open_All, 0, 0)

If ret <> 0 Then Error 1212, "Something went wrong"

ret = SECidfPut(Username,Password,CStr(IDFilename(0)),0,CStr(Servername),0,0,0)

If ret <> 0 Then Error 1212, "Something went wrong"

' Close the database to free its resources

ret = NSFDbClose(hdb)

ret = SECKFMClose(hKFC,SECKFM_close_WriteIdFile,0,0)

If ret <> 0 Then Error 1212, "Something went wrong"