Harald Welte | 17a642d | 2018-07-01 19:09:52 +0200 | [diff] [blame] | 1 | #pragma once |
| 2 | |
| 3 | #include <osmocom/core/msgb.h> |
| 4 | #include <osmocom/gsm/tlv.h> |
| 5 | #include <osmocom/gprs/gprs_ns.h> |
| 6 | |
Harald Welte | 047f387 | 2018-07-01 21:04:45 +0200 | [diff] [blame] | 7 | /* gprs_ns_sns.c */ |
| 8 | int gprs_ns_rx_sns(struct gprs_ns_inst *nsi, struct msgb *msg, struct tlv_parsed *tp); |
| 9 | |
| 10 | struct osmo_fsm_inst *gprs_sns_bss_fsm_alloc(void *ctx, struct gprs_nsvc *nsvc, const char *id); |
| 11 | int gprs_sns_bss_fsm_start(struct gprs_ns_inst *nsi); |
| 12 | |
| 13 | int gprs_sns_init(void); |
| 14 | |
| 15 | /* gprs_ns.c */ |
Harald Welte | 35042a2 | 2019-02-23 14:07:00 +0100 | [diff] [blame] | 16 | void gprs_nsvc_start_test(struct gprs_nsvc *nsvc); |
Harald Welte | 047f387 | 2018-07-01 21:04:45 +0200 | [diff] [blame] | 17 | void gprs_start_alive_all_nsvcs(struct gprs_ns_inst *nsi); |
Harald Welte | 17a642d | 2018-07-01 19:09:52 +0200 | [diff] [blame] | 18 | int gprs_ns_tx_sns_ack(struct gprs_nsvc *nsvc, uint8_t trans_id, uint8_t *cause, |
| 19 | const struct gprs_ns_ie_ip4_elem *ip4_elems,unsigned int num_ip4_elems); |
| 20 | |
| 21 | int gprs_ns_tx_sns_config(struct gprs_nsvc *nsvc, bool end_flag, |
| 22 | const struct gprs_ns_ie_ip4_elem *ip4_elems, |
| 23 | unsigned int num_ip4_elems); |
| 24 | |
| 25 | int gprs_ns_tx_sns_config_ack(struct gprs_nsvc *nsvc, uint8_t *cause); |
| 26 | |
| 27 | int gprs_ns_tx_sns_size(struct gprs_nsvc *nsvc, bool reset_flag, uint16_t max_nr_nsvc, |
| 28 | uint16_t *ip4_ep_nr, uint16_t *ip6_ep_nr); |
| 29 | |
| 30 | int gprs_ns_tx_sns_size_ack(struct gprs_nsvc *nsvc, uint8_t *cause); |
Harald Welte | 047f387 | 2018-07-01 21:04:45 +0200 | [diff] [blame] | 31 | |
| 32 | struct vty; |
| 33 | void gprs_sns_dump_vty(struct vty *vty, const struct gprs_ns_inst *nsi, bool stats); |