BUGS revision 51591
138494Sobrien# -*- text -*- 238494Sobrien 338494Sobrien LIST OF KNOWN BUGS IN AM-UTILS OR OPERATING SYSTEMS 438494Sobrien 5119679Smbr 638494Sobrien(1) mips-sgi-irix* 7119679Smbr 8119679Smbr[1A] known to have flakey NFS V.3 and TCP. Amd tends to hang or spin 9119679Smbrinfinitely after a few hours or days of use. Users must install recommended 10119679Smbrpatches from vendor. Patches help, but not all the time. Otherwise avoid 11119679Smbrusing NFS V.3 and TCP on these systems, by setting 12119679Smbr 13119679Smbr /defaults opts:=vers=2,proto=udp 14119679Smbr 15119679Smbr[1B] yp_all() leaks a file descriptor. Eventually amd runs out of file 16119679Smbrdescriptors and hangs. Am-utils circumvents this by using its own version 17119679Smbrof yp_all which uses udp and iterats over NIS maps. The latter isn't as 18119679Smbrreliable as yp_all() which uses TCP, but it is better than hanging. 19119679Smbr 20119679Smbr(I have some reports that older version of hpux-9, with older libc, also 21119679Smbrleak file descriptors.) 22119679Smbr 23119679Smbr 24119679Smbr(2) alpha-unknown-linux-gnu (RedHat Linux 4.2) 25119679Smbr 26119679Smbrhasmntopt(mnt, opt) can goes into an infinite loop if opt is any substring 27119679Smbrof mnt->mnt_opts. Redhat 5.0 does not have this libc bug. Here is an 28119679Smbrexample program: 29119679Smbr 30119679Smbr#include <stdio.h> 31119679Smbr#include <mntent.h> 32119679Smbrmain() 33119679Smbr{ 34119679Smbr struct mntent mnt; 35119679Smbr char *cp; 36119679Smbr mnt.mnt_opts = "intr,rw,port=1023,timeo=8,foo=br,retrans=110,indirect,map=/usr/local/AMD/etc/amd.proj,boo"; 37119679Smbr cp = hasmntopt(&mnt, "ro"); 38119679Smbr printf("cp = %s\n", cp); 39119679Smbr exit(0); 40119679Smbr} 41119679Smbr 42119679SmbrIt is possible that sufficiently newer version of libc for RH4.2 fix this 43119679Smbrproblem. 44119679Smbr 45119679Smbr 46119679Smbr(3) mips-dec-ultrix4.3 47119679Smbr 48119679SmbrRainer Orth <ro@TechFak.Uni-Bielefeld.DE> reports 49119679Smbr 50119679Smbr[3A] One needs the Kernel Config Files (UDTBIN430) subset installed to 51119679Smbrcompile am-utils, otherwise essential header files (net/if.h, net/route.h, 52119679Smbrrpcsvc/mount.h, rpcsvc/yp_prot.h, rpcsvc/ypclnt.h, sys/proc.h) are 53119679Smbrmissing. 54119679Smbr 55119679Smbr[3B] It's probably impossible to build am-utils with DEC C on Ultrix V4.3. 56119679SmbrThis compiler is pseudo-ANSI only. Maybe the new ANSI C compiler in V4.3A 57119679Smbrand beyond will do. I successfully used gcc 2.8.1. 58119679Smbr 59119679Smbr[3C] You need to build against a recent libhesiod (I used 3.0.2) and 60119679Smbrlibresolv/lib44bsd (I used BIND 4.9.5-P1). The resolver routines in 61119679Smbrlibc seem to cause random memory corruption. It is necessary to specify 62119679SmbrLIBS=-l44bsd. lib44bsd is a helper library of libresolv used to supply 63119679Smbrfunctions like strdup which are missing on the host system. This isn't 64119679Smbrcurrently autoconfiscated. 65119679Smbr 66119679Smbr[3D] You need to configure with CONFIG_SHELL=/bin/sh5 /bin/sh5 buildall; 67119679Smbr/bin/sh cannot handle the shell functions used in buildall and is both 68119679Smbrbuggy and slow. 69119679Smbr 70119679Smbr[3E] At least the gcc 2.7.0 fixincludes-mangled <sys/utsname.h> needs a 71119679Smbrforward declaration of struct utsname to avoid lots of gcc warnings: 72119679Smbr 73119679SmbrRCS file: RCS/utsname.h,v 74119679Smbrretrieving revision 1.1 75119679Smbrdiff -u -r1.1 utsname.h 76119679Smbr--- utsname.h 1995/06/19 13:07:01 1.1 77119679Smbr+++ utsname.h 1998/01/27 12:34:26 78119679Smbr@@ -59,6 +59,7 @@ 79119679Smbr #ifdef KERNEL 80119679Smbr #include "../h/limits.h" 81119679Smbr #else /* user mode */ 82119679Smbr+struct utsname; 83119679Smbr extern int uname _PARAMS((struct utsname *)); 84119679Smbr #endif 85119679Smbr #define __SYS_NMLN 32 86119679Smbr 87119679Smbr 88119679Smbr(4) powerpc-ibm-aix4.2.1.0 89119679Smbr 90119679Smbr[4A] "Randall S. Winchester" <rsw@Glue.umd.edu> reports that for amd to 91119679Smbrstart, you need to kill and restart rpc.mountd and possibly also make sure 92119679Smbrthat nfsd is running. Normally these are not required. 93119679Smbr 94119679Smbr[4B] "Stefan Vogel" <vogel@physik.unizh.ch> reports that if your amq 95119679Smbrexecutable dump core unexpectedly, then it may be a bug in gcc 2.7.x. 96119679SmbrUpgrade to gcc 2.8.x or use IBM's xlC compiler. 97119679Smbr 98119679Smbr[C] Do not link amd with libnsl. It is buggy and causes amd to core dump 99119679Smbrin strlen inside strdup inside svc_register(). 100119679Smbr 101119679Smbr 102119679Smbr(5) *-linux-gnu (RedHat Linux 5.1) 103119679Smbr 104119679SmbrThere's a UDP file descriptor leak in libnsl in RedHat Linux 5.1. This 105119679Smbrlibrary part of glibc2. Am-utils currently declares redhat 5.1 systems as 106119679Smbrhaving a "broken yp_all" and using an internal, slower, leak-free version. 107119679SmbrThe leak is known to the glibc maintainers and a fix from them is due soon, 108119679Smbrbut it is not yet in the glibc-2.0.7-19 RPM. 109119679Smbr 110119679Smbr 11138494Sobrien(6) rs6000-ibm-aix4.1.x 11238494Sobrien 11338494SobrienA bug in libc results in an amq binary that doesn't work; amq -v dumps core 11438494Sobrienin xdr_string. There is no known fix (source code or vendor patch) at this 11538494Sobrientime. (Please let amd-dev know if you know of a fix.) 11638494Sobrien