BUGS revision 51292
138494Sobrien# -*- text -*- 238494Sobrien 338494Sobrien LIST OF KNOWN BUGS IN AM-UTILS OR OPERATING SYSTEMS 438494Sobrien 538494Sobrien 638494Sobrien(1) mips-sgi-irix* 738494Sobrien 838494Sobrien[1A] known to have flakey NFS V.3 and TCP. Amd tends to hang or spin 938494Sobrieninfinitely after a few hours or days of use. Users must install recommended 1038494Sobrienpatches from vendor. Patches help, but not all the time. Otherwise avoid 1138494Sobrienusing NFS V.3 and TCP on these systems, by setting 1238494Sobrien 1338494Sobrien /defaults opts:=vers=2,proto=udp 1438494Sobrien 1538494Sobrien[1B] yp_all() leaks a file descriptor. Eventually amd runs out of file 1638494Sobriendescriptors and hangs. Am-utils circumvents this by using its own version 1738494Sobrienof yp_all which uses udp and iterats over NIS maps. The latter isn't as 1838494Sobrienreliable as yp_all() which uses TCP, but it is better than hanging. 1938494Sobrien 2038494Sobrien 2138494Sobrien(2) alpha-unknown-linux-gnu (RedHat Linux 4.2) 2238494Sobrien 2338494Sobrienhasmntopt(mnt, opt) can goes into an infinite loop if opt is any substring 2438494Sobrienof mnt->mnt_opts. Redhat 5.0 does not have this libc bug. Here is an 2538494Sobrienexample program: 2638494Sobrien 2738494Sobrien#include <stdio.h> 2838494Sobrien#include <mntent.h> 2938494Sobrienmain() 3038494Sobrien{ 3138494Sobrien struct mntent mnt; 3238494Sobrien char *cp; 3338494Sobrien mnt.mnt_opts = "intr,rw,port=1023,timeo=8,foo=br,retrans=110,indirect,map=/usr/local/AMD/etc/amd.proj,boo"; 3438494Sobrien cp = hasmntopt(&mnt, "ro"); 3538494Sobrien printf("cp = %s\n", cp); 3638494Sobrien exit(0); 3738494Sobrien} 3838494Sobrien 3951292SobrienIt is possible that sufficiently newer version of libc for RH4.2 fix this 4051292Sobrienproblem. 4138494Sobrien 4251292Sobrien 4338494Sobrien(3) mips-dec-ultrix4.3 4438494Sobrien 4538494SobrienRainer Orth <ro@TechFak.Uni-Bielefeld.DE> reports 4638494Sobrien 4751292Sobrien[3A] One needs the Kernel Config Files (UDTBIN430) subset installed to 4851292Sobriencompile am-utils, otherwise essential header files (net/if.h, net/route.h, 4951292Sobrienrpcsvc/mount.h, rpcsvc/yp_prot.h, rpcsvc/ypclnt.h, sys/proc.h) are 5051292Sobrienmissing. 5151292Sobrien 5251292Sobrien[3B] It's probably impossible to build am-utils with DEC C on Ultrix V4.3. 5351292SobrienThis compiler is pseudo-ANSI only. Maybe the new ANSI C compiler in V4.3A 5451292Sobrienand beyond will do. I successfully used gcc 2.8.1. 5551292Sobrien 5651292Sobrien[3C] You need to build against a recent libhesiod (I used 3.0.2) and 5751292Sobrienlibresolv/lib44bsd (I used BIND 4.9.5-P1). The resolver routines in 5851292Sobrienlibc seem to cause random memory corruption. It is necessary to specify 5951292SobrienLIBS=-l44bsd. lib44bsd is a helper library of libresolv used to supply 6051292Sobrienfunctions like strdup which are missing on the host system. This isn't 6151292Sobriencurrently autoconfiscated. 6251292Sobrien 6351292Sobrien[3D] You need to configure with CONFIG_SHELL=/bin/sh5 /bin/sh5 buildall; 6451292Sobrien/bin/sh cannot handle the shell functions used in buildall and is both 6551292Sobrienbuggy and slow. 6651292Sobrien 6751292Sobrien[3E] At least the gcc 2.7.0 fixincludes-mangled <sys/utsname.h> needs a 6838494Sobrienforward declaration of struct utsname to avoid lots of gcc warnings: 6938494Sobrien 7038494SobrienRCS file: RCS/utsname.h,v 7138494Sobrienretrieving revision 1.1 7238494Sobriendiff -u -r1.1 utsname.h 7338494Sobrien--- utsname.h 1995/06/19 13:07:01 1.1 7438494Sobrien+++ utsname.h 1998/01/27 12:34:26 7538494Sobrien@@ -59,6 +59,7 @@ 7638494Sobrien #ifdef KERNEL 7738494Sobrien #include "../h/limits.h" 7838494Sobrien #else /* user mode */ 7938494Sobrien+struct utsname; 8038494Sobrien extern int uname _PARAMS((struct utsname *)); 8138494Sobrien #endif 8238494Sobrien #define __SYS_NMLN 32 8338494Sobrien 8438494Sobrien 8538494Sobrien(4) powerpc-ibm-aix4.2.1.0 8638494Sobrien 8738494Sobrien[4A] "Randall S. Winchester" <rsw@Glue.umd.edu> reports that for amd to 8838494Sobrienstart, you need to kill and restart rpc.mountd and possibly also make sure 8938494Sobrienthat nfsd is running. Normally these are not required. 9038494Sobrien 9138494Sobrien[4B] "Stefan Vogel" <vogel@physik.unizh.ch> reports that if your amq 9238494Sobrienexecutable dump core unexpectedly, then it may be a bug in gcc 2.7.x. 9338494SobrienUpgrade to gcc 2.8.x or use IBM's xlC compiler. 9441142Sobrien 9542629Sobrien[C] Do not link amd with libnsl. It is buggy and causes amd to core dump 9642629Sobrienin strlen inside strdup inside svc_register(). 9741142Sobrien 9842629Sobrien 9941142Sobrien(5) *-linux-gnu (RedHat Linux 5.1) 10041142Sobrien 10141142SobrienThere's a UDP file descriptor leak in libnsl in RedHat Linux 5.1. This 10241142Sobrienlibrary part of glibc2. Am-utils currently declares redhat 5.1 systems as 10341142Sobrienhaving a "broken yp_all" and using an internal, slower, leak-free version. 10441142SobrienThe leak is known to the glibc maintainers and a fix from them is due soon, 10541142Sobrienbut it is not yet in the glibc-2.0.7-19 RPM. 10641142Sobrien 10741142Sobrien 10841142Sobrien(6) rs6000-ibm-aix4.1.x 10941142Sobrien 11041142SobrienA bug in libc results in an amq binary that doesn't work; amq -v dumps core 11141142Sobrienin xdr_string. There is no known fix (source code or vendor patch) at this 11241142Sobrientime. (Please let amd-dev know if you know of a fix.) 113