blob: d5e14280154e4091c55fb363ffa8d0914599b2ca [file] [log] [blame]
Neels Hofmeyr28295b92017-07-05 15:19:52 +02001/* Trivial switch-off of external Iu dependencies,
2 * allowing to run full unit tests even when built without Iu support. */
3
4/*
5 * (C) 2016,2017 by sysmocom s.f.m.c. GmbH <info@sysmocom.de>
6 *
7 * Author: Neels Hofmeyr <nhofmeyr@sysmocom.de>
8 *
9 * All Rights Reserved
10 *
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU Affero General Public License as published by
13 * the Free Software Foundation; either version 3 of the License, or
14 * (at your option) any later version.
15 *
16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Affero General Public License for more details.
20 *
21 * You should have received a copy of the GNU Affero General Public License
22 * along with this program. If not, see <http://www.gnu.org/licenses/>.
23 *
24 */
25
26#include <stdint.h>
27#include <stdbool.h>
28
29#include <osmocom/core/linuxlist.h>
30
31struct msgb;
32struct gsm_auth_tuple;
33struct RANAP_Cause;
34struct osmo_auth_vector;
35
36struct ranap_ue_conn_ctx {
37 struct llist_head list;
38 uint32_t conn_id;
39};
40
41int ranap_iu_tx(struct msgb *msg, uint8_t sapi);
42int ranap_iu_tx_sec_mode_cmd(struct ranap_ue_conn_ctx *uectx, struct osmo_auth_vector *vec,
43 int send_ck);
44int ranap_iu_page_cs(const char *imsi, const uint32_t *tmsi, uint16_t lac);
45int ranap_iu_page_ps(const char *imsi, const uint32_t *ptmsi, uint16_t lac, uint8_t rac);
46struct msgb *ranap_new_msg_rab_assign_voice(uint8_t rab_id, uint32_t rtp_ip,
47 uint16_t rtp_port,
48 bool use_x213_nsap);
49int ranap_iu_rab_act(struct ranap_ue_conn_ctx *ue_ctx, struct msgb *msg);
50int ranap_iu_tx_common_id(struct ranap_ue_conn_ctx *uectx, const char *imsi);
51int ranap_iu_tx_release(struct ranap_ue_conn_ctx *ctx, const struct RANAP_Cause *cause);