What is libc version 8.0.2K, the UnixWare 7 Definitive Runtime C Library package? KEYWORDS: 7D2M1 7D C runtime 802k 8.0.2k ptf9151 getprogname setprogname LD_PRELOAD RELEASE: UnixWare 7 Definitive (7D2M1) PROBLEM: What is libc version 8.0.2k, the UnixWare 7 Definitive Runtime C Library package? What problems are fixed, what is its contents, how to install this package, and are there additional software notes? SOLUTION: Problems Fixed -------------- libc, version 8.0.2f, shipped with the original UnixWare 7 Definitive 2018 release. libc, version 8.0.2k, includes all the fixes in libc versions 8.0.2g, 8.0.2h, 8.0.2i, and 8.0.2j as well as an additional fixes. Fixed in libc, version 8.0.2g: 1. Revisions to header files and libraries to correct some of the stdio helper functions. These functions were provided in prior releases to aid in open source porting. These functions were modified: __freadable() __fwritable() __fbufsiz() should have been __fbufsize() This fix is provided partially by this libc package and partially by PTF 9150 (version f or later) or any version of PTF 9151. UW7-173 Fixed in libc, version 8.0.2h: 2. Corrected LD_PRELOAD so, when used, loads the libraries set by LD_PRELOAD prior to any other libraries, including libc.so.1. UW7-183 Fixed in libc, version 8.0.2i: 3. The getprogname and setprogname functions are now in libc. Also cleaned up a typdef redeclaration warning. This fix is provided partially by this libc package and partially by PTF 9150 (version h or later) and in PTF9151 (all versions). UW7-146 Changes and fixes in libc, version 8.0.2j: UW7-146, UW7-147 4. Improve mktemp() and mkstemp(). 5. Add mkdtemp(), mkostemp(), mkostemps(), mkstemps(), arc4random(), arc4random_buf(), arc4random_uniform(), getentropy, and explicit_bzero(). 6. Add _SC_LOGIN_NAME_MAX and _SC_HOST_NAME_MAX, _SC_TTY_NAME_MAX, to sysconf(). 7. Add _SC_GETGR_R_SIZE_MAX, and _SC_GETPW_R_SIZE_MAX to sysconf(). 8. Add hooks to clock_getres(), clock_gettime(), clock_settime(), and clock_nanosleep() syscalls. 9. Add nanosleep(). 10. Add clock_gettime() using interpolate like gettimeofday(). 11. Enhance realpath() and add canonicalize_file_name(). 12. Update sysconf for TTY_NAME_MAX, add posix_memalign() and memmem() 13. Add getopt_long(), getopt_long_only(), err(), err_set_exit(), err_set_file(), errc(), errx(), verr(), verrc(), verrx(), vwarn(), vwarnc(), vwarnx(), warn(), warnc(), warnx(). 14. Keep setlocale() from core dumping when passed a category greater than LC_ALL. 15. Add dirfd(), strsep(), execvpe(), posix_spawn(), posix_spawnp(), posix_spawn_file_actions_init(), posix_spawn_file_actions_destroy(), posix_spawn_file_actions_addopen(), posix_spawn_file_actions_adddup2(), posix_spawn_file_actions_addclose(), posix_spawnattr_init(), posix_spawnattr_destroy(), posix_spawnattr_getflags(), posix_spawnattr_getpgroup(), posix_spawnattr_getschedparam(), posix_spawnattr_getschedpolicy(), posix_spawnattr_getsigdefault(), posix_spawnattr_getsigmask(), posix_spawnattr_setflags(), posix_spawnattr_setpgroup(), posix_spawnattr_setschedparam(), posix_spawnattr_setschedpolicy(), posix_spawnattr_setsigdefault(), posix_spawnattr_setsigmask(), and fdopendir(). Add getdelim(), and getline(). These fixes/additions are provided partially by this libc package partially by libthread package and partially by PTF 9151 (version a or later). Changes and fixes in libc, version 8.0.2k: 16. Fixed a duplicate system call number mistakenly introduced in rev j. Renamed some variables in clock_gettime to avoid potential name space clash. No change in functionality. D65, D66 Contents -------- /usr/lib/ld.so.1 /usr/lib/libc.so.1 Installation Instructions ------------------------- Either use patchck to install this package or use the following procedure: 1. Download the libc.8.0.2k.image file to the /tmp directory on your machine. 2. As root, add the package to your system using these commands: $ su - Password: # pkgadd -d /tmp/libc.8.0.2k.image all Alternatively, this package may be installed in quiet mode, that is, without displaying the release notes and asking for confirmation. To do this, use these commands: $ su - Password: # pkgadd -qd /tmp/libc.8.0.2k.image all 3. If you are installing multiple packages, you do not need to reboot the system immediately after installing this libc package. Any currently running application using the previous C runtime will continue to do so until the application terminates or the system is rebooted. When done installing packages, rebooting is recommended. Rebooting is necessary after installing ptf9151. (See the Software Notes and Recommendations section below.) Software Notes and Recommendations ---------------------------------- 1. libc, version 8.0.2k, should only be installed on: UnixWare 7 Definitive 2018 (D2M1) 2. The libc package, once installed, cannot be back revved to an earlier version. 3. To use new capabilities provided with this version of libc, you also need to install updated: libthread package version 8.0.2d or later ptf9151 package version b or later These three companion packages (libc, libthread, and ptf9151) must each be installed with compatible versions of the other two. Immediately after installing this libc package, install the libthread package and then ptf9151. Reboot your system immediately after all three packages are installed. ----------------------------------------------------- (C) Copyright 2024 Xinuos, Inc. All rights reserved.