Files
libaaruformat/docs/html/internal_8h_source.html

203 lines
36 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!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" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.14.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libaaruformat: include/internal.h Source File</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>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.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 id="projectrow">
<td id="projectalign">
<div id="projectname">libaaruformat<span id="projectnumber">&#160;1.0</span>
</div>
<div id="projectbrief">Aaru Data Preservation Suite - Format Library</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.14.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</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">
$(function(){initNavTree('internal_8h_source.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">internal.h</div></div>
</div><!--header-->
<div class="contents">
<a href="internal_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/*</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * This file is part of the Aaru Data Preservation Suite.</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Copyright (c) 2019-2025 Natalia Portillo.</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * This library is free software; you can redistribute it and/or modify</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * it under the terms of the GNU Lesser General Public License as</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> * published by the Free Software Foundation; either version 2.1 of the</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * License, or (at your option) any later version.</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> *</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> * This library is distributed in the hope that it will be useful, but</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="comment"> * WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="comment"> * Lesser General Public License for more details.</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="comment"> *</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="comment"> * You should have received a copy of the GNU Lesser General Public</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="comment"> * License along with this library; if not, see &lt;http://www.gnu.org/licenses/&gt;.</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="comment"> */</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="preprocessor">#ifndef LIBAARUFORMAT_INTERNAL_H</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="preprocessor">#define LIBAARUFORMAT_INTERNAL_H</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> </div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="preprocessor">#include &quot;utarray.h&quot;</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> </div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span>UT_array *<a class="code hl_function" href="internal_8h.html#a5d3b1092abc36a27a441a01a8a0b3b48">process_index_v1</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx);</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span>int32_t <a class="code hl_function" href="internal_8h.html#a89ed93d216c4dce0ae5e2acccf8cc2b4">verify_index_v1</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx);</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span>UT_array *<a class="code hl_function" href="internal_8h.html#a1baad6508d1cde5a712794e956fb3d3c">process_index_v2</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx);</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span>int32_t <a class="code hl_function" href="internal_8h.html#ae234e22b16b085d18614110630034db5">verify_index_v2</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx);</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span>UT_array *<a class="code hl_function" href="internal_8h.html#aff88fae9938d5f56318bfd7a455d5e94">process_index_v3</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx);</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span>int32_t <a class="code hl_function" href="internal_8h.html#ad7ed9250463c320c7bc8d83689bcfefb">verify_index_v3</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx);</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span>int32_t <a class="code hl_function" href="internal_8h.html#a28d844a06cecbbf436d825a3c99ff0eb">process_data_block</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx, <a class="code hl_struct" href="structIndexEntry.html">IndexEntry</a> *entry);</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span>int32_t <a class="code hl_function" href="internal_8h.html#abaf38090f967423898b99e0455751c07">process_ddt_v1</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx, <a class="code hl_struct" href="structIndexEntry.html">IndexEntry</a> *entry, <span class="keywordtype">bool</span> *found_user_data_ddt);</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span>int32_t <a class="code hl_function" href="internal_8h.html#a1caeae710ee5e1dd356e43b3b659e9c0">process_ddt_v2</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx, <a class="code hl_struct" href="structIndexEntry.html">IndexEntry</a> *entry, <span class="keywordtype">bool</span> *found_user_data_ddt);</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span><span class="keywordtype">void</span> <a class="code hl_function" href="internal_8h.html#a43974d4c183240be30d49ff09ef7b8c2">process_metadata_block</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx, <span class="keyword">const</span> <a class="code hl_struct" href="structIndexEntry.html">IndexEntry</a> *entry);</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span><span class="keywordtype">void</span> <a class="code hl_function" href="internal_8h.html#a81d410de6727d95a85b827067e1a8bc6">process_geometry_block</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx, <span class="keyword">const</span> <a class="code hl_struct" href="structIndexEntry.html">IndexEntry</a> *entry);</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span><span class="keywordtype">void</span> <a class="code hl_function" href="internal_8h.html#a375a516fdf6f81e997365d93b21f6708">process_tracks_block</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx, <span class="keyword">const</span> <a class="code hl_struct" href="structIndexEntry.html">IndexEntry</a> *entry);</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="keywordtype">void</span> <a class="code hl_function" href="internal_8h.html#a5e0397faed8aea27c5a6a3881875de54">process_cicm_block</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx, <span class="keyword">const</span> <a class="code hl_struct" href="structIndexEntry.html">IndexEntry</a> *entry);</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span><span class="keywordtype">void</span> <a class="code hl_function" href="internal_8h.html#a84003ec881425a7b28ec24cb48d19f02">process_aaru_metadata_json_block</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx, <span class="keyword">const</span> <a class="code hl_struct" href="structIndexEntry.html">IndexEntry</a> *entry);</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span><span class="keywordtype">void</span> <a class="code hl_function" href="internal_8h.html#a0e2cfc858c0551bc9bef11d5bdb85aac">process_dumphw_block</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx, <span class="keyword">const</span> <a class="code hl_struct" href="structIndexEntry.html">IndexEntry</a> *entry);</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span><span class="keywordtype">void</span> <a class="code hl_function" href="internal_8h.html#a565eace88f86c500249be1f2a89a1c60">process_checksum_block</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx, <span class="keyword">const</span> <a class="code hl_struct" href="structIndexEntry.html">IndexEntry</a> *entry);</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span><span class="keywordtype">void</span> <a class="code hl_function" href="internal_8h.html#a829bbac3c17b60efd8f93188a8de8278">process_tape_files_block</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx, <span class="keyword">const</span> <a class="code hl_struct" href="structIndexEntry.html">IndexEntry</a> *entry);</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span><span class="keywordtype">void</span> <a class="code hl_function" href="internal_8h.html#aa76718b0402b1a28be3d563d5e62028e">process_tape_partitions_block</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx, <span class="keyword">const</span> <a class="code hl_struct" href="structIndexEntry.html">IndexEntry</a> *entry);</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span>int32_t <a class="code hl_function" href="internal_8h.html#a26e5fd58cdfd39948f1b724fafffcdc2">decode_ddt_entry_v1</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx, uint64_t sector_address, uint64_t *offset, uint64_t *block_offset,</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> uint8_t *sector_status);</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span>int32_t <a class="code hl_function" href="internal_8h.html#a805d607b45bb8ad8a3e6b0bcfabe3265">decode_ddt_entry_v2</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx, uint64_t sector_address, <span class="keywordtype">bool</span> negative, uint64_t *offset,</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> uint64_t *block_offset, uint8_t *sector_status);</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span>int32_t <a class="code hl_function" href="internal_8h.html#a40c571bc4778040f22ac211cea670db1">decode_ddt_single_level_v2</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx, uint64_t sector_address, <span class="keywordtype">bool</span> negative, uint64_t *offset,</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> uint64_t *block_offset, uint8_t *sector_status);</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span>int32_t <a class="code hl_function" href="internal_8h.html#a83aff4d408ab17f8f350cb03b0e12ef6">decode_ddt_multi_level_v2</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx, uint64_t sector_address, <span class="keywordtype">bool</span> negative, uint64_t *offset,</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> uint64_t *block_offset, uint8_t *sector_status);</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span><span class="keywordtype">bool</span> <a class="code hl_function" href="internal_8h.html#a1906cbcaef9f44b8ac4360beb70a0120">set_ddt_entry_v2</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx, uint64_t sector_address, <span class="keywordtype">bool</span> negative, uint64_t offset,</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> uint64_t block_offset, uint8_t sector_status, uint64_t *ddt_entry);</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span><span class="keywordtype">bool</span> <a class="code hl_function" href="internal_8h.html#a7471ae33a70bae7e3aa93a52f8e519ca">set_ddt_single_level_v2</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx, uint64_t sector_address, <span class="keywordtype">bool</span> negative, uint64_t offset,</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> uint64_t block_offset, uint8_t sector_status, uint64_t *ddt_entry);</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span><span class="keywordtype">bool</span> <a class="code hl_function" href="internal_8h.html#a69ff2e68fe4d92a2d2d469ac69f41d82">set_ddt_multi_level_v2</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx, uint64_t sector_address, <span class="keywordtype">bool</span> negative, uint64_t offset,</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> uint64_t block_offset, uint8_t sector_status, uint64_t *ddt_entry);</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span><span class="keywordtype">bool</span> <a class="code hl_function" href="internal_8h.html#a8241636367dc185ee88d1dc5af9caf59">set_ddt_tape</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx, uint64_t sector_address, uint64_t offset, uint64_t block_offset,</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> uint8_t sector_status, uint64_t *ddt_entry);</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span><a class="code hl_struct" href="structaaru__options.html">aaru_options</a> <a class="code hl_function" href="internal_8h.html#aaae42bff244df727b6c029f58d4957df">parse_options</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *options);</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span>uint64_t <a class="code hl_function" href="internal_8h.html#a36c1cca0e4cea9c2e0dffb582b836f6f">get_filetime_uint64</a>();</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span>int32_t <a class="code hl_function" href="internal_8h.html#a2402812f5e04ba16765208c0b70fa6c5">aaruf_close_current_block</a>(<a class="code hl_struct" href="structaaruformat__context.html">aaruformat_context</a> *ctx);</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span><span class="keywordtype">int</span> <a class="code hl_function" href="internal_8h.html#ac93ebc6d918745be56b680e19bf7e8d5">compare_extents</a>(<span class="keyword">const</span> <span class="keywordtype">void</span> *a, <span class="keyword">const</span> <span class="keywordtype">void</span> *b);</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> </div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span><span class="preprocessor">#endif </span><span class="comment">// LIBAARUFORMAT_INTERNAL_H</span></div>
<div class="ttc" id="ainternal_8h_html_a0e2cfc858c0551bc9bef11d5bdb85aac"><div class="ttname"><a href="internal_8h.html#a0e2cfc858c0551bc9bef11d5bdb85aac">process_dumphw_block</a></div><div class="ttdeci">void process_dumphw_block(aaruformat_context *ctx, const IndexEntry *entry)</div><div class="ttdoc">Processes a dump hardware block from the image stream.</div><div class="ttdef"><b>Definition</b> <a href="blocks_2dump_8c_source.html#l00108">dump.c:108</a></div></div>
<div class="ttc" id="ainternal_8h_html_a1906cbcaef9f44b8ac4360beb70a0120"><div class="ttname"><a href="internal_8h.html#a1906cbcaef9f44b8ac4360beb70a0120">set_ddt_entry_v2</a></div><div class="ttdeci">bool set_ddt_entry_v2(aaruformat_context *ctx, uint64_t sector_address, bool negative, uint64_t offset, uint64_t block_offset, uint8_t sector_status, uint64_t *ddt_entry)</div><div class="ttdoc">Sets a DDT v2 entry for a given sector address.</div><div class="ttdef"><b>Definition</b> <a href="ddt__v2_8c_source.html#l00988">ddt_v2.c:988</a></div></div>
<div class="ttc" id="ainternal_8h_html_a1baad6508d1cde5a712794e956fb3d3c"><div class="ttname"><a href="internal_8h.html#a1baad6508d1cde5a712794e956fb3d3c">process_index_v2</a></div><div class="ttdeci">UT_array * process_index_v2(aaruformat_context *ctx)</div><div class="ttdoc">Processes an index block (version 2) from the image stream.</div><div class="ttdef"><b>Definition</b> <a href="index__v2_8c_source.html#l00081">index_v2.c:81</a></div></div>
<div class="ttc" id="ainternal_8h_html_a1caeae710ee5e1dd356e43b3b659e9c0"><div class="ttname"><a href="internal_8h.html#a1caeae710ee5e1dd356e43b3b659e9c0">process_ddt_v2</a></div><div class="ttdeci">int32_t process_ddt_v2(aaruformat_context *ctx, IndexEntry *entry, bool *found_user_data_ddt)</div><div class="ttdoc">Processes a DDT v2 block from the image stream.</div><div class="ttdef"><b>Definition</b> <a href="ddt__v2_8c_source.html#l00096">ddt_v2.c:96</a></div></div>
<div class="ttc" id="ainternal_8h_html_a2402812f5e04ba16765208c0b70fa6c5"><div class="ttname"><a href="internal_8h.html#a2402812f5e04ba16765208c0b70fa6c5">aaruf_close_current_block</a></div><div class="ttdeci">int32_t aaruf_close_current_block(aaruformat_context *ctx)</div><div class="ttdoc">Finalizes and writes the current data block to the AaruFormat image file.</div><div class="ttdef"><b>Definition</b> <a href="write_8c_source.html#l01383">write.c:1383</a></div></div>
<div class="ttc" id="ainternal_8h_html_a26e5fd58cdfd39948f1b724fafffcdc2"><div class="ttname"><a href="internal_8h.html#a26e5fd58cdfd39948f1b724fafffcdc2">decode_ddt_entry_v1</a></div><div class="ttdeci">int32_t decode_ddt_entry_v1(aaruformat_context *ctx, uint64_t sector_address, uint64_t *offset, uint64_t *block_offset, uint8_t *sector_status)</div><div class="ttdoc">Decodes a DDT v1 entry for a given sector address.</div><div class="ttdef"><b>Definition</b> <a href="ddt__v1_8c_source.html#l00405">ddt_v1.c:405</a></div></div>
<div class="ttc" id="ainternal_8h_html_a28d844a06cecbbf436d825a3c99ff0eb"><div class="ttname"><a href="internal_8h.html#a28d844a06cecbbf436d825a3c99ff0eb">process_data_block</a></div><div class="ttdeci">int32_t process_data_block(aaruformat_context *ctx, IndexEntry *entry)</div><div class="ttdoc">Processes a data block from the image stream.</div><div class="ttdef"><b>Definition</b> <a href="data_8c_source.html#l00071">data.c:71</a></div></div>
<div class="ttc" id="ainternal_8h_html_a36c1cca0e4cea9c2e0dffb582b836f6f"><div class="ttname"><a href="internal_8h.html#a36c1cca0e4cea9c2e0dffb582b836f6f">get_filetime_uint64</a></div><div class="ttdeci">uint64_t get_filetime_uint64()</div><div class="ttdoc">Gets the current time as a 64-bit FILETIME value.</div><div class="ttdef"><b>Definition</b> <a href="time_8c_source.html#l00045">time.c:45</a></div></div>
<div class="ttc" id="ainternal_8h_html_a375a516fdf6f81e997365d93b21f6708"><div class="ttname"><a href="internal_8h.html#a375a516fdf6f81e997365d93b21f6708">process_tracks_block</a></div><div class="ttdeci">void process_tracks_block(aaruformat_context *ctx, const IndexEntry *entry)</div><div class="ttdoc">Parse and integrate a Tracks block from the image stream into the context.</div><div class="ttdef"><b>Definition</b> <a href="optical_8c_source.html#l00111">optical.c:111</a></div></div>
<div class="ttc" id="ainternal_8h_html_a40c571bc4778040f22ac211cea670db1"><div class="ttname"><a href="internal_8h.html#a40c571bc4778040f22ac211cea670db1">decode_ddt_single_level_v2</a></div><div class="ttdeci">int32_t decode_ddt_single_level_v2(aaruformat_context *ctx, uint64_t sector_address, bool negative, uint64_t *offset, uint64_t *block_offset, uint8_t *sector_status)</div><div class="ttdoc">Decodes a single-level DDT v2 entry for a given sector address.</div><div class="ttdef"><b>Definition</b> <a href="ddt__v2_8c_source.html#l00581">ddt_v2.c:581</a></div></div>
<div class="ttc" id="ainternal_8h_html_a43974d4c183240be30d49ff09ef7b8c2"><div class="ttname"><a href="internal_8h.html#a43974d4c183240be30d49ff09ef7b8c2">process_metadata_block</a></div><div class="ttdeci">void process_metadata_block(aaruformat_context *ctx, const IndexEntry *entry)</div><div class="ttdoc">Processes a metadata block from the image stream.</div><div class="ttdef"><b>Definition</b> <a href="blocks_2metadata_8c_source.html#l00035">metadata.c:35</a></div></div>
<div class="ttc" id="ainternal_8h_html_a565eace88f86c500249be1f2a89a1c60"><div class="ttname"><a href="internal_8h.html#a565eace88f86c500249be1f2a89a1c60">process_checksum_block</a></div><div class="ttdeci">void process_checksum_block(aaruformat_context *ctx, const IndexEntry *entry)</div><div class="ttdoc">Processes a checksum block from the image stream.</div><div class="ttdef"><b>Definition</b> <a href="checksum_8c_source.html#l00039">checksum.c:39</a></div></div>
<div class="ttc" id="ainternal_8h_html_a5d3b1092abc36a27a441a01a8a0b3b48"><div class="ttname"><a href="internal_8h.html#a5d3b1092abc36a27a441a01a8a0b3b48">process_index_v1</a></div><div class="ttdeci">UT_array * process_index_v1(aaruformat_context *ctx)</div><div class="ttdoc">Processes an index block (version 1) from the image stream.</div><div class="ttdef"><b>Definition</b> <a href="index__v1_8c_source.html#l00079">index_v1.c:79</a></div></div>
<div class="ttc" id="ainternal_8h_html_a5e0397faed8aea27c5a6a3881875de54"><div class="ttname"><a href="internal_8h.html#a5e0397faed8aea27c5a6a3881875de54">process_cicm_block</a></div><div class="ttdeci">void process_cicm_block(aaruformat_context *ctx, const IndexEntry *entry)</div><div class="ttdoc">Processes a CICM XML metadata block from the image stream.</div><div class="ttdef"><b>Definition</b> <a href="blocks_2metadata_8c_source.html#l00306">metadata.c:306</a></div></div>
<div class="ttc" id="ainternal_8h_html_a69ff2e68fe4d92a2d2d469ac69f41d82"><div class="ttname"><a href="internal_8h.html#a69ff2e68fe4d92a2d2d469ac69f41d82">set_ddt_multi_level_v2</a></div><div class="ttdeci">bool set_ddt_multi_level_v2(aaruformat_context *ctx, uint64_t sector_address, bool negative, uint64_t offset, uint64_t block_offset, uint8_t sector_status, uint64_t *ddt_entry)</div><div class="ttdoc">Sets a multi-level DDT v2 entry for a given sector address.</div><div class="ttdef"><b>Definition</b> <a href="ddt__v2_8c_source.html#l01092">ddt_v2.c:1092</a></div></div>
<div class="ttc" id="ainternal_8h_html_a7471ae33a70bae7e3aa93a52f8e519ca"><div class="ttname"><a href="internal_8h.html#a7471ae33a70bae7e3aa93a52f8e519ca">set_ddt_single_level_v2</a></div><div class="ttdeci">bool set_ddt_single_level_v2(aaruformat_context *ctx, uint64_t sector_address, bool negative, uint64_t offset, uint64_t block_offset, uint8_t sector_status, uint64_t *ddt_entry)</div><div class="ttdoc">Sets a single-level DDT v2 entry for a given sector address.</div><div class="ttdef"><b>Definition</b> <a href="ddt__v2_8c_source.html#l01023">ddt_v2.c:1023</a></div></div>
<div class="ttc" id="ainternal_8h_html_a805d607b45bb8ad8a3e6b0bcfabe3265"><div class="ttname"><a href="internal_8h.html#a805d607b45bb8ad8a3e6b0bcfabe3265">decode_ddt_entry_v2</a></div><div class="ttdeci">int32_t decode_ddt_entry_v2(aaruformat_context *ctx, uint64_t sector_address, bool negative, uint64_t *offset, uint64_t *block_offset, uint8_t *sector_status)</div><div class="ttdoc">Decodes a DDT v2 entry for a given sector address.</div><div class="ttdef"><b>Definition</b> <a href="ddt__v2_8c_source.html#l00507">ddt_v2.c:507</a></div></div>
<div class="ttc" id="ainternal_8h_html_a81d410de6727d95a85b827067e1a8bc6"><div class="ttname"><a href="internal_8h.html#a81d410de6727d95a85b827067e1a8bc6">process_geometry_block</a></div><div class="ttdeci">void process_geometry_block(aaruformat_context *ctx, const IndexEntry *entry)</div><div class="ttdoc">Processes a logical geometry block from the image stream.</div><div class="ttdef"><b>Definition</b> <a href="blocks_2metadata_8c_source.html#l00246">metadata.c:246</a></div></div>
<div class="ttc" id="ainternal_8h_html_a8241636367dc185ee88d1dc5af9caf59"><div class="ttname"><a href="internal_8h.html#a8241636367dc185ee88d1dc5af9caf59">set_ddt_tape</a></div><div class="ttdeci">bool set_ddt_tape(aaruformat_context *ctx, uint64_t sector_address, uint64_t offset, uint64_t block_offset, uint8_t sector_status, uint64_t *ddt_entry)</div><div class="ttdoc">Sets a DDT entry for tape media using a hash-based lookup table.</div><div class="ttdef"><b>Definition</b> <a href="ddt__v2_8c_source.html#l01768">ddt_v2.c:1768</a></div></div>
<div class="ttc" id="ainternal_8h_html_a829bbac3c17b60efd8f93188a8de8278"><div class="ttname"><a href="internal_8h.html#a829bbac3c17b60efd8f93188a8de8278">process_tape_files_block</a></div><div class="ttdeci">void process_tape_files_block(aaruformat_context *ctx, const IndexEntry *entry)</div><div class="ttdoc">Processes a tape file metadata block from the image stream.</div><div class="ttdef"><b>Definition</b> <a href="tape_8c_source.html#l00126">tape.c:126</a></div></div>
<div class="ttc" id="ainternal_8h_html_a83aff4d408ab17f8f350cb03b0e12ef6"><div class="ttname"><a href="internal_8h.html#a83aff4d408ab17f8f350cb03b0e12ef6">decode_ddt_multi_level_v2</a></div><div class="ttdeci">int32_t decode_ddt_multi_level_v2(aaruformat_context *ctx, uint64_t sector_address, bool negative, uint64_t *offset, uint64_t *block_offset, uint8_t *sector_status)</div><div class="ttdoc">Decodes a multi-level DDT v2 entry for a given sector address.</div><div class="ttdef"><b>Definition</b> <a href="ddt__v2_8c_source.html#l00724">ddt_v2.c:724</a></div></div>
<div class="ttc" id="ainternal_8h_html_a84003ec881425a7b28ec24cb48d19f02"><div class="ttname"><a href="internal_8h.html#a84003ec881425a7b28ec24cb48d19f02">process_aaru_metadata_json_block</a></div><div class="ttdeci">void process_aaru_metadata_json_block(aaruformat_context *ctx, const IndexEntry *entry)</div><div class="ttdoc">Processes an Aaru metadata JSON block from the image stream during image opening.</div><div class="ttdef"><b>Definition</b> <a href="blocks_2metadata_8c_source.html#l00470">metadata.c:470</a></div></div>
<div class="ttc" id="ainternal_8h_html_a89ed93d216c4dce0ae5e2acccf8cc2b4"><div class="ttname"><a href="internal_8h.html#a89ed93d216c4dce0ae5e2acccf8cc2b4">verify_index_v1</a></div><div class="ttdeci">int32_t verify_index_v1(aaruformat_context *ctx)</div><div class="ttdoc">Verifies the integrity of an index block (version 1) in the image stream.</div><div class="ttdef"><b>Definition</b> <a href="index__v1_8c_source.html#l00225">index_v1.c:225</a></div></div>
<div class="ttc" id="ainternal_8h_html_aa76718b0402b1a28be3d563d5e62028e"><div class="ttname"><a href="internal_8h.html#aa76718b0402b1a28be3d563d5e62028e">process_tape_partitions_block</a></div><div class="ttdeci">void process_tape_partitions_block(aaruformat_context *ctx, const IndexEntry *entry)</div><div class="ttdoc">Processes a tape partition metadata block from the image stream.</div><div class="ttdef"><b>Definition</b> <a href="tape_8c_source.html#l00346">tape.c:346</a></div></div>
<div class="ttc" id="ainternal_8h_html_aaae42bff244df727b6c029f58d4957df"><div class="ttname"><a href="internal_8h.html#aaae42bff244df727b6c029f58d4957df">parse_options</a></div><div class="ttdeci">aaru_options parse_options(const char *options)</div><div class="ttdoc">Parses the options string for AaruFormat image creation/opening.</div><div class="ttdef"><b>Definition</b> <a href="options_8c_source.html#l00038">options.c:38</a></div></div>
<div class="ttc" id="ainternal_8h_html_abaf38090f967423898b99e0455751c07"><div class="ttname"><a href="internal_8h.html#abaf38090f967423898b99e0455751c07">process_ddt_v1</a></div><div class="ttdeci">int32_t process_ddt_v1(aaruformat_context *ctx, IndexEntry *entry, bool *found_user_data_ddt)</div><div class="ttdoc">Processes a DDT v1 block from the image stream.</div><div class="ttdef"><b>Definition</b> <a href="ddt__v1_8c_source.html#l00085">ddt_v1.c:85</a></div></div>
<div class="ttc" id="ainternal_8h_html_ac93ebc6d918745be56b680e19bf7e8d5"><div class="ttname"><a href="internal_8h.html#ac93ebc6d918745be56b680e19bf7e8d5">compare_extents</a></div><div class="ttdeci">int compare_extents(const void *a, const void *b)</div><div class="ttdoc">Comparison function for sorting DumpExtent arrays by start sector.</div><div class="ttdef"><b>Definition</b> <a href="helpers_8c_source.html#l00451">helpers.c:451</a></div></div>
<div class="ttc" id="ainternal_8h_html_ad7ed9250463c320c7bc8d83689bcfefb"><div class="ttname"><a href="internal_8h.html#ad7ed9250463c320c7bc8d83689bcfefb">verify_index_v3</a></div><div class="ttdeci">int32_t verify_index_v3(aaruformat_context *ctx)</div><div class="ttdoc">Verifies the integrity of an index block (version 3) in the image stream.</div><div class="ttdef"><b>Definition</b> <a href="index__v3_8c_source.html#l00408">index_v3.c:408</a></div></div>
<div class="ttc" id="ainternal_8h_html_ae234e22b16b085d18614110630034db5"><div class="ttname"><a href="internal_8h.html#ae234e22b16b085d18614110630034db5">verify_index_v2</a></div><div class="ttdeci">int32_t verify_index_v2(aaruformat_context *ctx)</div><div class="ttdoc">Verifies the integrity of an index block (version 2) in the image stream.</div><div class="ttdef"><b>Definition</b> <a href="index__v2_8c_source.html#l00227">index_v2.c:227</a></div></div>
<div class="ttc" id="ainternal_8h_html_aff88fae9938d5f56318bfd7a455d5e94"><div class="ttname"><a href="internal_8h.html#aff88fae9938d5f56318bfd7a455d5e94">process_index_v3</a></div><div class="ttdeci">UT_array * process_index_v3(aaruformat_context *ctx)</div><div class="ttdoc">Processes an index block (version 3) from the image stream.</div><div class="ttdef"><b>Definition</b> <a href="index__v3_8c_source.html#l00098">index_v3.c:98</a></div></div>
<div class="ttc" id="astructIndexEntry_html"><div class="ttname"><a href="structIndexEntry.html">IndexEntry</a></div><div class="ttdoc">Single index entry describing a block&#39;s type, (optional) data classification, and file offset.</div><div class="ttdef"><b>Definition</b> <a href="index_8h_source.html#l00108">index.h:109</a></div></div>
<div class="ttc" id="astructaaru__options_html"><div class="ttname"><a href="structaaru__options.html">aaru_options</a></div><div class="ttdoc">Parsed user-specified tunables controlling compression, deduplication, hashing and DDT geometry.</div><div class="ttdef"><b>Definition</b> <a href="options_8h_source.html#l00216">options.h:217</a></div></div>
<div class="ttc" id="astructaaruformat__context_html"><div class="ttname"><a href="structaaruformat__context.html">aaruformat_context</a></div><div class="ttdoc">Master context representing an open or increation Aaru image.</div><div class="ttdef"><b>Definition</b> <a href="context_8h_source.html#l00171">context.h:172</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
</div><!-- container -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a href="internal_8h.html">internal.h</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.14.0 </li>
</ul>
</div>
</body>
</html>