Thanks, Sander. That allowed me to figure out the problem.
The new libnspr4 added a new exported function, PR_GetEnvSecure():
$ nm -D /usr/lib/x86_64-linux-gnu/libnspr4.so | grep PR_GetEnvSecure 000000000001a3a0 T PR_GetEnvSecure
The new libnss3 depends on that new function:
$ nm -D /usr/lib/x86_64-linux-gnu/libnssutil3.so.1d | grep GetEnvSecure U PR_GetEnvSecure
If you upgrade libnspr4 to the versions specified in this USN, you won't experience this bug any longer:
http://www.ubuntu.com/usn/usn-3028-1/
I'm not sure how you kept the old libnspr4 but it looks like the new libnss3 correctly depends on the new libnspr4:
$ apt-cache show libnss3=2:3.23-0ubuntu0.12.04.1 | grep ^Depends: Depends: libc6 (>= 2.4), libnspr4 (>= 4.12), libsqlite3-0 (>= 3.5.9), zlib1g (>= 1:1.1.4)
Thanks, Sander. That allowed me to figure out the problem.
The new libnspr4 added a new exported function, PR_GetEnvSecure():
$ nm -D /usr/lib/ x86_64- linux-gnu/ libnspr4. so | grep PR_GetEnvSecure
000000000001a3a0 T PR_GetEnvSecure
The new libnss3 depends on that new function:
$ nm -D /usr/lib/ x86_64- linux-gnu/ libnssutil3. so.1d | grep GetEnvSecure
U PR_GetEnvSecure
If you upgrade libnspr4 to the versions specified in this USN, you won't experience this bug any longer:
http:// www.ubuntu. com/usn/ usn-3028- 1/
I'm not sure how you kept the old libnspr4 but it looks like the new libnss3 correctly depends on the new libnspr4:
$ apt-cache show libnss3= 2:3.23- 0ubuntu0. 12.04.1 | grep ^Depends:
Depends: libc6 (>= 2.4), libnspr4 (>= 4.12), libsqlite3-0 (>= 3.5.9), zlib1g (>= 1:1.1.4)