AE failed to load library 'smaps'. System error: Unknown Error.
search cancel

AE failed to load library 'smaps'. System error: Unknown Error.

book

Article ID: 271823

calendar_today

Updated On:

Products

SITEMINDER

Issue/Introduction

After upgrading to 12.8sp7, the policy server reports new issue:

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.

There are also similar errors like  "failed to load library 'smwalker'" or  "failed to load library 'azredirect'", related to custom Active Expression loading.

Environment

Release : 12.8.07

OS: Linux 7.9

Cause

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.

Resolution

Recently a security proactive notice went out, "SiteMinder Policy Server Patch To Remediate Progress Driver Vulnerability".

Link to the proactive notice:

https://support.broadcom.com/web/ecx/support-content-notification/-/external/content/CriticalAlerts/SiteMinder-Policy-Server-Patch-To-Remediate-Progress-Driver-Vulnerability/22336

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.