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: <type your root 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: <type your root 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.