info-cvs
[Top][All Lists]
Advanced

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

Re: cvs [server aborted]: you are unknown to this system


From: Martin Ellison
Subject: Re: cvs [server aborted]: you are unknown to this system
Date: 13 Nov 2001 15:39:30 -0800

The relevant code in commit.c reads:

        if ((pw = (struct passwd *) getpwnam (getcaller ())) == NULL)
            error (1, 0, "you are unknown to this system");
        if (pw->pw_uid == (uid_t) 0)
            error (1, 0, "cannot commit files as 'root'");

This is inside a #ifdef CVS_BADROOT so we could suppress the check by
undefining  CVS_BADROOT. (We would need to ensure that root was not
defined in CVSROOT/passwd).

I have a line like fakeuser::realuser in CVSROOT/passwd and login as
fakeuser. Everything is fine (checkout, edit,...) until I try a commit
when I get the message. getcaller() is returning "fakeuser" not
"realuser" and getpwnam() is a system call that expects a real user.

In subr.c, the code comment says getcaller() should "return the
username by which the caller should be identified in CVS, in contexts
such as the author field of RCS files, various logs, etc."

This is looking to me like a bug in commit.c -- am I missing
something?


reply via email to

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