Author Login
Post Reply
Hi all...
I mantain two systems runing cooker, one 32 and other 64 bits.
Both use the same LDAP server for authentication.
After the latest cooker update of ldap, the 64-bit box can not resolve
the group IDs to group names:
annwn:/etc# id magallon
uid=3001(magallon) gid=3000(giga) groups=3000(giga),10(wheel)
cicely:/etc# id magallon
uid=3001(magallon) gid=3000 groups=3000,10(wheel)
When I log in the 64bit box (cicely):
belly:~> ssh cicely
id: cannot find name for group ID 3000
cicely:~>
The setup (/etc/ldap.[conf,secret], nsswitch.conf and so on) is exactly the
same, and both run the latest cooker updates.
I used strace on 'id' for root, and noted some strange things
(I have masked the real addresses...):
annwn:
...
getsockname(3, {sa_family=AF_INET, sin_port=htons(51248), sin_addr=inet_addr("155.210.xxx.xxx")}, [16]) = 0
getpeername(3, {sa_family=AF_INET, sin_port=htons(389), sin_addr=inet_addr("155.210.xxx.xxx")}, [16]) = 0
time(NULL) = 1213283622
time(NULL) = 1213283622
...
cicely:
...
getsockname(3, {sa_family=AF_INET, sin_port=htons(34165), sin_addr=inet_addr("155.210.xxx.xxx")}, [16]) = 0
getpeername(3, {sa_family=AF_INET, sin_port=htons(389), sin_addr=inet_addr("155.210.xxx.xxx")}, [68719476752]) = 0
gettimeofday({1213283637, 826073}, NULL) = 0
gettimeofday({1213283637, 826220}, NULL) = 0
...
Rarities:
- why the code calls gettimeofday() in x86-64 and time(0) in x86-32 ?
- why the parameters are strange in x86-64 ?
That strange value for size is repeated in many calls to getsockname and getpeername all along
the trace.
Is this a bug in glibc/nss_ldap ?
TIA
--
J.A. Magallon <jamagallon()ono!com> \ Software is like sex:
\ It's better when it's free
Mandriva Linux release 2009.0 (Cooker) for i586
Linux 2.6.25-jam13 (gcc 4.3.1 20080515 (GCC) #1 SMP