\doxysection{abis\+\_\+nm.\+h}
\label{abis__nm_8h_source}\index{include/osmocom/gsm/abis\_nm.h@{include/osmocom/gsm/abis\_nm.h}}
\textbf{ Go to the documentation of this file.}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{preprocessor}{\#pragma once}}
\DoxyCodeLine{2 }
\DoxyCodeLine{3 \textcolor{preprocessor}{\#include <osmocom/gsm/tlv.h>}}
\DoxyCodeLine{4 \textcolor{preprocessor}{\#include <osmocom/gsm/gsm\_utils.h>}}
\DoxyCodeLine{5 \textcolor{preprocessor}{\#include <osmocom/gsm/protocol/gsm\_12\_21.h>}}
\DoxyCodeLine{6 }
\DoxyCodeLine{11 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keywordtype}{char} abis\_nm\_ipa\_magic[13];}
\DoxyCodeLine{12 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keywordtype}{char} abis\_nm\_osmo\_magic[12];}
\DoxyCodeLine{13 }
\DoxyCodeLine{14 \textcolor{keyword}{enum} abis\_nm\_msgtype;}
\DoxyCodeLine{15 \textcolor{keyword}{enum} gsm\_phys\_chan\_config;}
\DoxyCodeLine{16 }
\DoxyCodeLine{17 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keyword}{enum} abis\_nm\_msgtype abis\_nm\_reports[4];}
\DoxyCodeLine{18 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keyword}{enum} abis\_nm\_msgtype abis\_nm\_no\_ack\_nack[3];}
\DoxyCodeLine{19 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keyword}{enum} abis\_nm\_msgtype abis\_nm\_sw\_load\_msgs[9];}
\DoxyCodeLine{20 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keyword}{enum} abis\_nm\_msgtype abis\_nm\_nacks[33];}
\DoxyCodeLine{21 }
\DoxyCodeLine{22 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keyword}{struct }value\_string abis\_nm\_msg\_disc\_names[];}
\DoxyCodeLine{23 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keyword}{struct }value\_string abis\_nm\_obj\_class\_names[];}
\DoxyCodeLine{24 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keyword}{struct }value\_string abis\_nm\_adm\_state\_names[];}
\DoxyCodeLine{25 }
\DoxyCodeLine{26 \textcolor{keyword}{const} \textcolor{keywordtype}{char} *abis\_nm\_nack\_cause\_name(uint8\_t cause);}
\DoxyCodeLine{27 \textcolor{keyword}{const} \textcolor{keywordtype}{char} *abis\_nm\_nack\_name(uint8\_t nack);}
\DoxyCodeLine{28 \textcolor{keyword}{const} \textcolor{keywordtype}{char} *abis\_nm\_event\_type\_name(uint8\_t cause);}
\DoxyCodeLine{29 \textcolor{keyword}{const} \textcolor{keywordtype}{char} *abis\_nm\_severity\_name(uint8\_t cause);}
\DoxyCodeLine{30 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keyword}{struct }tlv\_definition abis\_nm\_att\_tlvdef;}
\DoxyCodeLine{31 }
\DoxyCodeLine{32 \textcolor{keyword}{const} \textcolor{keywordtype}{char} *abis\_nm\_opstate\_name(uint8\_t os);}
\DoxyCodeLine{33 \textcolor{keyword}{const} \textcolor{keywordtype}{char} *abis\_nm\_avail\_name(uint8\_t avail);}
\DoxyCodeLine{34 \textcolor{keyword}{const} \textcolor{keywordtype}{char} *abis\_nm\_test\_name(uint8\_t test);}
\DoxyCodeLine{36 \textcolor{keyword}{static} \textcolor{keyword}{inline} \textcolor{keyword}{const} \textcolor{keywordtype}{char} *abis\_nm\_admin\_name(uint8\_t admin)}
\DoxyCodeLine{37 \{}
\DoxyCodeLine{38         \textcolor{keywordflow}{return} get\_value\_string(abis\_nm\_adm\_state\_names, admin);}
\DoxyCodeLine{39 \}}
\DoxyCodeLine{40 }
\DoxyCodeLine{41 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keyword}{struct }tlv\_definition abis\_nm\_osmo\_att\_tlvdef;}
\DoxyCodeLine{42 \textcolor{keyword}{extern} \textcolor{keyword}{const} \textcolor{keyword}{struct }tlv\_definition abis\_nm\_att\_tlvdef\_ipa;}
\DoxyCodeLine{43 }
\DoxyCodeLine{44 \textcolor{keyword}{const} \textcolor{keywordtype}{char} *abis\_nm\_dump\_foh(\textcolor{keyword}{const} \textcolor{keyword}{struct} abis\_om\_fom\_hdr *foh);}
\DoxyCodeLine{45 \textcolor{keywordtype}{char} *abis\_nm\_dump\_foh\_buf(\textcolor{keywordtype}{char} *buf, \textcolor{keywordtype}{size\_t} buf\_len, \textcolor{keyword}{const} \textcolor{keyword}{struct} abis\_om\_fom\_hdr *foh);}
\DoxyCodeLine{46 \textcolor{keywordtype}{char} *abis\_nm\_dump\_foh\_c(\textcolor{keywordtype}{void} *ctx, \textcolor{keyword}{const} \textcolor{keyword}{struct} abis\_om\_fom\_hdr *foh);}
\DoxyCodeLine{47 }
\DoxyCodeLine{52 \textcolor{preprocessor}{\#define abis\_nm\_debugp\_foh(ss, foh)                                         \(\backslash\)}}
\DoxyCodeLine{53 \textcolor{preprocessor}{        DEBUGP(ss, "{}\%s "{}}, abis\_nm\_dump\_foh(foh))}
\DoxyCodeLine{54 }
\DoxyCodeLine{55 \textcolor{keywordtype}{int} abis\_nm\_chcomb4pchan(\textcolor{keyword}{enum} gsm\_phys\_chan\_config pchan);}
\DoxyCodeLine{56 \textcolor{keyword}{enum} gsm\_phys\_chan\_config abis\_nm\_pchan4chcomb(uint8\_t chcomb);}
\DoxyCodeLine{57 }

\end{DoxyCode}
