Supplemental LoginLibrary API Documentation - SiteMinder ERP Agent v5.6 SP4 for PeopleSoft.

Document ID : KB000025178
Last Modified Date : 14/02/2018
Show Technical Document Details


The attached document details the following list of API functions exposed by the Siteminder ERP Agent v5.6 SP4 for PeopleSoft "LoginLibrary" library:

  • SmSSOSetLogging
  • SmSSOInit
  • SmSSOVfy
  • SmSSOSetLicense


List of APIs exposed by PeopleSoft LoginLibrary

API Details

int SmSSOSetLogging (int iLevel, char *lpszLogFile)

This function enables logging of the PeopleSoft Login Library. This function should be invoked before any other API of the Login Library is invoked for complete logging. This API performs logging in a flat file and support multiple levels of logging.
iLevel[integer] Signifies the level of details to which logging is done. Supported Log Levels range from 0 to 4. 4 being the most granular.
lpszLogFile[char*] Full path of the log file. E.g., "C:\Program Files\Netegrity\PeoplesoftSSO\log\dll.log"
Return Value
[integer] Return value is 1


int SmSSOInit (char *lpszAgentName, char *lpszSharedSecred, char *lpszServerList, char *lpszFailoverMode, char *lpszAction, char *lpszResource)

This function checks if the connection with the Policy Server is established. In case, it is not, the function establishes the connection with the policy server using the passed parameters and checks if the resource passed is protected for the specified action.
lpszAgentName[char*] Name of the agent, which protects the resource at the policy server. This agent object at the policy server should be enabled to support 4x agents using the check box.
lpszSharedSecret[char*] Shared secret specified for the agent object. The shared secret can be specified either in clear text form or can be encrypted using the NPSEncrypt.exe tool.
lpszServerList[char*] IP of the policy server or policy servers in case multiple policy servers are being used. In case non standard policy server ports are being used, the same can also be specified here.

Policy server ports are specified each separated using a comma (,) in the order of Acct, Auth and Az.

Multiple policy servers can be specified each separated by a space (? ?). E.g., ",44441,44442,44443,44441,44442,44443"
lpszFailoverMode[char*] Mode in which the policy servers are being used. Possible values include "FAILOVER" or "ROUNDROBIN"
lpszAction[char*] HTTP Action which is used to protect the resource at the policy server such as "GET" or "POST"
lpszResource[char*] URI of the protected resource
Return Value
A negative value in case of error and non-negative is returned in case of success.


int SmSSOVfy (char *lpszUsername, char *lpszSmSessionId, char *lpszSmSessionSpec)

This function validates the SiteMinder session and ensures that the SiteMinder session belongs to the username passed as the parameter
lpszUsername[char*] UserName for which the Session validation is done
lpszSmSessionId[char*] SiteMinder session ID extracted from the request header "SM_SERVERSESSIONID"
lpszSmSessionSpec[char*] SiteMinder Session Spec extracted from the request header "SM_SERVERSESSIONSPEC"
Return Value
A negative value indicates error and a non-negative is returned in case of success


int SmSSOSetLicense (char *lpszLicense)

This function validates if the license string specified is valid. In case the function is not invoked from the PeopleCode, the PeopleSoft Agent takes the installation to be an evaluation setup
lpszLicense[char*] Encrypted license string. This should be a continuous string without any carriage returns or line breaks.
Return Value
A negative value in case of an error and a non-negative value is returned in case of success