Pull the unistd.h for optind and adjust the loop to follow the
in-documentation example.
Namely, we don't need the unused idx and removing the seemingly
infinite loop helps static analysers better reason about the code flow.
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Link: https://github.com/kmod-project/kmod/pull/195
Signed-off-by: Lucas De Marchi <lucas.de.marchi@gmail.com>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#include <unistd.h>
#include <shared/util.h>
size_t optslen = 0;
int verbose = LOG_ERR;
int use_syslog = 0;
- int i, r = 0;
+ int i, c, r = 0;
const char *null_config = NULL;
unsigned int flags = 0;
- for (;;) {
- int c, idx = 0;
- c = getopt_long(argc, argv, cmdopts_s, cmdopts, &idx);
- if (c == -1)
- break;
+ while ((c = getopt_long(argc, argv, cmdopts_s, cmdopts, NULL)) != -1) {
switch (c) {
case 'f':
flags |= KMOD_PROBE_FORCE_MODVERSION;