initialization done

This commit is contained in:
Sukchan Lee 2017-02-27 15:09:41 +09:00
parent 95857bc9bc
commit 3a76d1fc1a
5 changed files with 21 additions and 29 deletions

20
main.c
View File

@ -3,19 +3,12 @@
*/
/* Core library */
#include "core.h"
#include "core_general.h"
#define TRACE_MODULE _main_
#include "core_debug.h"
#include "core_cond.h"
#include "core_signal.h"
#include "core_net.h"
#include "logger.h"
#include "symtbl.h"
#include "s6a_lib.h"
/* Server */
#include "cellwire.h"
@ -131,28 +124,21 @@ int main(int argc, char *argv[])
d_trace_level(&_s1ap_path, 100);
}
core_initialize();
if (log_path)
logger_start(optarg);
if (cellwire_initialize(config_path) != CORE_OK)
if (cellwire_initialize(config_path, log_path) != CORE_OK)
{
d_fatal("CellWire initialization failed. Aborted");
return EXIT_FAILURE;
}
threads_start();
show_version();
d_info("CellWire daemon start");
threads_start();
signal_thread(check_signal);
d_info("CellWire daemon terminating...");
threads_stop();
cellwire_terminate();
core_terminate();
return EXIT_SUCCESS;
}

View File

@ -32,6 +32,7 @@ libcellwire_la_LIBADD = \
AM_CPPFLAGS = \
-I$(top_srcdir)/include \
-I$(top_srcdir)/lib/core/include \
-I$(top_srcdir)/lib/logger \
-I$(top_srcdir)/lib/message/s1ap/asn1c \
-I$(top_srcdir)/lib/message/s1ap \
-I$(top_srcdir)/lib/message/nas \

View File

@ -12,7 +12,7 @@ extern "C" {
#define GTP_C_UDP_PORT 2123
#define GTP_U_UDP_PORT 2152
CORE_DECLARE(status_t) cellwire_initialize(char *config_path);
CORE_DECLARE(status_t) cellwire_initialize(char *config_path, char *log_path);
CORE_DECLARE_NONSTD(void) cellwire_terminate(void);
CORE_DECLARE(void) threads_start(void);

View File

@ -4,9 +4,11 @@
/* Core library */
#define TRACE_MODULE _init
#include "core_general.h"
#include "core_debug.h"
#include "core_thread.h"
#include "logger.h"
#include "s6a_lib.h"
#include "context.h"
@ -17,12 +19,22 @@
static thread_id mme_sm_thread;
static thread_id mme_net_thread;
status_t cellwire_initialize(char *config_path)
status_t cellwire_initialize(char *config_path, char *log_path)
{
status_t rv;
core_initialize();
srand(time(NULL)*getpid());
if (config_path)
{
/* TODO */
}
if (log_path)
logger_start(log_path);
rv = context_init();
if (rv != CORE_OK) return rv;
@ -35,8 +47,8 @@ status_t cellwire_initialize(char *config_path)
void cellwire_terminate(void)
{
s6a_fd_final();
context_final();
core_terminate();
}
void *THREAD_FUNC mme_sm_main(void *data)

View File

@ -14,7 +14,6 @@
* limitations under the License.
*/
#include "core.h"
#include "core_debug.h"
#include "cellwire.h"
@ -40,21 +39,15 @@ void core_assert_ok(abts_case* tc, const char* context, status_t rv,
void test_terminate(void)
{
threads_stop();
d_msg_to(D_MSG_TO_STDOUT, 1);
core_terminate();
cellwire_terminate();
}
void test_initialize(void)
{
core_initialize();
cellwire_initialize(NULL);
threads_start();
cellwire_initialize(NULL, NULL);
d_msg_to(D_MSG_TO_STDOUT, 0);
threads_start();
inet_pton(AF_INET, "127.0.0.1", &mme_self()->enb_local_addr);