diff options
Diffstat (limited to 'openbsc/src/gprs/gb_proxy_main.c')
-rw-r--r-- | openbsc/src/gprs/gb_proxy_main.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/openbsc/src/gprs/gb_proxy_main.c b/openbsc/src/gprs/gb_proxy_main.c index 68d07ae32..1b39a2e72 100644 --- a/openbsc/src/gprs/gb_proxy_main.c +++ b/openbsc/src/gprs/gb_proxy_main.c @@ -238,12 +238,22 @@ int main(int argc, char **argv) exit(2); } - rc = nsip_listen(bssgp_nsi, gbcfg.nsip_listen_port); + rc = nsip_listen(bssgp_nsi, gbcfg.nsip_listen_ip, + gbcfg.nsip_listen_port); if (rc < 0) { LOGP(DGPRS, LOGL_FATAL, "Cannot bind/listen on NSIP socket\n"); exit(2); } + if (gbcfg.frgre_enabled) { + rc = gprs_ns_frgre_listen(bssgp_nsi, gbcfg.nsip_listen_ip); + if (rc < 0) { + LOGP(DGPRS, LOGL_FATAL, "Cannot bind/listen GRE " + "socket. Do you have CAP_NET_RAW?\n"); + exit(2); + } + } + /* Reset all the persistent NS-VCs that we've read from the config */ gbprox_reset_persistent_nsvcs(bssgp_nsi); |