After upgrading to 12.8sp7, the policy server reports new issue:
smps.log:[21193/
There are also similar errors like "failed to load library 'smwalker'" or "failed to load library 'azredirect'", related to custom Active Expression loading.
Release : 12.8.07
OS: Linux 7.9
Strace shows policy server was searching for libodbc.so, before error out.
12:58:46 open("<SiteMinder_home_directory>/bin/libodbc.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
12:58:46 open("<SiteMinder_home_directory>/lib/libodbc.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
12:58:46 open("<SiteMinder_home_directory>/bin/thirdparty/libodbc.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
12:58:46 open("<Java_home_directory>/jre/lib/amd64/server/libodbc.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
12:58:46 open("<Java_home_directory>/jre/libodbc.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
12:58:46 open("<Java_home_directory>/jre/lib/amd64/libodbc.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
12:58:46 open("tls/x86_64/libodbc.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
12:58:46 open("tls/libodbc.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
12:58:46 open("x86_64/libodbc.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
12:58:46 open("libodbc.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
12:58:46 open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 250</etc/ld.so.cache>
12:58:46 fstat(250</etc/ld.so.cache>, 0x7f9bcafe8f80) = 0
12:58:46 mmap(NULL, 48144, PROT_READ, MAP_PRIVATE, 250</etc/ld.so.cache>, 0) = 0x7f9b20981000
12:58:46 close(250</etc/ld.so.cache>) = 0
12:58:46 open("/lib64/tls/libodbc.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
12:58:46 open("/lib64/libodbc.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
12:58:46 open("/usr/lib64/tls/libodbc.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
12:58:46 open("/usr/lib64/libodbc.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
12:58:46 munmap(0x7f9b20981000, 48144) = 0
12:58:46 munmap(0x7f9b20bac000, 3262880) = 0
12:58:46 munmap(0x7f9b2098d000, 2223984) = 0
12:58:46 write(3<<SiteMinder_home_directory>/log/smps.log>, "[21193/140307102422784][Tue Aug 15 2023 12:58:46.285][SmActiveExpr.cpp:653][ERROR][sm-Server-02740] AE failed to load library 'smaps'. System error: Unknown Error.\n", 164) = 164
12:58:46 write(4<<SiteMinder_home_directory>/log/smtracedefault.log>, "[08/15/2023][12:58:46.285][140307102422784][][SmActiveExpr.cpp:653][][][][][][LogMessage:ERROR:[sm-Server-02740] AE failed to load library 'smaps'. System error: Unknown Error.]\n", 178) = 178
There are .so lib files missing on policy server which those custom module will need during loading.
. <SiteMinder_home_directory>/ca_ps_env.ksh
ldd <SiteMinder_home_directory>/lib/libsmaps.so
ldd <SiteMinder_home_directory>/lib/libsmwalker.so
There should not be any library dependency missing for ldd output.
Recently a security proactive notice went out, "SiteMinder Policy Server Patch To Remediate Progress Driver Vulnerability".
Link to the proactive notice:
Customer followed Support KB article, deleted some of the ODBC .so files, since the environment does not use ODBC store.
https://knowledge.broadcom.com/external/article?articleId=269948
However, libsmaps.so and libsmwalker.so depend on some of these ODBC .so files when loading, that is the direct cause of the error.
For 12.8.04 or later, if APS or smwalker is in use, make sure patch the ODBC databases lib file, not deleting them, even the environment does not use ODBC store.