[cvsnt] Problem with embedded spaces in XP local user name?

Dan Hoyt dhoyt at tsc.com
Tue Jul 27 23:16:38 BST 2004


I just installed cvsnt v2.0.41a client (included with WinCVS 1.3), and I cannot connect from an XP machine to a Solaris cvs store.  I get the error:

>cvs status: rsh server reported: permission denied
>cvs [status aborted]: Connection to server failed
This works perfectly fine for my coworkers, but not for me, which leads me to believe that it is a problem with the local user name in XP, as the only difference I can find is that my XP login is different than my userid on the Solaris box (with the cvs store), and my coworkers have the same login name on XP and Solaris.  I ran across this same issue with cvs v1.11.5, which provided the following, more descriptive error message:

>cvs status: cannot log in as local user 'Dan Hoyt', remote user 'dhoyt'
>cvs [status aborted]: Permission denied by rshd

Unfortunately, because my local user ID has embedded spaces (XP *suggests* your full name with spaces on installation, and I didn't know that it would create a user profile from the name), I couldn't just add the local ID as another remote user on Solaris.  The public documentation was no help at all, but I found the solution for this error buried in the source code.  In windows-NT/pwd.c ("Try to approximate UN*X's getuser...() functions under MS-DOS."):

...

/* where people might scribble their name into the environment ... */

static char *login_strings[] =

{

"LOGIN", "USER", "MAILNAME", (char *) 0

};

...
/* return something like a username. */

char *

getlogin ()

{

/* This is how a windows user would override their login name. */

if (!login)

login = lookup_env (login_strings);

/* In the absence of user override, ask the operating system. */

if (!login)

login = win32getlogin();

/* If all else fails, fall back on Old Faithful. */

if (!login)

login = anonymous;

return login;

}

Thus, I was able to "fix" this problem by adding an environment variable "USER=dhoyt".  

However, I cannot resolve this with cvsnt.  Are these login name hacks supported by cvsnt?  Or is there some other, undocumented way of resolving this issue? 

-Dan Hoyt
Senior Systems Architect
Technology Service Corporation



More information about the cvsnt mailing list