\hypertarget{cpelang__priv_8c}{ \section{/home/pvrabec/openscap/openscap-\/0.5.7/src/CPE/cpelang\_\-priv.c File Reference} \label{cpelang__priv_8c}\index{/home/pvrabec/openscap/openscap-\/0.5.7/src/CPE/cpelang\_\-priv.c@{/home/pvrabec/openscap/openscap-\/0.5.7/src/CPE/cpelang\_\-priv.c}} } Interface to Common Platform Enumeration (CPE) Language. {\ttfamily \#include $<$libxml/xmlreader.h$>$}\par {\ttfamily \#include $<$libxml/xmlwriter.h$>$}\par {\ttfamily \#include $<$libxml/tree.h$>$}\par {\ttfamily \#include $<$string.h$>$}\par {\ttfamily \#include \char`\"{}cpelang\_\-priv.h\char`\"{}}\par {\ttfamily \#include \char`\"{}public/cpelang.h\char`\"{}}\par {\ttfamily \#include \char`\"{}../common/util.h\char`\"{}}\par {\ttfamily \#include \char`\"{}../common/list.h\char`\"{}}\par {\ttfamily \#include \char`\"{}../common/elements.h\char`\"{}}\par {\ttfamily \#include \char`\"{}../\_\-error.h\char`\"{}}\par \subsection*{Data Structures} \begin{DoxyCompactItemize} \item struct \hyperlink{structcpe__lang__model}{cpe\_\-lang\_\-model} \begin{DoxyCompactList}\small\item\em CPE platform specification. \item\end{DoxyCompactList}\item struct \hyperlink{structcpe__platform}{cpe\_\-platform} \begin{DoxyCompactList}\small\item\em Single platform representation in CPE language. \item\end{DoxyCompactList}\end{DoxyCompactItemize} \subsection*{Defines} \begin{DoxyCompactItemize} \item \hypertarget{cpelang__priv_8c_afc1058a055c404f27c0c5ff2f0615e3e}{ \#define {\bfseries TAG\_\-PLATFORM\_\-SPEC\_\-STR}~BAD\_\-CAST \char`\"{}platform-\/specification\char`\"{}} \label{cpelang__priv_8c_afc1058a055c404f27c0c5ff2f0615e3e} \item \hypertarget{cpelang__priv_8c_ad2499595f5725e45f89e2763f08fce57}{ \#define {\bfseries TAG\_\-PLATFORM\_\-STR}~BAD\_\-CAST \char`\"{}platform\char`\"{}} \label{cpelang__priv_8c_ad2499595f5725e45f89e2763f08fce57} \item \hypertarget{cpelang__priv_8c_acccc6d96189c946b01f651923087ec86}{ \#define {\bfseries TAG\_\-LOGICAL\_\-TEST\_\-STR}~BAD\_\-CAST \char`\"{}logical-\/test\char`\"{}} \label{cpelang__priv_8c_acccc6d96189c946b01f651923087ec86} \item \hypertarget{cpelang__priv_8c_a41cabc320ef7f013f5c3095bc1369492}{ \#define {\bfseries TAG\_\-FACT\_\-REF\_\-STR}~BAD\_\-CAST \char`\"{}fact-\/ref\char`\"{}} \label{cpelang__priv_8c_a41cabc320ef7f013f5c3095bc1369492} \item \hypertarget{cpelang__priv_8c_a675b6288b73c81369a0bddbba7099795}{ \#define {\bfseries TAG\_\-REMARK\_\-STR}~BAD\_\-CAST \char`\"{}remark\char`\"{}} \label{cpelang__priv_8c_a675b6288b73c81369a0bddbba7099795} \item \hypertarget{cpelang__priv_8c_a97618a82b1d012c66c7fb6a4056b3008}{ \#define {\bfseries ATTR\_\-TITLE\_\-STR}~BAD\_\-CAST \char`\"{}title\char`\"{}} \label{cpelang__priv_8c_a97618a82b1d012c66c7fb6a4056b3008} \item \hypertarget{cpelang__priv_8c_a07951918ab6c969a313b8da24f55b44e}{ \#define {\bfseries ATTR\_\-NAME\_\-STR}~BAD\_\-CAST \char`\"{}name\char`\"{}} \label{cpelang__priv_8c_a07951918ab6c969a313b8da24f55b44e} \item \hypertarget{cpelang__priv_8c_adc66ec947049c84b256e4f18ec8a3f68}{ \#define {\bfseries ATTR\_\-OPERATOR\_\-STR}~BAD\_\-CAST \char`\"{}operator\char`\"{}} \label{cpelang__priv_8c_adc66ec947049c84b256e4f18ec8a3f68} \item \hypertarget{cpelang__priv_8c_ae25efe7f5fff912629e3ad4a17ec0afd}{ \#define {\bfseries ATTR\_\-NEGATE\_\-STR}~BAD\_\-CAST \char`\"{}negate\char`\"{}} \label{cpelang__priv_8c_ae25efe7f5fff912629e3ad4a17ec0afd} \item \hypertarget{cpelang__priv_8c_a01053fb388d7ec9c5ea7ee1d6b043063}{ \#define {\bfseries ATTR\_\-ID\_\-STR}~BAD\_\-CAST \char`\"{}id\char`\"{}} \label{cpelang__priv_8c_a01053fb388d7ec9c5ea7ee1d6b043063} \item \hypertarget{cpelang__priv_8c_adb152c0857f9016abaa043df519a3da1}{ \#define {\bfseries VAL\_\-AND\_\-STR}~BAD\_\-CAST \char`\"{}AND\char`\"{}} \label{cpelang__priv_8c_adb152c0857f9016abaa043df519a3da1} \item \hypertarget{cpelang__priv_8c_a5577afb77c6d31bde5712b76cbd0677d}{ \#define {\bfseries VAL\_\-OR\_\-STR}~BAD\_\-CAST \char`\"{}OR\char`\"{}} \label{cpelang__priv_8c_a5577afb77c6d31bde5712b76cbd0677d} \item \hypertarget{cpelang__priv_8c_a3f200d53e0f13558f582ccbc22388dba}{ \#define {\bfseries VAL\_\-FALSE\_\-STR}~BAD\_\-CAST \char`\"{}false\char`\"{}} \label{cpelang__priv_8c_a3f200d53e0f13558f582ccbc22388dba} \item \hypertarget{cpelang__priv_8c_abe8a5ba5e07873b9d1153fe2ec95c9df}{ \#define {\bfseries VAL\_\-TRUE\_\-STR}~BAD\_\-CAST \char`\"{}true\char`\"{}} \label{cpelang__priv_8c_abe8a5ba5e07873b9d1153fe2ec95c9df} \end{DoxyCompactItemize} \subsection*{Functions} \begin{DoxyCompactItemize} \item \hypertarget{cpelang__priv_8c_a875dc4b4a3355b90445397041934dedd}{ struct \hyperlink{structcpe__testexpr}{cpe\_\-testexpr} $\ast$ {\bfseries cpe\_\-testexpr\_\-get\_\-next} (const struct \hyperlink{structcpe__testexpr}{cpe\_\-testexpr} $\ast$expr)} \label{cpelang__priv_8c_a875dc4b4a3355b90445397041934dedd} \item \hypertarget{cpelang__priv_8c_a81128d5fd7c05b20f115b69c1591790d}{ struct \hyperlink{structcpe__testexpr}{cpe\_\-testexpr} $\ast$ {\bfseries cpe\_\-testexpr\_\-new} ()} \label{cpelang__priv_8c_a81128d5fd7c05b20f115b69c1591790d} \item \hypertarget{cpelang__priv_8c_a1b44b8317ab204ec992840ec17ad9b23}{ struct \hyperlink{structcpe__lang__model}{cpe\_\-lang\_\-model} $\ast$ {\bfseries cpe\_\-lang\_\-model\_\-new} ()} \label{cpelang__priv_8c_a1b44b8317ab204ec992840ec17ad9b23} \item \hypertarget{cpelang__priv_8c_a570d9847ce3a680907f7ad0260076b54}{ struct \hyperlink{structcpe__platform}{cpe\_\-platform} $\ast$ {\bfseries cpe\_\-platform\_\-new} ()} \label{cpelang__priv_8c_a570d9847ce3a680907f7ad0260076b54} \item \hypertarget{cpelang__priv_8c_a1999bbc36cd2aca97f184c53809d3a64}{ struct \hyperlink{structcpe__lang__model}{cpe\_\-lang\_\-model} $\ast$ {\bfseries cpe\_\-lang\_\-model\_\-parse\_\-xml} (const struct \hyperlink{structoscap__import__source}{oscap\_\-import\_\-source} $\ast$source)} \label{cpelang__priv_8c_a1999bbc36cd2aca97f184c53809d3a64} \item \hypertarget{cpelang__priv_8c_a3c484d6ecd18e85b6122c738188d46ad}{ struct \hyperlink{structcpe__lang__model}{cpe\_\-lang\_\-model} $\ast$ {\bfseries cpe\_\-lang\_\-model\_\-parse} (xmlTextReaderPtr reader)} \label{cpelang__priv_8c_a3c484d6ecd18e85b6122c738188d46ad} \item \hypertarget{cpelang__priv_8c_a6fb4d06de2679483fe7f9676ef4ca336}{ struct \hyperlink{structcpe__platform}{cpe\_\-platform} $\ast$ {\bfseries cpe\_\-platform\_\-parse} (xmlTextReaderPtr reader)} \label{cpelang__priv_8c_a6fb4d06de2679483fe7f9676ef4ca336} \item \hypertarget{cpelang__priv_8c_a04d72f16ebb537055bd3057d86b9854d}{ struct \hyperlink{structcpe__testexpr}{cpe\_\-testexpr} $\ast$ {\bfseries cpe\_\-testexpr\_\-parse} (xmlTextReaderPtr reader)} \label{cpelang__priv_8c_a04d72f16ebb537055bd3057d86b9854d} \item \hypertarget{cpelang__priv_8c_ab4a84e46014c142d88bca5b2b28151a1}{ void {\bfseries cpe\_\-lang\_\-model\_\-export\_\-xml} (const struct \hyperlink{structcpe__lang__model}{cpe\_\-lang\_\-model} $\ast$spec, struct \hyperlink{structoscap__export__target}{oscap\_\-export\_\-target} $\ast$target)} \label{cpelang__priv_8c_ab4a84e46014c142d88bca5b2b28151a1} \item \hypertarget{cpelang__priv_8c_a58fe65219194db588c1f35c8bfa473b1}{ void {\bfseries cpe\_\-lang\_\-export} (const struct \hyperlink{structcpe__lang__model}{cpe\_\-lang\_\-model} $\ast$spec, xmlTextWriterPtr writer)} \label{cpelang__priv_8c_a58fe65219194db588c1f35c8bfa473b1} \item \hypertarget{cpelang__priv_8c_a2c4f5925542dce93acf237ad43bb665d}{ void {\bfseries cpe\_\-platform\_\-export} (const struct \hyperlink{structcpe__platform}{cpe\_\-platform} $\ast$platform, xmlTextWriterPtr writer)} \label{cpelang__priv_8c_a2c4f5925542dce93acf237ad43bb665d} \item \hypertarget{cpelang__priv_8c_a2c65e7cafcf564da776aa49795063ac7}{ void {\bfseries cpe\_\-testexpr\_\-export} (const struct \hyperlink{structcpe__testexpr}{cpe\_\-testexpr} $\ast$expr, xmlTextWriterPtr writer)} \label{cpelang__priv_8c_a2c65e7cafcf564da776aa49795063ac7} \item \hypertarget{cpelang__priv_8c_a6a4e8a7210b76078bb6ac8bc9f3be0a7}{ void {\bfseries cpe\_\-lang\_\-model\_\-free} (struct \hyperlink{structcpe__lang__model}{cpe\_\-lang\_\-model} $\ast$platformspec)} \label{cpelang__priv_8c_a6a4e8a7210b76078bb6ac8bc9f3be0a7} \item \hypertarget{cpelang__priv_8c_a1bcb12e96db31e6b57be749fd5ba3b3e}{ void {\bfseries cpe\_\-platform\_\-free} (struct \hyperlink{structcpe__platform}{cpe\_\-platform} $\ast$platform)} \label{cpelang__priv_8c_a1bcb12e96db31e6b57be749fd5ba3b3e} \item \hypertarget{cpelang__priv_8c_ac6135bb7df1b4c083e97dcb67f7bfccd}{ void {\bfseries cpe\_\-testexpr\_\-free} (struct \hyperlink{structcpe__testexpr}{cpe\_\-testexpr} $\ast$expr)} \label{cpelang__priv_8c_ac6135bb7df1b4c083e97dcb67f7bfccd} \item \hypertarget{cpelang__priv_8c_a7e700350da9d5a741ba027bd13f5e548}{ struct \hyperlink{structcpe__testexpr__iterator}{cpe\_\-testexpr\_\-iterator} $\ast$ {\bfseries cpe\_\-testexpr\_\-get\_\-meta\_\-expr} (const struct \hyperlink{structcpe__testexpr}{cpe\_\-testexpr} $\ast$expr)} \label{cpelang__priv_8c_a7e700350da9d5a741ba027bd13f5e548} \item \hypertarget{cpelang__priv_8c_aafce78ac4348c92602b1137011a735b8}{ struct \hyperlink{structcpe__name}{cpe\_\-name} $\ast$ {\bfseries cpe\_\-testexpr\_\-get\_\-meta\_\-cpe} (const struct \hyperlink{structcpe__testexpr}{cpe\_\-testexpr} $\ast$expr)} \label{cpelang__priv_8c_aafce78ac4348c92602b1137011a735b8} \item \hypertarget{cpelang__priv_8c_af5cbbabfe39b2bbd5eebd180d0b3eb68}{ bool {\bfseries cpe\_\-testexpr\_\-set\_\-oper} (struct \hyperlink{structcpe__testexpr}{cpe\_\-testexpr} $\ast$expr, \hyperlink{group__cpelang_gacbb2c8c91d3bb516182bb64c6d8f7d82}{cpe\_\-lang\_\-oper\_\-t} oper)} \label{cpelang__priv_8c_af5cbbabfe39b2bbd5eebd180d0b3eb68} \item \hypertarget{cpelang__priv_8c_aa95723258aff68c121c25c825852d5c3}{ bool {\bfseries cpe\_\-testexpr\_\-set\_\-name} (struct \hyperlink{structcpe__testexpr}{cpe\_\-testexpr} $\ast$expr, struct \hyperlink{structcpe__name}{cpe\_\-name} $\ast$name)} \label{cpelang__priv_8c_aa95723258aff68c121c25c825852d5c3} \item \hypertarget{cpelang__priv_8c_a0f9cb4770990700bb2828faf397addb3}{ bool {\bfseries cpe\_\-testexpr\_\-add\_\-subexpression} (struct \hyperlink{structcpe__testexpr}{cpe\_\-testexpr} $\ast$expr, struct \hyperlink{structcpe__testexpr}{cpe\_\-testexpr} $\ast$sub)} \label{cpelang__priv_8c_a0f9cb4770990700bb2828faf397addb3} \item \hypertarget{cpelang__priv_8c_a563eeb9702f9c93df5a25998e9a39600}{ bool {\bfseries cpe\_\-lang\_\-model\_\-add\_\-platform} (struct \hyperlink{structcpe__lang__model}{cpe\_\-lang\_\-model} $\ast$lang, struct \hyperlink{structcpe__platform}{cpe\_\-platform} $\ast$platform)} \label{cpelang__priv_8c_a563eeb9702f9c93df5a25998e9a39600} \item \hypertarget{cpelang__priv_8c_af7011b78669b32e52036b3923878e831}{ void {\bfseries cpe\_\-platform\_\-iterator\_\-remove} (struct \hyperlink{structcpe__platform__iterator}{cpe\_\-platform\_\-iterator} $\ast$it, struct \hyperlink{structcpe__lang__model}{cpe\_\-lang\_\-model} $\ast$parent)} \label{cpelang__priv_8c_af7011b78669b32e52036b3923878e831} \item \hypertarget{cpelang__priv_8c_aa9bc76ff30e7f9faa4def792404c1a62}{ bool {\bfseries cpe\_\-platform\_\-set\_\-expr} (struct \hyperlink{structcpe__platform}{cpe\_\-platform} $\ast$platform, struct \hyperlink{structcpe__testexpr}{cpe\_\-testexpr} $\ast$expr)} \label{cpelang__priv_8c_aa9bc76ff30e7f9faa4def792404c1a62} \end{DoxyCompactItemize} \subsection{Detailed Description} Interface to Common Platform Enumeration (CPE) Language. See more details at \href{http://nvd.nist.gov/cpe.cfm}{\tt http://nvd.nist.gov/cpe.cfm}