forked from acouzens/open5gs
cellwire -> nextepc
This commit is contained in:
parent
4a7f43f97a
commit
2f4a8b4d63
|
@ -11,12 +11,12 @@ Build from Git
|
||||||
==============
|
==============
|
||||||
|
|
||||||
test -f configure || autoreconf -iv
|
test -f configure || autoreconf -iv
|
||||||
CFLAGS='-g3' ./configure --prefix=$HOME/Documents/git/cellwire/install
|
CFLAGS='-g3' ./configure --prefix=$HOME/Documents/git/nextepc/install
|
||||||
make -j `nproc`
|
make -j `nproc`
|
||||||
sudo ip tuntap add name pgwtun mode tun
|
sudo ip tuntap add name pgwtun mode tun
|
||||||
sudo ./scripts/linux_netconfig.sh
|
sudo ./scripts/linux_netconfig.sh
|
||||||
sudo ./test/testcellwire
|
sudo ./test/testnextepc
|
||||||
./cellwired
|
./nextepcd
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -4,12 +4,12 @@ ACLOCAL_AMFLAGS = -I m4
|
||||||
|
|
||||||
SUBDIRS = lib src test
|
SUBDIRS = lib src test
|
||||||
|
|
||||||
bin_PROGRAMS = cellwired
|
bin_PROGRAMS = nextepcd
|
||||||
|
|
||||||
dist_cellwired_SOURCES = main.c
|
dist_nextepcd_SOURCES = main.c
|
||||||
|
|
||||||
cellwired_LDADD = \
|
nextepcd_LDADD = \
|
||||||
$(top_srcdir)/src/libcellwire.la
|
$(top_srcdir)/src/libnextepc.la
|
||||||
|
|
||||||
AM_CPPFLAGS = \
|
AM_CPPFLAGS = \
|
||||||
-I$(top_srcdir)/lib/core/include \
|
-I$(top_srcdir)/lib/core/include \
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
CellWire is an implementation of 3GPP EPC(MME, SGW, PGW, HSS)
|
NextEPC is an implementation of 3GPP EPC(MME, SGW, PGW, HSS)
|
||||||
|
|
||||||
The implementation consists in several components:
|
The implementation consists in several components:
|
||||||
- lib/core : the library contains the core of the framework.
|
- lib/core : the library contains the core of the framework.
|
||||||
|
|
10
configure.ac
10
configure.ac
|
@ -8,7 +8,7 @@ dnl This program is distributed in the hope that it will be useful, but
|
||||||
dnl WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
|
dnl WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
|
||||||
dnl implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
dnl implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
|
|
||||||
AC_INIT([CELLWIRE], [0.1.0], [acetcom@gmail.com])
|
AC_INIT([NEXTEPC], [0.1.0], [acetcom@gmail.com])
|
||||||
|
|
||||||
CORE_CONFIG_NICE(config.nice)
|
CORE_CONFIG_NICE(config.nice)
|
||||||
|
|
||||||
|
@ -41,15 +41,15 @@ AC_SUBST(OSCPPFLAGS)
|
||||||
AC_SUBST(OSDIR)
|
AC_SUBST(OSDIR)
|
||||||
|
|
||||||
AH_TOP([
|
AH_TOP([
|
||||||
#ifndef __CELLWIRE_CONFIG_H__
|
#ifndef __NEXTEPC_CONFIG_H__
|
||||||
#define __CELLWIRE_CONFIG_H__
|
#define __NEXTEPC_CONFIG_H__
|
||||||
/* need this, because some autoconf tests rely on this (e.g. stpcpy)
|
/* need this, because some autoconf tests rely on this (e.g. stpcpy)
|
||||||
* and it should be used for new programs */
|
* and it should be used for new programs */
|
||||||
#define _GNU_SOURCE 1
|
#define _GNU_SOURCE 1
|
||||||
])
|
])
|
||||||
|
|
||||||
AH_BOTTOM([
|
AH_BOTTOM([
|
||||||
#endif /* __CELLWIRE_CONFIG_H__ */
|
#endif /* __NEXTEPC_CONFIG_H__ */
|
||||||
])
|
])
|
||||||
|
|
||||||
AH_VERBATIM([_REENTRANT],
|
AH_VERBATIM([_REENTRANT],
|
||||||
|
@ -323,7 +323,7 @@ AC_CONFIG_FILES([Makefile])
|
||||||
AC_OUTPUT
|
AC_OUTPUT
|
||||||
|
|
||||||
echo "
|
echo "
|
||||||
CellWire configuration
|
NextEPC configuration
|
||||||
--------------------
|
--------------------
|
||||||
version : ${PACKAGE_VERSION}
|
version : ${PACKAGE_VERSION}
|
||||||
host : ${host}
|
host : ${host}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2017, CellWire Group
|
* Copyright (c) 2017, NextEPC Group
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2017, CellWire Group
|
* Copyright (c) 2017, NextEPC Group
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2017, CellWire Group
|
* Copyright (c) 2017, NextEPC Group
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
|
|
||||||
* Install python-pip
|
* Install python-pip
|
||||||
user@host ~/Documents/git/cellwire/lib/gtp/support$ \
|
user@host ~/Documents/git/nextepc/lib/gtp/support$ \
|
||||||
sudo apt-get install python-pip
|
sudo apt-get install python-pip
|
||||||
|
|
||||||
* Install python-docx
|
* Install python-docx
|
||||||
user@host ~/Documents/git/cellwire/lib/gtp/support$ \
|
user@host ~/Documents/git/nextepc/lib/gtp/support$ \
|
||||||
sudo pip install python-docx
|
sudo pip install python-docx
|
||||||
|
|
||||||
* Change the format of standard specification
|
* Change the format of standard specification
|
||||||
|
@ -12,5 +12,5 @@ user@host ~/Documents/git/cellwire/lib/gtp/support$ \
|
||||||
using Microsoft Office 2007+
|
using Microsoft Office 2007+
|
||||||
|
|
||||||
* Generate TLV support files
|
* Generate TLV support files
|
||||||
user@host ~/Documents/git/cellwire/lib/s1ap/support$ \
|
user@host ~/Documents/git/nextepc/lib/s1ap/support$ \
|
||||||
python gtp_tlv.py -f 29274-d80.docx -o ..
|
python gtp_tlv.py -f 29274-d80.docx -o ..
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
#
|
#
|
||||||
# Copyright (c) 2017, CellWire Group
|
# Copyright (c) 2017, NextEPC Group
|
||||||
# All rights reserved.
|
# All rights reserved.
|
||||||
#
|
#
|
||||||
# Redistribution and use in source and binary forms, with or without
|
# Redistribution and use in source and binary forms, with or without
|
||||||
|
@ -61,7 +61,7 @@ def write_file(f, string):
|
||||||
def output_header_to_file(f):
|
def output_header_to_file(f):
|
||||||
now = datetime.datetime.now()
|
now = datetime.datetime.now()
|
||||||
f.write("""/*
|
f.write("""/*
|
||||||
* Copyright (c) 2017, CellWire Group
|
* Copyright (c) 2017, NextEPC Group
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2017, CellWire Group
|
* Copyright (c) 2017, NextEPC Group
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2017, CellWire Group
|
* Copyright (c) 2017, NextEPC Group
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2017, CellWire Group
|
* Copyright (c) 2017, NextEPC Group
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2017, CellWire Group
|
* Copyright (c) 2017, NextEPC Group
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2017, CellWire Group
|
* Copyright (c) 2017, NextEPC Group
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
|
|
||||||
* Install python-pip
|
* Install python-pip
|
||||||
user@host ~/Documents/git/cellwire/lib/gtp/support$ \
|
user@host ~/Documents/git/nextepc/lib/gtp/support$ \
|
||||||
sudo apt-get install python-pip
|
sudo apt-get install python-pip
|
||||||
|
|
||||||
* Install python-docx
|
* Install python-docx
|
||||||
user@host ~/Documents/git/cellwire/lib/gtp/support$ \
|
user@host ~/Documents/git/nextepc/lib/gtp/support$ \
|
||||||
sudo pip install python-docx
|
sudo pip install python-docx
|
||||||
|
|
||||||
* Change the format of standard specification
|
* Change the format of standard specification
|
||||||
|
@ -12,5 +12,5 @@ user@host ~/Documents/git/cellwire/lib/gtp/support$ \
|
||||||
using Microsoft Office 2007+
|
using Microsoft Office 2007+
|
||||||
|
|
||||||
* Generate Message support files
|
* Generate Message support files
|
||||||
user@host ~/Documents/git/cellwire/lib/s1ap/support$ \
|
user@host ~/Documents/git/nextepc/lib/s1ap/support$ \
|
||||||
python nas_message.py -f 24301-d80.docx -o ..
|
python nas_message.py -f 24301-d80.docx -o ..
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
#
|
#
|
||||||
# Copyright (c) 2017, CellWire Group
|
# Copyright (c) 2017, NextEPC Group
|
||||||
# All rights reserved.
|
# All rights reserved.
|
||||||
#
|
#
|
||||||
# Redistribution and use in source and binary forms, with or without
|
# Redistribution and use in source and binary forms, with or without
|
||||||
|
@ -61,7 +61,7 @@ def write_file(f, string):
|
||||||
def output_header_to_file(f):
|
def output_header_to_file(f):
|
||||||
now = datetime.datetime.now()
|
now = datetime.datetime.now()
|
||||||
f.write("""/*
|
f.write("""/*
|
||||||
* Copyright (c) 2017, CellWire Group
|
* Copyright (c) 2017, NextEPC Group
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
#
|
#
|
||||||
# Copyright (c) 2017, CellWire Group
|
# Copyright (c) 2017, NextEPC Group
|
||||||
# All rights reserved.
|
# All rights reserved.
|
||||||
#
|
#
|
||||||
# Redistribution and use in source and binary forms, with or without
|
# Redistribution and use in source and binary forms, with or without
|
||||||
|
|
16
main.c
16
main.c
|
@ -8,13 +8,13 @@
|
||||||
#include "core_signal.h"
|
#include "core_signal.h"
|
||||||
|
|
||||||
/* Server */
|
/* Server */
|
||||||
#include "cellwire.h"
|
#include "nextepc.h"
|
||||||
|
|
||||||
static char *compile_time = __DATE__ " " __TIME__;
|
static char *compile_time = __DATE__ " " __TIME__;
|
||||||
|
|
||||||
static void show_version()
|
static void show_version()
|
||||||
{
|
{
|
||||||
printf("CellWire daemon v%s - %s\n", PACKAGE_VERSION, compile_time);
|
printf("NextEPC daemon v%s - %s\n", PACKAGE_VERSION, compile_time);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void show_help()
|
static void show_help()
|
||||||
|
@ -22,7 +22,7 @@ static void show_help()
|
||||||
show_version();
|
show_version();
|
||||||
|
|
||||||
printf("\n"
|
printf("\n"
|
||||||
"Usage: cellwired [arguments]\n"
|
"Usage: nextepcd [arguments]\n"
|
||||||
"\n"
|
"\n"
|
||||||
"Arguments:\n"
|
"Arguments:\n"
|
||||||
" -v Show version\n"
|
" -v Show version\n"
|
||||||
|
@ -146,19 +146,19 @@ int main(int argc, char *argv[])
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
if (cellwire_initialize(config_path, log_path) != CORE_OK)
|
if (nextepc_initialize(config_path, log_path) != CORE_OK)
|
||||||
{
|
{
|
||||||
d_fatal("CellWire initialization failed. Aborted");
|
d_fatal("NextEPC initialization failed. Aborted");
|
||||||
return EXIT_FAILURE;
|
return EXIT_FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
show_version();
|
show_version();
|
||||||
d_info("CellWire daemon start");
|
d_info("NextEPC daemon start");
|
||||||
signal_thread(check_signal);
|
signal_thread(check_signal);
|
||||||
|
|
||||||
d_info("CellWire daemon terminating...");
|
d_info("NextEPC daemon terminating...");
|
||||||
|
|
||||||
cellwire_terminate();
|
nextepc_terminate();
|
||||||
|
|
||||||
return EXIT_SUCCESS;
|
return EXIT_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,22 +2,22 @@
|
||||||
|
|
||||||
SUBDIRS = mme hss sgw pgw
|
SUBDIRS = mme hss sgw pgw
|
||||||
|
|
||||||
noinst_LTLIBRARIES = libcellwire.la
|
noinst_LTLIBRARIES = libnextepc.la
|
||||||
|
|
||||||
libcellwire_la_SOURCES = \
|
libnextepc_la_SOURCES = \
|
||||||
cellwire.h
|
nextepc.h
|
||||||
|
|
||||||
nodist_libcellwire_la_SOURCES = \
|
nodist_libnextepc_la_SOURCES = \
|
||||||
init.c
|
init.c
|
||||||
|
|
||||||
libcellwire_la_DEPENDENCIES = \
|
libnextepc_la_DEPENDENCIES = \
|
||||||
$(top_srcdir)/lib/logger/liblogger.la \
|
$(top_srcdir)/lib/logger/liblogger.la \
|
||||||
$(top_srcdir)/src/mme/libmme.la \
|
$(top_srcdir)/src/mme/libmme.la \
|
||||||
$(top_srcdir)/src/hss/libhss.la \
|
$(top_srcdir)/src/hss/libhss.la \
|
||||||
$(top_srcdir)/src/sgw/libsgw.la \
|
$(top_srcdir)/src/sgw/libsgw.la \
|
||||||
$(top_srcdir)/src/pgw/libpgw.la
|
$(top_srcdir)/src/pgw/libpgw.la
|
||||||
|
|
||||||
libcellwire_la_LIBADD = \
|
libnextepc_la_LIBADD = \
|
||||||
$(top_srcdir)/lib/logger/liblogger.la \
|
$(top_srcdir)/lib/logger/liblogger.la \
|
||||||
$(top_srcdir)/src/mme/libmme.la \
|
$(top_srcdir)/src/mme/libmme.la \
|
||||||
$(top_srcdir)/src/hss/libhss.la \
|
$(top_srcdir)/src/hss/libhss.la \
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#define TRACE_MODULE _cellwire_init
|
#define TRACE_MODULE _nextepc_init
|
||||||
|
|
||||||
#include "core_general.h"
|
#include "core_general.h"
|
||||||
#include "core_debug.h"
|
#include "core_debug.h"
|
||||||
|
@ -9,7 +9,7 @@
|
||||||
|
|
||||||
#include "logger.h"
|
#include "logger.h"
|
||||||
|
|
||||||
#include "cellwire.h"
|
#include "nextepc.h"
|
||||||
|
|
||||||
static pid_t hss_pid;
|
static pid_t hss_pid;
|
||||||
static pid_t logger_pid;
|
static pid_t logger_pid;
|
||||||
|
@ -18,7 +18,7 @@ static thread_id net_thread;
|
||||||
static int check_signal(int signum);
|
static int check_signal(int signum);
|
||||||
void *THREAD_FUNC net_main(thread_id id, void *data);
|
void *THREAD_FUNC net_main(thread_id id, void *data);
|
||||||
|
|
||||||
status_t cellwire_initialize(char *config_path, char *log_path)
|
status_t nextepc_initialize(char *config_path, char *log_path)
|
||||||
{
|
{
|
||||||
status_t rv;
|
status_t rv;
|
||||||
semaphore_id semaphore;
|
semaphore_id semaphore;
|
||||||
|
@ -75,7 +75,7 @@ status_t cellwire_initialize(char *config_path, char *log_path)
|
||||||
return CORE_OK;
|
return CORE_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
void cellwire_terminate(void)
|
void nextepc_terminate(void)
|
||||||
{
|
{
|
||||||
thread_delete(net_thread);
|
thread_delete(net_thread);
|
||||||
mme_terminate();
|
mme_terminate();
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
#ifndef __CELLWIRE_H__
|
#ifndef __NEXTEPC_H__
|
||||||
#define __CELLWIRE_H__
|
#define __NEXTEPC_H__
|
||||||
|
|
||||||
#include "core.h"
|
#include "core.h"
|
||||||
#include "core_errno.h"
|
#include "core_errno.h"
|
||||||
|
@ -8,8 +8,8 @@
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#endif /* __cplusplus */
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
CORE_DECLARE(status_t) cellwire_initialize(char *config_path, char *log_path);
|
CORE_DECLARE(status_t) nextepc_initialize(char *config_path, char *log_path);
|
||||||
CORE_DECLARE_NONSTD(void) cellwire_terminate(void);
|
CORE_DECLARE_NONSTD(void) nextepc_terminate(void);
|
||||||
|
|
||||||
CORE_DECLARE(status_t) mme_initialize();
|
CORE_DECLARE(status_t) mme_initialize();
|
||||||
CORE_DECLARE_NONSTD(void) mme_terminate(void);
|
CORE_DECLARE_NONSTD(void) mme_terminate(void);
|
||||||
|
@ -27,4 +27,4 @@ CORE_DECLARE_NONSTD(void) pgw_terminate(void);
|
||||||
}
|
}
|
||||||
#endif /* __cplusplus */
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
#endif /* !__CELLWIRE_H__ */
|
#endif /* !__NEXTEPC_H__ */
|
|
@ -1,8 +1,8 @@
|
||||||
## Process this file with automake to produce Makefile.in.
|
## Process this file with automake to produce Makefile.in.
|
||||||
|
|
||||||
bin_PROGRAMS = testcellwire
|
bin_PROGRAMS = testnextepc
|
||||||
|
|
||||||
testcellwire_SOURCES = \
|
testnextepc_SOURCES = \
|
||||||
abts.h abts_tests.h testutil.h \
|
abts.h abts_tests.h testutil.h \
|
||||||
abts.c testutil.c tests1ap.h tests1ap.c \
|
abts.c testutil.c tests1ap.h tests1ap.c \
|
||||||
3gpp_test.c \
|
3gpp_test.c \
|
||||||
|
@ -10,8 +10,8 @@ testcellwire_SOURCES = \
|
||||||
security_test.c \
|
security_test.c \
|
||||||
s1ap_sm_test.c nas_sm_test.c
|
s1ap_sm_test.c nas_sm_test.c
|
||||||
|
|
||||||
testcellwire_LDADD = \
|
testnextepc_LDADD = \
|
||||||
$(top_srcdir)/src/libcellwire.la
|
$(top_srcdir)/src/libnextepc.la
|
||||||
|
|
||||||
AM_CPPFLAGS = \
|
AM_CPPFLAGS = \
|
||||||
-I$(top_srcdir)/lib/core/include \
|
-I$(top_srcdir)/lib/core/include \
|
||||||
|
@ -30,7 +30,7 @@ AM_CFLAGS = \
|
||||||
-Wall -Werror \
|
-Wall -Werror \
|
||||||
-Wno-unused-function -Wno-unused-variable
|
-Wno-unused-function -Wno-unused-variable
|
||||||
|
|
||||||
TESTS = testcellwire
|
TESTS = testnextepc
|
||||||
|
|
||||||
MAINTAINERCLEANFILES = Makefile.in
|
MAINTAINERCLEANFILES = Makefile.in
|
||||||
MOSTLYCLEANFILES = core *.stackdump
|
MOSTLYCLEANFILES = core *.stackdump
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
|
|
||||||
#include "core_debug.h"
|
#include "core_debug.h"
|
||||||
|
|
||||||
#include "cellwire.h"
|
#include "nextepc.h"
|
||||||
#include "mme_context.h"
|
#include "mme_context.h"
|
||||||
#include "abts.h"
|
#include "abts.h"
|
||||||
#include "testutil.h"
|
#include "testutil.h"
|
||||||
|
@ -38,12 +38,12 @@ void core_assert_ok(abts_case* tc, const char* context, status_t rv,
|
||||||
|
|
||||||
void test_terminate(void)
|
void test_terminate(void)
|
||||||
{
|
{
|
||||||
cellwire_terminate();
|
nextepc_terminate();
|
||||||
}
|
}
|
||||||
|
|
||||||
void test_initialize(void)
|
void test_initialize(void)
|
||||||
{
|
{
|
||||||
cellwire_initialize(NULL, NULL);
|
nextepc_initialize(NULL, NULL);
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
inet_pton(AF_INET, "10.1.35.215", &mme_self()->s1ap_addr);
|
inet_pton(AF_INET, "10.1.35.215", &mme_self()->s1ap_addr);
|
||||||
|
|
Loading…
Reference in New Issue