From bc150922b79993d9d43fc7f87d4fbf83ae444de2 Mon Sep 17 00:00:00 2001 From: Lionel Gauthier <lionel.gauthier@eurecom.fr> Date: Thu, 17 Apr 2014 09:56:01 +0000 Subject: [PATCH] task skeleton git-svn-id: http://svn.eurecom.fr/openair4G/trunk@5256 818b1a75-f10b-46b9-bf7c-635c3b92a50f --- openair2/X2AP/x2ap.c | 79 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 openair2/X2AP/x2ap.c diff --git a/openair2/X2AP/x2ap.c b/openair2/X2AP/x2ap.c new file mode 100644 index 00000000000..8c3fe12a840 --- /dev/null +++ b/openair2/X2AP/x2ap.c @@ -0,0 +1,79 @@ +/******************************************************************************* +Eurecom OpenAirInterface Core Network +Copyright(c) 1999 - 2014 Eurecom + + This program is free software; you can redistribute it and/or modify it + under the terms and conditions of the GNU General Public License, + version 2, as published by the Free Software Foundation. + + This program is distributed in the hope it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + more details. + + You should have received a copy of the GNU General Public License along with + this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA. + + The full GNU General Public License is included in this distribution in + the file called "COPYING". + + Contact Information + Openair Admin: openair_admin@eurecom.fr + Openair Tech : openair_tech@eurecom.fr +Forums : http://forums.eurecom.fsr/openairinterface +Address : EURECOM, + Campus SophiaTech, + 450 Route des Chappes, + CS 50193 + 06904 Biot Sophia Antipolis cedex, + FRANCE +*******************************************************************************/ + +#include <pthread.h> +#include <stdio.h> +#include <stdlib.h> +#include <stdint.h> + + +#include "intertask_interface.h" + + +#include "assertions.h" +#include "conversions.h" + + +void *x2ap_task(void *arg) +{ + MessageDef *received_msg = NULL; + int result; + + X2AP_DEBUG("Starting X2AP layer\n"); + + x2ap_prepare_internal_data(); + + itti_mark_task_ready(TASK_X2AP); + + while (1) { + itti_receive_msg(TASK_X2AP, &received_msg); + + switch (ITTI_MSG_ID(received_msg)) { + case TERMINATE_MESSAGE: + itti_exit_task(); + break; + + default: + X2AP_ERROR("Received unhandled message: %d:%s\n", + ITTI_MSG_ID(received_msg), ITTI_MSG_NAME(received_msg)); + break; + } + + result = itti_free (ITTI_MSG_ORIGIN_ID(received_msg), received_msg); + AssertFatal (result == EXIT_SUCCESS, "Failed to free memory (%d)!\n", result); + + received_msg = NULL; + } + return NULL; +} + + -- GitLab