SDK Known Issues

sm1252sp1
Pure Java AgentAPI Performance Issues (181112)
Symptom:
Using OS Socket timeouts resulted in poor performance for the Pure Java AgentAPI.
Solution:
The user can configure the amount of time to wait for another connection verification by setting the NONBLOCKING_CONNECTION_SLEEP_TIME directive in the Java property configuration file. When this configuration is not set, the default value is 3000 milliseconds.
The total number of wait periods between connection verifications is five. After this number is exhausted, no further connection status is returned to the client.
Star issue 21348306-1
Installation of ETPKI Libraries
The SDK installer does not install the ETPKI libraries, which can lead to errors when you run the SDK sample applications. You must install the ETPKI libraries separately when installing the SDK on a system without other CA SiteMinder® components.
The ETPKI r4.x (CAPKI) installer runs in silent mode without any user interaction. The ETPKI installer has the following usage:
setup.exe {install|remove} caller=
callerID
 [
options
...]
 
callerID
Specifies the parent application that is installing ETPKI r4.x (CAPKI). This identifier is user-defined; it specifies the parent product. When multiple subcomponents of a product rely on CAPKI, each component uses a different identifier.
Limits: 255 characters
Options
instdir=user_supplied_directory
Specifies the initial installation directory. The installer considers this option only when these libraries are the first CA shared component on this system.
verbose/veryverbose
Enables diagnostic output with more or less detail.
UNIX only
env={none|user|all}
Specifies whether you can set environment variables for the specified user as follows:
    • none — No environment variables set (default)
    • user — The current user only (SHOME/.profile)
    • all — all users (/etc/profile)
Using the env=user or env=all option, the ETPKI installer creates the following environment variables:
    • CASHCOMP — Points to the parent directory of the CAPKI installation
    • CALIB — Points to the $CASHCOMP/lib directory
    • CABIN — Points to the $CACHCOMP/bin
Example
[[email protected] etpki-install-64]# ./setup install caller=01010101 instdir=/home/CA/etpki verbose env=user
For more information, see the readme.txt file included with the SDK installation in the etpki-install subfolder.
Patch Required for Custom Agents Running on HP-UX
Before you install a custom agent created with the Agent API on an HP-UX machine, install the following HP patch on the agent machine:
PHSS_24303 Id & linker tools cumulative patch
This patch is available at the HP web site.
Configuration Issue with the smpolicyapi Samplr on UNIX platforms
Building the smpolicyapi sample program on Unix/Linux systems requires access to several Policy Server shared libraries and the NETE_PS_ROOT environment variable set to point to them. This may be accomplished by installing the Policy Server on the system with the SDK and using ca_ps_env.ksh to set the environment.
Hierarhical Realms Not Supported in the Java PM API
Hierarchical realms are not supported in the Java Policy Management API.
Constants Missing from Java Policy Management API (13348)
The Java class com.netegrity.sdk.policyapi.SmPasswordPolicy is missing the following constants:
Constant Name
Constant Value
Sm_PasswordPolicy_StopPriorityChaining
0x00000080
Sm_PasswordPolicy_ExpireDisablePassword
0x00000100
Sm_PasswordPolicy_FailuresDisablePassword
0x00000200
Sm_PasswordPolicy_ForceCase
0x00000400
Sm_PasswordPolicy_CaseSelect
0x00000800
Sm_PasswordPolicy_CaseBits
0x00000c00
Sm_PasswordPolicy_StripLeadingWhiteSpace
0x00001000
Sm_PasswordPolicy_StripTrailingWhiteSpace
0x00002000
Sm_PasswordPolicy_StripFlankingWhiteSpace
0x00003000
Sm_PasswordPolicy_StripEmbeddedWhiteSpace
0x00004000
Sm_PasswordPolicy_WhiteSpaceBits
0x00007000
Sm_PasswordPolicy_PreProcessBits
0x00007c00
Workaround:
If you need to set these values, use the literal values directly instead of referencing the constant name.Attributes Terminated with a Space in Java (13712)
Attributes Terminated with a Space in Java (13712)
When decodeSSOToken() returns, each attribute (byte array) returned in the AttributeList parameter is terminated with a space character.
Workaround:
Before you use the session specification and session id attributes in a login() call to validate the session, trim the terminating space from each byte array.
Extra ServerDef Object Created with Java AgentAPI.getConfig() (14841)
If the Java AgentAPI.getConfig() method is used to read the configuration file, it creates an InitDef object having one more ServerDef object than is actually present. The extra object does not point to any Policy Server and is just an empty object.
Java SmPolicyApiImpl.search() cannot search for a Domain Object (15133)
In package com.netegrity.sdk.policyapi, the method PolicyApiImpl.search() returns an empty list when the object type to search for is type Domain, even if valid search parameters are given.
Sort Order in a Java SmDMSCurson Object Cannot Be Empty (15317)
In the Java DMS API, any call (such as search(), getGroups(), and getMembers() ) that uses an SmDmsCursor object with an empty sort order will fail.
General Password Validation Errors in C (16787)
Password validation error IDs are reported in the nMsgId parameter of Sm_PolicyApi_GetPasswordMsg(). Specific error IDs are enumerated in Sm_PolicyApi_PasswordMsgId_t. Any error ID that is not numerated in Sm_PolicyApi_PasswordMsgId_t should be considered a general password validation error. General password validation error IDs are reported in nMsgId when Sm_PolicyApi_GetPasswordMsg() returns -38.
Java Method getConfig() Fails on Windows (39780)
In the Java class AgentAPI, the method getConfig() fails because it cannot locate the specified agent. This error only occurs on Windows platforms.