version 1.7, 2004/09/18 19:33:58 |
version 1.8, 2006/01/22 06:04:28 |
|
|
char pwbuf[BUFSIZ]; |
char pwbuf[BUFSIZ]; |
krb5_creds cred; |
krb5_creds cred; |
int result_code; |
int result_code; |
|
uid_t uid; |
|
|
|
uid = getuid(); |
|
if (setresuid(uid, uid, uid)) { |
|
errx(1, "can't drop privileges\n"); |
|
} |
|
|
krb5_get_init_creds_opt_init (&opt); |
krb5_get_init_creds_opt_init (&opt); |
|
|
krb5_get_init_creds_opt_set_tkt_life (&opt, 300); |
krb5_get_init_creds_opt_set_tkt_life (&opt, 300); |
|
|
|
|
if (argv[0]) { |
if (argv[0]) { |
ret = krb5_parse_name(context, argv[0], &principal); |
ret = krb5_parse_name(context, argv[0], &principal); |
if (ret) |
if (ret) |
krb5_err(context, 1, ret, "krb5_parse_name"); |
krb5_err(context, 1, ret, "krb5_parse_name"); |
} else |
} else { |
principal = NULL; |
ret = krb5_get_default_principal (context, &principal); |
|
if (ret) |
|
krb5_err (context, 1, ret, "krb5_get_default_principal"); |
|
} |
|
|
ret = krb5_get_init_creds_password (context, &cred, |
ret = krb5_get_init_creds_password (context, &cred, |
principal, NULL, krb5_prompter_posix, NULL, 0, |
principal, NULL, krb5_prompter_posix, NULL, 0, |