laforge has submitted this change. ( 
https://gerrit.osmocom.org/c/osmo-remsim/+/43352?usp=email )

Change subject: handle_options(): exit(2) if an unparsed argument was given
......................................................................

handle_options(): exit(2) if an unparsed argument was given

All osmo-remsim binaries are only supporting arguments starting with a dash 
('-'),
but no positional argument.
Ensure all binaries will exit when an positional argument was given and
do the same when an unrecognized argument was given.

Change-Id: I84658bda7614d9463bd7d20eb584da8e7050f1e5
---
M src/bankd/bankd_main.c
M src/client/remsim_client_main.c
M src/server/remsim_server.c
3 files changed, 28 insertions(+), 1 deletion(-)

Approvals:
  Jenkins Builder: Verified
  laforge: Looks good to me, approved




diff --git a/src/bankd/bankd_main.c b/src/bankd/bankd_main.c
index 9ef05a4..f924cfb 100644
--- a/src/bankd/bankd_main.c
+++ b/src/bankd/bankd_main.c
@@ -399,8 +399,20 @@
                case 'e':
                        log_set_log_level(osmo_stderr_target, atoi(optarg));
                        break;
+               case '?':
+                       /* unsupported/unrecognized argument */
+                       exit(2);
+                       break;
+               default:
+                       break;
                }
        }
+
+       if (argc > optind) {
+               while (optind < argc)
+                       fprintf(stderr, "Unsupported positional arguments on 
command line %s\n", argv[optind++]);
+               exit(2);
+       }
 }

 int main(int argc, char **argv)
diff --git a/src/client/remsim_client_main.c b/src/client/remsim_client_main.c
index ff89478..3145f49 100644
--- a/src/client/remsim_client_main.c
+++ b/src/client/remsim_client_main.c
@@ -163,10 +163,20 @@
                        cfg->usb.path = optarg;
                        break;
 #endif
+               case '?':
+                       /* unsupported/unrecognized argument */
+                       exit(2);
+                       break;
                default:
                        break;
                }
        }
+
+       if (argc > optind) {
+               while (optind < argc)
+                       fprintf(stderr, "Unsupported positional arguments on 
command line %s\n", argv[optind++]);
+               exit(2);
+       }
 }


diff --git a/src/server/remsim_server.c b/src/server/remsim_server.c
index 3687f15..1821938 100644
--- a/src/server/remsim_server.c
+++ b/src/server/remsim_server.c
@@ -71,6 +71,10 @@
                case 'L':
                        log_set_use_color(osmo_stderr_target, 0);
                        break;
+               case '?':
+                       /* unsupported/unrecognized argument */
+                       exit(2);
+                       break;
                default:
                        /* ignore */
                        break;
@@ -78,7 +82,8 @@
        }

        if (argc > optind) {
-               fprintf(stderr, "Unsupported extra positional arguments in 
command line\n");
+               while (optind < argc)
+                       fprintf(stderr, "Unsupported positional arguments on 
command line %s\n", argv[optind++]);
                exit(2);
        }
 }

--
To view, visit https://gerrit.osmocom.org/c/osmo-remsim/+/43352?usp=email
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings?usp=email

Gerrit-MessageType: merged
Gerrit-Project: osmo-remsim
Gerrit-Branch: master
Gerrit-Change-Id: I84658bda7614d9463bd7d20eb584da8e7050f1e5
Gerrit-Change-Number: 43352
Gerrit-PatchSet: 2
Gerrit-Owner: lynxis lazus <[email protected]>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <[email protected]>

Reply via email to