bug-cssc
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug-cssc] bug-CSSC post from address@hidden requires approval


From: Joerg Schilling
Subject: Re: [Bug-cssc] bug-CSSC post from address@hidden requires approval
Date: Sun, 01 May 2011 13:47:19 +0200
User-agent: nail 11.22 3/20/05

James Youngman <address@hidden> wrote:

> On Sat, Apr 30, 2011 at 8:59 PM, Joerg Schilling
> <address@hidden> wrote:
> > James Youngman <address@hidden> wrote:
> >> - differences in the format of the header printed by sccsdiff (both
> >> between vendors and IIRC between Solaris 2.6 and 8).
> >
> > Are you talking about the optical differences in the output?
>
> From the CSSC documentation:
>
>
> 6.9.2 sccsdiff
> --------------
>
> There are some small variations in the way that the several versions of
> `sccsdiff' behave.  These are outlined in the table below :-
>
> Solaris 8
>      Prints a separator line between the `diff' output for each s-file.
>      This separator is output before the first set of diff output,
>      even if only one s-file has been named on the command line.
>
> Solaris 2.6 and many other versions of Unix
>      Does not print a separator.

OK, I did not see that you are referring to the "sccsdiff" command.
This is indeed not the same for all SCCS versions.

Old SCCS versions did all pipe the ourput through "pr", newer versions on 
Solaris did call

        echo "$i: $sid1 vs. $sid2"

in case there have been differences. Current Solaris prints the 
--- filename --- 
separator in case the -p option was not present.

But sccsdiff is not in the POSIX standard and thus minor deviations may happen.


> >> - I believe some (quite old) implementations lack prt
> >
> > prt was part of sccs since the beginning. Some vendor variants (e.g. IBM, 
> > SGI,
> > HP) do not include it - maybe because it is not mentioned by POSIX and 
> > because
> > there is prs.
>
> My apologies.   I meant prs, which was written by Charlie Salemi in
> response to a stream of requests to modify the output of prt.

I am not sure what you are talking about, both programs have been present in 
1980 already.


> > The POSIX get documentation includes -x and -i
> > The POSIX delta documentation includes -g
> >
> > What are you missing?
>
> Mainly a comprehensive description of how these three things interact.

It seems that the description for -g in delta is indeed not complete enough.
The rest seems to be obvious.

> I don't think the test suite checks that and so there could be
> infinite variation from all I'd know.  But I don't recall receiving
> any bug reports on this subject.

BTW: your test suite works well and did help me to find problems when porting 
to strange platforms, but I had to add several fixes to make it work completely.

> >> >>  %sccs.include.filename%        Lines are replaced by the content from 
> >> >> filename
> >> >
> >> > as the lowercase characters have a high probability to become in 
> >> > conflict with
> >> > printf, they are disabled unless the 'x' flag is present.
>
> I forgot to ask: what's the intent for when the sccs binary is
> installed separately as a setuid binary (usually for providing
> controlled access to a project repository)?   Presumably if sccs was
> setuid,  %sccs.include.filename% would need either to be ignored or
> perhaps would need to be processed after privileges are dropped.

get(1) switches to the real userid before creating the g-file and of course 
also before trying to access the file that is going to be included.


> >> (fwiw, looking at that page, it mentions "admin -fe" which should be
> >> "admin -b" since "-fe" won't work [SCCS should complain that the e
> >> flag is unknown, though really it isn't]).
> >
> > Could you give me the exact place please?
>
> """
> What are the advantages of SCCS?
>
> SCCS is the first version control system, originally written in 1972
> by Marc J. Rochkind at Bell Labs
> No known "SCCS caused" data loss since at least 30 years
> One Source file results in one SCCS history file
> Easy to understand format of the history files that allows manual intervention
> Checksums and forward deltas (weave file format) grant file integrity
> and immediate detection of corruption
> Forward deltas (weave file format) allow fast extract by using a
> single linear read on the history file
> Support for binary files using uuencoded SCCS history (set up via admin -fe)
> """
>
> The final line above.

OK, so you are talking about the web page. Thank you for the hint.

> >> Some versions of SCCS also permit a ':' in the tens digit of the year,
> >> but I can't offhand think of a way of making use of this, since
> >> there's a well-defined interpretation (":0" is written by some
> >> y2k-broken implementations where "00" should have been used).
> >
> > s/permit/incorrectly produce/
>
> Certainly it's incorrect to produce it.   But I specifically meant
> "permit".  In the sense that some implementations recognise the
> incorrect representation and fix it when editing the file.

This is a real problem as SCCS does not create the delta table from a binary 
list but just does a textual copy. Once you permit this, you get many defective 
entries.

Jörg

-- 
 EMail:address@hidden (home) Jörg Schilling D-13353 Berlin
       address@hidden                (uni)  
       address@hidden (work) Blog: http://schily.blogspot.com/
 URL:  http://cdrecord.berlios.de/private/ ftp://ftp.berlios.de/pub/schily



reply via email to

[Prev in Thread] Current Thread [Next in Thread]