cygrunsrv no longer allows domain user

Len Giambrone Leonard.Giambrone@intersystems.com
Tue Mar 31 18:08:00 GMT 2015


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



More information about the Cygwin mailing list