\doxysection{src/gb/gprs\+\_\+bssgp\+\_\+vty.c File Reference}
\label{gprs__bssgp__vty_8c}\index{src/gb/gprs\_bssgp\_vty.c@{src/gb/gprs\_bssgp\_vty.c}}


VTY interface for our GPRS BSS Gateway Protocol (BSSGP) implementation.  


{\ttfamily \#include $<$stdlib.\+h$>$}\newline
{\ttfamily \#include $<$unistd.\+h$>$}\newline
{\ttfamily \#include $<$errno.\+h$>$}\newline
{\ttfamily \#include $<$stdint.\+h$>$}\newline
{\ttfamily \#include $<$arpa/inet.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/msgb.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gsm/tlv.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/talloc.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/select.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/rate\+\_\+ctr.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gprs/gprs\+\_\+ns.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gprs/gprs\+\_\+bssgp.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gprs/gprs\+\_\+bssgp\+\_\+bss.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/vty/vty.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/vty/command.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/vty/logging.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/vty/telnet\+\_\+interface.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/vty/misc.\+h$>$}\newline
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \textbf{ BSSGP\+\_\+\+STR}~\char`\"{}Show information about the BSSGP \textbf{ protocol\textbackslash{}n}\char`\"{}
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
static void \textbf{ log\+\_\+set\+\_\+bvc\+\_\+filter} (struct \textbf{ log\+\_\+target} $\ast$target, struct \textbf{ bssgp\+\_\+bvc\+\_\+ctx} $\ast$bctx)
\item 
static int \textbf{ config\+\_\+write\+\_\+bssgp} (struct \textbf{ vty} $\ast$\textbf{ vty})
\item 
\textbf{ DEFUN} (cfg\+\_\+bssgp, cfg\+\_\+bssgp\+\_\+cmd, \char`\"{}bssgp\char`\"{}, \char`\"{}Configure the GPRS BSS Gateway Protocol\char`\"{})
\item 
static void \textbf{ dump\+\_\+bvc} (struct \textbf{ vty} $\ast$\textbf{ vty}, struct \textbf{ bssgp\+\_\+bvc\+\_\+ctx} $\ast$bvc, int stats)
\item 
static void \textbf{ dump\+\_\+bssgp} (struct \textbf{ vty} $\ast$\textbf{ vty}, int stats)
\item 
\textbf{ DEFUN} (bvc\+\_\+reset, bvc\+\_\+reset\+\_\+cmd, \char`\"{}bssgp bvc \textbf{ nsei} $<$0-\/65535$>$ \textbf{ bvci} $<$0-\/65535$>$ reset\char`\"{}, \char`\"{}Initiate BVC RESET procedure \textbf{ for} a given NSEI and \textbf{ BVCI\textbackslash{}n}\char`\"{} \char`\"{}Filter based on BSSGP Virtual \textbf{ Connection\textbackslash{}n}\char`\"{} \char`\"{}NSEI of the BVC to be \textbf{ filtered\textbackslash{}n}\char`\"{} \char`\"{}Network Service Entity Identifier (NSEI)\textbackslash{}\textbf{ n}\char`\"{} \char`\"{}BVCI of the BVC to be \textbf{ filtered\textbackslash{}n}\char`\"{} \char`\"{}BSSGP Virtual Connection Identifier (BVCI)\textbackslash{}\textbf{ n}\char`\"{} \char`\"{}Perform reset \textbf{ procedure\textbackslash{}n}\char`\"{})
\item 
\textbf{ DEFUN} (show\+\_\+bssgp, show\+\_\+bssgp\+\_\+cmd, \char`\"{}show bssgp\char`\"{}, SHOW\+\_\+\+STR \textbf{ BSSGP\+\_\+\+STR})
\item 
\textbf{ DEFUN} (show\+\_\+bssgp\+\_\+stats, show\+\_\+bssgp\+\_\+stats\+\_\+cmd, \char`\"{}show bssgp stats\char`\"{}, SHOW\+\_\+\+STR \textbf{ BSSGP\+\_\+\+STR} \char`\"{}Include \textbf{ statistics\textbackslash{}n}\char`\"{})
\item 
\textbf{ DEFUN} (show\+\_\+bvc, show\+\_\+bvc\+\_\+cmd, \char`\"{}show bssgp \textbf{ nsei} $<$0-\/65535$>$ [stats]\char`\"{}, SHOW\+\_\+\+STR \textbf{ BSSGP\+\_\+\+STR} \char`\"{}Show all BVCs on one \textbf{ NSE\textbackslash{}n}\char`\"{} \char`\"{}The \textbf{ NSEI\textbackslash{}n}\char`\"{} \char`\"{}Include \textbf{ Statistics\textbackslash{}n}\char`\"{})
\item 
\textbf{ DEFUN} (logging\+\_\+fltr\+\_\+bvc, logging\+\_\+fltr\+\_\+bvc\+\_\+cmd, \char`\"{}logging filter bvc \textbf{ nsei} $<$0-\/65535$>$ \textbf{ bvci} $<$0-\/65535$>$\char`\"{}, LOGGING\+\_\+\+STR \textbf{ FILTER\+\_\+\+STR} \char`\"{}Filter based on BSSGP Virtual \textbf{ Connection\textbackslash{}n}\char`\"{} \char`\"{}NSEI of the BVC to be \textbf{ filtered\textbackslash{}n}\char`\"{} \char`\"{}Network Service Entity Identifier (NSEI)\textbackslash{}\textbf{ n}\char`\"{} \char`\"{}BVCI of the BVC to be \textbf{ filtered\textbackslash{}n}\char`\"{} \char`\"{}BSSGP Virtual Connection Identifier (BVCI)\textbackslash{}\textbf{ n}\char`\"{})
\item 
int \textbf{ bssgp\+\_\+vty\+\_\+init} (void)
\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
static struct \textbf{ cmd\+\_\+node} \textbf{ bssgp\+\_\+node}
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
VTY interface for our GPRS BSS Gateway Protocol (BSSGP) implementation. 



\doxysubsection{Macro Definition Documentation}
\mbox{\label{gprs__bssgp__vty_8c_ae5a422461509145ca297d0b8aac809a2}} 
\index{gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}!BSSGP\_STR@{BSSGP\_STR}}
\index{BSSGP\_STR@{BSSGP\_STR}!gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}}
\doxysubsubsection{BSSGP\_STR}
{\footnotesize\ttfamily \#define BSSGP\+\_\+\+STR~\char`\"{}Show information about the BSSGP \textbf{ protocol\textbackslash{}n}\char`\"{}}



\doxysubsection{Function Documentation}
\mbox{\label{gprs__bssgp__vty_8c_acf8050dc08e36ce62f003a3c8a8af7b4}} 
\index{gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}!bssgp\_vty\_init@{bssgp\_vty\_init}}
\index{bssgp\_vty\_init@{bssgp\_vty\_init}!gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}}
\doxysubsubsection{bssgp\_vty\_init()}
{\footnotesize\ttfamily int bssgp\+\_\+vty\+\_\+init (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



References \textbf{ bssgp\+\_\+node}, \textbf{ CFG\+\_\+\+LOG\+\_\+\+NODE}, \textbf{ CONFIG\+\_\+\+NODE}, \textbf{ config\+\_\+write\+\_\+bssgp()}, \textbf{ install\+\_\+lib\+\_\+element()}, \textbf{ install\+\_\+lib\+\_\+element\+\_\+ve()}, and \textbf{ install\+\_\+node()}.

\mbox{\label{gprs__bssgp__vty_8c_affc3c6ca9a62bf7394064f7a6f3fa04e}} 
\index{gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}!config\_write\_bssgp@{config\_write\_bssgp}}
\index{config\_write\_bssgp@{config\_write\_bssgp}!gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}}
\doxysubsubsection{config\_write\_bssgp()}
{\footnotesize\ttfamily static int config\+\_\+write\+\_\+bssgp (\begin{DoxyParamCaption}\item[{struct \textbf{ vty} $\ast$}]{vty }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ CMD\+\_\+\+SUCCESS}, \textbf{ VTY\+\_\+\+NEWLINE}, and \textbf{ vty\+\_\+out()}.



Referenced by \textbf{ bssgp\+\_\+vty\+\_\+init()}.

\mbox{\label{gprs__bssgp__vty_8c_ae7fb4234bec5343c3948c4e7dae506cd}} 
\index{gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}!DEFUN@{DEFUN}}
\index{DEFUN@{DEFUN}!gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}}
\doxysubsubsection{DEFUN()\hspace{0.1cm}{\footnotesize\ttfamily [1/6]}}
{\footnotesize\ttfamily DEFUN (\begin{DoxyParamCaption}\item[{bvc\+\_\+reset}]{,  }\item[{bvc\+\_\+reset\+\_\+cmd}]{,  }\item[{\char`\"{}bssgp bvc \textbf{ nsei} $<$0-\/65535$>$ \textbf{ bvci} $<$0-\/65535$>$ reset\char`\"{}}]{,  }\item[{\char`\"{}Initiate BVC RESET procedure \textbf{ for} a given NSEI and \textbf{ BVCI\textbackslash{}n}\char`\"{} \char`\"{}Filter based on BSSGP Virtual \textbf{ Connection\textbackslash{}n}\char`\"{} \char`\"{}NSEI of the BVC to be \textbf{ filtered\textbackslash{}n}\char`\"{} \char`\"{}Network Service Entity Identifier (NSEI)\textbackslash{}\textbf{ n}\char`\"{} \char`\"{}BVCI of the BVC to be \textbf{ filtered\textbackslash{}n}\char`\"{} \char`\"{}BSSGP Virtual Connection Identifier (BVCI)\textbackslash{}\textbf{ n}\char`\"{} \char`\"{}Perform reset \textbf{ procedure\textbackslash{}n}\char`\"{}}]{ }\end{DoxyParamCaption})}



References \textbf{ argv}, \textbf{ BSSGP\+\_\+\+CAUSE\+\_\+\+OML\+\_\+\+INTERV}, \textbf{ bssgp\+\_\+tx\+\_\+bvc\+\_\+reset()}, \textbf{ btsctx\+\_\+by\+\_\+bvci\+\_\+nsei()}, \textbf{ bvci}, \textbf{ CMD\+\_\+\+SUCCESS}, \textbf{ CMD\+\_\+\+WARNING}, \textbf{ nsei}, \textbf{ VTY\+\_\+\+NEWLINE}, and \textbf{ vty\+\_\+out()}.

\mbox{\label{gprs__bssgp__vty_8c_a7af8ce72a1c67d93c059c9ea765ddd70}} 
\index{gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}!DEFUN@{DEFUN}}
\index{DEFUN@{DEFUN}!gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}}
\doxysubsubsection{DEFUN()\hspace{0.1cm}{\footnotesize\ttfamily [2/6]}}
{\footnotesize\ttfamily DEFUN (\begin{DoxyParamCaption}\item[{cfg\+\_\+bssgp}]{,  }\item[{cfg\+\_\+bssgp\+\_\+cmd}]{,  }\item[{\char`\"{}bssgp\char`\"{}}]{,  }\item[{\char`\"{}Configure the GPRS BSS Gateway Protocol\char`\"{}}]{ }\end{DoxyParamCaption})}



References \textbf{ CMD\+\_\+\+SUCCESS}, \textbf{ L\+\_\+\+BSSGP\+\_\+\+NODE}, and \textbf{ vty\+::node}.

\mbox{\label{gprs__bssgp__vty_8c_aeb30477e133a9aa7a7fccbd8e9ebb45a}} 
\index{gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}!DEFUN@{DEFUN}}
\index{DEFUN@{DEFUN}!gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}}
\doxysubsubsection{DEFUN()\hspace{0.1cm}{\footnotesize\ttfamily [3/6]}}
{\footnotesize\ttfamily DEFUN (\begin{DoxyParamCaption}\item[{logging\+\_\+fltr\+\_\+bvc}]{,  }\item[{logging\+\_\+fltr\+\_\+bvc\+\_\+cmd}]{,  }\item[{\char`\"{}logging filter bvc \textbf{ nsei} $<$0-\/65535$>$ \textbf{ bvci} $<$0-\/65535$>$\char`\"{}}]{,  }\item[{\textbf{ LOGGING\+\_\+\+STR} \textbf{ FILTER\+\_\+\+STR} \char`\"{}Filter based on BSSGP Virtual \textbf{ Connection\textbackslash{}n}\char`\"{} \char`\"{}NSEI of the BVC to be \textbf{ filtered\textbackslash{}n}\char`\"{} \char`\"{}Network Service Entity Identifier (NSEI)\textbackslash{}\textbf{ n}\char`\"{} \char`\"{}BVCI of the BVC to be \textbf{ filtered\textbackslash{}n}\char`\"{} \char`\"{}BSSGP Virtual Connection Identifier (BVCI)\textbackslash{}\textbf{ n}\char`\"{}}]{ }\end{DoxyParamCaption})}



References \textbf{ argv}, \textbf{ btsctx\+\_\+by\+\_\+bvci\+\_\+nsei()}, \textbf{ bvci}, \textbf{ CMD\+\_\+\+SUCCESS}, \textbf{ CMD\+\_\+\+WARNING}, \textbf{ log\+\_\+set\+\_\+bvc\+\_\+filter()}, \textbf{ log\+\_\+tgt\+\_\+mutex\+\_\+lock}, \textbf{ log\+\_\+tgt\+\_\+mutex\+\_\+unlock}, \textbf{ nsei}, \textbf{ osmo\+\_\+log\+\_\+vty2tgt()}, \textbf{ VTY\+\_\+\+NEWLINE}, and \textbf{ vty\+\_\+out()}.

\mbox{\label{gprs__bssgp__vty_8c_a9e2db245737645a8447954f0845f3f40}} 
\index{gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}!DEFUN@{DEFUN}}
\index{DEFUN@{DEFUN}!gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}}
\doxysubsubsection{DEFUN()\hspace{0.1cm}{\footnotesize\ttfamily [4/6]}}
{\footnotesize\ttfamily DEFUN (\begin{DoxyParamCaption}\item[{show\+\_\+bssgp}]{,  }\item[{show\+\_\+bssgp\+\_\+cmd}]{,  }\item[{\char`\"{}show bssgp\char`\"{}}]{,  }\item[{\textbf{ SHOW\+\_\+\+STR}}]{BSSGP\+\_\+\+STR }\end{DoxyParamCaption})}



References \textbf{ CMD\+\_\+\+SUCCESS}, and \textbf{ dump\+\_\+bssgp()}.

\mbox{\label{gprs__bssgp__vty_8c_a271dab4f1644b1d4f84f15d8ad7bf2a6}} 
\index{gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}!DEFUN@{DEFUN}}
\index{DEFUN@{DEFUN}!gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}}
\doxysubsubsection{DEFUN()\hspace{0.1cm}{\footnotesize\ttfamily [5/6]}}
{\footnotesize\ttfamily DEFUN (\begin{DoxyParamCaption}\item[{show\+\_\+bssgp\+\_\+stats}]{,  }\item[{show\+\_\+bssgp\+\_\+stats\+\_\+cmd}]{,  }\item[{\char`\"{}show bssgp stats\char`\"{}}]{,  }\item[{\textbf{ SHOW\+\_\+\+STR} \textbf{ BSSGP\+\_\+\+STR} \char`\"{}Include \textbf{ statistics\textbackslash{}n}\char`\"{}}]{ }\end{DoxyParamCaption})}



References \textbf{ CMD\+\_\+\+SUCCESS}, and \textbf{ dump\+\_\+bssgp()}.

\mbox{\label{gprs__bssgp__vty_8c_a2955d930a0f4b39e4fd887bc65b5dde2}} 
\index{gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}!DEFUN@{DEFUN}}
\index{DEFUN@{DEFUN}!gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}}
\doxysubsubsection{DEFUN()\hspace{0.1cm}{\footnotesize\ttfamily [6/6]}}
{\footnotesize\ttfamily DEFUN (\begin{DoxyParamCaption}\item[{show\+\_\+bvc}]{,  }\item[{show\+\_\+bvc\+\_\+cmd}]{,  }\item[{\char`\"{}show bssgp \textbf{ nsei} $<$0-\/65535$>$ \char`\"{}}]{[stats],  }\item[{\textbf{ SHOW\+\_\+\+STR} \textbf{ BSSGP\+\_\+\+STR} \char`\"{}Show all BVCs on one \textbf{ NSE\textbackslash{}n}\char`\"{} \char`\"{}The \textbf{ NSEI\textbackslash{}n}\char`\"{} \char`\"{}Include \textbf{ Statistics\textbackslash{}n}\char`\"{}}]{ }\end{DoxyParamCaption})}



References \textbf{ argc}, \textbf{ argv}, \textbf{ bssgp\+\_\+bvc\+\_\+ctxts}, \textbf{ CMD\+\_\+\+SUCCESS}, \textbf{ dump\+\_\+bvc()}, \textbf{ list}, \textbf{ llist\+\_\+for\+\_\+each\+\_\+entry}, \textbf{ bssgp\+\_\+bvc\+\_\+ctx\+::nsei}, and \textbf{ nsei}.

\mbox{\label{gprs__bssgp__vty_8c_ae75af174c6981f9a1828321844c1bad6}} 
\index{gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}!dump\_bssgp@{dump\_bssgp}}
\index{dump\_bssgp@{dump\_bssgp}!gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}}
\doxysubsubsection{dump\_bssgp()}
{\footnotesize\ttfamily static void dump\+\_\+bssgp (\begin{DoxyParamCaption}\item[{struct \textbf{ vty} $\ast$}]{vty,  }\item[{int}]{stats }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ bssgp\+\_\+bvc\+\_\+ctxts}, \textbf{ dump\+\_\+bvc()}, \textbf{ list}, and \textbf{ llist\+\_\+for\+\_\+each\+\_\+entry}.



Referenced by \textbf{ DEFUN()}.

\mbox{\label{gprs__bssgp__vty_8c_a9081e788dda763dfc960c66e41c58ac9}} 
\index{gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}!dump\_bvc@{dump\_bvc}}
\index{dump\_bvc@{dump\_bvc}!gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}}
\doxysubsubsection{dump\_bvc()}
{\footnotesize\ttfamily static void dump\+\_\+bvc (\begin{DoxyParamCaption}\item[{struct \textbf{ vty} $\ast$}]{vty,  }\item[{struct \textbf{ bssgp\+\_\+bvc\+\_\+ctx} $\ast$}]{bvc,  }\item[{int}]{stats }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ bssgp\+\_\+flow\+\_\+control\+::bucket\+\_\+counter}, \textbf{ bssgp\+\_\+flow\+\_\+control\+::bucket\+\_\+leak\+\_\+rate}, \textbf{ bssgp\+\_\+flow\+\_\+control\+::bucket\+\_\+size\+\_\+max}, \textbf{ BVC\+\_\+\+S\+\_\+\+BLOCKED}, \textbf{ bssgp\+\_\+bvc\+\_\+ctx\+::bvci}, \textbf{ bssgp\+\_\+bvc\+\_\+ctx\+::cell\+\_\+id}, \textbf{ bssgp\+\_\+bvc\+\_\+ctx\+::ctrg}, \textbf{ bssgp\+\_\+bvc\+\_\+ctx\+::fc}, \textbf{ bssgp\+\_\+flow\+\_\+control\+::max\+\_\+queue\+\_\+depth}, \textbf{ bssgp\+\_\+bvc\+\_\+ctx\+::nsei}, \textbf{ osmo\+\_\+rai\+\_\+name()}, \textbf{ bssgp\+\_\+flow\+\_\+control\+::queue\+\_\+depth}, \textbf{ bssgp\+\_\+bvc\+\_\+ctx\+::ra\+\_\+id}, \textbf{ bssgp\+\_\+bvc\+\_\+ctx\+::state}, \textbf{ VTY\+\_\+\+NEWLINE}, \textbf{ vty\+\_\+out()}, and \textbf{ vty\+\_\+out\+\_\+rate\+\_\+ctr\+\_\+group()}.



Referenced by \textbf{ DEFUN()}, and \textbf{ dump\+\_\+bssgp()}.

\mbox{\label{gprs__bssgp__vty_8c_a180656676e64956ef2a8445e94c447ca}} 
\index{gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}!log\_set\_bvc\_filter@{log\_set\_bvc\_filter}}
\index{log\_set\_bvc\_filter@{log\_set\_bvc\_filter}!gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}}
\doxysubsubsection{log\_set\_bvc\_filter()}
{\footnotesize\ttfamily static void log\+\_\+set\+\_\+bvc\+\_\+filter (\begin{DoxyParamCaption}\item[{struct \textbf{ log\+\_\+target} $\ast$}]{target,  }\item[{struct \textbf{ bssgp\+\_\+bvc\+\_\+ctx} $\ast$}]{bctx }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ LOG\+\_\+\+FLT\+\_\+\+GB\+\_\+\+BVC}, \textbf{ log\+\_\+get\+\_\+filter()}, \textbf{ log\+\_\+set\+\_\+filter()}, and \textbf{ log\+\_\+set\+\_\+filter\+\_\+data()}.



Referenced by \textbf{ DEFUN()}.



\doxysubsection{Variable Documentation}
\mbox{\label{gprs__bssgp__vty_8c_ac8d83fd8afa94184cca3671edbd82b76}} 
\index{gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}!bssgp\_node@{bssgp\_node}}
\index{bssgp\_node@{bssgp\_node}!gprs\_bssgp\_vty.c@{gprs\_bssgp\_vty.c}}
\doxysubsubsection{bssgp\_node}
{\footnotesize\ttfamily struct \textbf{ cmd\+\_\+node} bssgp\+\_\+node\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{}
\DoxyCodeLine{        L\_BSSGP\_NODE,}
\DoxyCodeLine{        \textcolor{stringliteral}{"{}\%s(config-\/bssgp)\# "{}},}
\DoxyCodeLine{        1,}
\DoxyCodeLine{\}}

\end{DoxyCode}


Referenced by \textbf{ bssgp\+\_\+vty\+\_\+init()}.

