blob: 6dc956f803b989ee3d28ce4542dda0c50f4ca29a [file] [log] [blame]
Neels Hofmeyrc69ee852016-05-10 12:50:31 +02001#pragma once
Neels Hofmeyr402006d2016-05-11 14:28:25 +02002
Neels Hofmeyre78ae212016-05-14 00:46:29 +02003#include <stdint.h>
4
Neels Hofmeyr402006d2016-05-11 14:28:25 +02005struct msgb;
6struct gsm_network;
7
8typedef int (*mncc_recv_cb_t)(struct gsm_network *, struct msgb *);
Neels Hofmeyre78ae212016-05-14 00:46:29 +02009
Neels Hofmeyrb90eabf2016-05-11 18:48:39 +020010struct vty;
11
Neels Hofmeyrac1f1432016-05-10 13:30:17 +020012#define MAX_A5_KEY_LEN (128/8)
13
14struct gsm_encr {
15 uint8_t alg_id;
16 uint8_t key_len;
17 uint8_t key[MAX_A5_KEY_LEN];
18};
19
Neels Hofmeyre78ae212016-05-14 00:46:29 +020020struct gsm_network *gsm_network_init(void *ctx,
21 uint16_t country_code,
22 uint16_t network_code,
23 mncc_recv_cb_t mncc_recv);
Neels Hofmeyrb90eabf2016-05-11 18:48:39 +020024
Neels Hofmeyr06d39fd2016-05-12 01:16:58 +020025int common_cs_vty_init(struct gsm_network *network,
26 int (* config_write_net )(struct vty *));
Neels Hofmeyrb90eabf2016-05-11 18:48:39 +020027struct gsm_network *gsmnet_from_vty(struct vty *v);