summaryrefslogtreecommitdiff
path: root/cgpt/cmd_add.c
diff options
context:
space:
mode:
Diffstat (limited to 'cgpt/cmd_add.c')
-rw-r--r--cgpt/cmd_add.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/cgpt/cmd_add.c b/cgpt/cmd_add.c
index 5a752c76..3411925a 100644
--- a/cgpt/cmd_add.c
+++ b/cgpt/cmd_add.c
@@ -25,6 +25,7 @@ static void Usage(void)
" -t GUID Partition Type GUID\n"
" -u GUID Partition Unique ID\n"
" -l LABEL Label\n"
+ " -E NUM set Error counter flag (0|1)\n"
" -S NUM set Successful flag (0|1)\n"
" -T NUM set Tries flag (0-15)\n"
" -P NUM set Priority flag (0-15)\n"
@@ -48,7 +49,7 @@ int cmd_add(int argc, char *argv[]) {
char *e = 0;
opterr = 0; // quiet, you
- while ((c=getopt(argc, argv, ":hi:b:s:t:u:l:S:T:P:R:B:A:D:")) != -1)
+ while ((c=getopt(argc, argv, ":hi:b:s:t:u:l:E:S:T:P:R:B:A:D:")) != -1)
{
switch (c)
{
@@ -88,6 +89,12 @@ int cmd_add(int argc, char *argv[]) {
case 'l':
params.label = optarg;
break;
+ case 'E':
+ params.set_error_counter = 1;
+ params.error_counter = (uint32_t)strtoul(optarg, &e, 0);
+ errorcnt += check_int_parse(c, e);
+ errorcnt += check_int_limit(c, params.error_counter, 0, 1);
+ break;
case 'S':
params.set_successful = 1;
params.successful = (uint32_t)strtoul(optarg, &e, 0);