binaryninja/personal/api-docs/binaryninja.filemetadata.FileMetadata.html

375 lines
20 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>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>binaryninja.filemetadata.FileMetadata &mdash; Binary Ninja API Documentation v1.1</title>
<link rel="shortcut icon" href="_static/favicon.ico"/>
<link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="_static/css/other.css" type="text/css" />
<link rel="index" title="Index"
href="genindex.html"/>
<link rel="search" title="Search" href="search.html"/>
<link rel="top" title="Binary Ninja API Documentation v1.1" href="index.html"/>
<link rel="up" title="filemetadata module" href="binaryninja.filemetadata-module.html"/>
<link rel="next" title="binaryninja.filemetadata.NavigationHandler" href="binaryninja.filemetadata.NavigationHandler.html"/>
<link rel="prev" title="filemetadata module" href="binaryninja.filemetadata-module.html"/>
<script src="_static/js/modernizr.min.js"></script>
</head>
<body class="wy-body-for-nav" role="document">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search">
<a href="index.html" class="icon icon-home"> Binary Ninja API
</a>
<div class="version">
<script>
window.addEventListener("load", function() {
var ver = document.getElementsByClassName("version");
ver[0].innerHTML = DOCUMENTATION_OPTIONS['VERSION'];
});
</script>
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="binaryninja.architecture-module.html">architecture</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.atexit-module.html">atexit</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.basicblock-module.html">basicblock</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.binaryview-module.html">binaryview</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.callingconvention-module.html">callingconvention</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.databuffer-module.html">databuffer</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.datarender-module.html">datarender</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.demangle-module.html">demangle</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.downloadprovider-module.html">downloadprovider</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.enums-module.html">enums</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.fileaccessor-module.html">fileaccessor</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="binaryninja.filemetadata-module.html">filemetadata</a><ul class="current">
<li class="toctree-l2 current"><a class="current reference internal" href="#">binaryninja.filemetadata.FileMetadata</a></li>
<li class="toctree-l2"><a class="reference internal" href="binaryninja.filemetadata.NavigationHandler.html">binaryninja.filemetadata.NavigationHandler</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.flowgraph-module.html">flowgraph</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.function-module.html">function</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.functionrecognizer-module.html">functionrecognizer</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.highlight-module.html">highlight</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.interaction-module.html">interaction</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.lineardisassembly-module.html">lineardisassembly</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.log-module.html">log</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.lowlevelil-module.html">lowlevelil</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.mainthread-module.html">mainthread</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.mediumlevelil-module.html">mediumlevelil</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.metadata-module.html">metadata</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.numbers-module.html">numbers</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.platform-module.html">platform</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.plugin-module.html">plugin</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.pluginmanager-module.html">pluginmanager</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.scriptingprovider-module.html">scriptingprovider</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.settings-module.html">settings</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.transform-module.html">transform</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.types-module.html">types</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.undoaction-module.html">undoaction</a></li>
<li class="toctree-l1"><a class="reference internal" href="binaryninja.update-module.html">update</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" role="navigation" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="index.html">Binary Ninja API</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="index.html">Docs</a> &raquo;</li>
<li><a href="binaryninja.filemetadata-module.html">filemetadata module</a> &raquo;</li>
<li>binaryninja.filemetadata.FileMetadata</li>
<li class="wy-breadcrumbs-aside">
<a href="_sources/binaryninja.filemetadata.FileMetadata.rst.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="binaryninja-filemetadata-filemetadata">
<h1>binaryninja.filemetadata.FileMetadata<a class="headerlink" href="#binaryninja-filemetadata-filemetadata" title="Permalink to this headline"></a></h1>
<dl class="class">
<dt id="binaryninja.filemetadata.FileMetadata">
<em class="property">class </em><code class="descname">FileMetadata</code><span class="sig-paren">(</span><em>filename=None</em>, <em>handle=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binaryninja/filemetadata.html#FileMetadata"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#binaryninja.filemetadata.FileMetadata" title="Permalink to this definition"></a></dt>
<dd><p><code class="docutils literal notranslate"><span class="pre">class</span> <span class="pre">FileMetadata</span></code> represents the file being analyzed by Binary Ninja. It is responsible for opening,
closing, creating the database (.bndb) files, and is used to keep track of undoable actions.</p>
<dl class="method">
<dt id="binaryninja.filemetadata.FileMetadata.__init__">
<code class="descname">__init__</code><span class="sig-paren">(</span><em>filename=None</em>, <em>handle=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/binaryninja/filemetadata.html#FileMetadata.__init__"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#binaryninja.filemetadata.FileMetadata.__init__" title="Permalink to this definition"></a></dt>
<dd><p>Instantiates a new FileMetadata class.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>filename</strong> The string path to the file to be opened. Defaults to None.</li>
<li><strong>handle</strong> A handle to the underlying C FileMetadata object. Defaults to None.</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>
<p class="rubric">Methods</p>
<table border="1" class="longtable docutils">
<colgroup>
<col width="10%" />
<col width="90%" />
</colgroup>
<tbody valign="top">
<tr class="row-odd"><td><a class="reference internal" href="#binaryninja.filemetadata.FileMetadata.__init__" title="binaryninja.filemetadata.FileMetadata.__init__"><code class="xref py py-obj docutils literal notranslate"><span class="pre">__init__</span></code></a>([filename,&nbsp;handle])</td>
<td>Instantiates a new FileMetadata class.</td>
</tr>
<tr class="row-even"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.begin_undo_actions" title="binaryninja.filemetadata.FileMetadata.begin_undo_actions"><code class="xref py py-obj docutils literal notranslate"><span class="pre">begin_undo_actions</span></code></a>()</td>
<td><code class="docutils literal notranslate"><span class="pre">begin_undo_actions</span></code> start recording actions taken so the can be undone at some point.</td>
</tr>
<tr class="row-odd"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.close" title="binaryninja.filemetadata.FileMetadata.close"><code class="xref py py-obj docutils literal notranslate"><span class="pre">close</span></code></a>()</td>
<td>Closes the underlying file handle.</td>
</tr>
<tr class="row-even"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.commit_undo_actions" title="binaryninja.filemetadata.FileMetadata.commit_undo_actions"><code class="xref py py-obj docutils literal notranslate"><span class="pre">commit_undo_actions</span></code></a>()</td>
<td><code class="docutils literal notranslate"><span class="pre">commit_undo_actions</span></code> commit the actions taken since the last commit to the undo database.</td>
</tr>
<tr class="row-odd"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.create_database" title="binaryninja.filemetadata.FileMetadata.create_database"><code class="xref py py-obj docutils literal notranslate"><span class="pre">create_database</span></code></a>(filename[,&nbsp;progress_func])</td>
<td></td>
</tr>
<tr class="row-even"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.get_view_of_type" title="binaryninja.filemetadata.FileMetadata.get_view_of_type"><code class="xref py py-obj docutils literal notranslate"><span class="pre">get_view_of_type</span></code></a>(name)</td>
<td></td>
</tr>
<tr class="row-odd"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.navigate" title="binaryninja.filemetadata.FileMetadata.navigate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">navigate</span></code></a>(view,&nbsp;offset)</td>
<td></td>
</tr>
<tr class="row-even"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.open_existing_database" title="binaryninja.filemetadata.FileMetadata.open_existing_database"><code class="xref py py-obj docutils literal notranslate"><span class="pre">open_existing_database</span></code></a>(filename[,&nbsp;progress_func])</td>
<td></td>
</tr>
<tr class="row-odd"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.redo" title="binaryninja.filemetadata.FileMetadata.redo"><code class="xref py py-obj docutils literal notranslate"><span class="pre">redo</span></code></a>()</td>
<td><code class="docutils literal notranslate"><span class="pre">redo</span></code> redo the last commited action in the undo database.</td>
</tr>
<tr class="row-even"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.save_auto_snapshot" title="binaryninja.filemetadata.FileMetadata.save_auto_snapshot"><code class="xref py py-obj docutils literal notranslate"><span class="pre">save_auto_snapshot</span></code></a>([progress_func])</td>
<td></td>
</tr>
<tr class="row-odd"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.set_default_session_data" title="binaryninja.filemetadata.FileMetadata.set_default_session_data"><code class="xref py py-obj docutils literal notranslate"><span class="pre">set_default_session_data</span></code></a>(name,&nbsp;value)</td>
<td></td>
</tr>
<tr class="row-even"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.undo" title="binaryninja.filemetadata.FileMetadata.undo"><code class="xref py py-obj docutils literal notranslate"><span class="pre">undo</span></code></a>()</td>
<td><code class="docutils literal notranslate"><span class="pre">undo</span></code> undo the last commited action in the undo database.</td>
</tr>
</tbody>
</table>
<p class="rubric">Attributes</p>
<table border="1" class="longtable docutils">
<colgroup>
<col width="10%" />
<col width="90%" />
</colgroup>
<tbody valign="top">
<tr class="row-odd"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.analysis_changed" title="binaryninja.filemetadata.FileMetadata.analysis_changed"><code class="xref py py-obj docutils literal notranslate"><span class="pre">analysis_changed</span></code></a></td>
<td>Boolean result of whether the auto-analysis results have changed (read-only)</td>
</tr>
<tr class="row-even"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.filename" title="binaryninja.filemetadata.FileMetadata.filename"><code class="xref py py-obj docutils literal notranslate"><span class="pre">filename</span></code></a></td>
<td>The name of the open bndb or binary filename (read/write)</td>
</tr>
<tr class="row-odd"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.has_database" title="binaryninja.filemetadata.FileMetadata.has_database"><code class="xref py py-obj docutils literal notranslate"><span class="pre">has_database</span></code></a></td>
<td>Whether the FileMetadata is backed by a database (read-only)</td>
</tr>
<tr class="row-even"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.modified" title="binaryninja.filemetadata.FileMetadata.modified"><code class="xref py py-obj docutils literal notranslate"><span class="pre">modified</span></code></a></td>
<td>Boolean result of whether the file is modified (Inverse of saved property) (read/write)</td>
</tr>
<tr class="row-odd"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.navigation" title="binaryninja.filemetadata.FileMetadata.navigation"><code class="xref py py-obj docutils literal notranslate"><span class="pre">navigation</span></code></a></td>
<td></td>
</tr>
<tr class="row-even"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.offset" title="binaryninja.filemetadata.FileMetadata.offset"><code class="xref py py-obj docutils literal notranslate"><span class="pre">offset</span></code></a></td>
<td>The current offset into the file (read/write)</td>
</tr>
<tr class="row-odd"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.original_filename" title="binaryninja.filemetadata.FileMetadata.original_filename"><code class="xref py py-obj docutils literal notranslate"><span class="pre">original_filename</span></code></a></td>
<td>The original name of the binary opened if a bndb, otherwise reads or sets the current filename (read/write)</td>
</tr>
<tr class="row-even"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.raw" title="binaryninja.filemetadata.FileMetadata.raw"><code class="xref py py-obj docutils literal notranslate"><span class="pre">raw</span></code></a></td>
<td>Gets the “Raw” BinaryView of the file</td>
</tr>
<tr class="row-odd"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.saved" title="binaryninja.filemetadata.FileMetadata.saved"><code class="xref py py-obj docutils literal notranslate"><span class="pre">saved</span></code></a></td>
<td>Boolean result of whether the file has been saved (Inverse of modified property) (read/write)</td>
</tr>
<tr class="row-even"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.session_data" title="binaryninja.filemetadata.FileMetadata.session_data"><code class="xref py py-obj docutils literal notranslate"><span class="pre">session_data</span></code></a></td>
<td>Dictionary object where plugins can store arbitrary data associated with the file</td>
</tr>
<tr class="row-odd"><td><a class="reference internal" href="binaryninja.filemetadata-module.html#binaryninja.filemetadata.FileMetadata.view" title="binaryninja.filemetadata.FileMetadata.view"><code class="xref py py-obj docutils literal notranslate"><span class="pre">view</span></code></a></td>
<td></td>
</tr>
</tbody>
</table>
</dd></dl>
</div>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="binaryninja.filemetadata.NavigationHandler.html" class="btn btn-neutral float-right" title="binaryninja.filemetadata.NavigationHandler" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
<a href="binaryninja.filemetadata-module.html" class="btn btn-neutral" title="filemetadata module" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
</div>
<hr/>
<div role="contentinfo">
<p>
&copy; Copyright 2015-2019, Vector 35 Inc.
</p>
</div>
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<script type="text/javascript" src="_static/language_data.js"></script>
<script type="text/javascript" src="_static/js/theme.js"></script>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.StickyNav.enable();
});
</script>
</body>
</html>