Solved

Is RCS / CVS Y2K compliant?

Posted on 1998-06-23
6
387 Views
Last Modified: 2010-04-21
My underlying OS (SVR4) is Y2K compliant but I was wondering whether RCS and CVS was capable of storing and manipulating dates beyond 1999?

Has anyone actually tested this?
Iis there anything like a site that could provide an "official" answer to this question (eg. support@gnu.com)?:
0
Comment
Question by:firefox032697
6 Comments
 
LVL 51

Expert Comment

by:ahoffmann
Comment Utility
0
 
LVL 2

Expert Comment

by:richrussell
Comment Utility
In general most unix applications that have been rewritten several times (RCS certainly has), will use the unix time C library. This is a 32 bit counter from 1/1/1970 in seconds. So it will wrap round in 2038.

However, anything compiled using very recent libraries (ie last year or so), will probably be using a 64 bit counter. This will expire in about 500,000,000,000 - the Earth is set to be swalled up by the Sun in about 20,000,000. So no need to worry there!

I know this doesn't answer the question, but it's interesting all the same...
0
 
LVL 51

Expert Comment

by:ahoffmann
Comment Utility
RCS and SCCS store dates in the form  yy/mm/dd, so they are not Y2k complient.
AFAIK, SCCS uses 1969 as base (not 1970) and therefore is y2k complient 'till 2068.
0
Enabling OSINT in Activity Based Intelligence

Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

 
LVL 4

Expert Comment

by:jos010697
Comment Utility
I just checked GNU's implementation of RCS and they explicitely mention
that:

'Y' contains just the last two digits of the year for years from 1900 through
1999, and all the digits of years thereafter.  Dates use the Gregorian calendar;
times use UTC.

This makes me feel quite confident the (at least GNU's) RCS is Y2K 'safe' ...

kind regards,

Jos aka jos@and.nl

0
 
LVL 51

Expert Comment

by:ahoffmann
Comment Utility
jos, it couldn't be Y2K safe if it just uses 2 digits per year.
Example:
  have a file with deltas made
    01-jan-1999, 31-dec-1999,
    01-jan-2000, 01-jan-2099, 02-jan-2099, 31-dec-2099
then use:
    co -d"1999-01-01" file
    co -d"2099-01-01" file
to get it back.
I never tested this, but I expect that you get deltas from 01-jan-1999 and newer for both co commands.
0
 
LVL 2

Accepted Solution

by:
JYoungman earned 50 total points
Comment Utility
RCS 5.x is y2k compliant.   For backward compatibility with (very) old versions it uses 2-digit dates until the end of 1999.   After that it uses 4 digits.    

CVS 1.9 itself is not y2k compliant, but there are updates to it (numbered 1.9.x) which are definitely y2k compliant.

It is *possible* for SCCS to be y2k compiant, as ahoffmann stated, but most installed versions of unix have a non-compliant version.    All the Unix vendors offer a compliant version currently though -- you would need to pay for it.  
0

Featured Post

Enabling OSINT in Activity Based Intelligence

Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

Join & Write a Comment

Installing FreeBSD… FreeBSD is a darling of an operating system. The stability and usability make it a clear choice for servers and desktops (for the cunning). Savvy?  The Ports collection makes available every popular FOSS application and packag…
FreeBSD on EC2 FreeBSD (https://www.freebsd.org) is a robust Unix-like operating system that has been around for many years. FreeBSD is available on Amazon EC2 through Amazon Machine Images (AMIs) provided by FreeBSD developer and security office…
Learn how to find files with the shell using the find and locate commands. Use locate to find a needle in a haystack.: With locate, check if the file still exists.: Use find to get the actual location of the file.:
Learn how to navigate the file tree with the shell. Use pwd to print the current working directory: Use ls to list a directory's contents: Use cd to change to a new directory: Use wildcards instead of typing out long directory names: Use ../ to move…

771 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now