\doxysection{ns2\+\_\+sns\+\_\+state Struct Reference}
\label{structns2__sns__state}\index{ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsection*{Data Fields}
\begin{DoxyCompactItemize}
\item 
struct \textbf{ gprs\+\_\+ns2\+\_\+nse} $\ast$ \textbf{ nse}
\item 
int \textbf{ family}
\item 
enum \textbf{ ns2\+\_\+sns\+\_\+role} \textbf{ role}
\item 
struct \textbf{ llist\+\_\+head} \textbf{ sns\+\_\+endpoints}
\item 
struct \textbf{ llist\+\_\+head} \textbf{ binds}
\item 
struct \textbf{ ns2\+\_\+sns\+\_\+bind} $\ast$ \textbf{ initial\+\_\+bind}
\item 
bool \textbf{ reselection\+\_\+running}
\item 
bool \textbf{ block\+\_\+no\+\_\+nsvc\+\_\+events}
\item 
struct \textbf{ sns\+\_\+endpoint} $\ast$ \textbf{ initial}
\item 
struct \textbf{ gprs\+\_\+ns2\+\_\+vc} $\ast$ \textbf{ sns\+\_\+nsvc}
\item 
int \textbf{ N}
\item 
bool \textbf{ alive}
\item 
struct \textbf{ ns2\+\_\+sns\+\_\+elems} \textbf{ local}
\item 
struct \textbf{ ns2\+\_\+sns\+\_\+elems} \textbf{ local\+\_\+procedure}
\item 
struct \textbf{ ns2\+\_\+sns\+\_\+elems} \textbf{ remote}
\item 
size\+\_\+t \textbf{ num\+\_\+max\+\_\+nsvcs}
\item 
size\+\_\+t \textbf{ num\+\_\+max\+\_\+ip4\+\_\+remote}
\item 
size\+\_\+t \textbf{ num\+\_\+max\+\_\+ip6\+\_\+remote}
\item 
struct \textbf{ llist\+\_\+head} \textbf{ procedures}
\item 
struct \textbf{ ns2\+\_\+sns\+\_\+procedure} $\ast$ \textbf{ current\+\_\+procedure}
\item 
uint8\+\_\+t \textbf{ trans\+\_\+id}
\end{DoxyCompactItemize}


\doxysubsection{Field Documentation}
\mbox{\label{structns2__sns__state_ae16013c56069fcf062d793ec0e963111}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!alive@{alive}}
\index{alive@{alive}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{alive}
{\footnotesize\ttfamily bool ns2\+\_\+sns\+\_\+state\+::alive}



Referenced by \textbf{ \+\_\+sns\+\_\+failed()}, \textbf{ ns2\+\_\+sns\+\_\+notify\+\_\+alive()}, \textbf{ ns2\+\_\+sns\+\_\+replace\+\_\+nsvc()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+size\+\_\+onenter()}, and \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+configured\+\_\+onenter()}.

\mbox{\label{structns2__sns__state_a76dc5251b4c36f060c3cf1c7d0ef19c5}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!binds@{binds}}
\index{binds@{binds}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{binds}
{\footnotesize\ttfamily struct \textbf{ llist\+\_\+head} ns2\+\_\+sns\+\_\+state\+::binds}



Referenced by \textbf{ create\+\_\+missing\+\_\+nsvcs()}, \textbf{ gprs\+\_\+ns2\+\_\+sns\+\_\+add\+\_\+bind()}, \textbf{ gprs\+\_\+ns2\+\_\+sns\+\_\+del\+\_\+bind()}, \textbf{ ns2\+\_\+sns\+\_\+bss\+\_\+fsm\+\_\+alloc()}, \textbf{ ns2\+\_\+sns\+\_\+bss\+\_\+valid\+\_\+configuration()}, \textbf{ ns2\+\_\+sns\+\_\+choose\+\_\+next\+\_\+bind()}, \textbf{ ns2\+\_\+sns\+\_\+compute\+\_\+local\+\_\+ep\+\_\+from\+\_\+binds()}, \textbf{ ns2\+\_\+sns\+\_\+count\+\_\+num\+\_\+local\+\_\+ep()}, \textbf{ ns2\+\_\+sns\+\_\+sgsn\+\_\+fsm\+\_\+alloc()}, and \textbf{ ns2\+\_\+sns\+\_\+update\+\_\+weights()}.

\mbox{\label{structns2__sns__state_acf45cebb2586928b3f6e8b46b4aba89f}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!block\_no\_nsvc\_events@{block\_no\_nsvc\_events}}
\index{block\_no\_nsvc\_events@{block\_no\_nsvc\_events}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{block\_no\_nsvc\_events}
{\footnotesize\ttfamily bool ns2\+\_\+sns\+\_\+state\+::block\+\_\+no\+\_\+nsvc\+\_\+events}



Referenced by \textbf{ ns2\+\_\+clear\+\_\+sgsn()}, \textbf{ ns2\+\_\+sns\+\_\+notify\+\_\+alive()}, \textbf{ ns2\+\_\+sns\+\_\+replace\+\_\+nsvc()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action\+\_\+bss()}, and \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action\+\_\+sgsn()}.

\mbox{\label{structns2__sns__state_a71e1f9fdb0699c3dc6c6539db6234211}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!current\_procedure@{current\_procedure}}
\index{current\_procedure@{current\_procedure}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{current\_procedure}
{\footnotesize\ttfamily struct \textbf{ ns2\+\_\+sns\+\_\+procedure}$\ast$ ns2\+\_\+sns\+\_\+state\+::current\+\_\+procedure}



Referenced by \textbf{ ns2\+\_\+clear\+\_\+procedures()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+local\+\_\+procedure()}, and \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+local\+\_\+procedure\+\_\+onenter()}.

\mbox{\label{structns2__sns__state_a76eed5faeede81eecd8eb025338cb184}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!family@{family}}
\index{family@{family}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{family}
{\footnotesize\ttfamily int ns2\+\_\+sns\+\_\+state\+::family}



Referenced by \textbf{ do\+\_\+sns\+\_\+add()}, \textbf{ ns2\+\_\+add\+\_\+procedure()}, \textbf{ ns2\+\_\+get\+\_\+sbind\+\_\+ip4\+\_\+entry()}, \textbf{ ns2\+\_\+get\+\_\+sbind\+\_\+ip6\+\_\+entry()}, \textbf{ ns2\+\_\+sns\+\_\+add\+\_\+elements()}, \textbf{ ns2\+\_\+sns\+\_\+compute\+\_\+local\+\_\+ep\+\_\+from\+\_\+binds()}, \textbf{ ns2\+\_\+sns\+\_\+copy\+\_\+local\+\_\+endpoints()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action\+\_\+bss()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action\+\_\+sgsn()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+config\+\_\+bss\+\_\+onenter()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+configured\+\_\+add()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+configured\+\_\+delete()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+local\+\_\+procedure()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+local\+\_\+procedure\+\_\+onenter()}, \textbf{ ns2\+\_\+sns\+\_\+update\+\_\+weights()}, and \textbf{ ns2\+\_\+update\+\_\+weight\+\_\+entry()}.

\mbox{\label{structns2__sns__state_a98381bceaf345f39c874699092a1f5b5}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!initial@{initial}}
\index{initial@{initial}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{initial}
{\footnotesize\ttfamily struct \textbf{ sns\+\_\+endpoint}$\ast$ ns2\+\_\+sns\+\_\+state\+::initial}



Referenced by \textbf{ gprs\+\_\+ns2\+\_\+nse\+\_\+sns\+\_\+remote()}, \textbf{ gprs\+\_\+ns2\+\_\+sns\+\_\+del\+\_\+endpoint()}, \textbf{ ns2\+\_\+sns\+\_\+compute\+\_\+local\+\_\+ep\+\_\+from\+\_\+binds()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action\+\_\+bss()}, and \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+size\+\_\+onenter()}.

\mbox{\label{structns2__sns__state_acce5d440b75940d98cbea5ffacefd646}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!initial\_bind@{initial\_bind}}
\index{initial\_bind@{initial\_bind}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{initial\_bind}
{\footnotesize\ttfamily struct \textbf{ ns2\+\_\+sns\+\_\+bind}$\ast$ ns2\+\_\+sns\+\_\+state\+::initial\+\_\+bind}



Referenced by \textbf{ gprs\+\_\+ns2\+\_\+sns\+\_\+del\+\_\+bind()}, \textbf{ ns2\+\_\+sns\+\_\+choose\+\_\+next\+\_\+bind()}, and \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+size\+\_\+onenter()}.

\mbox{\label{structns2__sns__state_a93ac08bb1ce90ae4bec616477a4b94ae}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!local@{local}}
\index{local@{local}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{local}
{\footnotesize\ttfamily struct \textbf{ ns2\+\_\+sns\+\_\+elems} ns2\+\_\+sns\+\_\+state\+::local}



Referenced by \textbf{ ns2\+\_\+clear\+\_\+sgsn()}, \textbf{ ns2\+\_\+sns\+\_\+compute\+\_\+local\+\_\+ep\+\_\+from\+\_\+binds()}, \textbf{ ns2\+\_\+sns\+\_\+copy\+\_\+local\+\_\+endpoints()}, \textbf{ ns2\+\_\+sns\+\_\+dump\+\_\+vty()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action\+\_\+bss()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action\+\_\+sgsn()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+config\+\_\+bss\+\_\+onenter()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+size\+\_\+onenter()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+local\+\_\+procedure()}, and \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+sgsn\+\_\+wait\+\_\+config\+\_\+ack\+\_\+onenter()}.

\mbox{\label{structns2__sns__state_af776cc2ba590860ad7b0eb23390d8550}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!local\_procedure@{local\_procedure}}
\index{local\_procedure@{local\_procedure}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{local\_procedure}
{\footnotesize\ttfamily struct \textbf{ ns2\+\_\+sns\+\_\+elems} ns2\+\_\+sns\+\_\+state\+::local\+\_\+procedure}



Referenced by \textbf{ ns2\+\_\+sns\+\_\+copy\+\_\+local\+\_\+endpoints()}, and \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action()}.

\mbox{\label{structns2__sns__state_adaba8fd1c09849c7d48dd5ea5a072c51}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!N@{N}}
\index{N@{N}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{N}
{\footnotesize\ttfamily int ns2\+\_\+sns\+\_\+state\+::N}



Referenced by \textbf{ ns2\+\_\+sns\+\_\+fsm\+\_\+bss\+\_\+timer\+\_\+cb()}, \textbf{ ns2\+\_\+sns\+\_\+fsm\+\_\+sgsn\+\_\+timer\+\_\+cb()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action\+\_\+sgsn()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+config\+\_\+bss\+\_\+onenter()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+config\+\_\+sgsn\+\_\+onenter()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+size\+\_\+onenter()}, and \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+local\+\_\+procedure\+\_\+onenter()}.

\mbox{\label{structns2__sns__state_a712d387f904d5e31ae7e15e0c06ed5b4}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!nse@{nse}}
\index{nse@{nse}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{nse}
{\footnotesize\ttfamily struct \textbf{ gprs\+\_\+ns2\+\_\+nse}$\ast$ ns2\+\_\+sns\+\_\+state\+::nse}



Referenced by \textbf{ \+\_\+sns\+\_\+failed()}, \textbf{ create\+\_\+missing\+\_\+nsvcs()}, \textbf{ create\+\_\+nsvc\+\_\+for\+\_\+new\+\_\+sbind()}, \textbf{ do\+\_\+sns\+\_\+add()}, \textbf{ do\+\_\+sns\+\_\+change\+\_\+weight()}, \textbf{ do\+\_\+sns\+\_\+delete()}, \textbf{ gprs\+\_\+ns2\+\_\+nse\+\_\+sns\+\_\+remote()}, \textbf{ ns2\+\_\+add\+\_\+procedure()}, \textbf{ ns2\+\_\+clear\+\_\+sgsn()}, \textbf{ ns2\+\_\+sns\+\_\+bss\+\_\+fsm\+\_\+alloc()}, \textbf{ ns2\+\_\+sns\+\_\+dump\+\_\+vty()}, \textbf{ ns2\+\_\+sns\+\_\+fsm\+\_\+bss\+\_\+timer\+\_\+cb()}, \textbf{ ns2\+\_\+sns\+\_\+fsm\+\_\+sgsn\+\_\+timer\+\_\+cb()}, \textbf{ ns2\+\_\+sns\+\_\+replace\+\_\+nsvc()}, \textbf{ ns2\+\_\+sns\+\_\+sgsn\+\_\+fsm\+\_\+alloc()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action\+\_\+bss()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+config\+\_\+bss()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+config\+\_\+sgsn()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+size()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+size\+\_\+onenter()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+configured\+\_\+add()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+configured\+\_\+onenter()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+local\+\_\+procedure()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+sgsn\+\_\+wait\+\_\+config()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+sgsn\+\_\+wait\+\_\+config\+\_\+ack()}, \textbf{ ns2\+\_\+sns\+\_\+update\+\_\+weights()}, \textbf{ ns2\+\_\+sns\+\_\+write\+\_\+vty()}, and \textbf{ nse\+\_\+inst\+\_\+from\+\_\+fi()}.

\mbox{\label{structns2__sns__state_aa4871cb7aec2bf8b3ef09d4ef6c34b60}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!num\_max\_ip4\_remote@{num\_max\_ip4\_remote}}
\index{num\_max\_ip4\_remote@{num\_max\_ip4\_remote}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{num\_max\_ip4\_remote}
{\footnotesize\ttfamily size\+\_\+t ns2\+\_\+sns\+\_\+state\+::num\+\_\+max\+\_\+ip4\+\_\+remote}



Referenced by \textbf{ do\+\_\+sns\+\_\+add()}, \textbf{ ns2\+\_\+sns\+\_\+bss\+\_\+fsm\+\_\+alloc()}, \textbf{ ns2\+\_\+sns\+\_\+compute\+\_\+local\+\_\+ep\+\_\+from\+\_\+binds()}, \textbf{ ns2\+\_\+sns\+\_\+dump\+\_\+vty()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action\+\_\+sgsn()}, and \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+size\+\_\+onenter()}.

\mbox{\label{structns2__sns__state_af926fdfaff5d104e4eafb03dca91a053}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!num\_max\_ip6\_remote@{num\_max\_ip6\_remote}}
\index{num\_max\_ip6\_remote@{num\_max\_ip6\_remote}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{num\_max\_ip6\_remote}
{\footnotesize\ttfamily size\+\_\+t ns2\+\_\+sns\+\_\+state\+::num\+\_\+max\+\_\+ip6\+\_\+remote}



Referenced by \textbf{ do\+\_\+sns\+\_\+add()}, \textbf{ ns2\+\_\+sns\+\_\+bss\+\_\+fsm\+\_\+alloc()}, \textbf{ ns2\+\_\+sns\+\_\+compute\+\_\+local\+\_\+ep\+\_\+from\+\_\+binds()}, \textbf{ ns2\+\_\+sns\+\_\+dump\+\_\+vty()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action()}, and \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action\+\_\+sgsn()}.

\mbox{\label{structns2__sns__state_a0270c14d4166c28fe100d982a38bd002}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!num\_max\_nsvcs@{num\_max\_nsvcs}}
\index{num\_max\_nsvcs@{num\_max\_nsvcs}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{num\_max\_nsvcs}
{\footnotesize\ttfamily size\+\_\+t ns2\+\_\+sns\+\_\+state\+::num\+\_\+max\+\_\+nsvcs}



Referenced by \textbf{ ns2\+\_\+sns\+\_\+compute\+\_\+local\+\_\+ep\+\_\+from\+\_\+binds()}, \textbf{ ns2\+\_\+sns\+\_\+dump\+\_\+vty()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action\+\_\+sgsn()}, and \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+size\+\_\+onenter()}.

\mbox{\label{structns2__sns__state_a571c9fa5f739ec757138871ed9ac9aac}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!procedures@{procedures}}
\index{procedures@{procedures}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{procedures}
{\footnotesize\ttfamily struct \textbf{ llist\+\_\+head} ns2\+\_\+sns\+\_\+state\+::procedures}



Referenced by \textbf{ ns2\+\_\+add\+\_\+procedure()}, \textbf{ ns2\+\_\+clear\+\_\+procedures()}, \textbf{ ns2\+\_\+sns\+\_\+bss\+\_\+fsm\+\_\+alloc()}, \textbf{ ns2\+\_\+sns\+\_\+sgsn\+\_\+fsm\+\_\+alloc()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+configured\+\_\+onenter()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+local\+\_\+procedure()}, and \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+local\+\_\+procedure\+\_\+onenter()}.

\mbox{\label{structns2__sns__state_a20cc8df735489f5fa4a7bf111cb761e9}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!remote@{remote}}
\index{remote@{remote}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{remote}
{\footnotesize\ttfamily struct \textbf{ ns2\+\_\+sns\+\_\+elems} ns2\+\_\+sns\+\_\+state\+::remote}



Referenced by \textbf{ create\+\_\+missing\+\_\+nsvcs()}, \textbf{ create\+\_\+nsvc\+\_\+for\+\_\+new\+\_\+sbind()}, \textbf{ do\+\_\+sns\+\_\+add()}, \textbf{ do\+\_\+sns\+\_\+change\+\_\+weight()}, \textbf{ do\+\_\+sns\+\_\+delete()}, \textbf{ ns2\+\_\+clear\+\_\+sgsn()}, \textbf{ ns2\+\_\+sns\+\_\+compute\+\_\+local\+\_\+ep\+\_\+from\+\_\+binds()}, \textbf{ ns2\+\_\+sns\+\_\+dump\+\_\+vty()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action\+\_\+bss()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+config\+\_\+sgsn()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+configured\+\_\+delete()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+sgsn\+\_\+wait\+\_\+config()}, and \textbf{ ns\+\_\+sns\+\_\+append\+\_\+remote\+\_\+eps()}.

\mbox{\label{structns2__sns__state_a201d89a912596bdc7a070d0044602cf0}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!reselection\_running@{reselection\_running}}
\index{reselection\_running@{reselection\_running}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{reselection\_running}
{\footnotesize\ttfamily bool ns2\+\_\+sns\+\_\+state\+::reselection\+\_\+running}



Referenced by \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action\+\_\+bss()}.

\mbox{\label{structns2__sns__state_a70aee060fb1827ee503ecee294136646}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!role@{role}}
\index{role@{role}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{role}
{\footnotesize\ttfamily enum \textbf{ ns2\+\_\+sns\+\_\+role} ns2\+\_\+sns\+\_\+state\+::role}



Referenced by \textbf{ \+\_\+sns\+\_\+failed()}, \textbf{ ns2\+\_\+sns\+\_\+bss\+\_\+fsm\+\_\+alloc()}, \textbf{ ns2\+\_\+sns\+\_\+compute\+\_\+local\+\_\+ep\+\_\+from\+\_\+binds()}, \textbf{ ns2\+\_\+sns\+\_\+sgsn\+\_\+fsm\+\_\+alloc()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action\+\_\+sgsn()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+config\+\_\+bss()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+config\+\_\+bss\+\_\+onenter()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+config\+\_\+sgsn()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+config\+\_\+sgsn\+\_\+onenter()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+size()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+size\+\_\+onenter()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+unconfigured()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+sgsn\+\_\+unconfigured()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+sgsn\+\_\+wait\+\_\+config()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+sgsn\+\_\+wait\+\_\+config\+\_\+ack()}, and \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+sgsn\+\_\+wait\+\_\+config\+\_\+ack\+\_\+onenter()}.

\mbox{\label{structns2__sns__state_a0b52deb6ec0ff9467ab793c0b82f3b23}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!sns\_endpoints@{sns\_endpoints}}
\index{sns\_endpoints@{sns\_endpoints}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{sns\_endpoints}
{\footnotesize\ttfamily struct \textbf{ llist\+\_\+head} ns2\+\_\+sns\+\_\+state\+::sns\+\_\+endpoints}



Referenced by \textbf{ gprs\+\_\+ns2\+\_\+sns\+\_\+add\+\_\+endpoint()}, \textbf{ gprs\+\_\+ns2\+\_\+sns\+\_\+count()}, \textbf{ gprs\+\_\+ns2\+\_\+sns\+\_\+del\+\_\+endpoint()}, \textbf{ ns2\+\_\+get\+\_\+sns\+\_\+endpoint()}, \textbf{ ns2\+\_\+sns\+\_\+bss\+\_\+fsm\+\_\+alloc()}, \textbf{ ns2\+\_\+sns\+\_\+bss\+\_\+valid\+\_\+configuration()}, \textbf{ ns2\+\_\+sns\+\_\+sgsn\+\_\+fsm\+\_\+alloc()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action\+\_\+bss()}, and \textbf{ ns2\+\_\+sns\+\_\+write\+\_\+vty()}.

\mbox{\label{structns2__sns__state_ad4b660c0b8e1ae47bc60f727a2b03f07}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!sns\_nsvc@{sns\_nsvc}}
\index{sns\_nsvc@{sns\_nsvc}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{sns\_nsvc}
{\footnotesize\ttfamily struct \textbf{ gprs\+\_\+ns2\+\_\+vc}$\ast$ ns2\+\_\+sns\+\_\+state\+::sns\+\_\+nsvc}



Referenced by \textbf{ ns2\+\_\+sns\+\_\+compute\+\_\+local\+\_\+ep\+\_\+from\+\_\+binds()}, \textbf{ ns2\+\_\+sns\+\_\+notify\+\_\+alive()}, \textbf{ ns2\+\_\+sns\+\_\+replace\+\_\+nsvc()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+all\+\_\+action\+\_\+sgsn()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+config\+\_\+bss\+\_\+onenter()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+config\+\_\+sgsn()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+bss\+\_\+size\+\_\+onenter()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+configured\+\_\+add()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+configured\+\_\+change()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+configured\+\_\+delete()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+configured\+\_\+onenter()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+local\+\_\+procedure\+\_\+onenter()}, \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+sgsn\+\_\+wait\+\_\+config()}, and \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+sgsn\+\_\+wait\+\_\+config\+\_\+ack\+\_\+onenter()}.

\mbox{\label{structns2__sns__state_a1280e23ea3d587080c1f2c465a5fb3b5}} 
\index{ns2\_sns\_state@{ns2\_sns\_state}!trans\_id@{trans\_id}}
\index{trans\_id@{trans\_id}!ns2\_sns\_state@{ns2\_sns\_state}}
\doxysubsubsection{trans\_id}
{\footnotesize\ttfamily uint8\+\_\+t ns2\+\_\+sns\+\_\+state\+::trans\+\_\+id}



Referenced by \textbf{ ns2\+\_\+sns\+\_\+st\+\_\+local\+\_\+procedure\+\_\+onenter()}.



The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
src/gb/\textbf{ gprs\+\_\+ns2\+\_\+sns.\+c}\end{DoxyCompactItemize}
