Password sync does not work for users while changing password on Solaris 10

Consider this scenario:

1. Solaris 10 Sparc is working as NIS Master.

2. We have also, installed the latest SSOD and PAM on the Solaris box.

3. Windows 2008 R2 is configured with password sync.

4. User3 exists on Solaris 10 and Windows 2008 R2 systems.

Problem :

When we try to change the password for the user on UNIX machine it throws

-bash-3.00$ passwd

passwd: Changing password for user3

Enter existing login password:

Permission denied

On troubleshooting we found something interesting:

/var/adm/message shows

Jul 1 22:45:25 blr3b07-sun passwd[2437]: [ID 401707 auth.error] open_module: /usr/lib/security/pam_sso.so.1 failed: ld.so.1: passwd: fatal: libstdc++.so.6: open failed: No such file or directory

If we remove this line from /etc/pam.conf other password required /usr/lib/security/pam_sso.so.1; the error while changing password (permission denied) goes away; but in this way PAM module is not working at all.

Here is a workaround:

If we create links for the above two files libstdc++.so.6; libgcc_s.so.1 in /usr/lib from /usr/sfw/lib as

ln -s /usr/sfw/lib/libstdc++.so.6 /usr/lib/libstdc++.so.6

and

ln -s /usr/sfw/lib/libgcc_s.so.1 /usr/lib/libgcc_s.so.1