|
libosmogb 1.11.0.52-28973f
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 | sig_counter |
| signalling packet counter for the load sharing function More... | |
| uint8_t | data_weight |
| data weight. More... | |
| void * | priv |
| can be used by the bind/driver of the virtual circuit. More... | |
| bool | nsvci_is_valid |
| bool | sns_only |
| should this NS-VC only be used for SNS-SIZE and SNS-CONFIG? More... | |
| struct rate_ctr_group * | ctrg |
| struct osmo_stat_item_group * | statg |
| enum gprs_ns2_vc_mode | mode |
| struct osmo_fsm_inst * | fi |
| bool | freed |
| recursive anchor More... | |
| bool | om_blocked |
| if blocked by O&M/vty More... | |
| struct timespec | ts_alive_change |
| when the NSVC became alive or dead More... | |
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 config_write_nsvc(), dump_bind(), free_vc(), gprs_ns2_fr_nsvc_dlci(), gprs_ns2_free_nsvc(), gprs_ns2_ip_connect(), gprs_ns2_ip_connect_inactive(), gprs_ns2_ip_vc_equal(), gprs_ns2_ip_vc_local(), gprs_ns2_ip_vc_remote(), gprs_ns2_ll_str_buf(), handle_nsip_sendto(), ns2_nse_update_mtu(), ns2_tx_status(), ns2_vc_alloc(), ns_vc_tx(), and nsvc_for_bind_and_remote().
| struct llist_head gprs_ns2_vc::blist |
list of NS-VCs within bind, bind is the owner!
Referenced by gprs_ns2_free_nsvc(), and ns2_vc_alloc().
| struct rate_ctr_group* gprs_ns2_vc::ctrg |
Referenced by gprs_ns2_free_nsvc(), ns2_tx_block(), ns2_vc_alloc(), and ns2_vty_dump_nsvc().
| uint8_t gprs_ns2_vc::data_weight |
data weight.
0 = don't use for user data (BVCI != 0)
Referenced by create_nsvc_for_new_sbind(), do_sns_change_weight(), ns2_load_sharing_weight_modulo(), ns2_nse_data_sum(), ns2_sns_st_all_action_sgsn(), ns2_vc_alloc(), ns2_vty_dump_nsvc(), and ns_nse_nsvc_udp_cmds().
| struct osmo_fsm_inst* gprs_ns2_vc::fi |
| bool gprs_ns2_vc::freed |
recursive anchor
Referenced by gprs_ns2_free_nsvc().
| struct llist_head gprs_ns2_vc::list |
list of NS-VCs within NSE
Referenced by gprs_ns2_free_nsvc(), and ns2_vc_alloc().
| enum gprs_ns2_vc_mode gprs_ns2_vc::mode |
| struct gprs_ns2_nse* gprs_ns2_vc::nse |
pointer to NS Instance
Referenced by config_write_nsvc(), DEFUN(), do_sns_add(), dump_nse(), gprs_ns2_free_nsvc(), gprs_ns2_free_nsvcs(), gprs_ns2_ip_connect(), gprs_ns2_ip_connect_inactive(), gprs_ns2_ll_str_buf(), gprs_ns2_nse_foreach_nsvc(), gprs_ns2_nsvc_by_nsvci(), gprs_ns2_recv_prim(), gprs_ns2_start_alive_all_nsvcs(), handle_nsip_recvfrom(), log_set_nse_filter(), ns2_free_nsvcs(), ns2_load_sharing(), ns2_load_sharing_first(), ns2_load_sharing_modulo(), ns2_load_sharing_signal(), ns2_load_sharing_weight_modulo(), ns2_nse_data_sum(), ns2_nse_update_mtu(), ns2_sns_notify_alive(), ns2_sns_rx(), ns2_st_unconfigured(), ns2_tx_alive(), ns2_tx_alive_ack(), 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_procedure(), ns2_tx_sns_size(), ns2_tx_sns_size_ack(), ns2_tx_status(), ns2_tx_unblock(), ns2_tx_unblock_ack(), ns2_tx_unit_data(), ns2_vc_alloc(), ns2_vc_rx(), ns_inst_from_fi(), ns_nse_nsvc_udp_cmds(), nsvc_for_bind_and_remote(), and start_test_procedure().
| uint16_t gprs_ns2_vc::nsvci |
uniquely identifies NS-VC if VC contains nsvci
Referenced by config_write_nsvc(), DEFUN(), gprs_ns2_fr_connect(), gprs_ns2_ip_connect(), gprs_ns2_ip_connect_inactive(), gprs_ns2_ip_vc_equal(), gprs_ns2_ll_str_buf(), gprs_ns2_nsvc_by_nsvci(), ns2_tx_block(), ns2_tx_block_ack(), ns2_tx_reset(), ns2_tx_reset_ack(), ns2_tx_status(), ns2_vc_rx(), and ns2_vty_dump_nsvc().
| bool gprs_ns2_vc::nsvci_is_valid |
| bool gprs_ns2_vc::om_blocked |
if blocked by O&M/vty
Referenced by ns2_st_blocked(), ns2_st_blocked_onenter(), ns2_st_unconfigured(), ns2_vc_block(), ns2_vc_fsm_allstate_action(), ns2_vc_fsm_timer_cb(), ns2_vc_unblock(), and ns2_vty_dump_nsvc().
| bool gprs_ns2_vc::persistent |
true if this NS was created by VTY or pcu socket)
Referenced by DEFUN(), ns2_vty_dump_nsvc(), and ns_nse_nsvc_udp_cmds().
| void* gprs_ns2_vc::priv |
can be used by the bind/driver of the virtual circuit.
e.g. ipv4/ipv6/frgre/e1
Referenced by fr_alloc_vc(), fr_vc_sendmsg(), free_vc(), frgre_alloc_vc(), frgre_vc_sendmsg(), gprs_ns2_find_vc_by_dlci(), gprs_ns2_fr_connect(), gprs_ns2_fr_nsvc_by_dlci(), gprs_ns2_fr_nsvc_dlci(), gprs_ns2_free_nsvc(), gprs_ns2_ip_vc_equal(), gprs_ns2_ip_vc_remote(), gprs_ns2_nsvc_by_sockaddr_bind(), ns2_driver_alloc_vc(), ns2_find_vc_by_dlci(), ns2_ip_bind_connect(), ns2_st_unblocked_on_enter(), nsip_vc_sendmsg(), and recv_test_procedure().
| uint8_t gprs_ns2_vc::sig_counter |
signalling packet counter for the load sharing function
| uint8_t gprs_ns2_vc::sig_weight |
signalling weight.
0 = don't use for signalling (BVCI == 0)
Referenced by create_nsvc_for_new_sbind(), do_sns_change_weight(), ns2_nse_data_sum(), ns2_sns_st_all_action_sgsn(), ns2_vc_alloc(), ns2_vty_dump_nsvc(), and ns_nse_nsvc_udp_cmds().
| bool gprs_ns2_vc::sns_only |
should this NS-VC only be used for SNS-SIZE and SNS-CONFIG?
Referenced by create_nsvc_for_new_sbind(), gprs_ns2_start_alive_all_nsvcs(), ns2_sns_st_bss_size_onenter(), and ns2_sns_st_configured_onenter().
| struct osmo_stat_item_group* gprs_ns2_vc::statg |
Referenced by gprs_ns2_free_nsvc(), ns2_vc_alloc(), ns2_vty_dump_nsvc(), recv_test_procedure(), and stop_test_procedure().
| struct timespec gprs_ns2_vc::ts_alive_change |
when the NSVC became alive or dead
Referenced by ns2_vc_alloc(), and ns2_vty_dump_nsvc().