use parse_time to parse age

git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@8491 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
Johan Danielsson
2000-06-29 08:31:47 +00:00
parent 13e58d4142
commit 9fa736c820

View File

@@ -101,9 +101,10 @@ kt_purge(int argc, char **argv)
krb5_kt_cursor cursor; krb5_kt_cursor cursor;
krb5_keytab_entry entry; krb5_keytab_entry entry;
int help_flag = 0; int help_flag = 0;
int age = 7 * 24 * 60 * 60; char *age_str = "1 week";
int age;
struct getargs args[] = { struct getargs args[] = {
{ "age", 0, arg_integer, NULL, "age to retire" }, { "age", 0, arg_string, NULL, "age to retire" },
{ "help", 'h', arg_flag, NULL } { "help", 'h', arg_flag, NULL }
}; };
int num_args = sizeof(args) / sizeof(args[0]); int num_args = sizeof(args) / sizeof(args[0]);
@@ -112,7 +113,7 @@ kt_purge(int argc, char **argv)
struct e *head = NULL; struct e *head = NULL;
time_t judgement_day; time_t judgement_day;
args[i++].value = &age; args[i++].value = &age_str;
args[i++].value = &help_flag; args[i++].value = &help_flag;
if(getarg(args, num_args, argc, argv, &optind)) { if(getarg(args, num_args, argc, argv, &optind)) {
@@ -124,6 +125,12 @@ kt_purge(int argc, char **argv)
return 0; return 0;
} }
age = parse_time(age_str, "s");
if(age < 0) {
krb5_warnx(context, "unparasable time `%s'", age_str);
return 0;
}
ret = krb5_kt_start_seq_get(context, keytab, &cursor); ret = krb5_kt_start_seq_get(context, keytab, &cursor);
if(ret){ if(ret){
krb5_warn(context, ret, "krb5_kt_start_seq_get %s", keytab_string); krb5_warn(context, ret, "krb5_kt_start_seq_get %s", keytab_string);