<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <title>Open SCAP Library: cpelang_priv.c File Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">Open SCAP Library </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.1.1 --> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>Globals</span></a></li> </ul> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_adb51d477b117837783049eccd784b4d.html">CPE</a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#nested-classes">Data Structures</a> | <a href="#define-members">Macros</a> | <a href="#func-members">Functions</a> </div> <div class="headertitle"> <div class="title">cpelang_priv.c File Reference</div> </div> </div><!--header--> <div class="contents"> <p>Interface to Common Platform Enumeration (CPE) Language. <a href="#details">More...</a></p> <div class="textblock"><code>#include <libxml/xmlreader.h></code><br/> <code>#include <libxml/xmlwriter.h></code><br/> <code>#include <libxml/tree.h></code><br/> <code>#include <string.h></code><br/> <code>#include "<a class="el" href="cpe__lang_8h_source.html">public/cpe_lang.h</a>"</code><br/> <code>#include "<a class="el" href="cpelang__priv_8h_source.html">cpelang_priv.h</a>"</code><br/> <code>#include "common/util.h"</code><br/> <code>#include "common/list.h"</code><br/> <code>#include "common/text_priv.h"</code><br/> <code>#include "common/elements.h"</code><br/> <code>#include "common/_error.h"</code><br/> <code>#include "common/xmlns_priv.h"</code><br/> <code>#include "common/xmltext_priv.h"</code><br/> </div><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2><a name="nested-classes"></a> Data Structures</h2></td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structcpe__lang__model.html">cpe_lang_model</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">CPE platform specification. <a href="structcpe__lang__model.html#details">More...</a><br/></td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structcpe__platform.html">cpe_platform</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Single platform representation in CPE language. <a href="structcpe__platform.html#details">More...</a><br/></td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2><a name="define-members"></a> Macros</h2></td></tr> <tr class="memitem:afc1058a055c404f27c0c5ff2f0615e3e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afc1058a055c404f27c0c5ff2f0615e3e"></a> #define </td><td class="memItemRight" valign="bottom"><b>TAG_PLATFORM_SPEC_STR</b>   BAD_CAST "platform-specification"</td></tr> <tr class="memitem:ad2499595f5725e45f89e2763f08fce57"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad2499595f5725e45f89e2763f08fce57"></a> #define </td><td class="memItemRight" valign="bottom"><b>TAG_PLATFORM_STR</b>   BAD_CAST "platform"</td></tr> <tr class="memitem:acccc6d96189c946b01f651923087ec86"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acccc6d96189c946b01f651923087ec86"></a> #define </td><td class="memItemRight" valign="bottom"><b>TAG_LOGICAL_TEST_STR</b>   BAD_CAST "logical-test"</td></tr> <tr class="memitem:a41cabc320ef7f013f5c3095bc1369492"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a41cabc320ef7f013f5c3095bc1369492"></a> #define </td><td class="memItemRight" valign="bottom"><b>TAG_FACT_REF_STR</b>   BAD_CAST "fact-ref"</td></tr> <tr class="memitem:a4636b627a23c0540c7348691387cd1fb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4636b627a23c0540c7348691387cd1fb"></a> #define </td><td class="memItemRight" valign="bottom"><b>TAG_CHECK_FACT_REF_STR</b>   BAD_CAST "check-fact-ref"</td></tr> <tr class="memitem:a675b6288b73c81369a0bddbba7099795"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a675b6288b73c81369a0bddbba7099795"></a> #define </td><td class="memItemRight" valign="bottom"><b>TAG_REMARK_STR</b>   BAD_CAST "remark"</td></tr> <tr class="memitem:a97618a82b1d012c66c7fb6a4056b3008"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a97618a82b1d012c66c7fb6a4056b3008"></a> #define </td><td class="memItemRight" valign="bottom"><b>ATTR_TITLE_STR</b>   BAD_CAST "title"</td></tr> <tr class="memitem:a07951918ab6c969a313b8da24f55b44e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a07951918ab6c969a313b8da24f55b44e"></a> #define </td><td class="memItemRight" valign="bottom"><b>ATTR_NAME_STR</b>   BAD_CAST "name"</td></tr> <tr class="memitem:adc66ec947049c84b256e4f18ec8a3f68"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adc66ec947049c84b256e4f18ec8a3f68"></a> #define </td><td class="memItemRight" valign="bottom"><b>ATTR_OPERATOR_STR</b>   BAD_CAST "operator"</td></tr> <tr class="memitem:ae25efe7f5fff912629e3ad4a17ec0afd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae25efe7f5fff912629e3ad4a17ec0afd"></a> #define </td><td class="memItemRight" valign="bottom"><b>ATTR_NEGATE_STR</b>   BAD_CAST "negate"</td></tr> <tr class="memitem:a01053fb388d7ec9c5ea7ee1d6b043063"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a01053fb388d7ec9c5ea7ee1d6b043063"></a> #define </td><td class="memItemRight" valign="bottom"><b>ATTR_ID_STR</b>   BAD_CAST "id"</td></tr> <tr class="memitem:aa19b2ae347d59009be5af94dee26b2e9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa19b2ae347d59009be5af94dee26b2e9"></a> #define </td><td class="memItemRight" valign="bottom"><b>ATTR_HREF_STR</b>   BAD_CAST "href"</td></tr> <tr class="memitem:ad769225cf9e554932d4e134f482e088e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad769225cf9e554932d4e134f482e088e"></a> #define </td><td class="memItemRight" valign="bottom"><b>ATTR_SYSTEM_STR</b>   BAD_CAST "system"</td></tr> <tr class="memitem:aa182290607460b9bcb3c580940945246"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa182290607460b9bcb3c580940945246"></a> #define </td><td class="memItemRight" valign="bottom"><b>ATTR_ID_REF_STR</b>   BAD_CAST "id-ref"</td></tr> <tr class="memitem:adb152c0857f9016abaa043df519a3da1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adb152c0857f9016abaa043df519a3da1"></a> #define </td><td class="memItemRight" valign="bottom"><b>VAL_AND_STR</b>   BAD_CAST "AND"</td></tr> <tr class="memitem:a5577afb77c6d31bde5712b76cbd0677d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5577afb77c6d31bde5712b76cbd0677d"></a> #define </td><td class="memItemRight" valign="bottom"><b>VAL_OR_STR</b>   BAD_CAST "OR"</td></tr> <tr class="memitem:a3f200d53e0f13558f582ccbc22388dba"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3f200d53e0f13558f582ccbc22388dba"></a> #define </td><td class="memItemRight" valign="bottom"><b>VAL_FALSE_STR</b>   BAD_CAST "false"</td></tr> <tr class="memitem:abe8a5ba5e07873b9d1153fe2ec95c9df"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abe8a5ba5e07873b9d1153fe2ec95c9df"></a> #define </td><td class="memItemRight" valign="bottom"><b>VAL_TRUE_STR</b>   BAD_CAST "true"</td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2><a name="func-members"></a> Functions</h2></td></tr> <tr class="memitem:a875dc4b4a3355b90445397041934dedd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a875dc4b4a3355b90445397041934dedd"></a> struct <a class="el" href="structcpe__testexpr.html">cpe_testexpr</a> * </td><td class="memItemRight" valign="bottom"><b>cpe_testexpr_get_next</b> (const struct <a class="el" href="structcpe__testexpr.html">cpe_testexpr</a> *expr)</td></tr> <tr class="memitem:a81128d5fd7c05b20f115b69c1591790d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a81128d5fd7c05b20f115b69c1591790d"></a> struct <a class="el" href="structcpe__testexpr.html">cpe_testexpr</a> * </td><td class="memItemRight" valign="bottom"><b>cpe_testexpr_new</b> ()</td></tr> <tr class="memitem:a96d23dd31599dd23aeb776806493096f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a96d23dd31599dd23aeb776806493096f"></a> struct <a class="el" href="structcpe__testexpr.html">cpe_testexpr</a> * </td><td class="memItemRight" valign="bottom"><b>cpe_testexpr_clone</b> (struct <a class="el" href="structcpe__testexpr.html">cpe_testexpr</a> *old_expr)</td></tr> <tr class="memitem:a1b44b8317ab204ec992840ec17ad9b23"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1b44b8317ab204ec992840ec17ad9b23"></a> struct <a class="el" href="structcpe__lang__model.html">cpe_lang_model</a> * </td><td class="memItemRight" valign="bottom"><b>cpe_lang_model_new</b> ()</td></tr> <tr class="memitem:a570d9847ce3a680907f7ad0260076b54"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a570d9847ce3a680907f7ad0260076b54"></a> struct <a class="el" href="structcpe__platform.html">cpe_platform</a> * </td><td class="memItemRight" valign="bottom"><b>cpe_platform_new</b> ()</td></tr> <tr class="memitem:a80a131dea3af7c12b755fddd5a206408"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structcpe__lang__model.html">cpe_lang_model</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="cpelang__priv_8c.html#a80a131dea3af7c12b755fddd5a206408">cpe_lang_model_parse_xml</a> (const char *file)</td></tr> <tr class="memdesc:a80a131dea3af7c12b755fddd5a206408"><td class="mdescLeft"> </td><td class="mdescRight">Function for parsing XML CPE language file. <a href="#a80a131dea3af7c12b755fddd5a206408"></a><br/></td></tr> <tr class="memitem:a3c484d6ecd18e85b6122c738188d46ad"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structcpe__lang__model.html">cpe_lang_model</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="cpelang__priv_8c.html#a3c484d6ecd18e85b6122c738188d46ad">cpe_lang_model_parse</a> (xmlTextReaderPtr reader)</td></tr> <tr class="memdesc:a3c484d6ecd18e85b6122c738188d46ad"><td class="mdescLeft"> </td><td class="mdescRight">Parse function for CPE Lang model. <a href="#a3c484d6ecd18e85b6122c738188d46ad"></a><br/></td></tr> <tr class="memitem:a6fb4d06de2679483fe7f9676ef4ca336"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structcpe__platform.html">cpe_platform</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="cpelang__priv_8c.html#a6fb4d06de2679483fe7f9676ef4ca336">cpe_platform_parse</a> (xmlTextReaderPtr reader)</td></tr> <tr class="memdesc:a6fb4d06de2679483fe7f9676ef4ca336"><td class="mdescLeft"> </td><td class="mdescRight">Parse CPE platform structure. <a href="#a6fb4d06de2679483fe7f9676ef4ca336"></a><br/></td></tr> <tr class="memitem:a04d72f16ebb537055bd3057d86b9854d"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structcpe__testexpr.html">cpe_testexpr</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="cpelang__priv_8c.html#a04d72f16ebb537055bd3057d86b9854d">cpe_testexpr_parse</a> (xmlTextReaderPtr reader)</td></tr> <tr class="memdesc:a04d72f16ebb537055bd3057d86b9854d"><td class="mdescLeft"> </td><td class="mdescRight">Parse CPE test expression structure. <a href="#a04d72f16ebb537055bd3057d86b9854d"></a><br/></td></tr> <tr class="memitem:aaf6f8cb2b03ef9399acc1401c287fa14"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="cpelang__priv_8c.html#aaf6f8cb2b03ef9399acc1401c287fa14">cpe_lang_model_export_xml</a> (const struct <a class="el" href="structcpe__lang__model.html">cpe_lang_model</a> *spec, const char *file)</td></tr> <tr class="memdesc:aaf6f8cb2b03ef9399acc1401c287fa14"><td class="mdescLeft"> </td><td class="mdescRight">Function for export CPE language model to XML. <a href="#aaf6f8cb2b03ef9399acc1401c287fa14"></a><br/></td></tr> <tr class="memitem:a58fe65219194db588c1f35c8bfa473b1"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="cpelang__priv_8c.html#a58fe65219194db588c1f35c8bfa473b1">cpe_lang_export</a> (const struct <a class="el" href="structcpe__lang__model.html">cpe_lang_model</a> *spec, xmlTextWriterPtr writer)</td></tr> <tr class="memdesc:a58fe65219194db588c1f35c8bfa473b1"><td class="mdescLeft"> </td><td class="mdescRight">Function for export CPE language top element. <a href="#a58fe65219194db588c1f35c8bfa473b1"></a><br/></td></tr> <tr class="memitem:a2c4f5925542dce93acf237ad43bb665d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="cpelang__priv_8c.html#a2c4f5925542dce93acf237ad43bb665d">cpe_platform_export</a> (const struct <a class="el" href="structcpe__platform.html">cpe_platform</a> *platform, xmlTextWriterPtr writer)</td></tr> <tr class="memdesc:a2c4f5925542dce93acf237ad43bb665d"><td class="mdescLeft"> </td><td class="mdescRight">Function for export CPE platform element. <a href="#a2c4f5925542dce93acf237ad43bb665d"></a><br/></td></tr> <tr class="memitem:a2c65e7cafcf564da776aa49795063ac7"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="cpelang__priv_8c.html#a2c65e7cafcf564da776aa49795063ac7">cpe_testexpr_export</a> (const struct <a class="el" href="structcpe__testexpr.html">cpe_testexpr</a> *expr, xmlTextWriterPtr writer)</td></tr> <tr class="memdesc:a2c65e7cafcf564da776aa49795063ac7"><td class="mdescLeft"> </td><td class="mdescRight">Function for export CPE test expression element. <a href="#a2c65e7cafcf564da776aa49795063ac7"></a><br/></td></tr> <tr class="memitem:a6a4e8a7210b76078bb6ac8bc9f3be0a7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6a4e8a7210b76078bb6ac8bc9f3be0a7"></a> void </td><td class="memItemRight" valign="bottom"><b>cpe_lang_model_free</b> (struct <a class="el" href="structcpe__lang__model.html">cpe_lang_model</a> *platformspec)</td></tr> <tr class="memitem:a1bcb12e96db31e6b57be749fd5ba3b3e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1bcb12e96db31e6b57be749fd5ba3b3e"></a> void </td><td class="memItemRight" valign="bottom"><b>cpe_platform_free</b> (struct <a class="el" href="structcpe__platform.html">cpe_platform</a> *platform)</td></tr> <tr class="memitem:ac6135bb7df1b4c083e97dcb67f7bfccd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac6135bb7df1b4c083e97dcb67f7bfccd"></a> void </td><td class="memItemRight" valign="bottom"><b>cpe_testexpr_free</b> (struct <a class="el" href="structcpe__testexpr.html">cpe_testexpr</a> *expr)</td></tr> <tr class="memitem:a7e700350da9d5a741ba027bd13f5e548"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7e700350da9d5a741ba027bd13f5e548"></a> struct <a class="el" href="structcpe__testexpr__iterator.html">cpe_testexpr_iterator</a> * </td><td class="memItemRight" valign="bottom"><b>cpe_testexpr_get_meta_expr</b> (const struct <a class="el" href="structcpe__testexpr.html">cpe_testexpr</a> *expr)</td></tr> <tr class="memitem:aafce78ac4348c92602b1137011a735b8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aafce78ac4348c92602b1137011a735b8"></a> struct <a class="el" href="structcpe__name.html">cpe_name</a> * </td><td class="memItemRight" valign="bottom"><b>cpe_testexpr_get_meta_cpe</b> (const struct <a class="el" href="structcpe__testexpr.html">cpe_testexpr</a> *expr)</td></tr> <tr class="memitem:a0fd80583321428d29ce2851c9f53d475"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0fd80583321428d29ce2851c9f53d475"></a> const char * </td><td class="memItemRight" valign="bottom"><b>cpe_testexpr_get_meta_check_system</b> (const struct <a class="el" href="structcpe__testexpr.html">cpe_testexpr</a> *expr)</td></tr> <tr class="memitem:a4c07e76f4466477737bd8933a2800397"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4c07e76f4466477737bd8933a2800397"></a> const char * </td><td class="memItemRight" valign="bottom"><b>cpe_testexpr_get_meta_check_href</b> (const struct <a class="el" href="structcpe__testexpr.html">cpe_testexpr</a> *expr)</td></tr> <tr class="memitem:a3e0fbd28d3149e063196da5601726be7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3e0fbd28d3149e063196da5601726be7"></a> const char * </td><td class="memItemRight" valign="bottom"><b>cpe_testexpr_get_meta_check_id</b> (const struct <a class="el" href="structcpe__testexpr.html">cpe_testexpr</a> *expr)</td></tr> <tr class="memitem:af5cbbabfe39b2bbd5eebd180d0b3eb68"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af5cbbabfe39b2bbd5eebd180d0b3eb68"></a> bool </td><td class="memItemRight" valign="bottom"><b>cpe_testexpr_set_oper</b> (struct <a class="el" href="structcpe__testexpr.html">cpe_testexpr</a> *expr, <a class="el" href="group__cpelang.html#gacbb2c8c91d3bb516182bb64c6d8f7d82">cpe_lang_oper_t</a> oper)</td></tr> <tr class="memitem:aa95723258aff68c121c25c825852d5c3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa95723258aff68c121c25c825852d5c3"></a> bool </td><td class="memItemRight" valign="bottom"><b>cpe_testexpr_set_name</b> (struct <a class="el" href="structcpe__testexpr.html">cpe_testexpr</a> *expr, struct <a class="el" href="structcpe__name.html">cpe_name</a> *name)</td></tr> <tr class="memitem:a0f9cb4770990700bb2828faf397addb3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0f9cb4770990700bb2828faf397addb3"></a> bool </td><td class="memItemRight" valign="bottom"><b>cpe_testexpr_add_subexpression</b> (struct <a class="el" href="structcpe__testexpr.html">cpe_testexpr</a> *expr, struct <a class="el" href="structcpe__testexpr.html">cpe_testexpr</a> *sub)</td></tr> <tr class="memitem:a563eeb9702f9c93df5a25998e9a39600"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a563eeb9702f9c93df5a25998e9a39600"></a> bool </td><td class="memItemRight" valign="bottom"><b>cpe_lang_model_add_platform</b> (struct <a class="el" href="structcpe__lang__model.html">cpe_lang_model</a> *lang, struct <a class="el" href="structcpe__platform.html">cpe_platform</a> *platform)</td></tr> <tr class="memitem:af7011b78669b32e52036b3923878e831"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af7011b78669b32e52036b3923878e831"></a> void </td><td class="memItemRight" valign="bottom"><b>cpe_platform_iterator_remove</b> (struct <a class="el" href="structcpe__platform__iterator.html">cpe_platform_iterator</a> *it, struct <a class="el" href="structcpe__lang__model.html">cpe_lang_model</a> *parent)</td></tr> <tr class="memitem:aa9bc76ff30e7f9faa4def792404c1a62"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa9bc76ff30e7f9faa4def792404c1a62"></a> bool </td><td class="memItemRight" valign="bottom"><b>cpe_platform_set_expr</b> (struct <a class="el" href="structcpe__platform.html">cpe_platform</a> *platform, struct <a class="el" href="structcpe__testexpr.html">cpe_testexpr</a> *expr)</td></tr> <tr class="memitem:gaa1486cdd1e78378386223eb75112ef5b"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpelang.html#gaa1486cdd1e78378386223eb75112ef5b">cpe_lang_model_set_origin_file</a> (struct <a class="el" href="structcpe__lang__model.html">cpe_lang_model</a> *lang_model, const char *origin_file)</td></tr> <tr class="memdesc:gaa1486cdd1e78378386223eb75112ef5b"><td class="mdescLeft"> </td><td class="mdescRight">Sets the origin file hint. <a href="group__cpelang.html#gaa1486cdd1e78378386223eb75112ef5b"></a><br/></td></tr> <tr class="memitem:ga627c9092bd37510bf4d0854816a2deed"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga627c9092bd37510bf4d0854816a2deed"></a> const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpelang.html#ga627c9092bd37510bf4d0854816a2deed">cpe_lang_model_get_origin_file</a> (const struct <a class="el" href="structcpe__lang__model.html">cpe_lang_model</a> *lang_model)</td></tr> <tr class="memdesc:ga627c9092bd37510bf4d0854816a2deed"><td class="mdescLeft"> </td><td class="mdescRight">Gets the file the CPE dict model was loaded from. <br/></td></tr> </table> <hr/><a name="details" id="details"></a><h2>Detailed Description</h2> <div class="textblock"><p>Interface to Common Platform Enumeration (CPE) Language. </p> <p>See more details at <a href="http://nvd.nist.gov/cpe.cfm">http://nvd.nist.gov/cpe.cfm</a> </p> </div><hr/><h2>Function Documentation</h2> <a class="anchor" id="a58fe65219194db588c1f35c8bfa473b1"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void cpe_lang_export </td> <td>(</td> <td class="paramtype">const struct <a class="el" href="structcpe__lang__model.html">cpe_lang_model</a> * </td> <td class="paramname"><em>spec</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">xmlTextWriterPtr </td> <td class="paramname"><em>writer</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Function for export CPE language top element. </p> <dl class="params"><dt>Parameters:</dt><dd> <table class="params"> <tr><td class="paramname">writer</td><td>xmlTextWriterPtr structure representing XML model </td></tr> <tr><td class="paramname">spec</td><td>CPE language model structure </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="aaf6f8cb2b03ef9399acc1401c287fa14"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void cpe_lang_model_export_xml </td> <td>(</td> <td class="paramtype">const struct <a class="el" href="structcpe__lang__model.html">cpe_lang_model</a> * </td> <td class="paramname"><em>spec</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>file</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Function for export CPE language model to XML. </p> <dl class="params"><dt>Parameters:</dt><dd> <table class="params"> <tr><td class="paramname">spec</td><td>CPE language model structure </td></tr> <tr><td class="paramname">file</td><td>filename </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a3c484d6ecd18e85b6122c738188d46ad"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">struct <a class="el" href="structcpe__lang__model.html">cpe_lang_model</a>* cpe_lang_model_parse </td> <td>(</td> <td class="paramtype">xmlTextReaderPtr </td> <td class="paramname"><em>reader</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">read</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Parse function for CPE Lang model. </p> <dl class="params"><dt>Parameters:</dt><dd> <table class="params"> <tr><td class="paramname">reader</td><td>xmlTextReaderPtr structure representing XML model </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a80a131dea3af7c12b755fddd5a206408"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">struct <a class="el" href="structcpe__lang__model.html">cpe_lang_model</a>* cpe_lang_model_parse_xml </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>file</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">read</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Function for parsing XML CPE language file. </p> <dl class="params"><dt>Parameters:</dt><dd> <table class="params"> <tr><td class="paramname">file</td><td>filename </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a2c4f5925542dce93acf237ad43bb665d"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void cpe_platform_export </td> <td>(</td> <td class="paramtype">const struct <a class="el" href="structcpe__platform.html">cpe_platform</a> * </td> <td class="paramname"><em>platform</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">xmlTextWriterPtr </td> <td class="paramname"><em>writer</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Function for export CPE platform element. </p> <dl class="params"><dt>Parameters:</dt><dd> <table class="params"> <tr><td class="paramname">writer</td><td>xmlTextWriterPtr structure representing XML model </td></tr> <tr><td class="paramname">platform</td><td>CPE platform structure </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a6fb4d06de2679483fe7f9676ef4ca336"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">struct <a class="el" href="structcpe__platform.html">cpe_platform</a>* cpe_platform_parse </td> <td>(</td> <td class="paramtype">xmlTextReaderPtr </td> <td class="paramname"><em>reader</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">read</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Parse CPE platform structure. </p> <dl class="params"><dt>Parameters:</dt><dd> <table class="params"> <tr><td class="paramname">reader</td><td>xmlTextReaderPtr structure representing XML model </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns:</dt><dd><a class="el" href="structcpe__platform.html" title="Single platform representation in CPE language.">cpe_platform</a> structure with CPE platform item </dd></dl> </div> </div> <a class="anchor" id="a2c65e7cafcf564da776aa49795063ac7"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void cpe_testexpr_export </td> <td>(</td> <td class="paramtype">const struct <a class="el" href="structcpe__testexpr.html">cpe_testexpr</a> * </td> <td class="paramname"><em>expr</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">xmlTextWriterPtr </td> <td class="paramname"><em>writer</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Function for export CPE test expression element. </p> <dl class="params"><dt>Parameters:</dt><dd> <table class="params"> <tr><td class="paramname">writer</td><td>xmlTextWriterPtr structure representing XML model </td></tr> <tr><td class="paramname">expr</td><td>CPE test expression structure </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a04d72f16ebb537055bd3057d86b9854d"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">struct <a class="el" href="structcpe__testexpr.html">cpe_testexpr</a>* cpe_testexpr_parse </td> <td>(</td> <td class="paramtype">xmlTextReaderPtr </td> <td class="paramname"><em>reader</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">read</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Parse CPE test expression structure. </p> <dl class="params"><dt>Parameters:</dt><dd> <table class="params"> <tr><td class="paramname">reader</td><td>xmlTextReaderPtr structure representing XML model </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns:</dt><dd><a class="el" href="structcpe__testexpr.html" title="CPE language boolean expression.">cpe_testexpr</a> structure with CPE test expression item </dd></dl> </div> </div> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.1.1 </small></address> </body> </html>