libosmogb 1.13.1.1-afb4 Osmocom Gb library

gb_internal.h
Go to the documentation of this file.
1#pragma once
2
3#include <osmocom/core/msgb.h>
4#include <osmocom/gsm/tlv.h>
5#include <osmocom/gprs/gprs_ns.h>
6
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 */
16 void gprs_nsvc_start_test(struct gprs_nsvc *nsvc);
17 void gprs_start_alive_all_nsvcs(struct gprs_ns_inst *nsi);
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);
31
32 struct vty;
33 void gprs_sns_dump_vty(struct vty *vty, const struct gprs_ns_inst *nsi, bool stats);
gprs_sns_bss_fsm_start
int gprs_sns_bss_fsm_start(struct gprs_ns_inst *nsi)
Definition: gprs_ns_sns.c:680
gprs_sns_dump_vty
void gprs_sns_dump_vty(struct vty *vty, const struct gprs_ns_inst *nsi, bool stats)
Definition: gprs_ns_sns.c:753
gprs_sns_init
int gprs_sns_init(void)
Definition: gprs_ns_sns.c:736
gprs_sns_bss_fsm_alloc
struct osmo_fsm_inst * gprs_sns_bss_fsm_alloc(void *ctx, struct gprs_nsvc *nsvc, const char *id)
Definition: gprs_ns_sns.c:630
gprs_ns_rx_sns
int gprs_ns_rx_sns(struct gprs_ns_inst *nsi, struct msgb *msg, struct tlv_parsed *tp)
Definition: gprs_ns_sns.c:686
gprs_ns.h
gprs_ns_tx_sns_config_ack
int gprs_ns_tx_sns_config_ack(struct gprs_nsvc *nsvc, uint8_t *cause)
Encode + Transmit a SNS-CONFIG-ACK as per Section 9.3.5.
Definition: gprs_ns.c:959
gprs_ns_tx_sns_config
int gprs_ns_tx_sns_config(struct gprs_nsvc *nsvc, bool end_flag, const struct gprs_ns_ie_ip4_elem *ip4_elems, unsigned int num_ip4_elems)
Encode + Transmit a SNS-CONFIG as per Section 9.3.4.
Definition: gprs_ns.c:918
gprs_ns_tx_sns_ack
int gprs_ns_tx_sns_ack(struct gprs_nsvc *nsvc, uint8_t trans_id, uint8_t *cause, const struct gprs_ns_ie_ip4_elem *ip4_elems, unsigned int num_ip4_elems)
Encode + Transmit a SNS-ACK as per Section 9.3.1.
Definition: gprs_ns.c:873
gprs_ns_tx_sns_size
int gprs_ns_tx_sns_size(struct gprs_nsvc *nsvc, bool reset_flag, uint16_t max_nr_nsvc, uint16_t *ip4_ep_nr, uint16_t *ip6_ep_nr)
Encode + transmit a SNS-SIZE as per Section 9.3.7.
Definition: gprs_ns.c:998
gprs_start_alive_all_nsvcs
void gprs_start_alive_all_nsvcs(struct gprs_ns_inst *nsi)
Definition: gprs_ns.c:2239
gprs_nsvc_start_test
void gprs_nsvc_start_test(struct gprs_nsvc *nsvc)
Start the ALIVE timer procedure in all NS-VCs part of this NS Instance.
Definition: gprs_ns.c:2229
gprs_ns_tx_sns_size_ack
int gprs_ns_tx_sns_size_ack(struct gprs_nsvc *nsvc, uint8_t *cause)
Encode + Transmit a SNS-SIZE-ACK as per Section 9.3.8.
Definition: gprs_ns.c:1038
msgb.h
gprs_ns_ie_ip4_elem
Section 10.3.2c List of IP4 Elements.
Definition: gsm_08_16.h:24
gprs_ns_inst
An instance of the NS protocol stack.
Definition: gprs_ns.h:79
gprs_nsvc
Structure representing a single NS-VC.
Definition: gprs_ns.h:122
msgb
osmo_fsm_inst
tlv_parsed
vty
tlv.h