Debugging results found the failure of lib/smbldap.c at line 826 I replaced the return statement with smb_panic(), compiled with -O1 and -g. Executed: net rpc info -Uroot%password Backtrace is attached. When I print out the return value of geteuid() at the point of failure it is always 65534 (0xFFFE). This does look like a bug somewhere!
Created attachment 1550 [details] Backtrace from gdb
Created attachment 1556 [details] Proposed patch This should fix it. Jeremy.
Should be fixed - please re-open if not (fixed in SAMBA_3_0 and HEAD svn). Jeremy.
Created attachment 1557 [details] GDB Backtrace Binaries were built from SVN version 11433.
Sorry, it is not fixed. I replaced the return statement following line 826 in smbldap.c with: DEBUG(0, ("getuid returned: %X", geteuid())); smb_panic("Oops, Panic!"); When I executed: net rpc info -S merlin -U root%password Output was: geteuid returned: FFFE Backtrace will be attached. - John T.
The line number in your backtrace doesn't match the source code. You are not running out of SAMBA_3_0. In your backtrace you have : #12 0x081f0ba8 in pdb_get_account_policy (policy_index=-512, value=0xfffffe00) at pdb_interface.c:1426 #13 0x0817d50e in _samr_query_dom_info (p=0x83d9ff8, q_u=0xbfffe710, r_u=0xbfffe700) at srv_samr_nt.c:1852 The source code at srv_samr_nt.c:1852 in SAMBA_3_0 is : 1850 unix_to_nt_time_abs(&nt_min_age, u_min_age); 1851 1852 init_unk_info1(&ctr->info.inf1, (uint16)min_pass_len, (uint16)pass_hist, 1853 flag, nt_expire, nt_min_age); 1854 break; The pdb_get_account_policy call occurs on line *1842* in the current source code. You're not running the binaries with the modified code. Jeremy.
Apologies. The changes you made were not picked up. This problem is certainly closed. - John T.
I should note that if you are running SVN revisions you probably got bit by the same thing I did. The release code requires you to manually migrate the policies. But somewhere along the way Guenther played with automatic migration. Which left my system in an unusable state since the schema had not been updated. There's actually a lot more of this same problem lurking in the code.