libosmogb
1.4.0.171-b3b83
Osmocom Gb library
|
Structure representing a single NS-VC. More...
#include <gprs_ns2_internal.h>
Data Fields | |
struct llist_head | list |
list of NS-VCs within NSE More... | |
struct llist_head | blist |
list of NS-VCs within bind, bind is the owner! More... | |
struct gprs_ns2_nse * | nse |
pointer to NS Instance More... | |
struct gprs_ns2_vc_bind * | bind |
pointer to NS VL bind. More... | |
bool | persistent |
true if this NS was created by VTY or pcu socket) More... | |
uint16_t | nsvci |
uniquely identifies NS-VC if VC contains nsvci More... | |
uint8_t | sig_weight |
signalling weight. More... | |
uint8_t | data_weight |
signaling weight. More... | |
void * | priv |
can be used by the bind/driver of the virtual circuit. More... | |
bool | nsvci_is_valid |
bool | sns_only |
struct rate_ctr_group * | ctrg |
struct osmo_stat_item_group * | statg |
enum gprs_ns_ll | ll |
which link-layer are we based on? More... | |
enum gprs_ns2_vc_mode | mode |
struct osmo_fsm_inst * | fi |
Structure representing a single NS-VC.
struct gprs_ns2_vc_bind* gprs_ns2_vc::bind |
pointer to NS VL bind.
bind own the memory of this instance
Referenced by create_missing_nsvcs(), frgre_vc_sendmsg(), gprs_ns2_free_nsvc(), gprs_ns2_ip_vc_equal(), gprs_ns2_ip_vc_local(), gprs_ns2_ll_str_buf(), ns2_tx_block(), ns2_tx_block_ack(), ns2_tx_reset(), ns2_tx_reset_ack(), ns2_tx_simple(), ns2_tx_sns_ack(), ns2_tx_sns_config(), ns2_tx_sns_config_ack(), ns2_tx_sns_size(), ns2_tx_sns_size_ack(), ns2_tx_status(), ns2_tx_unit_data(), ns2_vc_alloc(), and nsip_vc_sendmsg().
struct llist_head gprs_ns2_vc::blist |
list of NS-VCs within bind, bind is the owner!
Referenced by gprs_ns2_free_bind(), gprs_ns2_free_nsvc(), and ns2_vc_alloc().
struct rate_ctr_group* gprs_ns2_vc::ctrg |
Referenced by dump_nsvc(), gprs_ns2_free_nsvc(), ns2_tx_block(), and ns2_vc_alloc().
uint8_t gprs_ns2_vc::data_weight |
signaling weight.
0 = don't use for user data (BVCI != 0)
Referenced by create_missing_nsvcs(), do_sns_change_weight(), ns2_nsvc_create_ip4(), ns2_nsvc_create_ip6(), and ns2_vc_alloc().
struct osmo_fsm_inst* gprs_ns2_vc::fi |
Referenced by gprs_ns2_free_nsvc(), gprs_ns2_vc_fsm_alloc(), gprs_ns2_vc_fsm_start(), gprs_ns2_vc_is_unblocked(), and gprs_ns2_vc_rx().
struct llist_head gprs_ns2_vc::list |
list of NS-VCs within NSE
Referenced by dump_nse(), gprs_ns2_free_nse(), gprs_ns2_free_nsvc(), gprs_ns2_nse_foreach_nsvc(), gprs_ns2_nsvc_by_nsvci(), gprs_ns2_recv_prim(), gprs_ns2_start_alive_all_nsvcs(), ns2_nse_notify_unblocked(), and ns2_vc_alloc().
enum gprs_ns_ll gprs_ns2_vc::ll |
which link-layer are we based on?
Referenced by dump_nsvc(), gprs_ns2_ip_bind_connect(), gprs_ns2_ip_vc_equal(), gprs_ns2_ip_vc_local(), gprs_ns2_ip_vc_remote(), and gprs_ns2_ll_str_buf().
enum gprs_ns2_vc_mode gprs_ns2_vc::mode |
struct gprs_ns2_nse* gprs_ns2_vc::nse |
pointer to NS Instance
Referenced by gprs_ns2_free_nsvc(), gprs_ns2_sns_rx(), gprs_ns2_st_unconfigured(), gprs_ns2_vc_rx(), ns2_nse_notify_unblocked(), ns2_sns_free_nsvc(), ns2_tx_alive(), ns2_tx_alive_ack(), ns2_tx_block(), ns2_tx_block_ack(), ns2_tx_reset(), ns2_tx_reset_ack(), ns2_tx_sns_ack(), ns2_tx_sns_config(), ns2_tx_sns_config_ack(), ns2_tx_sns_size(), ns2_tx_sns_size_ack(), ns2_tx_status(), ns2_tx_unblock(), ns2_tx_unblock_ack(), ns2_vc_alloc(), ns_inst_from_fi(), and start_test_procedure().
uint16_t gprs_ns2_vc::nsvci |
uniquely identifies NS-VC if VC contains nsvci
Referenced by gprs_ns2_ip_connect_inactive(), gprs_ns2_ip_vc_equal(), gprs_ns2_ll_str_buf(), gprs_ns2_nsvc_by_nsvci(), ns2_tx_alive(), ns2_tx_alive_ack(), ns2_tx_block(), ns2_tx_block_ack(), ns2_tx_reset(), ns2_tx_reset_ack(), ns2_tx_status(), ns2_tx_unblock(), and ns2_tx_unblock_ack().
bool gprs_ns2_vc::nsvci_is_valid |
Referenced by gprs_ns2_ip_connect_inactive(), gprs_ns2_ll_str_buf(), and gprs_ns2_nsvc_by_nsvci().
bool gprs_ns2_vc::persistent |
true if this NS was created by VTY or pcu socket)
Referenced by dump_nse(), and gprs_ns2_vty_create().
void* gprs_ns2_vc::priv |
can be used by the bind/driver of the virtual circuit.
e.g. ipv4/ipv6/frgre/e1
Referenced by free_vc(), frgre_alloc_vc(), frgre_vc_sendmsg(), gprs_ns2_find_vc_by_dlci(), gprs_ns2_free_nsvc(), gprs_ns2_ip_bind_connect(), gprs_ns2_ip_vc_equal(), gprs_ns2_ip_vc_remote(), gprs_ns2_nsvc_by_sockaddr_bind(), ns2_driver_alloc_vc(), and nsip_vc_sendmsg().
uint8_t gprs_ns2_vc::sig_weight |
signalling weight.
0 = don't use for signalling (BVCI == 0)
Referenced by create_missing_nsvcs(), do_sns_change_weight(), ns2_nsvc_create_ip4(), ns2_nsvc_create_ip6(), and ns2_vc_alloc().
bool gprs_ns2_vc::sns_only |
Referenced by create_missing_nsvcs(), gprs_ns2_start_alive_all_nsvcs(), and ns2_sns_bss_fsm_start().
struct osmo_stat_item_group* gprs_ns2_vc::statg |
Referenced by dump_nsvc(), gprs_ns2_free_nsvc(), ns2_vc_alloc(), and recv_test_procedure().