<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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"/> <meta name="generator" content="Doxygen 1.8.15"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>libzypp: zypp/media/MetaLinkParser.cc 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="navtree.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="resize.js"></script> <script type="text/javascript" src="navtreedata.js"></script> <script type="text/javascript" src="navtree.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(document).ready(initResizable); /* @license-end */</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 id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">libzypp  <span id="projectnumber">17.9.0</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.15 --> <script type="text/javascript" src="menudata.js"></script> <script type="text/javascript" src="menu.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(function() { initMenu('',false,false,'search.php','Search'); }); /* @license-end */</script> <div id="main-nav"></div> </div><!-- top --> <div id="side-nav" class="ui-resizable side-nav-resizable"> <div id="nav-tree"> <div id="nav-tree-contents"> <div id="nav-sync" class="sync"></div> </div> </div> <div id="splitbar" style="-moz-user-select:none;" class="ui-resizable-handle"> </div> </div> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(document).ready(function(){initNavTree('MetaLinkParser_8cc.html','');}); /* @license-end */ </script> <div id="doc-content"> <div class="header"> <div class="summary"> <a href="#nested-classes">Classes</a> | <a href="#namespaces">Namespaces</a> | <a href="#define-members">Macros</a> | <a href="#enum-members">Enumerations</a> | <a href="#func-members">Functions</a> | <a href="#var-members">Variables</a> </div> <div class="headertitle"> <div class="title">MetaLinkParser.cc File Reference</div> </div> </div><!--header--> <div class="contents"> <div class="textblock"><code>#include "<a class="el" href="MetaLinkParser_8h_source.html">zypp/media/MetaLinkParser.h</a>"</code><br /> <code>#include "<a class="el" href="Logger_8h_source.html">zypp/base/Logger.h</a>"</code><br /> <code>#include <sys/types.h></code><br /> <code>#include <stdio.h></code><br /> <code>#include <stdlib.h></code><br /> <code>#include <string.h></code><br /> <code>#include <vector></code><br /> <code>#include <algorithm></code><br /> <code>#include <iostream></code><br /> <code>#include <fstream></code><br /> <code>#include <libxml2/libxml/SAX2.h></code><br /> </div><div class="textblock"><div class="dynheader"> Include dependency graph for MetaLinkParser.cc:</div> <div class="dyncontent"> <div class="center"><img src="MetaLinkParser_8cc__incl.png" border="0" usemap="#zypp_2media_2MetaLinkParser_8cc" alt=""/></div> <map name="zypp_2media_2MetaLinkParser_8cc" id="zypp_2media_2MetaLinkParser_8cc"> <area shape="rect" title=" " alt="" coords="2410,5,2616,32"/> <area shape="rect" href="MetaLinkParser_8h.html" title=" " alt="" coords="921,80,1124,107"/> <area shape="rect" title=" " alt="" coords="246,685,305,711"/> <area shape="rect" title=" " alt="" coords="542,453,631,480"/> <area shape="rect" href="Logger_8h.html" title=" " alt="" coords="2112,603,2255,629"/> <area shape="rect" title=" " alt="" coords="2390,80,2454,107"/> <area shape="rect" title=" " alt="" coords="2479,80,2547,107"/> <area shape="rect" title=" " alt="" coords="2572,80,2641,107"/> <area shape="rect" title=" " alt="" coords="2665,80,2748,107"/> <area shape="rect" title=" " alt="" coords="2772,80,2846,107"/> <area shape="rect" title=" " alt="" coords="2870,80,2940,107"/> <area shape="rect" title=" " alt="" coords="2964,80,3121,107"/> <area shape="rect" title=" " alt="" coords="2223,774,2280,801"/> <area shape="rect" href="Exception_8h.html" title=" " alt="" coords="1063,453,1222,480"/> <area shape="rect" href="NonCopyable_8h.html" title=" " alt="" coords="44,603,227,629"/> <area shape="rect" href="InputStream_8h.html" title=" " alt="" coords="700,603,876,629"/> <area shape="rect" href="MediaBlockList_8h.html" title=" " alt="" coords="347,379,548,405"/> <area shape="rect" href="Url_8h.html" title=" " alt="" coords="1076,155,1161,181"/> <area shape="rect" title=" " alt="" coords="807,774,870,801"/> <area shape="rect" title=" " alt="" coords="1262,528,1302,555"/> <area shape="rect" title=" " alt="" coords="950,528,1030,555"/> <area shape="rect" title=" " alt="" coords="1054,528,1126,555"/> <area shape="rect" title=" " alt="" coords="1151,528,1238,555"/> <area shape="rect" href="Errno_8h.html" title=" " alt="" coords="1327,528,1462,555"/> <area shape="rect" title=" " alt="" coords="1364,603,1425,629"/> <area shape="rect" href="String_8h.html" title=" " alt="" coords="1610,603,1747,629"/> <area shape="rect" title=" " alt="" coords="2151,685,2214,711"/> <area shape="rect" title=" " alt="" coords="1539,685,1610,711"/> <area shape="rect" title=" " alt="" coords="1634,685,1766,711"/> <area shape="rect" title=" " alt="" coords="1790,677,1924,719"/> <area shape="rect" href="Easy_8h.html" title=" " alt="" coords="1948,685,2075,711"/> <area shape="rect" href="PtrTypes_8h.html" title=" " alt="" coords="1132,685,1286,711"/> <area shape="rect" href="Function_8h.html" title=" " alt="" coords="1362,685,1515,711"/> <area shape="rect" title=" " alt="" coords="1982,774,2041,801"/> <area shape="rect" title=" " alt="" coords="1478,774,1636,801"/> <area shape="rect" title=" " alt="" coords="934,774,1092,801"/> <area shape="rect" title=" " alt="" coords="1116,774,1262,801"/> <area shape="rect" title=" " alt="" coords="1287,774,1454,801"/> <area shape="rect" title=" " alt="" coords="52,685,220,711"/> <area shape="rect" href="DefaultIntegral_8h.html" title=" " alt="" coords="330,685,523,711"/> <area shape="rect" href="Pathname_8h.html" title=" " alt="" coords="650,685,779,711"/> <area shape="rect" title=" " alt="" coords="254,774,420,801"/> <area shape="rect" title=" " alt="" coords="445,767,586,808"/> <area shape="rect" href="Digest_8h.html" title=" " alt="" coords="410,453,517,480"/> <area shape="rect" href="Callback_8h.html" title=" " alt="" coords="404,528,523,555"/> <area shape="rect" href="UserData_8h.html" title=" " alt="" coords="1001,603,1124,629"/> <area shape="rect" title=" " alt="" coords="855,685,904,711"/> <area shape="rect" href="UrlBase_8h.html" title=" " alt="" coords="1156,229,1291,256"/> <area shape="rect" href="UrlUtils_8h.html" title=" " alt="" coords="1068,304,1201,331"/> <area shape="rect" href="UrlException_8h.html" title=" " alt="" coords="1060,379,1225,405"/> </map> </div> </div> <p><a href="MetaLinkParser_8cc_source.html">Go to the source code of this file.</a></p> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a> Classes</h2></td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structzypp_1_1media_1_1stateswitch.html">zypp::media::stateswitch</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structzypp_1_1media_1_1ml__url.html">zypp::media::ml_url</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structzypp_1_1media_1_1ml__parsedata.html">zypp::media::ml_parsedata</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a> Namespaces</h2></td></tr> <tr class="memitem:namespacezypp"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacezypp.html">zypp</a></td></tr> <tr class="memdesc:namespacezypp"><td class="mdescLeft"> </td><td class="mdescRight">Easy-to use interface to the ZYPP dependency resolver. <br /></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:namespacezypp_1_1media"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacezypp_1_1media.html">zypp::media</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a> Macros</h2></td></tr> <tr class="memitem:a3e0b69220ab65ee3733c842cb0e88d08"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="MetaLinkParser_8cc.html#a3e0b69220ab65ee3733c842cb0e88d08">c2h</a>(c)</td></tr> <tr class="separator:a3e0b69220ab65ee3733c842cb0e88d08"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a> Enumerations</h2></td></tr> <tr class="memitem:a5456263c51ed3d8b8d276e9fd76a615d"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacezypp_1_1media.html#a5456263c51ed3d8b8d276e9fd76a615d">zypp::media::state</a> { <br />   <a class="el" href="namespacezypp_1_1media.html#a5456263c51ed3d8b8d276e9fd76a615da6423199a3e9580a3ef36d95a3d8610db">zypp::media::STATE_START</a>, <a class="el" href="namespacezypp_1_1media.html#a5456263c51ed3d8b8d276e9fd76a615da8ac8be2fb09c49a663a08ce6977a0365">zypp::media::STATE_METALINK</a>, <a class="el" href="namespacezypp_1_1media.html#a5456263c51ed3d8b8d276e9fd76a615dafae90bc3907a3ab28a1c3556bca918e4">zypp::media::STATE_FILES</a>, <a class="el" href="namespacezypp_1_1media.html#a5456263c51ed3d8b8d276e9fd76a615dac3ab99b4b9491708b02dfaaaf65eeb20">zypp::media::STATE_FILE</a>, <br />   <a class="el" href="namespacezypp_1_1media.html#a5456263c51ed3d8b8d276e9fd76a615da140b09043eab1d1ff4aeaf15d7b3933e">zypp::media::STATE_M4FILE</a>, <a class="el" href="namespacezypp_1_1media.html#a5456263c51ed3d8b8d276e9fd76a615da8a553e5c8e1329dd11d172f849c124a9">zypp::media::STATE_SIZE</a>, <a class="el" href="namespacezypp_1_1media.html#a5456263c51ed3d8b8d276e9fd76a615da49396d3fd4df41fb3bd5b3d83e772bf7">zypp::media::STATE_M4SIZE</a>, <a class="el" href="namespacezypp_1_1media.html#a5456263c51ed3d8b8d276e9fd76a615daa8df758af8c88624f2736eaf3a757d7d">zypp::media::STATE_VERIFICATION</a>, <br />   <a class="el" href="namespacezypp_1_1media.html#a5456263c51ed3d8b8d276e9fd76a615da1d221559ce780df327603d00e5c19794">zypp::media::STATE_HASH</a>, <a class="el" href="namespacezypp_1_1media.html#a5456263c51ed3d8b8d276e9fd76a615daef62f20f2eceafbcd7f12a1ace3d5e89">zypp::media::STATE_M4HASH</a>, <a class="el" href="namespacezypp_1_1media.html#a5456263c51ed3d8b8d276e9fd76a615da7f5485a0ef07bb4e6ef27fc9b06e11dd">zypp::media::STATE_PIECES</a>, <a class="el" href="namespacezypp_1_1media.html#a5456263c51ed3d8b8d276e9fd76a615daf361d5d9c0eee9941492a61a14e34207">zypp::media::STATE_M4PIECES</a>, <br />   <a class="el" href="namespacezypp_1_1media.html#a5456263c51ed3d8b8d276e9fd76a615da7ee9bcd11265cab9ca4cb4d21b6593c7">zypp::media::STATE_PHASH</a>, <a class="el" href="namespacezypp_1_1media.html#a5456263c51ed3d8b8d276e9fd76a615dac8ad6880d24bf844bb5e1f8ad02f97f7">zypp::media::STATE_M4PHASH</a>, <a class="el" href="namespacezypp_1_1media.html#a5456263c51ed3d8b8d276e9fd76a615da64b98fd17e3bad00ad58aeb1d3b9a7b7">zypp::media::STATE_RESOURCES</a>, <a class="el" href="namespacezypp_1_1media.html#a5456263c51ed3d8b8d276e9fd76a615dab1a4612907e48e5d59d331968b638e7a">zypp::media::STATE_URL</a>, <br />   <a class="el" href="namespacezypp_1_1media.html#a5456263c51ed3d8b8d276e9fd76a615da6078771c79fa94bed124bb952110371b">zypp::media::STATE_M4URL</a>, <a class="el" href="namespacezypp_1_1media.html#a5456263c51ed3d8b8d276e9fd76a615da4f70f18367c79b474e96041a07967157">zypp::media::NUMSTATES</a> <br /> }</td></tr> <tr class="separator:a5456263c51ed3d8b8d276e9fd76a615d"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> Functions</h2></td></tr> <tr class="memitem:a851e7eea001f68ef67bed5125de27feb"><td class="memItemLeft" align="right" valign="top">static void XMLCALL </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacezypp_1_1media.html#a851e7eea001f68ef67bed5125de27feb">zypp::media::startElement</a> (void *userData, const xmlChar *name, const xmlChar **atts)</td></tr> <tr class="separator:a851e7eea001f68ef67bed5125de27feb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a79f43ef35d5aadc6c15842c7ead2dcc4"><td class="memItemLeft" align="right" valign="top">static void XMLCALL </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacezypp_1_1media.html#a79f43ef35d5aadc6c15842c7ead2dcc4">zypp::media::endElement</a> (void *userData, const xmlChar *name)</td></tr> <tr class="separator:a79f43ef35d5aadc6c15842c7ead2dcc4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a147c1d7d582224cfe256373e35a16940"><td class="memItemLeft" align="right" valign="top">static void XMLCALL </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacezypp_1_1media.html#a147c1d7d582224cfe256373e35a16940">zypp::media::characterData</a> (void *userData, const xmlChar *s, int len)</td></tr> <tr class="separator:a147c1d7d582224cfe256373e35a16940"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3f55f9a725baa99c3e19959ed1a6a5d7"><td class="memItemLeft" align="right" valign="top">static const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacezypp_1_1media.html#a3f55f9a725baa99c3e19959ed1a6a5d7">zypp::media::find_attr</a> (const char *txt, const xmlChar **atts)</td></tr> <tr class="separator:a3f55f9a725baa99c3e19959ed1a6a5d7"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a84e552ef2f151b592fb73b9127fd686c"><td class="memItemLeft" align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacezypp_1_1media.html#a84e552ef2f151b592fb73b9127fd686c">zypp::media::hexstr2bytes</a> (unsigned char *buf, const char *str, int buflen)</td></tr> <tr class="separator:a84e552ef2f151b592fb73b9127fd686c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad670137176e532d261ba0c8ac8bf2f92"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classbool.html">bool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacezypp_1_1media.html#ad670137176e532d261ba0c8ac8bf2f92">zypp::media::urlcmp</a> (const ml_url &a, const ml_url &b)</td></tr> <tr class="separator:ad670137176e532d261ba0c8ac8bf2f92"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a> Variables</h2></td></tr> <tr class="memitem:a3959a52a3a90fbbba3733e2f1d04db71"><td class="memItemLeft" align="right" valign="top">static struct stateswitch </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacezypp_1_1media.html#a3959a52a3a90fbbba3733e2f1d04db71">zypp::media::stateswitches</a> []</td></tr> <tr class="separator:a3959a52a3a90fbbba3733e2f1d04db71"><td class="memSeparator" colspan="2"> </td></tr> </table> <h2 class="groupheader">Macro Definition Documentation</h2> <a id="a3e0b69220ab65ee3733c842cb0e88d08"></a> <h2 class="memtitle"><span class="permalink"><a href="#a3e0b69220ab65ee3733c842cb0e88d08">◆ </a></span>c2h</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define c2h</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">c</td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <b>Value:</b><div class="fragment"><div class="line">(((c)>=<span class="charliteral">'0'</span> && (c)<=<span class="charliteral">'9'</span>) ? ((c)-<span class="charliteral">'0'</span>) \</div><div class="line"> : ((c)>=<span class="charliteral">'a'</span> && (c)<=<span class="charliteral">'f'</span>) ? ((c)-(<span class="charliteral">'a'</span>-10)) \</div><div class="line"> : ((c)>=<span class="charliteral">'A'</span> && (c)<=<span class="charliteral">'F'</span>) ? ((c)-(<span class="charliteral">'A'</span>-10)) \</div><div class="line"> : -1)</div></div><!-- fragment --> </div> </div> </div><!-- contents --> </div><!-- doc-content --> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> <ul> <li class="navelem"><a class="el" href="dir_c187b43c6f283d9fc95eff3f44ce072a.html">zypp</a></li><li class="navelem"><a class="el" href="dir_e5855dea3351ea26b1c2dbf0da3539de.html">media</a></li><li class="navelem"><a class="el" href="MetaLinkParser_8cc.html">MetaLinkParser.cc</a></li> <li class="footer">Generated by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li> </ul> </div> </body> </html>