[ Bottom of Page | Previous Page | Next Page | Contents | Index | Library Home | Legal | Search ]

Technical Reference: Base Operating System and Extensions, Volume 1

odm_lock Subroutine


Puts an exclusive lock on the requested path name.


Object Data Manager Library (libodm.a)


#include <odmi.h>

int odm_lock ( LockPath TimeOut)
char *LockPath;
int TimeOut;


The odm_lock subroutine is used by an application to prevent other applications or methods from accessing an object class or group of object classes. A lock on a directory path name does not prevent another application from acquiring a lock on a subdirectory or object class within that directory.

Coordination of locking is the responsibility of the application accessing the object classes.

The odm_lock subroutine returns a lock identifier that is used to call the odm_unlock subroutine.


LockPath Specifies a string containing the path name in the file system in which to locate object classes or the path name to an object class to lock.
TimeOut Specifies the amount of time, in seconds, to wait if another application or method holds a lock on the requested object class or classes. The possible values for the TimeOut parameter are:
The odm_lock subroutine is unsuccessful if the lock cannot be granted immediately.
TimeOut = Integer
The odm_lock subroutine waits the specified amount of seconds to retry an unsuccessful lock request.
TimeOut = ODM_WAIT
The odm_lock subroutine waits until the locked path name is freed from its current lock and then locks it.

Return Values

Upon successful completion, a lock identifier is returned. If the odm_lock subroutine is unsuccessful, a value of -1 is returned and the odmerrno variable is set to an error code.

Error Codes

Failure of the odm_lock subroutine sets the odmerrno variable to one of the following error codes:

See Appendix B. ODM Error Codes in AIX 5L Version 5.2 Technical Reference: Base Operating System and Extensions Volume 1 for explanations of the ODM error codes.

Related Information

The odm_unlock (odm_unlock Subroutine) subroutine.

List of ODM Commands and Subroutines.

Object Data Manager (ODM) Overview for Programmers in AIX 5L Version 5.2 General Programming Concepts: Writing and Debugging Programs.

[ Top of Page | Previous Page | Next Page | Contents | Index | Library Home | Legal | Search ]