This problem is affecting Ira but not me (nor anyone else that I know
of). If LANG is not C, "pw = getpwuid(geteuid())" returns NULL for him.
Has anyone any idea why this should be?
-----Forwarded Message-----
From: Ira Abramov <debian-bugreport-20020119@ira.abramov.org>
To: 130005@bugs.debian.org
Subject: Bug#130005: postgresql: can't run initdb with LANG other than C....
Date: 20 Jan 2002 22:46:22 +0200
On 20 Jan 2002, Oliver Elphick wrote:
> This is the code, which is all standard calls:
>
> pw = getpwuid(geteuid());
> if (pw == NULL)
> {
> fprintf(stderr, "%s: invalid current euid %d\n",
> argv[0], (int) geteuid());
> exit(1);
> }
>
> Is there something weird about your system that this shouldn't work?
nope...
joy:/home/ira# grep postgres /etc/passwd /etc/shadow
/etc/passwd:postgres:x:31:32:postgres:/var/lib/postgres:/bin/sh
/etc/shadow:postgres:*:11288:0:99999:7:::
as you see, all very standard. and remember this only happens with $LANG
being anything but LANG=C. I'm out of ideas (bug in glibc?).
Attachment:
signature.asc
Description: This is a digitally signed message part