Dear SCO Customer, Support Level Supplement (SLS) PTF4003C, the Year 2000 Supplement for SCO UnixWare 2.1.3, provides the following fixes and features: 1. CMOS RAM byte 0x32 (or 0x37 on PS/2) is defined to hold the century (as binary coded decimal). UNIX does not use that byte, and has not in the past maintained it, but a few machines have a BIOS that does make use of it. On such a machine, changing the year from 19YY to 20YY (or the reverse) under UNIX, then running System Setup, DOS or Windows on reboot, can cause the system date to be reset incorrectly. The UNIX Real Time Clock (RTC) driver in this SLS maintains the CMOS century byte consistent with the year, in order to avoid such problems as much as possible; some such problems may reside in the machine's BIOS itself. 2. For compatibility with System Setup, DOS or Windows, UNIX maintains the Real Time Clock in local time, so it must be adjusted when entering or leaving Daylight Savings Time. If you arbitrarily set your system date forward or backward (as you might when testing Year 2000 issues), into or out of Daylight Savings Time, then /stand/boot TZ_OFFSET may lose sync with the date. This causes the hour to advance or go back each time UNIX is rebooted. The dst_sync program in this SLS keeps /stand/boot TZ_OFFSET, and the kernel's difference between UNIX system time and RTC, in sync with the local time according to /etc/TIMEZONE TZ. It is run at startup and shutdown, and by daily cron(1M) job. The at(1) job is no longer used. /usr/lib/dstime/dst_sync could also be run by a privileged user to synchronize it after changing the date or Time Zone, but the daily cron job or shutdown script will soon make the necessary correction automatically. 3. at(1) permitted the date "Feb 29" only when the current year was a leap year, regardless of the year for the at(1) job itself. At one point, it did not treat the year 2000 as a leap year, scheduling jobs for Mar 1, 2000 to Dec 31, 2000 a day early. But neither of these errors occurred when using the "-t time" syntax, nor when using the environment variable DATEMSK (typically DATEMSK=/etc/datemsk) to parse the date. atrm(1) did not have a Year 2000 problem, but it sometimes failed with "Segmentation Fault - core dumped". Since atrm(1) is used during the installation of this SLS to replace the at job by a daily cron job, a fix for this problem has been included. 4. Accounting programs acctcms(1M), acctcon(1M) and acctcon1, acctprc(1M) and acctprc1, divide time spent into prime time and non-prime time (off-hours or holiday), according to entries inserted by the administrator in /etc/acct/holidays. Year 2000 was accepted, but years 2001 onward were rejected. The daily "LAST LOGIN" report could never advance from a 99-MM-DD login to a 00-MM-DD login, fixed and sorted. However, 00-00-00 accounts that never logged in are now omitted. 5. NetWare server's Admin_Tools/Networking/DS_Repair (Directory Services Repair) program which showed year 20YY as 1YY, now shows YY. NetWare UNIX client's Admin_Tools/Networking/NetWare_Access program which showed login year 20YY as 191YY, now shows 20YY. 6. prs(1) and sv .437 locales were correct in SCO UnixWare 2.1.3, but if UnixWare/OpenServer Development Kit 7.0.0 (UDK) was installed then /udk/usr/ccs/bin/prs -d:Dy: showed year 20YY as 1YY, and sv .437 locales showed year 20YY as 19YY. The following fix is new to PTF4003C: 7. SLS PTF4003C supersedes SLS PTF4003B, whose RTC driver caused CMOS corruption on some systems. If you have already installed PTF4003B, install PTF4003C only if your system reports CMOS corruption on reboot. SLS PTF4003C contains: /etc/conf/pack.d/rtc/Driver_atup.o /etc/conf/pack.d/rtc/Driver_mp.o /etc/init.d/dstsync /etc/rc0.d/K10dstsync /etc/rc1.d/S10dstsync /etc/rc2.d/S10dstsync /udk/usr/ccs/bin/prs /usr/X/bin/NetWare_Access /usr/bin/at /usr/bin/atrm /usr/lib/acct/acctcms /usr/lib/acct/acctcon /usr/lib/acct/acctcon1 /usr/lib/acct/acctprc /usr/lib/acct/acctprc1 /usr/lib/acct/lastlogin /usr/lib/dstime/dst_sync /usr/lib/libnds.so /usr/lib/locale/sv_FI.437/LC_MESSAGES/Xopen_info /usr/lib/locale/sv_FI.437/LC_TIME /usr/lib/locale/sv_SE.437/LC_MESSAGES/Xopen_info /usr/lib/locale/sv_SE.437/LC_TIME /usr/sbin/dsrepair SLS PTF4003C addresses these SCO tracking numbers: 500615 500721 500752 500762 500824 500825 500858 710606 501076 ul96-19301 ul98-02601 ul98-11103 ul98-18014 ul98-21001 ul98-25001 ul98-25120 ul98-25202 ul98-27802 ul98-28008 ul98-29504 ul98-32203 ul98-00613 ul99-10401 Software Notes and Recommendations ---------------------------------- SLS PTF4003C should only be installed on: SCO UnixWare Application Server Release 2.1.3 SCO UnixWare Personal Edition Release 2.1.3 SLS PTF4003C patches several packages including: base cmds nuc nwsrvr nwsrvrJ osmp UnixWare/OpenServer Development Kit 7.0.0 A fix is only installed from SLS PTF4003C if that file is already installed on the system. A fix is not installed from PTF4003C if another package (SLS, PTF, or the UDK) has already provided that fix to a file. If one of the packages listed above is installed after SLS PTF4003C, update213 and then PTF4003C must be reinstalled. If the UnixWare/OpenServer Development Kit 7.0.0 is installed after PTF4003C, then PTF4003C must be reinstalled. SLS PTF4003C replaces the unpublished PTF4003A, which contained only the RTC driver fix (1) in a form unsuitable for PS/2 machines; and PTF4003B, whose RTC driver caused CMOS corruption on some systems. If you have already installed PTF4003B, install PTF4003C only if your system reports CMOS corruption on reboot. Installation Instructions ------------------------- 1. Download the ptf4003c.Z file to the /tmp directory on your machine. 2. As root, uncompress the file and add the SLS package to your system using these commands: $ su Password: # uncompress /tmp/ptf4003c.Z # pkgadd -d /tmp/ptf4003c # rm /tmp/ptf4003c 3. Reboot the system after installing this SLS package. The release notes displayed prior to installation can be found in: /var/sadm/pkg/ptf4003/install/ptf4003.txt Removal Instructions -------------------- 1. As root, remove the SLS package using these commands: $ su Password: # pkgrm ptf4003 2. Reboot the system after removing this SLS package. If you have questions regarding this SLS, or the product on which it is installed, please contact your software supplier.