int nnpfsdebug_print_cmd (int argc, char **argv) { int ret; int flags = 0; char *textflags; nnpfsdebug_units[0].mult = all; nnpfsdebug_units[1].mult = all & ~almost_all_mask; if (argc != 2 && argc != 3) { fprintf (stderr, "usage: nnpfsprint <"); print_flags_table (nnpfsdebug_units, stderr); fprintf (stderr, "> [filename]\n"); return 0; } textflags = argv[1]; ret = parse_flags (textflags, nnpfsdebug_units, flags); if (ret < 0) { fprintf (stderr, "nnpfsprint: unknown/bad flags `%s'\n", textflags); return 0; } flags = ret; ret = nnpfs_debug_print(flags, argv[2]); if (ret) fprintf (stderr, "nnpfsprint: %s\n", strerror(ret)); return 0; }
int nnpfsdebug_cmd (int argc, char **argv) { int ret; int flags; nnpfsdebug_units[0].mult = all; nnpfsdebug_units[1].mult = all & ~almost_all_mask; if ((argc > 1 && strncmp(argv[1], "-h", 2) == 0) || argc > 2) { fprintf (stderr, "usage: nnpfsdebug [-h] ["); print_flags_table (nnpfsdebug_units, stderr); fprintf (stderr, "]\n"); return 0; } ret = nnpfs_debug (-1, &flags); if (ret) { fprintf (stderr, "nnpfs_debug: %s\n", strerror(ret)); return 0; } if (argc == 1) { char buf[1024]; unparse_flags (flags, nnpfsdebug_units, buf, sizeof(buf)); printf("nnpfsdebug is: %s\n", buf); } else if (argc == 2) { char *textflags; textflags = argv[1]; ret = parse_flags (textflags, nnpfsdebug_units, flags); if (ret < 0) { fprintf (stderr, "nnpfsdebug: unknown/bad flags `%s'\n", textflags); return 0; } flags = ret; ret = nnpfs_debug(flags, NULL); if (ret) fprintf (stderr, "nnpfs_debug: %s\n", strerror(ret)); } return 0; }
int parse_attributes (const char *resp, krb5_flags *attr, int *mask, int bit) { krb5_flags tmp = *attr; if (str2attributes(resp, &tmp) == 0) { *attr = tmp; if (mask) *mask |= bit; return 0; } else if(*resp == '?') { print_flags_table (kdb_attrs, stderr); } else { fprintf (stderr, "Unable to parse \"%s\"\n", resp); } return -1; }
static void setup_env (krb5_context context, krb5_keytab *kt) { krb5_error_code ret; if (keytab_file) ret = krb5_kt_resolve (context, keytab_file, kt); else ret = krb5_kt_default (context, kt); if (ret) krb5_err (context, 1, ret, "resolving keytab"); if (client_principal_str == NULL) krb5_errx (context, 1, "missing client principal"); ret = krb5_parse_name (context, client_principal_str, &client_principal); if (ret) krb5_err (context, 1, ret, "resolvning client name"); if (server_principal_str == NULL) krb5_errx (context, 1, "missing server principal"); ret = krb5_parse_name (context, server_principal_str, &server_principal); if (ret) krb5_err (context, 1, ret, "resolvning server name"); /* If no session-enc-type specified on command line and this is an afs */ /* service ticket, change default of session_enc_type to DES. */ if (session_enctype_string == NULL && strcmp("afs", *server_principal->name.name_string.val) == 0) session_enc_type = "des-cbc-crc"; if (ticket_flags_str) { int ticket_flags_int; ticket_flags_int = parse_flags(ticket_flags_str, asn1_TicketFlags_units(), 0); if (ticket_flags_int <= 0) { krb5_warnx (context, "bad ticket flags: `%s'", ticket_flags_str); print_flags_table (asn1_TicketFlags_units(), stderr); exit (1); } if (ticket_flags_int) ticket_flags = int2TicketFlags (ticket_flags_int); } }
static void setup_env (krb5_context context, krb5_keytab *kt) { krb5_error_code ret; if (keytab_file) ret = krb5_kt_resolve (context, keytab_file, kt); else ret = krb5_kt_default (context, kt); if (ret) krb5_err (context, 1, ret, "resolving keytab"); if (client_principal_str == NULL) krb5_errx (context, 1, "missing client principal"); ret = krb5_parse_name (context, client_principal_str, &client_principal); if (ret) krb5_err (context, 1, ret, "resolvning client name"); if (server_principal_str == NULL) krb5_errx (context, 1, "missing server principal"); ret = krb5_parse_name (context, server_principal_str, &server_principal); if (ret) krb5_err (context, 1, ret, "resolvning client name"); if (ticket_flags_str) { int ticket_flags_int; ticket_flags_int = parse_flags(ticket_flags_str, asn1_TicketFlags_units(), 0); if (ticket_flags_int <= 0) { krb5_warnx (context, "bad ticket flags: `%s'", ticket_flags_str); print_flags_table (asn1_TicketFlags_units(), stderr); exit (1); } if (ticket_flags_int) ticket_flags = int2TicketFlags (ticket_flags_int); } }