I experienced this problem when updating a client from Ubuntu 12.04 to 14.04. Our file server is running SunOS 5.11 but the symptom is the same. For us, It's not a source code problem but the way modules/parse_sun.c is compiled.
Here's the gcc line for parse_sun from a default debuild of the Ubuntu 14.04 autofs package source:
If I remove the '-Wl,-Bsymbolic-functions' chunk from that gcc line and run it manually, then copy the resulting parse_sun.so to /usr/lib/x86_64-linux-gnu/autofs/, it works. Then /usr/sbin/automount starts following the -D flags again.
I was able to create a working package bumping the version in the changelog (no need to alter source) then running:
DEB_LDFLAGS_SET='-Wl,-z,relro' debuild
That reduces the default dpkg-buildflags from
-Wl,-Bsymbolic-functions -Wl,-z,relro
to
-Wl,-z,relro
to remove the problematic 'symbolic-functions' linker option that was causing the problem for me. You could try it under a Linux NFS server. I suspect it'll fix the problem in whatever library is causing the same issue for automounting Linux servers.
I experienced this problem when updating a client from Ubuntu 12.04 to 14.04. Our file server is running SunOS 5.11 but the symptom is the same. For us, It's not a source code problem but the way modules/parse_sun.c is compiled.
Here's the gcc line for parse_sun from a default debuild of the Ubuntu 14.04 autofs package source:
gcc -Wl,-Bsymbolic- functions -Wl,-z,relro -s -lpthread -s -lpthread -shared -g -O2 -fstack-protector --param= ssp-buffer- size=4 -Wformat -Werror= format- security -D_FORTIFY_SOURCE=2 -D_REENTRANT -D_FILE_ OFFSET_ BITS=64 -D_REENTRANT -D_FILE_ OFFSET_ BITS=64 -DSSS_LIB_ DIR=\"/ usr/lib/ x86_64- linux-gnu/ sssd/modules\ " -I../include -I../lib -fPIC -D_GNU_SOURCE -DAUTOFS_ LIB_DIR= \"/usr/ lib/x86_ 64-linux- gnu/autofs\ " -DAUTOFS_ MAP_DIR= \"/etc\ " -o parse_sun.so parse_sun.c ../lib/autofs.a -lnsl
If I remove the '-Wl,-Bsymbolic -functions' chunk from that gcc line and run it manually, then copy the resulting parse_sun.so to /usr/lib/ x86_64- linux-gnu/ autofs/ , it works. Then /usr/sbin/automount starts following the -D flags again.
I was able to create a working package bumping the version in the changelog (no need to alter source) then running:
DEB_LDFLAGS_ SET='-Wl, -z,relro' debuild
That reduces the default dpkg-buildflags from
-Wl,-Bsymbolic- functions -Wl,-z,relro
to
-Wl,-z,relro
to remove the problematic 'symbolic- functions' linker option that was causing the problem for me. You could try it under a Linux NFS server. I suspect it'll fix the problem in whatever library is causing the same issue for automounting Linux servers.