***************************************************
** U434995 FILE
***************************************************
APARTXT IX35051 = CSH: NEWGROUP BUILT-IN PASSES ARGUMENTS INCORRECTLY
 The C shell built-in newgrp commands passes
 incorrect arguments to /bin/newgrp.
APARTXT IX36239 = increase the arp table size
 arp table size is too small.
APARTXT IX36244 = csh failures using here documents when /tmp is full
 The csh fails to create a here-document if /tmp is full.
 No error gets reported and the command reading the here-doc
 sees empty stdin.
APARTXT IX36246 = chuser fails to change user's group list
 The chuser command to add a user to an alternative
 group is not working as expected.
APARTXT IX35411 = su - doesn't accept the password
 AUDITING:
 The getpwent() routine generates a
 "FILE_Open failure event for /etc/security/passwd"
 when it is invoked by a non-privileged user.
 Common commands (e.g. "ps u", "ls -l", ...) end up
 generating a high level of "audit noise".
APARTXT IX35152 = ACCOUNTING FOR SPOOLING DOES NOT WORK CORRECT
 When using accounting for the print spooler, charges
 are only displayed for monetary amounts greater than 0.09.
APARTXT IX35336 = NIS  FAILS  WHEN  OTHER  INTERFACE  HAS  ROUTING
 DIFFICULTIES
 ypbind wouldn't bind to a server if one of the adapters had a
 problem even if there were several it could have bound thru
APARTXT IX35551 = nl_langinfo  should  return a pointer to an empty
 string
 According to XPG4 standards, nl_langinfo should return a pointer to
 an empty string if the item contained an invalid string.  Instead,
 a null pointer was being returned.
APARTXT IX34579 = LOCALTIME() FAILS WHEN TZ STRING CONTAINS J1
 The localtime() routine works incorrectly
 when the timezone string contains the Julian
 day corresponding to the first of the year.
 i.e. TZ="CST6CDT1,J1,J30"
APARTXT IX35299 = mktime performs daylight savings time adjust. when
 it shouldn't
 mktime() should not perform daylight savings time adjustment when the
 TZ environment variable indicates that DST does not apply.
APARTXT IX35300 = strftime does not update tzname properly
 strftime does not update tzname properly
APARTXT IX33834 = C   shell:   time   builtin   should   display
 seconds.tenthsOfSeconds
 C shell
 When displaying the "user" and "system" values of the
 "time" built-in command, the C shell displays the
 fractions of a second in units which are hundredths
 of a second instead of tenths of a second.
 i.e.    1 second 1,000 microseconds is displayed
 as 1.1 (the correct value is 1.0).
APARTXT IX34882 = _gethtbyname causes core dumps on long hostnames
 The rexec and ftp commands are inconsistent in how they
 handle .netrc entries.  ftp checks the user-specified
 hostname against the .netrc entries, while rexec checks
 the hostname after it has been resolved by a hostname
 lookup.
APARTXT IX33162 = NETSTAT IS DOING TOO MANY YPNEXTS.
 getservbyport was by design looping doing ypnexts on the
 services map.  this was slow and produced lots of network
 traffic
APARTXT IX33367 = PASSWD  COMMAND CORRUPTS PASSWD FILE IF NIS/LOCAL
 MIXED
 If an NIS client had an /etc/passwd file containing
 local user accounts after the NIS escape line ('+'),
 the passwd command would mistakenly prepend a bogus
 line in front of the '+' line when it was attempting
 to change the password of a local user whose line
 was after the NIS line.
APARTXT IX33515 = fcvt returns wrong number of characters
 The fcvt function returns the wrong number of characters.
APARTXT IX33738 = __lc_load.c change to load() call
 libc.a is loaded from the current working directory.
APARTXT IX33855 = STRPTIME  ROUTINE  NOT  OPERATING  AS DOCUMENTED.
 STRPTIME ROUTINE
 strptime() needs to ignore case when matching buf items.
APARTXT IX33876 = strtol()/atol()  core  dump  if strings at end of
 address
 strtol() and atol() core dump if strings are at end of
 allocated address space.
APARTXT IX33938 = ftp  and  rexec are inconsistent with argument to
 rnetrc
 The rexec and ftp commands are inconsistent in how they
 handle .netrc entries.  ftp checks the user-specified
 hostname against the .netrc entries, while rexec checks
 the hostname after it has been resolved by a hostname
 lookup.
APARTXT IX33949 = MSEM_LOCK AND MSEM_UNLOCK CAUSE PROGRAM TO 'HANG'
 MSEM_LOCK AND MSEM_UNLOCK CAUSE PROGRAM TO 'HANG'
APARTXT IX34015 = FTOK  GENERATING DUPLICATE KEYS WHEN MINOR DEVICE
 NUMBER
 When minor divice number of filesytem referenced is
 higher then 0x00FF, the presence of non zeros in higher
 byte causes the generation of duplicate keys.
APARTXT IX34343 = COMPARISON PROBLEM AT RUNTIME WHEN COBOL IS COMPILED
 WITH
 The strncollen() C library function had a bug
 that was exposed when running with MALLOCTYPE
 set to 3.1.  If you called it twice, and the
 second time you passed it a shorter string,
 it would return the wrong result that time.
APARTXT IX34448 = SETLINEBUF CALL LEAKS MEMORY A PAGE AT A TIME. IF
 CALLED IN A
 The setlinebuf() call leaks memory one page at a time.
 If it is called continuously in a loop, the system crashed
 due to a memory leak.
APARTXT IX34251 = REGEXEC SEARCHING PAST NULL FOR MATCH OF STRING
 The match_re() function in __regexec_std.c is searching
 past the null for matching a string with a regular expression.
 This causes false matchings when previous (and longer strings)
 contain the pattern being matched.
APARTXT IX32568 = C SHELL -N FAILS FOR VAR EXPANSION
 When using the "-n" flag of the csh to do
 syntax checking, the csh needs to evaluate
 variable names when parsing shell built-ins
 (i.e.  $n   in    "if ( $n <= 5 ) then" ).
 apar ix22127 did not activate variable expansion.
 BACKGROUND
 apar ix22127 (defect d36254, ptfs U404379,
 U405143 U406866) enabled the syntactic checking
 of shell built-ins.  Prior to ix22127, there was
 NO syntax checking on built-ins.
APARTXT IX33006 = USERS WITH INVALID SHELLS CAN STILL LOG IN
 If the user's shell does not begin with a "/" character, the
 default shell "/bin/sh" is used instead.  The point of failure
 is mkargs(lib/s/setpenv.c) near line 1017.  The problem with
 this is that no other system works in this manner and putting
 strings, such as "NOLOGIN" or "DISABLED" is a very common
 administrative practice.  The other problem is that it violates
 the concept of "fail-secure".  That is, if the system isn't
 sure what to do, it should fail in a secure manner.  It doesn't,
 it lets the user in even though the named shell doesn't exist.
 The pubs which describe this field (/etc/passwd in Files
 Reference) make no mention of this behavior, nor does setpenv(),
 which is the subroutine which sets up the environment.
APARTXT IX33364 = Users  prevented  from logging into certain valid
 ttys.
 Associated with each user is a set of valid ttys that
 he can login on.  The problem in this case is that a
 user may be prevented from logging in on certain ttys
 even though they are valid for him.
APARTXT IX33567 = GETPASS() DOESN'T HANDLE SIGNALS CORRECTLY
 getpass() doesn't handle signals correctly.
 The documentation says it should give errno==EINTR
 if it gets an interrupt while reading; it doesn't.
APARTXT IX33650 = C SHELL CLOSES STDOUT PRIOR TO INVOKING CMDS FROM
 CMD-LINE
 C shell :
 When using NIS, the shell closes stdout
 prior to invoking cmds from the cmd line.
 This occurs when using file expansion ("set filec")
 and tilde expansion (home directory expansion).
 i.e.  /bin/echo ^user/.profil<escapeChar>
 (1) The "NIS libc" routines at one point in time
 communicated using file descriptor 1.
 They called socket() which returned 1 (the
 lowest fd number available at the time).
 (2) Later the shell closes fd 1 and opens the real stdout.
 (3) Then the shell ends up calling the "NIS libc" routine
 bind_to_yp (through calling getpwnam).
 (4) bind_to_yp ends up closing fd 1 (its old channel
 of communication).
APARTXT IX29767 = SPRINTF  SEARCHS FOR A NULL TERMINATING CHARACTER
 WHEN ATTEMPTI
 The latest version of sprintf appears slower when transfering data
 from originating array to target array. The problem is related
 to this version of sprintf searching the originating array
 for a null terminating character. The originating array may be
 of size "big" and sprintf demonstrates slow response.
APARTXT IX31904 = AWK FAILS TO PAD LEADING 0'S ON PRINTF STRING.
 The "printf" function of awk should pad with leading zeroes
 when "%0Ns" format conversion is used, where N is some integer.
APARTXT IX32134 = S_GROUPS RETURNS + AS A MEMBER WHEN YP IS PRESENT
 rdgrps() and getuserattr() return a '+' in the grouplist when
 the domainname is set to NULL if NIS is configured
APARTXT IX32242 = MKUSER CREATES UNUSABLE GROUP ENTRIES
 The MKUSER command creates lines in /etc/group that are too
 long.  There is a restriction against there being any lines in
 /etc/group that are more than 1024 bytes in length (or so) and
 MKUSER is violating this restriction.  The MKUSER command needs
 to be aware of the circumstances under which adding another
 member to a group would cause that group to no longer be usable
 under NIS.  Since the most common recommendation to customers is
 that they remove a user name from its primary group entry, I
 would suggest that MKUSER be altered to not put the user in its
 primary group when the group entry is created and the system is
 running NIS.
APARTXT IX32382 = rdgrps uses uninitialized variable
 A bug in the rdgrps functions in libs.a can cause srcmstr
 (and other programs) to dump core.
APARTXT IX32711 = PRINTF/SPRINTF  FAILS  TO PRINT FIRST SIGNIFICANT
 DIGIT FOR SMAL
 printf/sprintf fails to print first significant
 digit for small doubles.
APARTXT IX32714 = C LOCALE HAS INCORRECT DATE FORMAT STRING
 POSIX 1003.2 specifies the default output for the date command
 as being of the format "%a %b %e %H:%M:%S %Z %Y".  The hardwired
 string in lib/c/loc/NLSsetup.c is "%a %b %d %H:%M:%S %Y".  This
 is not POSIX compliant.  It is missing the "%Z" which causes the
 timezone name to not be output.
 .
 The solution is to change the value for the data format string
 in the variable _C_locale_object to the POSIX required value.
APARTXT IX33013 = BOS PVT: backslash before newline is output
 When using the multi-byte C shell, if the end-of-line
 character is escaped using back-slash within
 a quoted string, the resulting string instead
 of containing the character
 0xa  ( end-of-line )
 it contains the sequence
 0x5c 0xa  ( back-slash end-of-line )
APARTXT IX33074 = NLTMTIME() RETURNS 11 FOR 11PM
 NLtmtime did not convert the %H format into
 24-hour clock hour.
APARTXT IX33075 = LTMTIME () SUBROUTINE WORKS DIFFERENTLY AT 3.2 THAN
 3.1.5
 When %I is used as a format specifier with
 the strptime library routine, 12AM caused a
 12 to be stored in the tm_hour field of the
 structure.  This is incorrect.  A zero should
 be stored in that field to indicate midnight.
APARTXT IX33254 = STRFMON(3) CREATES INCORRECT OUTPUT.
 strfmon does not function properly.  The currency
 suppression symbol "!", and the checking for optional
 flags do not work correctly.
APARTXT IX33465 = missing dependencies in lib/libc.a
 Ensure libc is built with dependencies on libc.exp and libc.meth.exp.
APARTXT IX33473 = ksh/csh/bsh: test -w should return true only if w
 flag is on
 The built-in command "test -w" in the Bourne shell,
 C shell, and Korn shell shall return true ONLY
 when the write flag is on. This statement is of
 special relevance to users, such as root, with
 special privileges.
APARTXT IX32735 = Core dump when LC_COLLATE is set to certain locales.
 qsort may core dump when LC_COLLATE is set for
 certain locales (such as Fr_FR, de_DE, ...)
APARTXT IX32009 = READERS  OF PASSWORD DATABASE SHOULD NOT LOCK OUT
 ANYONE.
 If a user suspends a process that has locked
 the password database files for reading, they
 in effect lock everyone else on the system
 out of either reading or writing the password
 files.
APARTXT IX32074 = res_init should accept env var overrides for retry
 and timeout
 There needs to be a way to change the default timeout
 and retry values for the resolver.
APARTXT IX31403 = GETPWNAM/GETPWENT ARE SLOW, DBM FILES IGNORED
 The C library functions getpwuid() and getpwnam() were very
 slow in two specific cases:  (a) when attempting to locate
 a user at the bottom of the password file, their method of
 getting the user's password from the /etc/security/passwd
 file involved scanning the /etc/passwd file a line at a time,
 then for each entry, scanning /etc/security/passwd for the
 passwd, regardless of whether that entry was the entry we
 wanted.  (b) when using the password database (as created by
 the mkpasswd command), they were incorrectly determining
 whether to use the flat file or the database.  They want to
 use the newest version, so they were comparing the modification
 date of the flat file (/etc/passwd) vs the database index file
 (/etc/passwd.dir).  This was incorrect, as the index file is
 not always updated when the database was updated, whereas the
 data file (/etc/passwd.pag) is always updated.
APARTXT IX31925 = DAYLIGHT SAVINGS TIME CHANGE OFF BY 1 DAY
 The transition to/from daylight savings time is off by
 one day if you are in a non-leap year when using the 'M'
 style of TZ variable to set start/end dates.
APARTXT IX30583 = ATOI  CORE  DUMPS  IF  STRING AT END OF ALLOCATED
 ADDRESS SPACE.
 Atoi core dumps if string at end of allocated address space.
APARTXT IX30743 = MKTIME SUBROUTINE RETURNS A BOGUS NUMBER
 The mktime subroutine returns a bogus number when the structure
 is given information out of bounds.  Does not return the -1
 like info explorer states and errno=0 instead of 34 (ERANGE) as
 is standard on other vendor systems.
 .
 Also the (time_t -1) seems to be a typo for "(time_t) -1" in
 Info Explorer.
APARTXT IX30748 = NOT GETTING ERRNO SET CORRECTLY WHEN ATOL IS USED
 WITH
 When inputting '5555555555' 5 billion then errno is not set
 on return for atol()
 When imputting '9000000000' 9 builion then errno is 34 (out of
 range)
 The return value atol() of both these numbers is incorrect
 but only the larger number sets errno return to non-zero.
 the problem seems to be with a small range of numbers
 between 5 and 6 billion
APARTXT IX31364 = ANONYMOUS  FTP  DOES  CHROOT WHICH MAKES /DEV/LOG
 INACCESSABLE.
 ANONYMOUS FTP DOES CHROOT WHICH MAKES /DEV/LOG INACCESSABLE.
APARTXT IX31506 = strtol calculates overflow incorrectly with certain
 values
 strtol calculates overflow incorrectly with certain values
APARTXT IX31508 = gethostbyaddr: hook to only call dns
 A program needs to be able to call the gethostbyaddr() and
 gethostbyname() subroutines and have them only query the
 Domain Name Server.  The ypserv program in particular needs
 this, since one of the methods used by the gethost*
 subroutines is to query ypserv.  This would result in
 an infinite loop.
APARTXT IX31357 = Add #defines in stdlib.h
 Add #define's in stdlib.h
APARTXT IX31358 = Add #defines in math.h
 Add #define's in math.h
APARTXT IX31359 = Performance improvements for libc.
 Performance improvements for libc.
APARTXT IX31361 = Include file changes to support DCE.
 Include file changes to support DCE.
APARTXT IX29735 = FIND CMD PATTERN MATCHING IS BROKEN
 The find command pattern matching criteria is not working.
 The command:
 # cd /tmp
 # touch abc.3 abc.3x
 # find . -name "*.3?" -print
 should only find one match - abc.3x.  Instead, it is matching
 both files.
APARTXT IX30409 = GETHOSTBYADDR  DOES  NOT  CHECK  NIS  MAPS  IF
 /ETC/RESOLV.CONF EXIS
 Gethostbyaddr never checks NIS maps if /etc/resolv.conf exist.
 Instead on checking the NIS maps it checks the /etc/host file.
 Gethostbyname, however, works correctly if using
 /etc/resolv.conf and NIS, DNS is checked and then NIS.
APARTXT IX30978 = _getht* overwrites h_errno if resolver previously
 set it
 The gethostbyname() and gethostbyaddr() functions set the
 h_errno to HOST_NOT_FOUND if both the nameserver and the local
 hosts table/file don't find the name/addr.  But if the resolver
 code set h_errno to something other than HOST_NOT_FOUND, it
 should stay that way even if the host isn't found in the local
 table, since that is the more meaningful error.  This is
 preventing sendmail from treating nameserver errors as temporary
 and trying them again (when h_errno should be set to TRY_AGAIN).
APARTXT IX22804 = SYSTEM() RETURNS -1 WITH ERRNO=10 IF SIGCHLD IS SET
 TO
 IN THE FOLLOWING EXAMPLE, SYSTEM() RETURNS -1 WITH ERRNO 10 :
 ************
 INCLUDE <ERRNO.H>
 INCLUDE <SIGNAL.H>
 MAIN()
 SIGNAL(SIGCHLD,SIG_IGN):
 PRINTF("END OF SYSTEM(): %D ERRNO:%D",SYSTEM("LS"),ERRNO):
 ***********
 THE PROBLEM IS THAT SYSTEM() BLOCKS SIGCHLD AND DOES A WAITPID()
 THEN UNBLOCKS SIGCHLD . IF ONE IGNORES SIGCHLD, WHEN THE CHILD
 PROCESS TERMINATES, THE WAITPID() WAKES UP AND SEARCHES THE LIST
 OF CHILDREN . THE TERMINATING PROCESS HAS BEEN REMOVED FROM THE
 LIST SINCE SIGCHLD HAS BEEN IGNORED, THEREFORE WAITPID() RETURNS
 AN ERRORGNORED, THEREFORE WAITPID() RETURNS
 AN ERROR.
APARTXT IX28602 = GETPWENT() DOESN'T FIND A NETGROUP ENTRY IF PASSWD
 FILE IS
 If you search the password file more than once
 using setpwent()/getpwent()/endpwent(), and your
 password file has an entry of the form "+@netgroup",
 this netgroup was only recognized on the first pass.
APARTXT IX29148 = SECURITY: A NIS PASSWORD ENTRY WITH AGING INFO FAILS
 AUTHENTIF
 Other vendor's NIS servers had passwd maps with entries where
 passwd aging info was in the password field of the entry,
 seperated by a comma from the encrypted password.  The
 tsm,rlogin and telnet programs would not allow such users to
 log in to the NIS client.
APARTXT IX29200 = PERROR PROBLEMS
 The following issues are addressed by this defect:
 1. The perror()/strerror() message #114 is concatinated with
 message #115.  This causes incorrect messages to be printed
 for any errno above 113.
 2. The message for error number 66 is unclear.  Instead of reading
 "Addr not supprtd by family protocol" it should read
 "Addr family not supprtd by protocol".
APARTXT IX29618 = GETLOGIN() RETURNS SLOT/USER NAME EVEN IF SLOT IS
 DEAD_PROCESS
 THE GETLOGIN() CALL DOESN'T DO ANY CHECKING OF THE VALIDITY OF
 THE UTMP ENTRY, AND IT COULD POSSIBLY BE A DEAD_PROCESS, AND
 SHOULD AT LEAST CHECK THAT.  XTERM -UT WILL CREATE A WINDOW
 WITHOUT AN UTMP ENTRY, AND THIS IS WHERE THE PROBLEM WAS FOUND.
APARTXT IX29787 = portmap failing to respond with NIS configured
 portmap occasionally hangs after applying ptf U405700 or
 U406855.  This causes NIS and other applications to hang
 or experience slow performance.  Doing a "/usr/etc/rpcinfo
 -p loopback" frees it up.
APARTXT IX29909 = difftime routine fails ANSI C conformance
 The difftime() routine is returning an absolute value instead of
 a double as required by ANSI C.
APARTXT IX30585 = TZ=NFT-1DFT,M3.5.0,M9.5.0 doesn't work correctly
 AFTER INSTALLATION OF PTF U406866 (IX23605), THE DAYLIGHT SAVING
 TIME FOR NORWAY / FRANCE TIMEZONE DOES STILL NOT WORK AS EXPEC-
 TED. THE TZ ENVIRONMENT VARIABLE WAS SET AS FOLLOWS:
 TZ=NFT-1DFT,M3.5.0,M9.5.0
 WE EXPECT THAT THE SYSTEM WILL SWITCH TO SUMMER TIME AT MARCH 29
 TH 1992 AND SWITCH BACK TO WINTER TIME AT SEPTEMBER 27TH 1992.
 AFTER INSTALLATION OF IX23605, THE SWITCH TO SUMMER TIME WAS OK
 HOWEVER SWITCHING BACK TO WINTER TIME WAS PERFORMED ON OCTOBER
 4TH.(ONE WEEK TOO LATE)
APARTXT IX31006 = multi-byte csh core dumps on no endif
 The multi-byte version of the csh coredumps
 when interpreting a script that lacks the
 "endif" statement of the "if" statement.
 i.e.
 ######################################
 # This is the script cshell.script
 if ( 1 == 0 ) then
 echo ok
 # missing endif statement
 ######################################
 prompt> /usr/mbin/csh < cshell.script
 prompt> ## it generates "core" file
APARTXT IX31019 = csh: history gets corrupted (and/or hangs)
 C shell :
 when using history substitution, and the variable
 'history' is set to a value higher than 1000,
 the shell might either freeze (hang) or core-dump.
APARTXT IX27014 = IN  C-SHELL  WITH  'LANG=DE_DE' THE COMMAND 'ECHO
 $PATH' SHOWS TH
 When LANG=de_DE, the C shell generates the error message
 'Variable syntax'
 when the user attempts to reference variables.
 i.e. echo $PATH
APARTXT IX27986 = SMIT WILL NOT ACCEPT CHARACTERS COMING FROM OS2 IN
 The AFread() subroutine in the C library was not
 accepting either the colon or backslash characters
 as valid characters of the value of an attribute.
 This was not allowing us to support PCNFS entries
 in /etc/filesystems.
 ** NFS is a copyright of Sun Microsystems, Inc.
APARTXT IX27998 = CSH: BACKGROUND WRITE MESSAGE
 Every so often, csh displays the message
 "Background write"
 when the user enters a command utilizing pipes.
 i.e.
 ls gibberish  <pipeSymbol>  cat -  <pipeSymbol>  more
APARTXT IX28242 = CSH: NEWGRP - (ACCEPTS THE MINUS)
 csh : the built-in command "newgrp" should
 accept the "-" (minus) argument.
 In other words, the built-in command should be
 consistent with the real command (newgrp).
APARTXT IX28269 = GETNETBYNAME() SUBROUTINE DISPLAYS INCORRECT OUTPUT.
 Getnetbyname() subroutine returns the wrong network name.  When
 passing "austin.ibm.com", it returns "ibm.com".
APARTXT IX28492 = CATCLOSE NEEDS TO BE ADDED TO INITGROUPS.C
 The catclose call in initgroups in libc.a was wrong and
 one call was missing.
APARTXT IX29659 = global  system  variable  'tbl' in libc.a causing
 benchmark dumps
 Global variable 'tbl' in libc.a is preventing user programs
 from using this commonly used name.  'tbl' needs to be renamed
 in libc.a so that it doesn't interfere with user programming.
APARTXT IX29916 = C SHELL GENERATES MESSAGE 'USE LOGOUT TO LOGOUT'
 C shell :
 When the ".login" file contains the following two lines
 set ignoreeof
 source someFile
 the C shell generates the following message
 Use "logout" to logout.
 at login time (every so often, not always).
APARTXT IX30251 = csh  transposes  escaped  eoln char within quoted
 string
 When using the C shell, if the end-of-line
 character is escaped using back-slash within
 a quoted string, the resulting string instead
 of containing the sequence
 0x5c 0xa  ( back-slash end-of-line )
 it contains the characters
 0x1  0x8a
APARTXT IX24924 = IF THE ADDR PARAMETER OF CLNTTCP_CREATE() IS 0, IT
 IS NOT SET
 One of the programs defined in rfc1060, for example the NQS
 daemon, comes up only to find that another program, for example
 the mountd daemon, has stolen his reserved port, (between
 600-1024).
APARTXT IX25314 = IFCONFIG DOESN'T UNDERSTAND HEX NUMBERS
 tcp/ip commands that can take an ipaddress
 for an argument do not accept valid ip
 addresses that are in hexadecimal of octal.
APARTXT IX28261 = Does not implement advertised conversion characters.
 This change adds the %i and the %n options to the
 strfmon subroutine.
APARTXT IX30196 = namespace conflicts exist in libc.a()
 /*
 *  When  compiling  a programme without shared libraries, such as the
 following,
 * that includes a `cbuf' variable or  `qbuf' variable,
 *  a namespace conflict exists with these definitions, and the loader
 blithely
 *  replaces  the  variable  in  question with the one from the shared
 library,
 * which is smaller.
 *
 *    To    compile:     cc   -o   bug   bug.c   -bmap:bug.map   -bnso
 -bI:/lib/syscalls.exp
 */
 char cbufÕ40å;
 char qbufÕ40å;
 char emptyÕ40å;
 main() {
 int i;
 printf("cbuf = %s
 ", cbuf);
 printf("qbuf = %s
 ", qbuf);
 printf("empty = %s
 ", empty);
 for (i = 0; i < 40-1; ++i) {
 cbufÕiå = 'c';
 qbufÕiå = 'q';
 }
 printf("cbuf = %s
 ", cbuf);
 printf("qbuf = %s
 ", qbuf);
 printf("empty = %s
 ", empty);
 printf("lines = %s
 ", termdef(0, 'l'));
 printf("cbuf = %s
 ", cbuf);
 printf("qbuf = %s
 ", qbuf);
 printf("empty = %s
 ", empty);
 }
 /*
 *  then  run  the programme.  if you pipe the output to "od -bc", you
 will
 * see that initially cbuf has an "ESCÕx" in it.
 *  If  you  look at the map file produced, you will see that cbuf and
 qbuf
 *  are  being brought in from the shared library, and their sizes are
 incorrect.
 */
APARTXT IX30216 = setlocale only reads first item in $LOCPATH
 If  the  $LOCPATH variable contains more than one pathname, setlocale
 will
 only  check  for the locale in the first pathname. Any locale that is
 not
 found in the first pathname will not be loaded.
APARTXT IX30244 = Core dump when trying to call wcsid
 When a program tries to call wcsid(), it will core dump
APARTXT IX22486 = MUST  USE  BOTH  !/DEV/TTY1  AND  !/DEV/TTY1/0 IN
 /ETC/SECURITY/USE
 The "ttys" attribute was not handled correctly for multiplexed
 devices like /dev/tty0/0.
APARTXT IX26088 = csh : does not support a global cshrc (/etc/profile
 equivalent)
 csh does not support a global cshrc file
 (i.e. one similar to "/etc/profile" for the ksh).
 The global cshrc file is a system-wide startup file
 for all users who run the C shell.  On login, the
 C shell executes commands placed in this file
 before executing "$HOME/.cshrc".
APARTXT IX27087 = .CSHRC IS ONLY EXECUTED IF GID AND UID OF EXECUTING
 USER MATCH
 The .login and .cshrc files are executed if and only
 if one of the following conditions are true:
 1) The current "user id" matches the owner id for
 the file.
 2) The current "group id" matches the group id for
 the file.
 These restrictions should not exist.
APARTXT IX28216 = grouptoID and IDtogroup are major performance hit
 over NIS
 When using NIS, login reads the entire group map several
 times over the net.  This is an unnecessary performance
 hit.
 ** NIS is a trademark of Sun Microsystems, Inc.
APARTXT IX25638 = SECOND    AUTHENTICATION    METHOD    FOR
 /ETC/SECURITY/LOGIN.CFG AND
 A second authentication method with auth1=system,meth
 in the /etc/security/user stanza works only if the
 first "system" password is typed correctly the first
 time.  Otherwise, a 3004-007 error is given until the
 getty respawns (3 attempts) regardless of whether the
 subsequent password entered was correct.
APARTXT IX26614 = csh discards delete-key (cntl-questionMark)
 /bin/csh is ignoring the delete-key
 (1-byte character cntl-questionMark).
 i.e.  echo cntl-questionMark ] od -c ## generates nothing.
APARTXT IX27230 = Error  on  redirection  should result in non-zero
 return
 The csh (C shell) built-in commands do not
 report failure of the shell built-ins when the shell
 attempts to write to a file-system which is full.
 i.e.   echo foobar > /full/filename
APARTXT IX27783 = jobs sent to remote printer on 3.2 take too long to
 print
 Performance of rsh, rlogin, rcp, lpd, rexec, and ftp is
 poor if the .rhosts, hosts.equiv, hosts.lpd, or .netrc
 files are very large.  Also, if a nameserver lookup on
 the remote address returns a non-fully-qualified domain
 name, then the local domain will not be added on for
 purposes of comparison.
APARTXT IX29041 = regression problem with standards
 The readdir() subroutine was succeeding immediately following
 a closedir() on the same directory pointer.  It should fail.
APARTXT IX21751 = DBM CORRUPTED WHEN OVERFLOWED
 dbm_store() sometimes returns successfully even when the
 record to be stored is not written to the file because
 of EFBIG.  Eg, in some cases, due to the key involved,
 the record to be stored is beyond the 2 gigabyte file
 limit on AIX.  dbm_store() should recognize this error
 and return an error.
APARTXT IX21966 = rexec doesn't work for host not in .netrc
 When you rexec to a host that isn't in your $HOME/.netrc, rexec tries
 to connect to the last host in your .netrc file.
APARTXT IX22065 = csh _doprnt ignores iop. sprintf is broken
 echo (tilde)user returns a string of numbers
 before showing the user's home directory.
 If TZ is set to "eet-10d14" and NIS is running,
 this problem occurs.
APARTXT IX22590 = repeated calls to popen fail when fd is 1
 If  the  file descriptor returned from popen is 1 and popen is called
 more than
 once, the popen fails.
APARTXT IX23114 = REQUESTING TEMPNAM AND TMPNAM TO BE CHANGED TO CHECK
 tempnam and tmpnam library routines should check
 on existence of temporary file name generated.
APARTXT IX23960 = IF REMOTE HOSTNAME STARTS 'X' AND ONE OF (A-F) IN
 /ETC/HOSTS,
 inet_addr returns the wrong value for arguments starting
 with a lower or upper case x.
APARTXT IX24417 = popen works incorrectly when fd 0/1 are closed
 popen() works incorrectly when file descriptors 0 or 1
 are closed prior to being called.
APARTXT IX24880 = NLIST() FAILS IF A SYMBOL NAME IS DUPLICATED IN THE
 EXECUTABLE
 IF ONE OF THE SYMBOL NAMES PASSED TO NLIST()
 APPEARS MORE THAN ONCE IN THE TABLE, THE FIRST
 COPY IS RESOLVED SUCCESSFULLY BUT THE SECOND
 FAILS  (VALUE=0).  THIS IS UNEXPECTED.  IT
 WOULD BE MORE USEFUL TO RETURN THE SAME
 DESCRIPTOR TO BOTH LINES OF THE TABLE.
APARTXT IX25585 = AIX 3.2: fdopen() does not set errno to EMFILE
 the fdopen() library routine does not set
 errno (to EMFILE) in the case when FOPEN_MAX
 streams are currently opened.
APARTXT IX25599 = The # specifier does not produce documented results
 for 0
 The # specifier (when used with a printf statement) does not produce
 documented results for 0
APARTXT IX25642 = check_pmap_up()  leaves  sunrpc  connections  in
 TIME_WAIT state
 When domainname is set to a non-null value, then host
 and service lookup queries will cause tcp connections
 to the loopback.sunrpc port to be created and remain
 in a TIME_WAIT state.  This can be observed by doing
 a "netstat -a" (which will itself generate dozens of
 these requests).  This can cause mbufs to be used up
 for these connections before they timeout in a minute
 and are dropped.
APARTXT IX25663 = PCLOSE NOT RESTARTING WAITPID WHEN EINTR
 pclose() returns EINTR if a signal is
 received while calling waitpid().
APARTXT IX25938 = CSH:  IF  ½  -X  !  ALWAYS RETURNS TRUE FOR ROOT.
 SE6X494, B348 AND
 /bin/csh: when the root user tests for execution
 permission on a file, the test command always
 returns success (regardless of file permission
 bits).
APARTXT IX26086 = CSH DOES NOT SEND SIGHUP TO CHILD PROCESSES RUNNING
 IN THE
 When the login csh receives a SIGHUP and one of its child
 processes is running in the foreground, /bin/csh should not
 change the foreground process group to itself before exiting.
 This will in fact cause the kernel "kexit()" routine to send a
 SIGHUP to the foreground process.
APARTXT IX26509 = CALL TO SETBUF RESULT IN ERRNO BEING SET TO ENOTTY
 call to setbuf results in errno being set to ENOTTY.
 A call to istty() actually changes the errno.
 To work around this problem:
 int current_errno = errno;
 setbuf(fd,buffer);
 errno = current_errno;  /* reset errno to original value */
APARTXT IX27475 = CUSTOMER COMPLAINS GETWD NOT RELEASING MEMORY
 getwd function doesn't release memory (data segment) with 3.2
 sample program:
 /*
 *    < Eating memory by getwd >
 *
 *  Function :  sample program
 *  ex . $ cc getwd.c
 *       $ a.out
 *       $ vi log
 *
 */
 main()
 { /*curly_bracket*/
 int i;
 static char pathÕ256å;
 char *ptr;
 system("rm -f log");
 for (i=0;i<500;i++)
 { /*curly_bracket*/
 ptr = getwd(path);
 if (( i % 10 ) == 0 )
 system("\\ps avx ] grep a.out  >> log");
 } /*curly_bracket*/
 } /*curly_bracket*/
APARTXT IX28449 = getpwuid() can fail with core dump
 getpwent.c  : 1102 DEBUG: shadow_chk() called with NULL pointer? (p =
 201715a0)
 getpwent.c  :  655  DEBUG: matchuid() returning NULL pointer! (*pwp =
 NULL)
 getpwent.c  :  294  DEBUG:  getpwuid()  now has NULL pointer? Calling
 shadow_chk (pw
 = 0)
 getpwent.c  : 1102 DEBUG: shadow_chk() called with NULL pointer? (p =
 0)
 Special:
 Error Msg: Test terminated by a signal
 Optional: All tests being terminated
 Signal Received: SIGSEGV
APARTXT IX28450 = name space pollution from doscan.c
 The _doscan() function in libc.a uses various internal functions in
 performing its task, but neglects to declare them static.  This can
 lead to problems when conflicts with these names arises.
 In  particular,  a  function named "nf" is exported from doscan.c, as
 well as
 NLnan_doscan().  Neither are part of the external _doscan interface.
 The former is quite likely to cause conflicts.
APARTXT IX28451 = spray performance bad, sock buf size to small
 The  UDP  socket  buffer size for the RPC programs is too small. It's
 being set
 to  a size that is smaller than the system default size. This hinders
 the
 performance of the RPC programs.
APARTXT IX28452 = sscanf("  3", "%ln%d", &pos, &num) doesnt work
 When attempting to use the "%ln" format sequence to scanf(), as in
 sscanf("   3", "%ln%d", &pos, &num);
 sscanf() returns -1, pos is set to 0, and "num" is unchanged.
 This is due to a coding error in _doscan().
APARTXT IX28453 = popen.c contains undeclared variable errno
 pclose() returns EINTR if a signal is
 received while calling waitpid().
APARTXT IX28086 = __regexp_std performs too slow
 regular expression macthing using the regexec() library routine in a
 single byte character set locale is excessively slow.
 This effects grep perfoermance, for example.
APARTXT IX28088 = The csh core dumps when processing 4 byte character
 codes.
 The  csh  will  core dump under certain situations where 4 byte codes
 are
 encountered.  These situations include the following:
 1) set d='<command>'  		# if command contains a 4 byte code
 2) if( -d <dir_name> ) then  	# if dir_name contains a 4 byte code
 rm -r <dir_name>
 endif
 3) switch (expr)		# if option_1 contains a 4 byte code
 case <option_1>:
 4) onintr <label>		# if label contains a 4 byte code
APARTXT IX28089 = __regexp_std performs too slow
 regular expression matching using the regexec() library routine in a
 single byte character set locale is excessively slow.
 This effects grep performance, for example.
APARTXT IX28094 = libc.a changes to support User Defined locales.
 libc.a changes to support User Defined locales.
APARTXT IX24969 = ANSI   Violation:   localeconv  does  not  set
 decimal_point
 The  locale  decimal  point  is  not  set  correctly  by  the default
 localeconv.
 A setlocale call has to be added in order for the decimal point to be
 set
 correctly.
APARTXT IX26587 = DOCUMENT SYMBOL (<<) DOES NOT WORK CORRECTLY ON 3.2.
 /bin/csh :
 When using the backquote mechanism,
 the end-of-line character can not
 be escaped using backslash.
 i.e. set x=`od -c << EOF \  # ` is the backquote-character
 a b c \         # ` is the backquote-character
 EOF`            # ` is the backquote-character
APARTXT IX22984 = default TZ names cannot contain digits
 The default timezone names from smit of the form: "T12" are
 not permissible names.
APARTXT IX23605 = ENVIRONMENT VARIABLE TZ DOESN'T CHANGE TIME FOR DAY
 LIGHT SAVI
 TZ will change the time at midday several days late from what
 was set for the TZ. The following example should change the hour
 back at 3 am on the 3rd Sunday of the 3rd month, and change the
 hour forward at 2 am on the first Sunday of the 10th month.
 NB: this is Southern hemisphere day light saving, and when
 using day light saving the time should be 13 hours before CUT0.
 TZ='NZST-12 NZDT,M10.1.0/02:00:00,M3.3.0/03:00:00'
APARTXT IX22634 = LSVG   CRASHES   IF  32  "MOUNT  ="  LINES  IN
 /ETC/FILESYSTEMS
 If /etc/filesystems has too many stanzas with null
 attribute values, e.g. "nodename =", the stanza parsing
 routine will segmentation fault.  This problem manifested
 when an attempt to generate a mksysb backup failed.
APARTXT IX22703 = getpwnam(), getpwuid() leave files open.
 getpwnam(),   getpwuid()   don't   close   the  hashed  passwd  files
 (passwd.pag,
 passwd.dir)  when  they should.  This may result in disk space wasted
 in /
 until  the  programs  that  use getpw...() are terminated.  This only
 applies
 if the mkpasswd command has been used to build a hashed passwd file.
APARTXT IX24094 = AUDIT BIN1 DATA HAS INCORRECT TIMESTAMPS.
 The audit time-stamp data is incorrect.
 For example, the output of the /audit/trail
 file when piped to the auditpr command may
 generate incorrect dates.
APARTXT IX24149 = segmentation violation sscanf/NLsscanf with kanji
 characters
 segmentation violation (core dump) is a result of sscanf/NLsscanf
 with kanji characters on machines with the new fix point processor.
APARTXT IX24186 = 'AUDITPR < TRAIL' SOMETIMES LEAVES A TEMPORARY FILE
 'TEMPFILE'
 "auditpr < trail" sometimes leaves a temporary file behind.
 Customer expectation is that the command should clean up
 after itself.
APARTXT IX24248 = sscanf() gives inconsistent results with %f and %x
 sscanf() gives inconsistent results with %f and %x
APARTXT IX25023 = csh core-dumps if filec with dir size of 1050
 typing "./control-d" will cause the csh to core-dump.
 the problem can be reproduce as following:
 1. set ignoreeof
 2. set filec
 3. create a directory with 1050 files
 4. typing "./control-d" will cause the csh to core-dump
APARTXT IX25044 = IN C SHELL, WHEN THE FIRST NONSPACE CHARACTER OF AN
 INPUT LINE
 PROBLEM DESCRIPTION
 csh-prompt> echo ABCDEF
 csh-prompt> ËB   # single circumflex
 1.  In AIX, the result is an error message :
 "Bad substitute."
 2.  In other UNIX boxes, the result is to remove the
 letter B from the sequence, producing ACDEF.
 BACKGROUND
 The special abbreviation of a history reference occurs
 when the first nonspace character of an input line is
 a Ë (circumflex).
APARTXT IX25098 = CSH  PARSES  IF-THEN-ELSE INCORRECTLY WHEN SPACES
 WHICH DELIMIT
 /bin/csh: when interpreting an "if-condition" that
 evaluates to FALSE, the "then-statement"
 is parsed incorrectly if-and-only-if the spaces
 that delimit the embedded keywords are omitted.
 i.e. set aa="aa"
 set bb="bb"
 if ( $aa == "bb" ) then
 echo "This line is NOT printed"
 if($bb == "bb")then
 echo "This line is NOT printed"
 else    ### this statement matched the first if
 echo "This line IS printed"
 endif
 echo "This line IS printed"
 endif
APARTXT IX22127 = -N FLAG IN CSH HAS TO BE ISSUED IN THE SHELL SCRIPT
 TO WORK
 "csh -n" does not work for shell built-in commands.
APARTXT IX22813 = csh, close on exec, fd 16 through 19
 rsh and rshd do not exit when a process
 whose stdin/stdout/stderr has been
 redirected to /dev/null due to the
 fact that file descriptors internal
 to the csh are NOT closed on exec().
APARTXT IX22968 = csh, reorganizing arguments (bkquotes)
 When running the following script, the shell
 REorganizes its arguments.
 #!/bin/csh
 set noglob
 set parm = $1
 echo testing  -h `hostname`  -p $parm
APARTXT IX23119 = csh no mail notification at login
 When user logins he is NOT notified he has mail
 (like he is with the korn shell).
 "$HOME/.login" file contains the following line :
 set mail=(0 /usr/spool/mail/username).
APARTXT IX21643 = WHICH COMMAND GIVES DIFFERENT ERROR MSGS BASED ON
 WHERE YOU
 Which command gives different error message based on where
 you are and also one of the message has incomplete error number.
APARTXT IX36853 = csh commands core dump when run in background
 C shell core-dumps only on dataless and
 diskless machines.  e.g.
 csh-prompt> sleep 10 &
APARTXT IX35862 = C Shell Subsystem
 Rollup of all changes to the C Shell Subsystem.
APARTXT IX29597 = CSH - PORT BSD SIGHUP INHERITANCE (POSIX WAY)
 C shell
 POSIX handling of the SIGHUP signal inheritance.
 This fix is being added simultaneously by BSD
 to their C shell.
APARTXT IX34982 = HOSTNAMES BEGINNING WITH X OR O SHOULD BE VALID
 Hostnames beginning with an "x" and followed by numeric
 characters should be interpreted as hostnames and not
 ip addresses.
APARTXT IX35325 = REGEXEC() FAILING WITH PATTERNS LIKE 'X*$'
 The regexec() subroutine does not match patterns like "x*$"
 when there are no x's at the end of the line.  Since "x*"
 should match zero or mre x's, a line with zero x's at the
 end should still match because the '$' special character
 should match the end of line.
APARTXT IX35385 = ttylock() does not report errors correctly
 The ttylock() function sometimes reports success when a lock was
 actually not granted due to full filesystems.
APARTXT IX35400 = DATALESS 220 CAN NOT LOGIN AFTER RECEIVE 3004-004
 MSG
 If the .rhosts file existed on a diskless client but had no
 entry for a user who was trying to log in, a failure with the
 message 3004-004 to the user's screen and an associated message
 'WRITE ERROR 13' on the console would occur.
APARTXT IX35454 = 'FGETGRENT' NEEDS TO BE EXPORTED FROM LIBC.A
 fgetgrent symbol not exported
APARTXT IX35791 = FWRITE  RETURNS  OK ON NONBLOCKING, LINE-BUFFERED
 STREAMS
 Open a device or file with O_NONBLOCK, in this case a
 tty device.  Then derive a stream from the resulting file
 descriptor using fdopen().  Use fwrite() to write out data.
 fwrite() claims to have written it all successfully.
 Problem seems to only affect line-buffered streams.
APARTXT IX36451 = audit:  enable default userName(to enable default
 audit classes)
 /etc/security/audit/config
 'users' stanza
 There is no mechanism for defining default
 values for users not explicitly listed.
APARTXT IX36781 = RETURN VALUE OF OPENLOG() IS INDETERMINATE
 The following testcase exhibits that on some levels
 the openlog() function is returning a positive value
 and on other levels -1 is returned.
 #include<stdio.h>
 #include<syslog.h>
 main()
 printf("return value is: %d\n", openlog("message",0,LOG_AUTH));
APARTXT IX36817 = C  SHELL:  TEST  OPERATOR  FAILS IF UNQUOTED-ROOT
 ARGUMENT IS USED
 C shell:
 test operator fails when the specified argument
 is unquoted-root.
 e.g.  if ( -d  / )  echo "errorMessageAppears"
 if ( -d "/" ) echo "ok"
APARTXT IX36826 = STRCOLLEN FAILS WITH LANG=C
 strncollen fails for LANG=C
APARTXT IX37076 = printf within awk isn't handling %0.6s syntax
 printf handling %0.<number>s syntax is inconsistent with other
 platforms.   Zero padding of output should only be performed
 when given a specified width (i.e. 0<width>.<num>s)
APARTXT IX37110 = NIS  -@GROUP  LINES  IN /ETC/PASSWORD DO NOT WORK
 PROPERLY.
 The following line added to a NIS client's /etc/passwd file
 should cause the members of guest_group to be denied login
 access to the client.  -@guest_group It is not working
 properly.  Members of netgroup guest_group still get access
 to the client.
 STOP_SYMPTOM
 <Note by tkg023 (Madere, Steve), 93/06/17 12:53:25, action:
 note> START_SOLUTION Changed getpwent.c (in libc.a) to
 recognize a minus in the first character position as a special
 yp flag character.
 STOP_SOLUTION
APARTXT IX37139 = README file for EPSA Changes
 The README file for Early Paging Space Allocation is not dropped
 with the code.
APARTXT IX37146 = TIME/DATE  STRUCTURE  INCORRECTLY OVERWRITTEN FOR
 EXTENDED TZ
 If the TZ variable is set to a value containing an "M" format
 in the timezone string (e.g. CET-CEsT,M3.4.0,M9.4.0), then the
 ls -l command will show a date of 01.01.1993 instead of the
 correct date.
APARTXT IX37155 = _CLEANUP SHOULD NOT FCLOSE
 Processes started from /etc/inittab have I/O problems
 when they fopen() a file.
 EXPLANATION
 1. inittab process receives file descriptors 0/1/2 closed.
 2. inittab process calls fopen().
 It associates fd 0 (zero) with the stream.
 3. _cleanup() closes fd 0 (when fclose(stdin)) and
 the subsequent fflush() of the stream returned
 by fopen() fails because fd 0 is closed.
APARTXT IX37281 = NUL  CHARACTER TO THE OUTPUT SCREEN BY THE PASSWD
 COMMAND
 when we run the passwd command, we get the output :
 changing passwd for 'tbel'
 tbel's old passwd:
 tbel's new passwd:
 your new passwd must have :
 minimum of 5 alphabetic characters
 minimum of 1 character  @ not in old password
 minimum of 5 character in lehght
 The text minimum of 1 character  @ is caused by the passwd prog.
 sending a nul character to the screen.
APARTXT IX37511 = SSCANF CHAR_COUNT NOT WORKING AFTER WHITE SPACE
 When using %n in scanf to count the number of characters
 proccessed if the percent follows a space and the last character
 in the input is a space followed by the end of string in sscanf
 or EOF in scanf, the %n will remain unassigned
APARTXT IX37571 = C shell: nohup should have POSIX behaviour
 The C shell built-in nohup command should
 have POSIX behavior.
APARTXT IX37718 = more ports allocated by rfc1340
 A new RFC 1340 added some new services to the list of reserved ports.
APARTXT IX37719 = audit: File_Open failures for /etc/passwd.pg
 AUDITING:
 (1) The getpwent() routine generates a
 "FILE_Open failure event for /etc/security/passwd"
 when it is invoked by a non-privileged user.
 Common commands (e.g. "ls -l", ...) end up
 generating a high level of "audit noise".
 (2) The getpwent() routine generates a
 "FILE_Open failure event for /etc/passwd.pag"
 when /etc/passwd.pag does not exist.
 Common commands (e.g. "ls -l", ...) end up
 generating a high level of "audit noise"
APARTXT IX37920 = auditing: inheritance of p_auditmask when user is
 not listed
 auditing:
 If a given username is not specified in the 'user'
 stanza of /etc/security/audit/config, such user
 inherits the audit mask (p_auditmask) from his
 parent process (because setpcred will not reset it).
APARTXT IX37982 = Boot  image for diskettes too large to fit on one
 diskette
 When  using  bosboot command to create boot diskettes, the boot image
 created is
 too large to fit on one diskette.  The command used was
 "bosboot -a -d /dev/fd0"
 and the error was
 "dd failed to copy /dev/fd0" .
APARTXT IX37984 = Many Stadards regressions on ARTlab 9329 Test cycle.
 When flsbuf receives EINTR, it retries the write
 instead of returning an error. It should return
 with an error.
APARTXT IX37985 = dwm_open  fails to open files issued with certain
 flags
 mkalias:     1831-428     Unable     to    open    output    database
 /var/yp/yptest32/mail.byaddr
APARTXT IX34754 = csh: when pipelining, the jobs structure get out of
 sync
 The 'job structure' of the csh gets out of sync
 when the shell does pipelining.
 Problem occurs if-and-only-if the pipeline leader
 exits prior to its sibbling's fork.
APARTXT IX37810 = LIBC SYSLOG CALLS DON'T CHECK SO_ERROR
 If syslogd dies and then gets restarted, any processes
 that were already connected to it will not be able
 to log anymore.
APARTXT IX38482 = the  string  returned  by strerror is modified by
 perror
 perror and strerror need a buffer so they can call a common
 __strerror routine
APARTXT IX38965 = fwrite causing false ENOTTY error
 The fwrite() call can cause a false ENOTTY
 error to be returned in certain circumstances.
APARTXT IX39002 = error message not being issued after applying 9336D
 ptfs
 With LANG=En_US after certain libc updates, commands that
 should produce the error message:
 A file or directory in the path name does not exist.
 are no longer doing so.  For example,
 mvdir dir1 dir2
 where dir1 and dir2 do not exist will exhibit this problem.
APARTXT IX38819 = C Shell Subsystem
 Rollup of all changes to the C Shell Subsystem.
APARTXT IX37873 = utmp file locking does not work well over nfs
 getut.c previously used a hard link to lock the utmp file.
 When the locking mechanism was changed to file system locks,
 it could cause problems over NFS.
 NFS is a trademark of Sun Microsystems, Inc.
APARTXT IX38331 = TTYLOCK ROUTINES ONLY ALLOW 10 CHAR LOCK NAMES
 The tty locking routines don't allow device names
 larger than 10 characters.  Only the first 10 characters
 are considered significant.
APARTXT IX38476 = INNETGR.C  ROUTINE IN LIBC.A IS CASE SENSATIVE TO
 HOSTNAME.
 innetgr.c is case sensitive to hostname. For example, x.y.z.COM
 is not same as x.y.z.COM. This problem is seen where DNS and NIS
 is configured and netgroup are used in in place of hostname.
 If DNS retruns the x.y.z.COM and NIS has x.y.z.com in netgroup
 then mount would fail with permission denied error message.
APARTXT IX38545 = FTPD  AND  TFTPD  SHOULD  USE  THE  GETGRSET  AND
 GETGROUPSBYUSER
 ftpd calls initgroups() which scanned all of the
 groups linearly looking for ones in which the current
 user is a member.  This caused alot of excess yp
 network traffic.
APARTXT IX39521 = SYSTEMS  WITH  EXTENDED  TZ  SET  CANNOT  HANDLE
 TIMESTAMPS WHICH
 Some of the C library time functions would go
 into an infinite loop if you tried to convert
 a negative time (or a time bigger than MAX_INT,
 which would wrap into a negative time).
APARTXT IX38928 = EVAL OF A BACKQUOTED ENVIRONMENT VARIABLE FAILS WITH
 CSH
 Since csh treated backquote as a glob, backquotes could
 only be included as part of the output of a structure
 of the form `command` if the current directory contained
 a file matching the word with a backquote in it.
APARTXT IX40101 = CSH EVAL HANGS ON ERRORS
 If an error condition occurs during the "eval" of a csh
 primitive, the shell could hang until killed with a "-9".
APARTXT IX40314 = ttylock routines only use 9 chars of device name
 The tty locking routines only use the first nine
 characters of a tty device name (exclusive of the
 "/dev/") for creating the locks in the /etc/locks
 directory.  If the first nine characters do not
 uniquely identify a tty then it may appear locked
 when it is not.
APARTXT IX39510 = CHUSER SETS PASSWORD TO "*" IN DBM FILES
 The "chuser" command sets the encrypted password field in the
 DBM lookaside files to "*" whenever it updates a user's entry.
 "chuser" is used to implement the "chsh" and "chfn" commands,
 so whenever information is changed with either of those two
 commands, the DBM files will be corrupted.
 .
 This defect causes a user to be unable to login as an encrypted
 password of "*" means the account is locked.
APARTXT IX39700 = RLOGIN CAUSES EXCESSIVE NIS TRAFFIC
 rlogind and telnetd would cause excessive NIS
 network traffic when setting user attributes.
 This was due to linearly traversing group.byname
 map in the libs function rdgrps.
APARTXT IX39705 = INFINITE LOOP CHANGING PASSWORD IF TTY HANGS UP
 When a user has to change their password at login time, the
 password prompting process may hang in an infinite loop if
 the user disconnects from the system incorrectly.  The stack
 trace will show the process repeatedly executing getpass()
 and issuing an error message.
APARTXT IX39845 = wordexp  subroutine  hangs  with  certain "words"
 parameters
 wordexp goes in an infinite loop when the first parameter
 (i.e., words) contains any environmental variable.
APARTXT IX40512 = lpd does not honor netgroups
 The lpd daemon does not allow the use of aliases in the netgroups.
APARTXT IX40513 = mbswidth is too slow
 mbswidth is too slow.  It does 2 mallocs for buffer space.
APARTXT IX39130 = Problems with glob() library call
 The glob() library call not handling
 instances of "." and ".." correctly.
APARTXT IX39865 = CATOPEN DOES NOT RETURN AN ERROR WHEN THE CATALOG TO
 BE OPENED
 catopen does not return an error when the catalog is not
 present on the system. When the locale is C, it always
 returns an error as it should. But when the locale is set
 to anything other than C, it does not check whether the
 catalog is present or not and always returns a success.
APARTXT IX40229 = MEMORY LEAK IN MOTIF APPLICATION
 The ordblks field returned from mallinfo() is not maintained
 correctly in malloc, making it appear that mallinfo() is
 indicating a memory leak, when in fact, there is not one.
APARTXT IX41146 = NIST-PCTS: ctime() FIPS 151-2/POSIX failures
 Running gold 3.2.4 and NIST-PCTS 151-2 testsuite, LS chapter ctime()
 assertions 9,10,11,12,13 and 14 are failing.
APARTXT IX41637 = RPC.PCNFSD MISHANDLES RPC CALLS WHEN XIDS REUSED
 When a client program makes two different adjacent RPC
 calls using the same XID, rpc.pcnfsd answers with the
 same answer both times. ie: call with proc=0, then
 call with proc=2 but use the same XID on both calls.
 rpc.pcnfsd will answer as if proc=0 was called twice.
APARTXT IX41720 = INSTALLATION OF OSIMF/600 FAILED
 Call to dbm_open("filename",O_CREAT,0666) was failing.
APARTXT IX41879 = ls  -o  lasts  more  than  5  minutes when nis is
 configured
 When the /etc/passwd file contains alot of entries like:
 +user1
 +user2
 +user3
 ls -o (or ls -l) takes a really long time to execute
 because of excessive calls to the NIS server to resolve
 uid to username.
APARTXT IX41927 = FIND COMMAND GIVES INCORRECT RESULTS WHEN LANG IS
 SET TO C.
 find command does not work correctly when LANG is set to C.
 If there are two files in a directory say "abc1" and "abc12"
 and you run
 find . -name 'abcÕ0-9åÕ0-9å' -print
 OR
 find . -name 'abc?Õ0-9å' -print
 the output is
 abc1
 abc12
 which is wrong. The correct output should be only "abc12".
APARTXT IX41476 = WSTRTOS DOESN'T WORK PROPERLY
 wstrtos does not work with some input
APARTXT IX41640 = REALLOC() HAS BAD PERFORMANCE
 realloc performance is bad
APARTXT IX42307 = STRFMON() SUBROUTINE DOES INCORRECT FORMATTING
 The strfmon() subroutine does not format correctly
 when grouping thousands.
APARTXT IX43517 = libc.a causes command whoami not recognize non-local
 NIS users
 BOS command "whoami" cannot recognize NIS users that are not local
 users, and gives the following error message:
 whoami: 0551-300 The user name is not recognized.
APARTXT IX41076 = SHORT WRITES USING STDIO TAKES LONGER TIME
 On AIX 3.2.5, using the stdio package to write (putc, fwrite)
 takes more cpu time than previously.
APARTXT IX42970 = FOPEN/_ENDOPEN HANDLE THE MODE PARAMETER INCORRECLTY
 _endopen() routine sometimes looks beyond the end of string
 for the '+' character in the mode parameter.
APARTXT IX43573 = TWO CSH PROCESS GET RUNNING ON SAME TTY
 The problem was that SIGINT was not blocked
 during a critical code section.  This allowed
 two csh process to be running simultaneously.
APARTXT IX42306 = atof needs to have precision to 17th decimal place
 atof needs to have precision to 17th decimal place
APARTXT IX43996 = REINTRODUCING A FIX THAT WAS DELETED BY MISTAKE.
 A developer had deleted a fix that was dropped in earlier version
 to solve an infinite loop situation.
APARTXT IX44589 = YP CACHES INFORMATION ON PER PROCESS BASIS FOR 600
 SECONDS
 yp was caching information on a per process basis for 600
 seconds. This resulted in incorrect values for a long time
 for some processes. Now yp will cache info only for 60 secs
 so that the incorrect values do not persist for long.
APARTXT IX45100 = CSH WON'T EXEC FULL PATHNAMES INSIDE QUOTES
 CSH is not able to locate a full-pathname command
 contained inside quotes because the slashes ('/')
 it looks for are not yet decoded.
APARTXT IX43614 = KSH COREDUMPS IN READ_MSG
 The library routine read_msg() accesses the unallocated
 fields _fd/_hd/_set in the catalog_descriptor structure
 causing a ksh core-dump when accessing an address
 in segment zero.
 This defect applies only to libc.
APARTXT IX36925 = getservent doesnt work correctly with NIS
 getservent doesn't work correctly in NIS environment. It searches
 services.byname map as well as local /etc/services file.
APARTXT IX45462 = NIS CLIENT ROUTINES TAKE TOO LONG TO TIME OUT
 If a NIS server goes down, it takes clients that are
 bound to that server over twenty seconds before they even
 bother to ask ypbind to try for another server.
 There are then further delays in ypbind.
 This can cause a NIS client machine to hang all remote
 logins for a period of 40 seconds or more each time
 an NIS server goes down (even though there are backup
 servers defined)
APARTXT IX46193 = csh should not expand $cwd
 In the csh, when a directory-name contains special
 characters such as asterisks, the value of the
 variable cwd is set/displayed incorrectly.
 EXAMPLE
 mkdir AAtest
 mkdir 'AAtest/a*teri*k'
 mkdir 'AAtest/asterisk'
 cd 'AAtest/a*teri*k'
 set
APARTXT IX46548 = CSH  REPORTS ASSUMES ALL FORK() FAILURES TO BE OF
 EAGAIN TYPE
 The 'csh' reports "No more processes" whenever the fork()
 fails. However the fork() might fail also because of
 ENOMEM(and not the EAGAIN!). Thus one needs to report
 the correct error message according to the errno.
APARTXT IX46728 = MAN STOPS BEFORE PAGER STOPS
 If "man" is invoked from the csh, ie: "man ls", and
 the pager is suspended via <cntl-Z>, then sometimes
 the terminal state is left in character-at-a-time
 mode with no echo.  The csh user then needs to type
 "stty sane" before the shell will work properly again.
 This problem is reproducible on 3.2.4 and 3.2.5
 with "more" as the pager.
APARTXT IX46744 = csh core-dumps due to environment vars
 The csh core-dumps when certain environment
 variables contain special characters such
 as asterisk or question-mark.
 Example
 bsh-prompt> TERM='*barf'
 bsh-prompt> export TERM
 bsh-prompt> csh
APARTXT IX46745 = csh:    time    builtin    should   display
 seconds.tenthsOfSeconds
 C shell
 Apar ix33834 introduced the following error.
 When displaying the "user" and "system" values of the
 "time" built-in command, the C shell always displays
 zero fractions of a second.
 ==>>  P.S.: 1,000,000 microseconds == 1 second
 EXAMPLE
 3 second 910,000 microseconds is displayed as 3.0
APARTXT IX46448 = .NETRC FILE BEING PARSED INCORRECTLY
 comma symbols were trated as field seperators in the .netrc
 file.
APARTXT IX46571 = SENDMAIL RETURNS ERRONEOUS MESSAGE
 There is an erroneous message being displayed
 when the following command is issued :
 mail -s test xxx < /dev/null
 where xxx is an invalid user. The error displayed
 is :
 xxx... User unknown: Not a typewriter
ENDSET
COMPID FOR PTF U434995 = 575603001,320
PRODID FOR PTF U434995 = 5756030,C Shell
PREREQ FOR U434995 = U427862.575603001 U430214.575603001
ENDSET
COREQ FOR U434995 = NONE
ENDSET
SUP FOR U434995 = U402501 U403759 U404379 U404680
 U404968 U405143 U405729 U406866
 U407535 U408057 U409034 U409378
 U410515 U410872 U411171 U411671
 U412126 U412495 U412817 U412853
 U413148 U413583 U414081 U414342
 U415389 U416250 U416881 U417612
 U417835 U418301 U418600 U418685
 U419403 U420461 U421025 U421317
 U421414 U422072 U422509 U422900
 U423219 U424085 U424680 U425067
 U425997 U428270 U429432 U429665
 U431048 U431609 U432236 U432841
 U433063 U434065 U434734 U434780
 U434832
ENDSET
IFREQ FOR U434995 = U418278.575603001 U418286.575603001
 U418288.575603001 U418291.575603001
 U418310.575603001 U418318.575603001
 U418333.575603001 U418347.575603001
 U418349.575603001 U418351.575603001
 U418356.575603001 U418369.575603001
 U419139.575603001 U428208.575603001
 U428229.575603001 U428237.575603001
 U428376.575603001 U428432.575603001
 U434997.575603001
ENDSET
MEMO TO USERS = NONE
ENDSET
LABELTXT
Subsystem Fix Pkg
For use on AIX V3.2 only
ENDSET
***************************************************
