Re: sudo-1.8.22b1 - packaging on AIX (from git)

Michael Felt <[email protected]> Sun, 10 Dec 2017 12:40:11 +0100
Newsgroups gmane.comp.tools.sudo.devel
Message-ID <[email protected]>
On 09/12/2017 16:18, Todd C. Miller wrote:
> Those .nfs directories usually indicate that a file or directory
> was removed while it was still open.  It looks like lib/util is
> being removed somehow.
>
>   - todd

Who/what does that?

michael@x071:[/data/prj/aixtools/sudo/sudo-rbac-1.8.22b1]ls -a lib
.  ..  .nfs75C

And, it looks more like a rename of util, than an attempt at remove. 
rmdir would fail outright, and if something like rm -rf lib/util was 
being done - (a) it would not be there with a new name, and (b) things 
would be missing.

What looks missing to you?

michael@x071:[/data/prj/aixtools/sudo/sudo-rbac-1.8.22b1]find lib
lib
lib/.nfs75C
lib/.nfs75C/Makefile
lib/.nfs75C/util.exp
lib/.nfs75C/.libs
lib/.nfs75C/.libs/event.o
lib/.nfs75C/.libs/fatal.o
lib/.nfs75C/.libs/key_val.o
lib/.nfs75C/.libs/gethostname.o
lib/.nfs75C/.libs/gettime.o
lib/.nfs75C/.libs/gidlist.o
lib/.nfs75C/.libs/lbuf.o
lib/.nfs75C/.libs/locking.o
lib/.nfs75C/.libs/parseln.o
lib/.nfs75C/.libs/progname.o
lib/.nfs75C/.libs/secure_path.o
lib/.nfs75C/.libs/setgroups.o
lib/.nfs75C/.libs/strsplit.o
lib/.nfs75C/.libs/strtobool.o
lib/.nfs75C/.libs/strtoid.o
lib/.nfs75C/.libs/strtomode.o
lib/.nfs75C/.libs/sudo_conf.o
lib/.nfs75C/.libs/sudo_debug.o
lib/.nfs75C/.libs/sudo_dso.o
lib/.nfs75C/.libs/term.o
lib/.nfs75C/.libs/ttysize.o
lib/.nfs75C/.libs/aix.o
lib/.nfs75C/.libs/event_poll.o
lib/.nfs75C/.libs/getgrouplist.o
lib/.nfs75C/.libs/reallocarray.o
lib/.nfs75C/.libs/utimens.o
lib/.nfs75C/.libs/fnmatch.o
lib/.nfs75C/.libs/memrchr.o
lib/.nfs75C/.libs/pipe2.o
lib/.nfs75C/.libs/pw_dup.o
lib/.nfs75C/.libs/strlcpy.o
lib/.nfs75C/.libs/strlcat.o
lib/.nfs75C/.libs/getopt_long.o
lib/.nfs75C/.libs/closefrom.o
lib/.nfs75C/.libs/mktemp.o
lib/.nfs75C/.libs/snprintf.o
lib/.nfs75C/.libs/strtonum.o
lib/.nfs75C/.libs/sha2.o
lib/.nfs75C/.libs/vsyslog.o
lib/.nfs75C/.libs/sig2str.o
lib/.nfs75C/.libs/signame.o
lib/.nfs75C/.libs/libsudo_util.so.0.0.0
lib/.nfs75C/.libs/libsudo_util.so.0
lib/.nfs75C/.libs/libsudo_util.so
lib/.nfs75C/.libs/libsudo_util.lai
lib/.nfs75C/.libs/libsudo_util.la
lib/.nfs75C/.libs/atofoo_test.o
lib/.nfs75C/.libs/atofoo_test
lib/.nfs75C/.libs/conf_test.o
lib/.nfs75C/.libs/conf_test
lib/.nfs75C/.libs/hltq_test.o
lib/.nfs75C/.libs/hltq_test
lib/.nfs75C/.libs/parseln_test.o
lib/.nfs75C/.libs/parseln_test
lib/.nfs75C/.libs/progname_test.o
lib/.nfs75C/.libs/strsplit_test.o
lib/.nfs75C/.libs/strsplit_test
lib/.nfs75C/.libs/parse_gids_test.o
lib/.nfs75C/.libs/parse_gids_test
lib/.nfs75C/.libs/fnm_test.o
lib/.nfs75C/.libs/fnm_test
lib/.nfs75C/.libs/mktemp_test.o
lib/.nfs75C/.libs/mktemp_test
lib/.nfs75C/.libs/vsyslog_test.o
lib/.nfs75C/.libs/vsyslog_test
lib/.nfs75C/.libs/lt-parse_gids_test
lib/.nfs75C/.libs/lt-strsplit_test
lib/.nfs75C/.libs/lt-fnm_test
lib/.nfs75C/.libs/lt-mktemp_test
lib/.nfs75C/.libs/lt-atofoo_test
lib/.nfs75C/.libs/lt-hltq_test
lib/.nfs75C/.libs/lt-vsyslog_test
lib/.nfs75C/setgroups.lo
lib/.nfs75C/event.lo
lib/.nfs75C/fatal.lo
lib/.nfs75C/key_val.lo
lib/.nfs75C/gettime.lo
lib/.nfs75C/gethostname.lo
lib/.nfs75C/gidlist.lo
lib/.nfs75C/lbuf.lo
lib/.nfs75C/locking.lo
lib/.nfs75C/parseln.lo
lib/.nfs75C/progname.lo
lib/.nfs75C/mksigname
lib/.nfs75C/secure_path.lo
lib/.nfs75C/strsplit.lo
lib/.nfs75C/strtobool.lo
lib/.nfs75C/strtoid.lo
lib/.nfs75C/strtomode.lo
lib/.nfs75C/sudo_conf.lo
lib/.nfs75C/sudo_debug.lo
lib/.nfs75C/sudo_dso.lo
lib/.nfs75C/term.lo
lib/.nfs75C/ttysize.lo
lib/.nfs75C/aix.lo
lib/.nfs75C/event_poll.lo
lib/.nfs75C/getgrouplist.lo
lib/.nfs75C/reallocarray.lo
lib/.nfs75C/utimens.lo
lib/.nfs75C/fnmatch.lo
lib/.nfs75C/memrchr.lo
lib/.nfs75C/pipe2.lo
lib/.nfs75C/pw_dup.lo
lib/.nfs75C/strlcpy.lo
lib/.nfs75C/strlcat.lo
lib/.nfs75C/getopt_long.lo
lib/.nfs75C/closefrom.lo
lib/.nfs75C/mktemp.lo
lib/.nfs75C/snprintf.lo
lib/.nfs75C/strtonum.lo
lib/.nfs75C/sha2.lo
lib/.nfs75C/vsyslog.lo
lib/.nfs75C/sig2str.lo
lib/.nfs75C/signame.c
lib/.nfs75C/atofoo_test
lib/.nfs75C/signame.lo
lib/.nfs75C/libsudo_util.la
lib/.nfs75C/conf_test
lib/.nfs75C/atofoo_test.lo
lib/.nfs75C/conf_test.lo
lib/.nfs75C/hltq_test
lib/.nfs75C/hltq_test.lo
lib/.nfs75C/parseln_test
lib/.nfs75C/parseln_test.lo
lib/.nfs75C/progname_test
lib/.nfs75C/progname_test.lo
lib/.nfs75C/strsplit_test
lib/.nfs75C/strsplit_test.lo
lib/.nfs75C/parse_gids_test
lib/.nfs75C/parse_gids_test.lo
lib/.nfs75C/fnm_test
lib/.nfs75C/fnm_test.lo
lib/.nfs75C/mktemp_test
lib/.nfs75C/mktemp_test.lo
lib/.nfs75C/vsyslog_test
lib/.nfs75C/vsyslog_test.lo
lib/.nfs75C/regress
lib/.nfs75C/regress/sudo_conf
lib/.nfs75C/regress/sudo_conf/test1.out
lib/.nfs75C/regress/sudo_conf/test1.err

p.s. - sometimes, when I run rm -rf ./adirectory it fails because a 
library is still open (but not linked, aka link-count = zero). I do not 
see it, but only after I run slibclean (shared library clean) is the 
'open file' removed from memory, and now I can rmdir or rm -rf 
successfully. I mention this because - imho - it is not possible to 
'remove' a directory (on NFS or local) when shared libraries are open -- 
loaded in memory.

So, thanks - I have an idea of where to look.


p.p.s. after

michael@x071:[/data/prj/aixtools/sudo/sudo-rbac-1.8.22b1/lib]ls -l
total 0
lrwxrwxrwx 1 root felt 7 Dec 10 11:37 util -> .nfs75C
michael@x071:[/data/prj/aixtools/sudo/sudo-rbac-1.8.22b1/lib]ls -la
total 12
drwxrwsr-x  3 michael felt 4096 Dec 10 11:37 .
drwxrws--- 12 michael felt 4096 Dec  9 09:44 ..
drwxrwsr-x  4 michael felt 4096 Dec  9 13:03 .nfs75C
lrwxrwxrwx  1 root    felt    7 Dec 10 11:37 util -> .nfs75C

make runs again.

michael@x071:[/data/prj/aixtools/sudo/sudo-rbac-1.8.22b1]make
         for d in lib/util  plugins/group_file plugins/sudoers 
plugins/system_group src include doc examples; do  (cd $d && exec make 
all) && continue;  exit $?;  done
Target "all" is up to date.
Target "all" is up to date.
Target "all" is up to date.
Target "all" is up to date.
Target "all" is up to date.
Target "all" is up to date.
Target "all" is up to date.
Target "all" is up to date.

And - make check - fails again:

michael@x071:[/data/prj/aixtools/sudo/sudo-rbac-1.8.22b1]make check
         for d in lib/util  plugins/group_file plugins/sudoers 
plugins/system_group src include doc examples; do  (cd $d && exec make 
check) && continue;  exit $?;  done
parse_gids_test: 6 tests run, 0 errors, 100% success rate
strsplit_test: 29 tests run, 0 errors, 100% success rate
fnmatch: 6 tests run, 0 errors, 100% success rate
Could not load program 
/data/prj/aixtools/sudo/sudo-rbac-1.8.22b1/lib/.nfs38C/.libs/lt-atofoo_test:
         Dependent module libsudo_util.so could not be loaded.
Could not load module libsudo_util.so.
System error: No such file or directory
Could not load program 
/data/prj/aixtools/sudo/sudo-rbac-1.8.22b1/lib/.nfs38C/.libs/lt-hltq_test:
         Dependent module libsudo_util.so could not be loaded.
Could not load module libsudo_util.so.
System error: No such file or directory
Could not load program 
/data/prj/aixtools/sudo/sudo-rbac-1.8.22b1/lib/.nfs38C/.libs/lt-vsyslog_test:
         Dependent module libsudo_util.so could not be loaded.
Could not load module libsudo_util.so.
System error: No such file or directory
make: The error code from the last command is 1.


Stop.
make: The error code from the last command is 2.


Stop.
michael@x071:[/data/prj/aixtools/sudo/sudo-rbac-1.8.22b1]ls -la lib
total 12
drwxrwsr-x  3 michael felt 4096 Dec 10 11:39 .
drwxrws--- 12 michael felt 4096 Dec  9 09:44 ..
drwxrwsr-x  4 michael felt 4096 Dec 10 11:39 .nfs38C
lrwxrwxrwx  1 root    felt    7 Dec 10 11:37 util -> .nfs75C

____________________________________________________________
sudo-workers mailing list <[email protected]>
For list information, options, or to unsubscribe, visit:
https://www.sudo.ws/mailman/listinfo/sudo-workers