libosmogb 1.11.0.2-4150.202502212026
Osmocom Gb library
|
Structure representing a single NS-VC. More...
#include <gprs_ns.h>
Data Fields | ||
struct llist_head | list | |
list of NS-VCs within NS Instance | ||
struct gprs_ns_inst * | nsi | |
pointer to NS Instance | ||
uint16_t | nsei | |
uint16_t | nsvci | |
end-to-end significance | ||
uint32_t | state | |
uniquely identifies NS-VC at SGSN | ||
uint32_t | remote_state | |
struct osmo_timer_list | timer | |
enum nsvc_timer_mode | timer_mode | |
struct timeval | timer_started | |
int | alive_retries | |
unsigned int | remote_end_is_sgsn:1 | |
unsigned int | persistent:1 | |
unsigned int | nsvci_is_valid:1 | |
struct rate_ctr_group * | ctrg | |
struct osmo_stat_item_group * | statg | |
enum gprs_ns_ll | ll | |
which link-layer are we based on? | ||
union { | ||
struct { | ||
struct sockaddr_in bts_addr | ||
} ip | ||
struct { | ||
struct sockaddr_in bts_addr | ||
} frgre | ||
}; | ||
make sure to always keep bts_addr as first struct member to not break the assumption that those structs are similar | ||
uint8_t | sig_weight | |
signalling weight. | ||
uint8_t | data_weight | |
signaling weight. | ||
Structure representing a single NS-VC.
union { ... } gprs_nsvc |
make sure to always keep bts_addr as first struct member to not break the assumption that those structs are similar
int gprs_nsvc::alive_retries |
Referenced by gprs_ns_timer_cb().
struct sockaddr_in gprs_nsvc::bts_addr |
Referenced by config_write_ns(), DEFUN(), DEFUN(), DEFUN(), dump_nse(), gprs_ns_frgre_sendmsg(), gprs_ns_ll_clear(), gprs_ns_ll_str_buf(), gprs_ns_nsip_connect(), gprs_ns_nsip_connect_sns(), gprs_ns_rcvmsg(), gprs_nsvc_by_rem_addr(), gprs_nsvc_create_ip4(), gprs_sns_bss_fsm_alloc(), and nsip_sendmsg().
struct rate_ctr_group* gprs_nsvc::ctrg |
Referenced by dump_nse(), gprs_ns_rx_block(), gprs_ns_timer_cb(), gprs_ns_tx(), gprs_ns_tx_block(), gprs_ns_vc_create(), gprs_nsvc_create2(), and gprs_nsvc_delete().
uint8_t gprs_nsvc::data_weight |
signaling weight.
0 = don't use for user data (BVCI != 0)
Referenced by create_missing_nsvcs(), do_sns_add(), do_sns_change_weight(), gprs_active_nsvc_by_nsei(), gprs_nsvc_create2(), and nsvc_is_not_used().
struct { ... } gprs_nsvc::frgre |
Referenced by config_write_ns(), DEFUN(), gprs_ns_frgre_sendmsg(), gprs_ns_ll_clear(), gprs_ns_ll_copy(), and gprs_ns_ll_str_buf().
struct { ... } gprs_nsvc::ip |
struct llist_head gprs_nsvc::list |
list of NS-VCs within NS Instance
Referenced by gprs_active_nsvc_by_nsei(), gprs_ns_close(), gprs_ns_instantiate(), gprs_nsvc_by_nsei(), gprs_nsvc_by_nsvci(), gprs_nsvc_by_rem_addr(), gprs_nsvc_create2(), gprs_nsvc_delete(), and gprs_start_alive_all_nsvcs().
enum gprs_ns_ll gprs_nsvc::ll |
which link-layer are we based on?
Referenced by config_write_ns(), DEFUN(), DEFUN(), DEFUN(), dump_nse(), gprs_ns_ll_clear(), gprs_ns_ll_copy(), gprs_ns_ll_str_buf(), gprs_ns_rcvmsg(), and gprs_ns_tx().
uint16_t gprs_nsvc::nsei |
Referenced by config_write_ns(), DEFUN(), dump_nse(), gprs_active_nsvc_by_nsei(), gprs_ns_nsip_connect(), gprs_ns_nsip_connect_sns(), gprs_ns_rx_block(), gprs_ns_rx_status(), gprs_ns_timer_cb(), gprs_ns_tx_alive(), gprs_ns_tx_alive_ack(), gprs_ns_tx_block(), gprs_ns_tx_block_ack(), gprs_ns_tx_reset(), gprs_ns_tx_reset_ack(), gprs_ns_tx_sns_ack(), gprs_ns_tx_sns_config(), gprs_ns_tx_sns_config_ack(), gprs_ns_tx_sns_size(), gprs_ns_tx_sns_size_ack(), gprs_ns_tx_status(), gprs_ns_tx_unblock(), gprs_ns_vc_create(), gprs_nsvc_by_nsei(), gprs_nsvc_create_ip4(), gprs_nsvc_reset(), gprs_nsvc_state_append(), ns_set_state_with_log(), and nsvc_start_timer().
struct gprs_ns_inst* gprs_nsvc::nsi |
pointer to NS Instance
Referenced by create_missing_nsvcs(), DEFUN(), DEFUN(), do_sns_add(), do_sns_change_weight(), do_sns_delete(), dump_nse(), gprs_active_nsvc_by_nsei(), gprs_ns_close(), gprs_ns_destroy(), gprs_ns_frgre_sendmsg(), gprs_ns_nsip_connect(), gprs_ns_nsip_connect_sns(), gprs_ns_rcvmsg(), gprs_ns_rx_unitdata(), gprs_ns_timer_cb(), gprs_ns_tx_sns_ack(), gprs_ns_tx_sns_config(), gprs_ns_tx_sns_config_ack(), gprs_ns_tx_sns_size(), gprs_ns_tx_sns_size_ack(), gprs_ns_vty_init(), gprs_nsvc_by_nsei(), gprs_nsvc_by_nsvci(), gprs_nsvc_by_rem_addr(), gprs_nsvc_create2(), gprs_sns_bss_fsm_alloc(), gprs_start_alive_all_nsvcs(), nsip_sendmsg(), and nsvc_start_timer().
uint16_t gprs_nsvc::nsvci |
end-to-end significance
Referenced by config_write_ns(), DEFUN(), dump_nse(), gprs_ns_nsip_connect(), gprs_ns_nsip_connect_sns(), gprs_ns_rx_reset(), gprs_ns_rx_reset_ack(), gprs_ns_tx_alive(), gprs_ns_tx_alive_ack(), gprs_ns_tx_block(), gprs_ns_tx_block_ack(), gprs_ns_tx_reset(), gprs_ns_tx_reset_ack(), gprs_ns_tx_status(), gprs_ns_tx_unblock(), gprs_ns_vc_create(), gprs_nsvc_by_nsvci(), gprs_nsvc_create2(), gprs_nsvc_replace_if_found(), gprs_nsvc_state_append(), and ns_set_state_with_log().
Referenced by gprs_ns_instantiate(), gprs_ns_vc_create(), gprs_nsvc_create2(), and gprs_nsvc_create_ip4().
Referenced by config_write_ns(), DEFUN(), DEFUN(), and dump_nse().
Referenced by config_write_ns(), DEFUN(), dump_nse(), gprs_ns_nsip_connect(), gprs_ns_nsip_connect_sns(), and gprs_nsvc_state_append().
uint32_t gprs_nsvc::remote_state |
Referenced by dump_nse(), gprs_nsvc_state_append(), and ns_set_state_with_log().
uint8_t gprs_nsvc::sig_weight |
signalling weight.
0 = don't use for signalling (BVCI == 0)
Referenced by create_missing_nsvcs(), do_sns_add(), do_sns_change_weight(), gprs_active_nsvc_by_nsei(), gprs_nsvc_create2(), and nsvc_is_not_used().
uint32_t gprs_nsvc::state |
uniquely identifies NS-VC at SGSN
Referenced by dump_nse(), gprs_active_nsvc_by_nsei(), gprs_ns_rx_unitdata(), gprs_ns_timer_cb(), gprs_nsvc_state_append(), and ns_set_state_with_log().
struct osmo_stat_item_group* gprs_nsvc::statg |
Referenced by dump_nse(), gprs_nsvc_create2(), and gprs_nsvc_delete().
struct osmo_timer_list gprs_nsvc::timer |
Referenced by gprs_nsvc_create2(), gprs_nsvc_delete(), and nsvc_start_timer().
enum nsvc_timer_mode gprs_nsvc::timer_mode |
Referenced by gprs_ns_timer_cb(), and nsvc_start_timer().
Referenced by nsvc_start_timer(), and nsvc_timer_elapsed_ms().