This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: cygrunsrv no longer allows domain user



On 03/31/2015 02:00 PM, Len Giambrone wrote:

On 03/31/2015 06:04 AM, Corinna Vinschen wrote:
On Mar 30 14:07, Len Giambrone wrote:
This used to work (before Corinna's db work):

$ cygrunsrv -I myservice -d 'myservice' -u 'ISCINTERNAL\build' -w donotuseme
-p /cygdrive/f/tut/install.sh
cygrunsrv: Error installing a service: CreateService: Win32 error 1057: The account name is invalid or does not exist, or the password is invalid
for the account name specified.

Using + doesn't help either:

$ cygrunsrv -I myservice -d 'myservice' -u 'ISCINTERNAL+build' -w donotuseme
-p /cygdrive/f/tut/install.sh
cygrunsrv: Error installing a service: CreateService: Win32 error 1057: The account name is invalid or does not exist, or the password is invalid
for the account name specified.

Is there an incantation that will work?
Uhm, not with Cygwin 1.7.35, unless your domain is the primary domain of
your machine, in which case you just omit the leading domain:

   cygrunsrv [...] -u 'build'

This is a bug in Cygwin.  Cygrunsrv calls getpwnam("ISCINTERNAL\\build")
and the underlying code fails to recognize this as invalid Cygwin user
name.  Instead, it constructs a user entry for a user
ISCINTERNAL+ISCINTERNAL\build and carries on.

Ok, so reading your patch, you just don't allow fully qualified usernames and return an error. What if I have two users foo, one local to the machine, and one that is in the domain the machine is a member of? How do I make the distinction? Right now -u foo (by empirical evidence) translates to DOMAIN\foo; how to I specify LOCALMACHINE\foo?


Never mind, I answered my own question:

build@wx64lg ~
$ cygrunsrv -I myservice -u build -p /cygdrive/c/Cygwin/bin/perl.exe
Enter password of user `ISCINTERNAL\build':
Reenter, please:
Sorry, passwords do not match.
Enter password of user `ISCINTERNAL\build':
Reenter, please:

build@wx64lg ~
$ cygrunsrv -R myservice

build@wx64lg ~
$ cygrunsrv -I myservice -u WX64LG+build -p /cygdrive/c/Cygwin/bin/perl.exe
Enter password of user `WX64LG\build':
Reenter, please:




I fixed that in the repo and uploaded new developer snapshots 2015-03-31
with this patch to https://cygwin.com/snapshots/. Please give them a try.


Thanks,
Corinna



--
-Len

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]