C API - Password Change Corrupts the ID file -when user is already logged into Notes with his ID file

Hello Guys,Need some help on password change API.

I have a custom application which chnages user password.

This application uses the following API

SECKFMChangePassword(id_file_path, old_password, newpassword).

The application works for me, very good.

But when i change the password on a ID file, which is currently used by the user and he is already logged in, in this scenario, the ID file is corrupted.

Following is the test case excuted:

a. User is logged in Notes Client with its ID file.

b. User locks the Notes Client.

c. Password is changed on that ID file using my custom application.

d. User unlocks the client.

BEHAVIOR ON NOTES CLIENT:

User can unlock the Notes Client with his old password.

CURRENT STATUS:

Now when I close the Notes client and re-login with the ID file (with the new or old password) is gives an error “Your ID file has been corrupted, or is not an ID file.”

RESULT:

Password changed on an ID file, which is locked by the user corrupts the ID file.

I have seen a similar behavior, when the user is just loogged in and not locked the Notes Client.

Is there any work aorund to resolve this problem.

Or atleast, can i make sure before calling the SECKFMChangePassword() API, whether this user is logged in in his Notes Client with his ID file. SO that i can give an

error.

any help with be of great help…

Sunil Rashinkar

Subject: C API - Password Change Corrupts the ID file -when user is already logged into Notes with his ID file

I tried this 0n 6.03, and the latest build of 6.04 and could not reproduce the corruption. The paswword change does not take effect, I can still log out and log back in with the old password. That might not be considered a bug, just the way that the function works, though it should probably return an error.

You might be able to use SECKFMGetUserName to see if the user is logged in, but I haven’t tried that.

Subject: RE: C API - Password Change Corrupts the ID file -when user is already logged into Notes with his ID file

HI Jim,I am running my Custom Application on a machine on which the Administrator has logged in. (this is one of thr pre-requisite of my custom application)

So, if I execute SeckFMGetUserName() on the machine, i will get the Administrator’s User Name, which is of no use to me.

I have the user’s CN name with me…

Now, how do i get to know, if this user is logged on to the server.

What i am thiking of doing is…first checking if the user has logged on to the server or not? if not, then change the password, otherwise throw an error.

waiting for your repply

Sunil Rashinkar

Subject: RE: C API - Password Change Corrupts the ID file -when user is already logged into Notes with his ID file

are you doing this via lscript? or is it c-api?

are you trying to change the id-file of another user located in a network-path?

if id-file is located in a network-path: try to check if user’s names.nsf has been locked? or desktopx.dsk/ndk? this would mean client is running.

afaik id-files are not (file)-locked…

Subject: Sorry, don’t know