IBM Content Manager for Multiplatforms Version 8 Release 2: Library server user exits

(C) Copyright International Business Machines Corporation 2003. All rights reserved.
U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.

ICMLogonExit (logon user exit)

Format

ICMLogonExit(pszLanguage,pszUserID,pszPassword,pszNewPassword,pszApplication,psUserDomain,
pszLDAPInfo,pszDatabaseName,pszSchemaName,plRC,plReason,plExtRC,plExtReason
)

Purpose

This exit is called at logon time and it provides an interface to validate a userID, password, do user counting, and LDAP authentication. The external name for this user exit is ICMXLSLG.DLL. Place the DLL in the directory: ICMROOT/database name/DLL to use this user exit.

A code sample is provided in the ICM root directory in: /samples/icmxlslg.c. For EIP Version 8.2, the code sample is in the EIP root directory in: /samples/icmxlslg.c.

Parameters

Input parameters

char *pszLanguage: Language code
char *pszUserID: UserID
char *pszPassword: Decrypted password
char *pszNewPassword: New decrypted password (if new password was provided)
char *pszApplication: The name of the application
short *psUserDomain: User domain
char *pszLDAPInfo: The path in the LDAP server for this userID
char *pszDatabaseName: The database name of the library server
char *pszSchemaName: The database schema name of the library server

Output Parameters

long *plRC : Return code
long *plReason - reason code
long *plExtRC - Use this to return any extra application-specific error information
long *plExtReason - Use this to return any extra application-specific error information

Set reason code (plReason ) according to the following rules:
*plReason = 0 ICMLogon will do password validation
*plReason = 1 ICMLogon will bypass password validation.

Return values: plRC

The following list contains the return codes (*plRC) expected when logging on to Content Manager:

0 - RC_OK
Validation passed. ICMLogon continues normal execution.
7123 - RC_INVALID_PARAMETER
The name of any invalid pointer or value is logged. Logon is denied.
7015 - RC_UNEXPECTED_SQL_ERROR
SQL error. Logon is denied.
7172 - RC_INVALID_PASSWORD
The password does not match the password defined for this user. Logon is denied.
7173 - RC_MAX_LOGON_PASSWORD_RETRY
The maximum number of attempts with wrong password has been reached. Logon is denied.
7098 - RC_INVALID_NEWPASSWORD
Set only by the exit should the new password not match the costumer's rules. Logon is denied.
7171 - RC_PASSWORD_EXPIRED
The password must be changed. Call ICMLogon again with a new password.Logon is denied.
7160 - RC_LOGON_MAX_USER_ERROR
The maximum number of concurrent users has been reached. Logon is denied.
7094 - RC_ALREADY_LOGGED_ON
The UserID is already logged on to the Content Manager system.Logon is denied.
7006 - RC_DLL_LOAD_ERROR
A DLL could not be loaded. Logon is denied.
7011 - RC_GET_PROC_ADDRESS_ERROR
A procedure could not be obtained. Logon is denied.
4751 - RC_LOGON_MAX_USER_WARNING
The maximum number of concurrent users has been reached. Logon is allowed, but a warning message should be displayed.

myExit (document routing user exit)

Format

long myExit(plExitNumber,pszComponentID)

Purpose

You can use this user exit to create a user exit for Content Manager Version 8.2 document routing. This user exit is called after creating a work package (using the start process), when a work package is moved off a work node, to move to a work node, or when the overload limit is reached. At the time the exit is called, the work package exists in the work package table, and can be retrieved using the componentID as the identifier of the row in table ICMUT00204001.

Do not modify data using this exit.

Parameters

Input parameters

long * plExitNumber: 1=Enter, 2=Leave, 3=Overload
char * pszComponentID: Work package identifier. Changes to parameters and return codes will be ignored by the Content Manager system.