diff options
author | Phil Oester <kernel@linuxace.com> | 2006-07-20 17:01:54 +0000 |
---|---|---|
committer | Patrick McHardy <kaber@trash.net> | 2006-07-20 17:01:54 +0000 |
commit | dbac8ad71c3c418fd8a62c08211885a38177b725 (patch) | |
tree | f12056e44275c023cef77e131ef9038e9efc3915 /extensions/libipt_sctp.c | |
parent | 58179b1d0d1722ea16028aa2ea9d74afc86dd5dc (diff) |
reduce parse_*_port duplication (Phil Oester <kernel@linuxace.com>)
The below patch (dependent upon my 'reduce service_to_port duplication' patch)
centralizes the parse_*_port functions into parse_port.
Diffstat (limited to 'extensions/libipt_sctp.c')
-rw-r--r-- | extensions/libipt_sctp.c | 20 |
1 files changed, 3 insertions, 17 deletions
diff --git a/extensions/libipt_sctp.c b/extensions/libipt_sctp.c index 06c48b4e..0354d191 100644 --- a/extensions/libipt_sctp.c +++ b/extensions/libipt_sctp.c @@ -79,20 +79,6 @@ static struct option opts[] = { { .name = 0 } }; -static u_int16_t -parse_sctp_port(const char *port) -{ - unsigned int portnum; - - DEBUGP("%s\n", port); - if (string_to_number(port, 0, 65535, &portnum) != -1 || - (portnum = service_to_port(port, "sctp")) != -1) - return (u_int16_t)portnum; - - exit_error(PARAMETER_PROBLEM, - "invalid SCTP port/service `%s' specified", port); -} - static void parse_sctp_ports(const char *portstring, u_int16_t *ports) @@ -103,14 +89,14 @@ parse_sctp_ports(const char *portstring, buffer = strdup(portstring); DEBUGP("%s\n", portstring); if ((cp = strchr(buffer, ':')) == NULL) { - ports[0] = ports[1] = parse_sctp_port(buffer); + ports[0] = ports[1] = parse_port(buffer, "sctp"); } else { *cp = '\0'; cp++; - ports[0] = buffer[0] ? parse_sctp_port(buffer) : 0; - ports[1] = cp[0] ? parse_sctp_port(cp) : 0xFFFF; + ports[0] = buffer[0] ? parse_port(buffer, "sctp") : 0; + ports[1] = cp[0] ? parse_port(cp, "sctp") : 0xFFFF; if (ports[0] > ports[1]) exit_error(PARAMETER_PROBLEM, |