aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2017-08-12 14:52:15 +0200
committerHarald Welte <laforge@gnumonks.org>2017-08-12 15:11:45 +0200
commitdc1870f33dc0a96f24bb3237ec8c42e110734464 (patch)
tree86fe21dac77b71cff131750b8dc76b2e1c0b064b
parent23eea1d132120198745dcca32728906d5f05dc5f (diff)
gtp-kernel: Remove dependency to cmdline.[ch]
-rw-r--r--ggsn/gtp-kernel.c13
-rw-r--r--ggsn/gtp-kernel.h13
2 files changed, 7 insertions, 19 deletions
diff --git a/ggsn/gtp-kernel.c b/ggsn/gtp-kernel.c
index 458ac27..f98586d 100644
--- a/ggsn/gtp-kernel.c
+++ b/ggsn/gtp-kernel.c
@@ -27,7 +27,6 @@
#include "../lib/syserr.h"
#include "../gtp/pdp.h"
#include "../gtp/gtp.h"
-#include "cmdline.h"
#include <libgtpnl/gtp.h>
#include <libgtpnl/gtpnl.h>
@@ -80,12 +79,8 @@ static struct {
#define GTP_DEVNAME "gtp0"
int gtp_kernel_init(struct gsn_t *gsn, struct in_addr *net,
- size_t prefixlen,
- struct gengetopt_args_info *args_info)
+ size_t prefixlen, const char *net_arg)
{
- if (!args_info->gtp_linux_given)
- return 0;
-
if (gtp_dev_create(-1, GTP_DEVNAME, gsn->fd0, gsn->fd1u) < 0) {
SYS_ERR(DGGSN, LOGL_ERROR, 0,
"cannot create GTP tunnel device: %s\n",
@@ -113,12 +108,12 @@ int gtp_kernel_init(struct gsn_t *gsn, struct in_addr *net,
}
DEBUGP(DGGSN, "Setting route to reach %s via %s\n",
- args_info->net_arg, GTP_DEVNAME);
+ net_arg, GTP_DEVNAME);
if (gtp_dev_config(GTP_DEVNAME, net, prefixlen) < 0) {
SYS_ERR(DGGSN, LOGL_ERROR, 0,
"Cannot add route to reach network %s\n",
- args_info->net_arg);
+ net_arg);
}
/* launch script if it is set to bring up the route to reach
@@ -132,7 +127,7 @@ int gtp_kernel_init(struct gsn_t *gsn, struct in_addr *net,
/* eg. /home/ggsn/ipup gtp0 10.0.0.0/8 */
snprintf(cmd, sizeof(cmd), "%s %s %s",
- ipup, GTP_DEVNAME, args_info->net_arg);
+ ipup, GTP_DEVNAME, net_arg);
cmd[sizeof(cmd)-1] = '\0';
err = system(cmd);
diff --git a/ggsn/gtp-kernel.h b/ggsn/gtp-kernel.h
index b3b29e3..0f7bb9c 100644
--- a/ggsn/gtp-kernel.h
+++ b/ggsn/gtp-kernel.h
@@ -8,8 +8,7 @@ extern char *ipup;
#ifdef GTP_KERNEL
int gtp_kernel_init(struct gsn_t *gsn, struct in_addr *net,
- size_t prefixlen,
- struct gengetopt_args_info *args_info);
+ size_t prefixlen, const char *net_arg);
void gtp_kernel_stop(void);
int gtp_kernel_tunnel_add(struct pdp_t *pdp);
@@ -19,15 +18,9 @@ int gtp_kernel_enabled(void);
#else
static inline int gtp_kernel_init(struct gsn_t *gsn, struct in_addr *net,
- size_t prefixlen,
- struct gengetopt_args_info *args_info)
+ size_t prefixlen, const char *net_arg)
{
- if (args_info->gtp_linux_given) {
- SYS_ERR(DGGSN, LOGL_ERROR, 0,
- "ggsn compiled without GTP kernel support!\n");
- return -1;
- }
- return 0;
+ return -1;
}
static inline void gtp_kernel_stop(void) {}