[sudo-users] Debugging a sudo segmentation fault

Jeff Makey jeff at sdsc.edu
Fri Oct 30 20:12:53 EDT 2009

Todd wrote:
>In the check_user() function in check.c comment out the following:
>    if (user_uid == 0 || user_uid == runas_pw->pw_uid || user_is_exempt())  
>	return;

That did it, thanks.  Just removing "user_uid == 0" wasn't enough,
suggesting that the two uid values are the same when run by root.

Anyway, the SIGSEGV is in the Kerberos library:

#0  0x000000328d540f68 in krb5_get_renewed_creds ()
   from /usr/lib64/libkrb5.so.3
#1  0x000000328d542176 in krb5_get_init_creds () from /usr/lib64/libkrb5.so.3
#2  0x000000328d542ade in krb5_get_init_creds_password ()
   from /usr/lib64/libkrb5.so.3
#3  0x000000000040d60c in kerb5_verify (pw=0x52fe90, pass=0x52a7e0 "y", 
    auth=0x5287e0) at ./auth/kerb5.c:212
#4  0x000000000040d07e in verify_user (pw=0x52fe90, 
    prompt=0x553e30 "Password for jeff/sudo at SDSC.EDU: ")
    at ./auth/sudo_auth.c:187
#5  0x000000000040db4f in check_user (validated=130, mode=128) at ./check.c:138
#6  0x0000000000415a49 in main (argc=2, argv=0x7fbffffba8, envp=0x7fbffffbc0)
    at ./sudo.c:432

I'll have to get a debug version of the kerberos libraries to go
further.  I don't see an obvious cause in the sudo code itself.

                          :: Jeff Makey
                             jeff at sdsc.edu

More information about the sudo-users mailing list