1
0
mirror of https://passt.top/passt synced 2024-07-01 23:42:41 +00:00

Don't shadow 'i' in conf_ports()

The counter 'i' is used in a number of places in conf_ports(), but in one
of those we unnecessarily shadow it in an inner scope.  We could re-use the
same 'i' every time, but each use is logically separate, so instead remove
the outer declaration and declare it locally in each of the clauses where
we need it.

While we're there change it from a signed to unsigned int, since it's used
to iterate over port numbers which are generally treated as unsigned.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
This commit is contained in:
David Gibson 2022-09-28 14:33:20 +10:00 committed by Stefano Brivio
parent eb5e123038
commit ab96da98cd

7
conf.c
View File

@ -183,7 +183,6 @@ static int conf_ports(const struct ctx *c, char optname, const char *optarg,
char buf[BUFSIZ], *spec, *p;
sa_family_t af = AF_UNSPEC;
bool exclude_only = true;
unsigned i;
if (!strcmp(optarg, "none")) {
if (fwd->mode)
@ -200,7 +199,7 @@ static int conf_ports(const struct ctx *c, char optname, const char *optarg,
}
if (!strcmp(optarg, "all")) {
int i;
unsigned i;
if (fwd->mode || c->mode != MODE_PASST)
return -EINVAL;
@ -247,6 +246,7 @@ static int conf_ports(const struct ctx *c, char optname, const char *optarg,
p = spec;
do {
struct port_range xrange;
unsigned i;
if (*p != '~') {
/* Not an exclude range, parse later */
@ -268,6 +268,8 @@ static int conf_ports(const struct ctx *c, char optname, const char *optarg,
} while ((p = next_chunk(p, ',')));
if (exclude_only) {
unsigned i;
for (i = 0; i < PORT_EPHEMERAL_MIN; i++) {
if (bitmap_isset(exclude, i))
continue;
@ -287,6 +289,7 @@ static int conf_ports(const struct ctx *c, char optname, const char *optarg,
p = spec;
do {
struct port_range orig_range, mapped_range;
unsigned i;
if (*p == '~')
/* Exclude range, already parsed */