MCPcopy Create free account
hub / github.com/coreboot/coreboot / parse_nvramtool_args

Function parse_nvramtool_args

util/nvramtool/cli/opts.c:23–142  ·  view source on GitHub ↗

* parse_nvramtool_args * * Parse command line arguments. ****************************************************************************/

Source from the content-addressed store, hash-verified

21 * Parse command line arguments.
22 ****************************************************************************/
23void parse_nvramtool_args(int argc, char *argv[])
24{
25 nvramtool_op_modifier_info_t *mod_info;
26 int i, op_found, c;
27
28 for (i = 0, mod_info = nvramtool_op_modifiers;
29 i < NVRAMTOOL_NUM_OP_MODIFIERS; i++, mod_info++) {
30 mod_info->found = FALSE;
31 mod_info->found_seq = 0;
32 mod_info->param = NULL;
33 }
34
35 op_found = FALSE;
36 opterr = 0;
37
38 do {
39 switch (c = getopt(argc, argv, getopt_string)) {
40 case 'a':
41 register_op(&op_found,
42 NVRAMTOOL_OP_CMOS_SHOW_ALL_PARAMS, NULL);
43 break;
44 case 'b':
45 register_op(&op_found, NVRAMTOOL_OP_WRITE_CMOS_DUMP,
46 optarg);
47 break;
48 case 'B':
49 register_op(&op_found, NVRAMTOOL_OP_READ_CMOS_DUMP,
50 optarg);
51 break;
52 case 'c':
53 register_op(&op_found, NVRAMTOOL_OP_CMOS_CHECKSUM,
54 handle_optional_arg(argc, argv));
55 break;
56 case 'C':
57 register_op_modifier(NVRAMTOOL_MOD_USE_CBFS_FILE,
58 optarg);
59 break;
60 case 'd':
61 register_op(&op_found, NVRAMTOOL_OP_LBTABLE_DUMP, NULL);
62 break;
63 case 'D':
64 register_op_modifier(NVRAMTOOL_MOD_USE_CMOS_FILE,
65 optarg);
66 break;
67 case 'e':
68 register_op(&op_found, NVRAMTOOL_OP_SHOW_PARAM_VALUES,
69 optarg);
70 break;
71 case 'h':
72 register_op(&op_found, NVRAMTOOL_OP_SHOW_USAGE, NULL);
73 break;
74 case 'H':
75 register_op(&op_found, NVRAMTOOL_OP_WRITE_HEADER_FILE, optarg);
76 break;
77 case 'i':
78 register_op(&op_found,
79 NVRAMTOOL_OP_CMOS_SET_PARAMS_STDIN, NULL);
80 break;

Callers 1

mainFunction · 0.85

Calls 7

getoptFunction · 0.85
register_opFunction · 0.85
handle_optional_argFunction · 0.85
register_op_modifierFunction · 0.85
resolve_op_modifiersFunction · 0.85
sanity_check_argsFunction · 0.85
usageFunction · 0.50

Tested by

no test coverage detected