Lines Matching +full:bit +full:- +full:mask

2  * Copyright (c) 1997 - 2006 Kungliga Tekniska Högskolan
38 * util.c - functions for parsing, unparsing, and editing different
50 { "allow-digest", KRB5_KDB_ALLOW_DIGEST },
51 { "allow-kerberos4", KRB5_KDB_ALLOW_KERBEROS4 },
52 { "trusted-for-delegation", KRB5_KDB_TRUSTED_FOR_DELEGATION },
53 { "ok-as-delegate", KRB5_KDB_OK_AS_DELEGATE },
54 { "new-princ", KRB5_KDB_NEW_PRINC },
55 { "support-desmd5", KRB5_KDB_SUPPORT_DESMD5 },
56 { "pwchange-service", KRB5_KDB_PWCHANGE_SERVICE },
57 { "disallow-svr", KRB5_KDB_DISALLOW_SVR },
58 { "requires-pw-change", KRB5_KDB_REQUIRES_PWCHANGE },
59 { "requires-hw-auth", KRB5_KDB_REQUIRES_HW_AUTH },
60 { "requires-pre-auth", KRB5_KDB_REQUIRES_PRE_AUTH },
61 { "disallow-all-tix", KRB5_KDB_DISALLOW_ALL_TIX },
62 { "disallow-dup-skey", KRB5_KDB_DISALLOW_DUP_SKEY },
63 { "disallow-proxiable", KRB5_KDB_DISALLOW_PROXIABLE },
64 { "disallow-renewable", KRB5_KDB_DISALLOW_RENEWABLE },
65 { "disallow-tgt-based", KRB5_KDB_DISALLOW_TGT_BASED },
66 { "disallow-forwardable", KRB5_KDB_DISALLOW_FORWARDABLE },
67 { "disallow-postdated", KRB5_KDB_DISALLOW_POSTDATED },
84 * return 0 if parsed ok, else -1.
103 * setting the `bit' in `mask' if attributes are given and valid.
107 parse_attributes (const char *resp, krb5_flags *attr, int *mask, int bit) in parse_attributes() argument
113 if (mask) in parse_attributes()
114 *mask |= bit; in parse_attributes()
121 return -1; in parse_attributes()
129 edit_attributes (const char *prompt, krb5_flags *attr, int *mask, int bit) in edit_attributes() argument
133 if (mask && (*mask & bit)) in edit_attributes()
142 if (parse_attributes (resp, attr, mask, bit) == 0) in edit_attributes()
164 strftime(str, len, "%Y-%m-%d %H:%M:%S UTC", gmtime(&t)); in time_t2str()
166 strftime(str, len, "%Y-%m-%d", gmtime(&t)); in time_t2str()
173 * Return 0 if succesful, else -1.
192 return -1; in str2time_t()
207 p = strptime (str, "%Y-%m-%d", &tm); in str2time_t()
210 return -1; in str2time_t()
215 /* XXX this is really a bit optimistic, we should really complain in str2time_t()
237 parse_timet (const char *resp, krb5_timestamp *value, int *mask, int bit) in parse_timet() argument
243 if(mask) in parse_timet()
244 *mask |= bit; in parse_timet()
249 fprintf (stderr, "Print date on format YYYY-mm-dd [hh:mm:ss]\n"); in parse_timet()
250 return -1; in parse_timet()
258 edit_timet (const char *prompt, krb5_timestamp *value, int *mask, int bit) in edit_timet() argument
262 if (mask && (*mask & bit)) in edit_timet()
270 if (parse_timet (resp, value, mask, bit) == 0) in edit_timet()
296 * return 0 if ok, else -1
319 * `mask' will get the bit `bit' set if a value was given.
323 parse_deltat (const char *resp, krb5_deltat *value, int *mask, int bit) in parse_deltat() argument
329 if (mask) in parse_deltat()
330 *mask |= bit; in parse_deltat()
337 return -1; in parse_deltat()
345 edit_deltat (const char *prompt, krb5_deltat *value, int *mask, int bit) in edit_deltat() argument
349 if (mask && (*mask & bit)) in edit_deltat()
356 if (parse_deltat (resp, value, mask, bit) == 0) in edit_deltat()
367 set_defaults(kadm5_principal_ent_t ent, int *mask, in set_defaults() argument
372 && !(*mask & KADM5_MAX_LIFE)) in set_defaults()
373 ent->max_life = default_ent->max_life; in set_defaults()
377 && !(*mask & KADM5_MAX_RLIFE)) in set_defaults()
378 ent->max_renewable_life = default_ent->max_renewable_life; in set_defaults()
382 && !(*mask & KADM5_PRINC_EXPIRE_TIME)) in set_defaults()
383 ent->princ_expire_time = default_ent->princ_expire_time; in set_defaults()
387 && !(*mask & KADM5_PW_EXPIRATION)) in set_defaults()
388 ent->pw_expiration = default_ent->pw_expiration; in set_defaults()
392 && !(*mask & KADM5_ATTRIBUTES)) in set_defaults()
393 ent->attributes = default_ent->attributes & ~KRB5_KDB_DISALLOW_ALL_TIX; in set_defaults()
397 edit_entry(kadm5_principal_ent_t ent, int *mask, in edit_entry() argument
401 set_defaults(ent, mask, default_ent, default_mask); in edit_entry()
403 if(edit_deltat ("Max ticket life", &ent->max_life, mask, in edit_entry()
407 if(edit_deltat ("Max renewable life", &ent->max_renewable_life, mask, in edit_entry()
411 if(edit_timet ("Principal expiration time", &ent->princ_expire_time, mask, in edit_entry()
415 if(edit_timet ("Password expiration time", &ent->pw_expiration, mask, in edit_entry()
419 if(edit_attributes ("Attributes", &ent->attributes, mask, in edit_entry()
427 * Parse the arguments, set the fields in `ent' and the `mask' for the
435 int *mask, in set_entry() argument
443 if (parse_deltat (max_ticket_life, &ent->max_life, in set_entry()
444 mask, KADM5_MAX_LIFE)) { in set_entry()
450 if (parse_deltat (max_renewable_life, &ent->max_renewable_life, in set_entry()
451 mask, KADM5_MAX_RLIFE)) { in set_entry()
458 if (parse_timet (expiration, &ent->princ_expire_time, in set_entry()
459 mask, KADM5_PRINC_EXPIRE_TIME)) { in set_entry()
465 if (parse_timet (pw_expiration, &ent->pw_expiration, in set_entry()
466 mask, KADM5_PW_EXPIRATION)) { in set_entry()
472 if (parse_attributes (attributes, &ent->attributes, in set_entry()
473 mask, KADM5_ATTRIBUTES)) { in set_entry()
610 * return [0, 16) or -1
621 return -1; in hex2n()
623 return p - hexdigits; in hex2n()
649 *error = "non-hex character"; in parse_des_key()