This is the mail archive of the cygwin@cygwin.com 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: Fw: After new install, start in /usr/bin/{myname} not in /home/{myname}


Hello, Robert :)

I've just tracked this problem. Here is what I've found:

First of all the problem will appear on Win9x/ME only.
In version 1.18 of mkpasswd.c the following change was
made:

-
-  if (passed_home_path[0] == '\0')
-      strcpy (passed_home_path, "/home/");

    /* This takes Windows 9x/ME into account. */
    if (GetVersion () >= 0x80000000)

passed_home_path is initially an empty string and then
if the option -p is passed to mkpasswd, passed_home_path
is assigned the value of this option. Now here is
how setup.exe invokes mkpasswd:

   if (!uexists ("/etc/passwd"))
     fprintf (p, "bin\\mkpasswd -l > etc\\passwd\n");


There is no sync between the setup.exe behaviour and
the new mkpasswd behaviour.


Robert Collins wrote:

> There is apparently a bug in mkpasswd. (I was tracking to see if
> setup.exe was the culprit).
> 
> On this machine (and others have been reported too) mkpasswd returns a
> bad home path, which leads to somewhat strange behaviour.
> 
> The two attached cygchecks, from Fergus, show the environment with a bad
> /etc/passwd (.chk) and with a good one (.out).
> 
> Hopefully this gives a clue as to why mkpasswd misbehaves, I haven't had
> time to look at source yet.
> 
> Rob
> 
> ===
> ----- Original Message -----
> From: "fergus at bonhard dot uklinux dot net"
> <fergus@bonhard.uklinux.net>
> To: "Robert Collins" <robert.collins@itdomain.com.au>
> Cc: <fergus@bonhard.uklinux.net>
> Sent: Monday, January 28, 2002 12:40 AM
> Subject: Re: After new install, start in /usr/bin/{myname} not in
> /home/{myname}
> 
> 
> 
>>>As for the incorrect /etc/passwd creation (which is IMO the actual
>>>
> fault
> 
>>>you are seeing) can you send me the output of "mkpasswd -l"?
>>>
>>Hey: interesting. Look at this:
>>
>>~> mkpasswd -l
>>            Fergus::500:544::Fergus:/bin/bash
>>~> cat /etc/passwd
>>            Fergus::500:544::/home/Fergus:/bin/bash
>>
>>(This is _after_ I've edited the file /etc/passwd. In "failed setup"
>>
> mode
> 
>>the file /etc/passwd contains exactly the output from mkpasswd -l
>>
> above.)
> 
>>OK. Now I'll see whether I can be more ghelpful in describing what the
>>prototype new setup.exe gives me.



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


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