New upstream version 2016.14

This commit is contained in:
Simon McVittie 2016-11-29 01:10:29 +00:00
commit 90f43fba94
100 changed files with 1821 additions and 1339 deletions

View File

@ -46,6 +46,7 @@ dist_test_scripts = \
tests/test-archivez.sh \
tests/test-remote-add.sh \
tests/test-remote-cookies.sh \
tests/test-remote-headers.sh \
tests/test-remote-gpg-import.sh \
tests/test-commit-sign.sh \
tests/test-export.sh \

View File

@ -1327,12 +1327,13 @@ RECHECK_LOGS = $(TEST_LOGS)
am__EXEEXT_10 =
am__EXEEXT_11 = tests/test-basic.sh tests/test-pull-subpath.sh \
tests/test-archivez.sh tests/test-remote-add.sh \
tests/test-remote-cookies.sh tests/test-remote-gpg-import.sh \
tests/test-commit-sign.sh tests/test-export.sh \
tests/test-help.sh tests/test-libarchive.sh \
tests/test-parent.sh tests/test-pull-archive-z.sh \
tests/test-pull-commit-only.sh tests/test-pull-corruption.sh \
tests/test-pull-depth.sh tests/test-pull-mirror-summary.sh \
tests/test-remote-cookies.sh tests/test-remote-headers.sh \
tests/test-remote-gpg-import.sh tests/test-commit-sign.sh \
tests/test-export.sh tests/test-help.sh \
tests/test-libarchive.sh tests/test-parent.sh \
tests/test-pull-archive-z.sh tests/test-pull-commit-only.sh \
tests/test-pull-corruption.sh tests/test-pull-depth.sh \
tests/test-pull-mirror-summary.sh \
tests/test-pull-large-metadata.sh tests/test-pull-metalink.sh \
tests/test-pull-summary-sigs.sh tests/test-pull-resume.sh \
tests/test-pull-repeated.sh tests/test-pull-untrusted.sh \
@ -2041,12 +2042,13 @@ uninstalled_test_data = tests/ostree-symlink-stamp tests/ostree-prepare-root-sym
dist_uninstalled_test_scripts = tests/test-symbols.sh
dist_test_scripts = tests/test-basic.sh tests/test-pull-subpath.sh \
tests/test-archivez.sh tests/test-remote-add.sh \
tests/test-remote-cookies.sh tests/test-remote-gpg-import.sh \
tests/test-commit-sign.sh tests/test-export.sh \
tests/test-help.sh tests/test-libarchive.sh \
tests/test-parent.sh tests/test-pull-archive-z.sh \
tests/test-pull-commit-only.sh tests/test-pull-corruption.sh \
tests/test-pull-depth.sh tests/test-pull-mirror-summary.sh \
tests/test-remote-cookies.sh tests/test-remote-headers.sh \
tests/test-remote-gpg-import.sh tests/test-commit-sign.sh \
tests/test-export.sh tests/test-help.sh \
tests/test-libarchive.sh tests/test-parent.sh \
tests/test-pull-archive-z.sh tests/test-pull-commit-only.sh \
tests/test-pull-corruption.sh tests/test-pull-depth.sh \
tests/test-pull-mirror-summary.sh \
tests/test-pull-large-metadata.sh tests/test-pull-metalink.sh \
tests/test-pull-summary-sigs.sh tests/test-pull-resume.sh \
tests/test-pull-repeated.sh tests/test-pull-untrusted.sh \
@ -6080,6 +6082,13 @@ tests/test-remote-cookies.sh.log: tests/test-remote-cookies.sh
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
tests/test-remote-headers.sh.log: tests/test-remote-headers.sh
@p='tests/test-remote-headers.sh'; \
b='tests/test-remote-headers.sh'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
tests/test-remote-gpg-import.sh.log: tests/test-remote-gpg-import.sh
@p='tests/test-remote-gpg-import.sh'; \
b='tests/test-remote-gpg-import.sh'; \

View File

@ -14,7 +14,7 @@
<div class="titlepage">
<div>
<div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">OSTree API references</p></th></tr></table></div>
<div><p class="releaseinfo">for OSTree 2016.12</p></div>
<div><p class="releaseinfo">for OSTree 2016.13</p></div>
</div>
<hr>
</div>

File diff suppressed because it is too large Load Diff

View File

@ -46,7 +46,7 @@
</td>
</tr>
<tr>
<td class="function_type">const <span class="returnvalue">GVariantType</span> *
<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-GVariantType.html#GVariantType"><span class="returnvalue">GVariantType</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-metadata-variant-type" title="ostree_metadata_variant_type ()">ostree_metadata_variant_type</a> <span class="c_punctuation">()</span>
@ -54,7 +54,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-validate-checksum-string" title="ostree_validate_checksum_string ()">ostree_validate_checksum_string</a> <span class="c_punctuation">()</span>
@ -62,7 +62,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">guchar</span> *
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guchar"><span class="returnvalue">guchar</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-checksum-to-bytes" title="ostree_checksum_to_bytes ()">ostree_checksum_to_bytes</a> <span class="c_punctuation">()</span>
@ -70,7 +70,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GVariant</span> *
<a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-checksum-to-bytes-v" title="ostree_checksum_to_bytes_v ()">ostree_checksum_to_bytes_v</a> <span class="c_punctuation">()</span>
@ -109,14 +109,14 @@
</td>
</tr>
<tr>
<td class="function_type">const <span class="returnvalue">guchar</span> *
<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guchar"><span class="returnvalue">guchar</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-checksum-bytes-peek" title="ostree_checksum_bytes_peek ()">ostree_checksum_bytes_peek</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">const <span class="returnvalue">guchar</span> *
<td class="function_type">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guchar"><span class="returnvalue">guchar</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-checksum-bytes-peek-validate" title="ostree_checksum_bytes_peek_validate ()">ostree_checksum_bytes_peek_validate</a> <span class="c_punctuation">()</span>
@ -132,7 +132,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">guchar</span> *
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guchar"><span class="returnvalue">guchar</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-checksum-b64-to-bytes" title="ostree_checksum_b64_to_bytes ()">ostree_checksum_b64_to_bytes</a> <span class="c_punctuation">()</span>
@ -164,7 +164,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-validate-rev" title="ostree_validate_rev ()">ostree_validate_rev</a> <span class="c_punctuation">()</span>
@ -172,7 +172,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-parse-refspec" title="ostree_parse_refspec ()">ostree_parse_refspec</a> <span class="c_punctuation">()</span>
@ -195,7 +195,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">guint</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-hash-object-name" title="ostree_hash_object_name ()">ostree_hash_object_name</a> <span class="c_punctuation">()</span>
@ -203,7 +203,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GVariant</span> *
<a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-object-name-serialize" title="ostree_object_name_serialize ()">ostree_object_name_serialize</a> <span class="c_punctuation">()</span>
@ -235,7 +235,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-content-stream-parse" title="ostree_content_stream_parse ()">ostree_content_stream_parse</a> <span class="c_punctuation">()</span>
@ -243,7 +243,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-content-file-parse" title="ostree_content_file_parse ()">ostree_content_file_parse</a> <span class="c_punctuation">()</span>
@ -251,7 +251,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-content-file-parse-at" title="ostree_content_file_parse_at ()">ostree_content_file_parse_at</a> <span class="c_punctuation">()</span>
@ -259,7 +259,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-raw-file-to-archive-z2-stream" title="ostree_raw_file_to_archive_z2_stream ()">ostree_raw_file_to_archive_z2_stream</a> <span class="c_punctuation">()</span>
@ -267,7 +267,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-raw-file-to-content-stream" title="ostree_raw_file_to_content_stream ()">ostree_raw_file_to_content_stream</a> <span class="c_punctuation">()</span>
@ -275,7 +275,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-checksum-file-from-input" title="ostree_checksum_file_from_input ()">ostree_checksum_file_from_input</a> <span class="c_punctuation">()</span>
@ -283,7 +283,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-checksum-file" title="ostree_checksum_file ()">ostree_checksum_file</a> <span class="c_punctuation">()</span>
@ -299,7 +299,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-checksum-file-async-finish" title="ostree_checksum_file_async_finish ()">ostree_checksum_file_async_finish</a> <span class="c_punctuation">()</span>
@ -307,7 +307,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GVariant</span> *
<a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-create-directory-metadata" title="ostree_create_directory_metadata ()">ostree_create_directory_metadata</a> <span class="c_punctuation">()</span>
@ -315,7 +315,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-validate-structureof-objtype" title="ostree_validate_structureof_objtype ()">ostree_validate_structureof_objtype</a> <span class="c_punctuation">()</span>
@ -323,7 +323,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-validate-structureof-csum-v" title="ostree_validate_structureof_csum_v ()">ostree_validate_structureof_csum_v</a> <span class="c_punctuation">()</span>
@ -331,7 +331,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-validate-structureof-checksum-string" title="ostree_validate_structureof_checksum_string ()">ostree_validate_structureof_checksum_string</a> <span class="c_punctuation">()</span>
@ -339,7 +339,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-validate-structureof-file-mode" title="ostree_validate_structureof_file_mode ()">ostree_validate_structureof_file_mode</a> <span class="c_punctuation">()</span>
@ -347,7 +347,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-validate-structureof-commit" title="ostree_validate_structureof_commit ()">ostree_validate_structureof_commit</a> <span class="c_punctuation">()</span>
@ -355,7 +355,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-validate-structureof-dirtree" title="ostree_validate_structureof_dirtree ()">ostree_validate_structureof_dirtree</a> <span class="c_punctuation">()</span>
@ -363,7 +363,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-validate-structureof-dirmeta" title="ostree_validate_structureof_dirmeta ()">ostree_validate_structureof_dirmeta</a> <span class="c_punctuation">()</span>
@ -371,7 +371,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gchar</span> *
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-commit-get-parent" title="ostree_commit_get_parent ()">ostree_commit_get_parent</a> <span class="c_punctuation">()</span>
@ -379,7 +379,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">guint64</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint64"><span class="returnvalue">guint64</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-commit-get-timestamp" title="ostree_commit_get_timestamp ()">ostree_commit_get_timestamp</a> <span class="c_punctuation">()</span>
@ -463,11 +463,11 @@
<a name="ostree-Core-repository-independent-functions.description"></a><h2>Description</h2>
<p>These functions implement repository-independent algorithms for
operating on the core OSTree data formats, such as converting
<span class="type">GFileInfo</span> into a <span class="type">GVariant</span>.</p>
<a href="https://developer.gnome.org/gio/unstable/GFileInfo.html#GFileInfo-struct"><span class="type">GFileInfo</span></a> into a <a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a>.</p>
<p>There are 4 types of objects; file, dirmeta, tree, and commit. The
last 3 are metadata, and the file object is the only content object
type.</p>
<p>All metadata objects are stored as <span class="type">GVariant</span> (big endian). The
<p>All metadata objects are stored as <a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> (big endian). The
rationale for this is the same as that of the ext{2,3,4} family of
filesystems; most developers will be using LE, and so it's better
to continually test the BE-&gt;LE swap.</p>
@ -496,21 +496,21 @@ to continually test the BE-&gt;LE swap.</p>
</div>
<div class="refsect3">
<a name="OSTREE-OBJECT-TYPE-IS-META.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> if object type is metadata</p>
<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if object type is metadata</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ostree-metadata-variant-type"></a><h3>ostree_metadata_variant_type ()</h3>
<pre class="programlisting">const <span class="returnvalue">GVariantType</span> *
<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-GVariantType.html#GVariantType"><span class="returnvalue">GVariantType</span></a> *
ostree_metadata_variant_type (<em class="parameter"><code><a class="link" href="ostree-Core-repository-independent-functions.html#OstreeObjectType" title="enum OstreeObjectType"><span class="type">OstreeObjectType</span></a> objtype</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="ostree-validate-checksum-string"></a><h3>ostree_validate_checksum_string ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_validate_checksum_string (<em class="parameter"><code>const <span class="type">char</span> *sha256</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Use this function to see if input strings are checksums.</p>
<div class="refsect3">
<a name="ostree-validate-checksum-string.parameters"></a><h4>Parameters</h4>
@ -536,14 +536,14 @@ ostree_validate_checksum_string (<em class="parameter"><code>const <span class="
</div>
<div class="refsect3">
<a name="ostree-validate-checksum-string.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> if <em class="parameter"><code>sha256</code></em>
is a valid checksum string, <code class="literal">FALSE</code> otherwise</p>
<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>sha256</code></em>
is a valid checksum string, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ostree-checksum-to-bytes"></a><h3>ostree_checksum_to_bytes ()</h3>
<pre class="programlisting"><span class="returnvalue">guchar</span> *
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guchar"><span class="returnvalue">guchar</span></a> *
ostree_checksum_to_bytes (<em class="parameter"><code>const <span class="type">char</span> *checksum</code></em>);</pre>
<div class="refsect3">
<a name="ostree-checksum-to-bytes.parameters"></a><h4>Parameters</h4>
@ -563,14 +563,14 @@ ostree_checksum_to_bytes (<em class="parameter"><code>const <span class="type">c
<div class="refsect3">
<a name="ostree-checksum-to-bytes.returns"></a><h4>Returns</h4>
<p> Binary checksum from <em class="parameter"><code>checksum</code></em>
of length 32; free with <code class="function">g_free()</code>. </p>
of length 32; free with <a href="https://developer.gnome.org/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>. </p>
<p><span class="annotation">[<a href="http://foldoc.org/transfer%20full"><span class="acronym">transfer full</span></a>][<a href="http://foldoc.org/array"><span class="acronym">array</span></a> fixed-size=32]</span></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ostree-checksum-to-bytes-v"></a><h3>ostree_checksum_to_bytes_v ()</h3>
<pre class="programlisting"><span class="returnvalue">GVariant</span> *
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
ostree_checksum_to_bytes_v (<em class="parameter"><code>const <span class="type">char</span> *checksum</code></em>);</pre>
<div class="refsect3">
<a name="ostree-checksum-to-bytes-v.parameters"></a><h4>Parameters</h4>
@ -589,7 +589,7 @@ ostree_checksum_to_bytes_v (<em class="parameter"><code>const <span class="type"
</div>
<div class="refsect3">
<a name="ostree-checksum-to-bytes-v.returns"></a><h4>Returns</h4>
<p> New <span class="type">GVariant</span> of type ay with length 32. </p>
<p> New <a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> of type ay with length 32. </p>
<p><span class="annotation">[<a href="http://foldoc.org/transfer%20full"><span class="acronym">transfer full</span></a>]</span></p>
</div>
</div>
@ -597,7 +597,7 @@ ostree_checksum_to_bytes_v (<em class="parameter"><code>const <span class="type"
<div class="refsect2">
<a name="ostree-checksum-from-bytes"></a><h3>ostree_checksum_from_bytes ()</h3>
<pre class="programlisting"><span class="returnvalue">char</span> *
ostree_checksum_from_bytes (<em class="parameter"><code>const <span class="type">guchar</span> *csum</code></em>);</pre>
ostree_checksum_from_bytes (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guchar"><span class="type">guchar</span></a> *csum</code></em>);</pre>
<div class="refsect3">
<a name="ostree-checksum-from-bytes.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -624,7 +624,7 @@ ostree_checksum_from_bytes (<em class="parameter"><code>const <span class="type"
<div class="refsect2">
<a name="ostree-checksum-from-bytes-v"></a><h3>ostree_checksum_from_bytes_v ()</h3>
<pre class="programlisting"><span class="returnvalue">char</span> *
ostree_checksum_from_bytes_v (<em class="parameter"><code><span class="type">GVariant</span> *csum_v</code></em>);</pre>
ostree_checksum_from_bytes_v (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *csum_v</code></em>);</pre>
<div class="refsect3">
<a name="ostree-checksum-from-bytes-v.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -635,7 +635,7 @@ ostree_checksum_from_bytes_v (<em class="parameter"><code><span class="type">GVa
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>csum_v</p></td>
<td class="parameter_description"><p><span class="type">GVariant</span> of type ay</p></td>
<td class="parameter_description"><p><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> of type ay</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
@ -651,7 +651,7 @@ ostree_checksum_from_bytes_v (<em class="parameter"><code><span class="type">GVa
<div class="refsect2">
<a name="ostree-checksum-inplace-from-bytes"></a><h3>ostree_checksum_inplace_from_bytes ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
ostree_checksum_inplace_from_bytes (<em class="parameter"><code>const <span class="type">guchar</span> *csum</code></em>,
ostree_checksum_inplace_from_bytes (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guchar"><span class="type">guchar</span></a> *csum</code></em>,
<em class="parameter"><code><span class="type">char</span> *buf</code></em>);</pre>
<p>Overwrite the contents of <em class="parameter"><code>buf</code></em>
with stringified version of <em class="parameter"><code>csum</code></em>
@ -685,7 +685,7 @@ ostree_checksum_inplace_from_bytes (<em class="parameter"><code>const <span clas
<a name="ostree-checksum-inplace-to-bytes"></a><h3>ostree_checksum_inplace_to_bytes ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
ostree_checksum_inplace_to_bytes (<em class="parameter"><code>const <span class="type">char</span> *checksum</code></em>,
<em class="parameter"><code><span class="type">guchar</span> *buf</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guchar"><span class="type">guchar</span></a> *buf</code></em>);</pre>
<p>Convert <em class="parameter"><code>checksum</code></em>
from a string to binary in-place, without
allocating memory. Use this function in hot code paths.</p>
@ -715,8 +715,8 @@ allocating memory. Use this function in hot code paths.</p>
<hr>
<div class="refsect2">
<a name="ostree-checksum-bytes-peek"></a><h3>ostree_checksum_bytes_peek ()</h3>
<pre class="programlisting">const <span class="returnvalue">guchar</span> *
ostree_checksum_bytes_peek (<em class="parameter"><code><span class="type">GVariant</span> *bytes</code></em>);</pre>
<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guchar"><span class="returnvalue">guchar</span></a> *
ostree_checksum_bytes_peek (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *bytes</code></em>);</pre>
<div class="refsect3">
<a name="ostree-checksum-bytes-peek.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -727,7 +727,7 @@ ostree_checksum_bytes_peek (<em class="parameter"><code><span class="type">GVari
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>bytes</p></td>
<td class="parameter_description"><p><span class="type">GVariant</span> of type ay</p></td>
<td class="parameter_description"><p><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> of type ay</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
@ -736,16 +736,16 @@ ostree_checksum_bytes_peek (<em class="parameter"><code><span class="type">GVari
<a name="ostree-checksum-bytes-peek.returns"></a><h4>Returns</h4>
<p> Binary checksum data in <em class="parameter"><code>bytes</code></em>
; do not free. If <em class="parameter"><code>bytes</code></em>
does not have the correct length, return <code class="literal">NULL</code>. </p>
does not have the correct length, return <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p>
<p><span class="annotation">[<a href="http://foldoc.org/transfer%20none"><span class="acronym">transfer none</span></a>][<a href="http://foldoc.org/array"><span class="acronym">array</span></a> fixed-size=32][<a href="http://foldoc.org/element-type"><span class="acronym">element-type</span></a> guint8]</span></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ostree-checksum-bytes-peek-validate"></a><h3>ostree_checksum_bytes_peek_validate ()</h3>
<pre class="programlisting">const <span class="returnvalue">guchar</span> *
ostree_checksum_bytes_peek_validate (<em class="parameter"><code><span class="type">GVariant</span> *bytes</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<pre class="programlisting">const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guchar"><span class="returnvalue">guchar</span></a> *
ostree_checksum_bytes_peek_validate (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *bytes</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Like <a class="link" href="ostree-Core-repository-independent-functions.html#ostree-checksum-bytes-peek" title="ostree_checksum_bytes_peek ()"><code class="function">ostree_checksum_bytes_peek()</code></a>, but also throws <em class="parameter"><code>error</code></em>
.</p>
<div class="refsect3">
@ -759,7 +759,7 @@ ostree_checksum_bytes_peek_validate (<em class="parameter"><code><span class="ty
<tbody>
<tr>
<td class="parameter_name"><p>bytes</p></td>
<td class="parameter_description"><p><span class="type">GVariant</span> of type ay</p></td>
<td class="parameter_description"><p><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> of type ay</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
@ -780,7 +780,7 @@ ostree_checksum_bytes_peek_validate (<em class="parameter"><code><span class="ty
<div class="refsect2">
<a name="ostree-checksum-b64-from-bytes"></a><h3>ostree_checksum_b64_from_bytes ()</h3>
<pre class="programlisting"><span class="returnvalue">char</span> *
ostree_checksum_b64_from_bytes (<em class="parameter"><code>const <span class="type">guchar</span> *csum</code></em>);</pre>
ostree_checksum_b64_from_bytes (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guchar"><span class="type">guchar</span></a> *csum</code></em>);</pre>
<div class="refsect3">
<a name="ostree-checksum-b64-from-bytes.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -808,7 +808,7 @@ character is used. </p>
<hr>
<div class="refsect2">
<a name="ostree-checksum-b64-to-bytes"></a><h3>ostree_checksum_b64_to_bytes ()</h3>
<pre class="programlisting"><span class="returnvalue">guchar</span> *
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guchar"><span class="returnvalue">guchar</span></a> *
ostree_checksum_b64_to_bytes (<em class="parameter"><code>const <span class="type">char</span> *checksum</code></em>);</pre>
<div class="refsect3">
<a name="ostree-checksum-b64-to-bytes.parameters"></a><h4>Parameters</h4>
@ -837,7 +837,7 @@ ostree_checksum_b64_to_bytes (<em class="parameter"><code>const <span class="typ
<a name="ostree-checksum-b64-inplace-from-bytes"></a><h3>ostree_checksum_b64_inplace_from_bytes ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
ostree_checksum_b64_inplace_from_bytes
(<em class="parameter"><code>const <span class="type">guchar</span> *csum</code></em>,
(<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guchar"><span class="type">guchar</span></a> *csum</code></em>,
<em class="parameter"><code><span class="type">char</span> *buf</code></em>);</pre>
<p>Overwrite the contents of <em class="parameter"><code>buf</code></em>
with modified base64 encoding of <em class="parameter"><code>csum</code></em>
@ -873,7 +873,7 @@ character is used.</p>
<a name="ostree-checksum-b64-inplace-to-bytes"></a><h3>ostree_checksum_b64_inplace_to_bytes ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
ostree_checksum_b64_inplace_to_bytes (<em class="parameter"><code>const <span class="type">char</span> *checksum</code></em>,
<em class="parameter"><code><span class="type">guint8</span> *buf</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint8"><span class="type">guint8</span></a> *buf</code></em>);</pre>
<p>Overwrite the contents of <em class="parameter"><code>buf</code></em>
with stringified version of <em class="parameter"><code>csum</code></em>
.</p>
@ -905,8 +905,8 @@ ostree_checksum_b64_inplace_to_bytes (<em class="parameter"><code>const <span cl
<div class="refsect2">
<a name="ostree-cmp-checksum-bytes"></a><h3>ostree_cmp_checksum_bytes ()</h3>
<pre class="programlisting"><span class="returnvalue">int</span>
ostree_cmp_checksum_bytes (<em class="parameter"><code>const <span class="type">guchar</span> *a</code></em>,
<em class="parameter"><code>const <span class="type">guchar</span> *b</code></em>);</pre>
ostree_cmp_checksum_bytes (<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guchar"><span class="type">guchar</span></a> *a</code></em>,
<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guchar"><span class="type">guchar</span></a> *b</code></em>);</pre>
<p>Compare two binary checksums, using <code class="function">memcmp()</code>.</p>
<div class="refsect3">
<a name="ostree-cmp-checksum-bytes.parameters"></a><h4>Parameters</h4>
@ -934,9 +934,9 @@ ostree_cmp_checksum_bytes (<em class="parameter"><code>const <span class="type">
<hr>
<div class="refsect2">
<a name="ostree-validate-rev"></a><h3>ostree_validate_rev ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_validate_rev (<em class="parameter"><code>const <span class="type">char</span> *rev</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<div class="refsect3">
<a name="ostree-validate-rev.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -961,18 +961,18 @@ ostree_validate_rev (<em class="parameter"><code>const <span class="type">char</
</div>
<div class="refsect3">
<a name="ostree-validate-rev.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> if <em class="parameter"><code>rev</code></em>
<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>rev</code></em>
is a valid ref string</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ostree-parse-refspec"></a><h3>ostree_parse_refspec ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_parse_refspec (<em class="parameter"><code>const <span class="type">char</span> *refspec</code></em>,
<em class="parameter"><code><span class="type">char</span> **out_remote</code></em>,
<em class="parameter"><code><span class="type">char</span> **out_ref</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Split a refspec like "gnome-ostree:gnome-ostree/buildmaster" into
two parts; <em class="parameter"><code>out_remote</code></em>
will be set to "gnome-ostree", and <em class="parameter"><code>out_ref</code></em>
@ -980,7 +980,7 @@ two parts; <em class="parameter"><code>out_remote</code></em>
will be "gnome-ostree/buildmaster".</p>
<p>If <em class="parameter"><code>refspec</code></em>
refers to a local ref, <em class="parameter"><code>out_remote</code></em>
will be <code class="literal">NULL</code>.</p>
will be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
<div class="refsect3">
<a name="ostree-parse-refspec.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -997,7 +997,7 @@ will be "gnome-ostree/buildmaster".</p>
</tr>
<tr>
<td class="parameter_name"><p>out_remote</p></td>
<td class="parameter_description"><p> The remote name, or <code class="literal">NULL</code> if the refspec refs to a local ref. </p></td>
<td class="parameter_description"><p> The remote name, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the refspec refs to a local ref. </p></td>
<td class="parameter_annotations"><span class="annotation">[<a href="http://foldoc.org/out"><span class="acronym">out</span></a>][<a href="http://foldoc.org/allow-none"><span class="acronym">allow-none</span></a>]</span></td>
</tr>
<tr>
@ -1062,9 +1062,9 @@ ostree_object_type_from_string (<em class="parameter"><code>const <span class="t
<hr>
<div class="refsect2">
<a name="ostree-hash-object-name"></a><h3>ostree_hash_object_name ()</h3>
<pre class="programlisting"><span class="returnvalue">guint</span>
ostree_hash_object_name (<em class="parameter"><code><span class="type">gconstpointer</span> a</code></em>);</pre>
<p>Use this function with <span class="type">GHashTable</span> and <a class="link" href="ostree-Core-repository-independent-functions.html#ostree-object-name-serialize" title="ostree_object_name_serialize ()"><code class="function">ostree_object_name_serialize()</code></a>.</p>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
ostree_hash_object_name (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> a</code></em>);</pre>
<p>Use this function with <a href="https://developer.gnome.org/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> and <a class="link" href="ostree-Core-repository-independent-functions.html#ostree-object-name-serialize" title="ostree_object_name_serialize ()"><code class="function">ostree_object_name_serialize()</code></a>.</p>
<div class="refsect3">
<a name="ostree-hash-object-name.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -1075,7 +1075,7 @@ ostree_hash_object_name (<em class="parameter"><code><span class="type">gconstpo
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>a</p></td>
<td class="parameter_description"><p>A <span class="type">GVariant</span> containing a serialized object</p></td>
<td class="parameter_description"><p>A <a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> containing a serialized object</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
@ -1084,7 +1084,7 @@ ostree_hash_object_name (<em class="parameter"><code><span class="type">gconstpo
<hr>
<div class="refsect2">
<a name="ostree-object-name-serialize"></a><h3>ostree_object_name_serialize ()</h3>
<pre class="programlisting"><span class="returnvalue">GVariant</span> *
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
ostree_object_name_serialize (<em class="parameter"><code>const <span class="type">char</span> *checksum</code></em>,
<em class="parameter"><code><a class="link" href="ostree-Core-repository-independent-functions.html#OstreeObjectType" title="enum OstreeObjectType"><span class="type">OstreeObjectType</span></a> objtype</code></em>);</pre>
<div class="refsect3">
@ -1111,7 +1111,7 @@ ostree_object_name_serialize (<em class="parameter"><code>const <span class="typ
</div>
<div class="refsect3">
<a name="ostree-object-name-serialize.returns"></a><h4>Returns</h4>
<p> A new floating <span class="type">GVariant</span> containing checksum string and objtype. </p>
<p> A new floating <a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> containing checksum string and objtype. </p>
<p><span class="annotation">[<a href="http://foldoc.org/transfer%20floating"><span class="acronym">transfer floating</span></a>]</span></p>
</div>
</div>
@ -1119,7 +1119,7 @@ ostree_object_name_serialize (<em class="parameter"><code>const <span class="typ
<div class="refsect2">
<a name="ostree-object-name-deserialize"></a><h3>ostree_object_name_deserialize ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
ostree_object_name_deserialize (<em class="parameter"><code><span class="type">GVariant</span> *variant</code></em>,
ostree_object_name_deserialize (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *variant</code></em>,
<em class="parameter"><code>const <span class="type">char</span> **out_checksum</code></em>,
<em class="parameter"><code><a class="link" href="ostree-Core-repository-independent-functions.html#OstreeObjectType" title="enum OstreeObjectType"><span class="type">OstreeObjectType</span></a> *out_objtype</code></em>);</pre>
<p>Reverse <a class="link" href="ostree-Core-repository-independent-functions.html#ostree-object-name-serialize" title="ostree_object_name_serialize ()"><code class="function">ostree_object_name_serialize()</code></a>. Note that <em class="parameter"><code>out_checksum</code></em>
@ -1137,7 +1137,7 @@ only valid for the lifetime of <em class="parameter"><code>variant</code></em>
<tbody>
<tr>
<td class="parameter_name"><p>variant</p></td>
<td class="parameter_description"><p>A <span class="type">GVariant</span> of type (su)</p></td>
<td class="parameter_description"><p>A <a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> of type (su)</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
@ -1195,7 +1195,7 @@ and a stringifed version of <em class="parameter"><code>objtype</code></em>
<a name="ostree-object-from-string"></a><h3>ostree_object_from_string ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
ostree_object_from_string (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>,
<em class="parameter"><code><span class="type">gchar</span> **out_checksum</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **out_checksum</code></em>,
<em class="parameter"><code><a class="link" href="ostree-Core-repository-independent-functions.html#OstreeObjectType" title="enum OstreeObjectType"><span class="type">OstreeObjectType</span></a> *out_objtype</code></em>);</pre>
<p>Reverse <a class="link" href="ostree-Core-repository-independent-functions.html#ostree-object-to-string" title="ostree_object_to_string ()"><code class="function">ostree_object_to_string()</code></a>.</p>
<div class="refsect3">
@ -1229,16 +1229,16 @@ ostree_object_from_string (<em class="parameter"><code>const <span class="type">
<hr>
<div class="refsect2">
<a name="ostree-content-stream-parse"></a><h3>ostree_content_stream_parse ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
ostree_content_stream_parse (<em class="parameter"><code><span class="type">gboolean</span> compressed</code></em>,
<em class="parameter"><code><span class="type">GInputStream</span> *input</code></em>,
<em class="parameter"><code><span class="type">guint64</span> input_length</code></em>,
<em class="parameter"><code><span class="type">gboolean</span> trusted</code></em>,
<em class="parameter"><code><span class="type">GInputStream</span> **out_input</code></em>,
<em class="parameter"><code><span class="type">GFileInfo</span> **out_file_info</code></em>,
<em class="parameter"><code><span class="type">GVariant</span> **out_xattrs</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_content_stream_parse (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> compressed</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GInputStream.html#GInputStream-struct"><span class="type">GInputStream</span></a> *input</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> input_length</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> trusted</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GInputStream.html#GInputStream-struct"><span class="type">GInputStream</span></a> **out_input</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFileInfo.html#GFileInfo-struct"><span class="type">GFileInfo</span></a> **out_file_info</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> **out_xattrs</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>The reverse of <a class="link" href="ostree-Core-repository-independent-functions.html#ostree-raw-file-to-content-stream" title="ostree_raw_file_to_content_stream ()"><code class="function">ostree_raw_file_to_content_stream()</code></a>; this function
converts an object content stream back into components.</p>
<div class="refsect3">
@ -1267,7 +1267,7 @@ converts an object content stream back into components.</p>
</tr>
<tr>
<td class="parameter_name"><p>trusted</p></td>
<td class="parameter_description"><p>If <code class="literal">TRUE</code>, assume the content has been validated</p></td>
<td class="parameter_description"><p>If <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, assume the content has been validated</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
@ -1302,15 +1302,15 @@ converts an object content stream back into components.</p>
<hr>
<div class="refsect2">
<a name="ostree-content-file-parse"></a><h3>ostree_content_file_parse ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
ostree_content_file_parse (<em class="parameter"><code><span class="type">gboolean</span> compressed</code></em>,
<em class="parameter"><code><span class="type">GFile</span> *content_path</code></em>,
<em class="parameter"><code><span class="type">gboolean</span> trusted</code></em>,
<em class="parameter"><code><span class="type">GInputStream</span> **out_input</code></em>,
<em class="parameter"><code><span class="type">GFileInfo</span> **out_file_info</code></em>,
<em class="parameter"><code><span class="type">GVariant</span> **out_xattrs</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_content_file_parse (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> compressed</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="type">GFile</span></a> *content_path</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> trusted</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GInputStream.html#GInputStream-struct"><span class="type">GInputStream</span></a> **out_input</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFileInfo.html#GFileInfo-struct"><span class="type">GFileInfo</span></a> **out_file_info</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> **out_xattrs</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>A thin wrapper for <a class="link" href="ostree-Core-repository-independent-functions.html#ostree-content-stream-parse" title="ostree_content_stream_parse ()"><code class="function">ostree_content_stream_parse()</code></a>; this function
converts an object content stream back into components.</p>
<div class="refsect3">
@ -1334,7 +1334,7 @@ converts an object content stream back into components.</p>
</tr>
<tr>
<td class="parameter_name"><p>trusted</p></td>
<td class="parameter_description"><p>If <code class="literal">TRUE</code>, assume the content has been validated</p></td>
<td class="parameter_description"><p>If <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, assume the content has been validated</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
@ -1369,16 +1369,16 @@ converts an object content stream back into components.</p>
<hr>
<div class="refsect2">
<a name="ostree-content-file-parse-at"></a><h3>ostree_content_file_parse_at ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
ostree_content_file_parse_at (<em class="parameter"><code><span class="type">gboolean</span> compressed</code></em>,
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_content_file_parse_at (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> compressed</code></em>,
<em class="parameter"><code><span class="type">int</span> parent_dfd</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *path</code></em>,
<em class="parameter"><code><span class="type">gboolean</span> trusted</code></em>,
<em class="parameter"><code><span class="type">GInputStream</span> **out_input</code></em>,
<em class="parameter"><code><span class="type">GFileInfo</span> **out_file_info</code></em>,
<em class="parameter"><code><span class="type">GVariant</span> **out_xattrs</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> trusted</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GInputStream.html#GInputStream-struct"><span class="type">GInputStream</span></a> **out_input</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFileInfo.html#GFileInfo-struct"><span class="type">GFileInfo</span></a> **out_file_info</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> **out_xattrs</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>A thin wrapper for <a class="link" href="ostree-Core-repository-independent-functions.html#ostree-content-stream-parse" title="ostree_content_stream_parse ()"><code class="function">ostree_content_stream_parse()</code></a>; this function
converts an object content stream back into components.</p>
<div class="refsect3">
@ -1407,7 +1407,7 @@ converts an object content stream back into components.</p>
</tr>
<tr>
<td class="parameter_name"><p>trusted</p></td>
<td class="parameter_description"><p>If <code class="literal">TRUE</code>, assume the content has been validated</p></td>
<td class="parameter_description"><p>If <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, assume the content has been validated</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
@ -1442,13 +1442,13 @@ converts an object content stream back into components.</p>
<hr>
<div class="refsect2">
<a name="ostree-raw-file-to-archive-z2-stream"></a><h3>ostree_raw_file_to_archive_z2_stream ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
ostree_raw_file_to_archive_z2_stream (<em class="parameter"><code><span class="type">GInputStream</span> *input</code></em>,
<em class="parameter"><code><span class="type">GFileInfo</span> *file_info</code></em>,
<em class="parameter"><code><span class="type">GVariant</span> *xattrs</code></em>,
<em class="parameter"><code><span class="type">GInputStream</span> **out_input</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_raw_file_to_archive_z2_stream (<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GInputStream.html#GInputStream-struct"><span class="type">GInputStream</span></a> *input</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFileInfo.html#GFileInfo-struct"><span class="type">GFileInfo</span></a> *file_info</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *xattrs</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GInputStream.html#GInputStream-struct"><span class="type">GInputStream</span></a> **out_input</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Convert from a "bare" file representation into an
OSTREE_OBJECT_TYPE_FILE stream suitable for ostree pull.</p>
<div class="refsect3">
@ -1497,14 +1497,14 @@ OSTREE_OBJECT_TYPE_FILE stream suitable for ostree pull.</p>
<hr>
<div class="refsect2">
<a name="ostree-raw-file-to-content-stream"></a><h3>ostree_raw_file_to_content_stream ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
ostree_raw_file_to_content_stream (<em class="parameter"><code><span class="type">GInputStream</span> *input</code></em>,
<em class="parameter"><code><span class="type">GFileInfo</span> *file_info</code></em>,
<em class="parameter"><code><span class="type">GVariant</span> *xattrs</code></em>,
<em class="parameter"><code><span class="type">GInputStream</span> **out_input</code></em>,
<em class="parameter"><code><span class="type">guint64</span> *out_length</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_raw_file_to_content_stream (<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GInputStream.html#GInputStream-struct"><span class="type">GInputStream</span></a> *input</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFileInfo.html#GFileInfo-struct"><span class="type">GFileInfo</span></a> *file_info</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *xattrs</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GInputStream.html#GInputStream-struct"><span class="type">GInputStream</span></a> **out_input</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> *out_length</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Convert from a "bare" file representation into an
OSTREE_OBJECT_TYPE_FILE stream. This is a fundamental operation
for writing data to an <a class="link" href="ostree-Content-addressed-object-store.html#OstreeRepo" title="OstreeRepo"><span class="type">OstreeRepo</span></a>.</p>
@ -1559,14 +1559,14 @@ for writing data to an <a class="link" href="ostree-Content-addressed-object-sto
<hr>
<div class="refsect2">
<a name="ostree-checksum-file-from-input"></a><h3>ostree_checksum_file_from_input ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
ostree_checksum_file_from_input (<em class="parameter"><code><span class="type">GFileInfo</span> *file_info</code></em>,
<em class="parameter"><code><span class="type">GVariant</span> *xattrs</code></em>,
<em class="parameter"><code><span class="type">GInputStream</span> *in</code></em>,
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_checksum_file_from_input (<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFileInfo.html#GFileInfo-struct"><span class="type">GFileInfo</span></a> *file_info</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *xattrs</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GInputStream.html#GInputStream-struct"><span class="type">GInputStream</span></a> *in</code></em>,
<em class="parameter"><code><a class="link" href="ostree-Core-repository-independent-functions.html#OstreeObjectType" title="enum OstreeObjectType"><span class="type">OstreeObjectType</span></a> objtype</code></em>,
<em class="parameter"><code><span class="type">guchar</span> **out_csum</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guchar"><span class="type">guchar</span></a> **out_csum</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Compute the OSTree checksum for a given input.</p>
<div class="refsect3">
<a name="ostree-checksum-file-from-input.parameters"></a><h4>Parameters</h4>
@ -1589,7 +1589,7 @@ ostree_checksum_file_from_input (<em class="parameter"><code><span class="type">
</tr>
<tr>
<td class="parameter_name"><p>in</p></td>
<td class="parameter_description"><p> File content, should be <code class="literal">NULL</code> for symbolic links. </p></td>
<td class="parameter_description"><p> File content, should be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for symbolic links. </p></td>
<td class="parameter_annotations"><span class="annotation">[<a href="http://foldoc.org/allow-none"><span class="acronym">allow-none</span></a>]</span></td>
</tr>
<tr>
@ -1619,12 +1619,12 @@ ostree_checksum_file_from_input (<em class="parameter"><code><span class="type">
<hr>
<div class="refsect2">
<a name="ostree-checksum-file"></a><h3>ostree_checksum_file ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
ostree_checksum_file (<em class="parameter"><code><span class="type">GFile</span> *f</code></em>,
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_checksum_file (<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="type">GFile</span></a> *f</code></em>,
<em class="parameter"><code><a class="link" href="ostree-Core-repository-independent-functions.html#OstreeObjectType" title="enum OstreeObjectType"><span class="type">OstreeObjectType</span></a> objtype</code></em>,
<em class="parameter"><code><span class="type">guchar</span> **out_csum</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guchar"><span class="type">guchar</span></a> **out_csum</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Compute the OSTree checksum for a given file.</p>
<div class="refsect3">
<a name="ostree-checksum-file.parameters"></a><h4>Parameters</h4>
@ -1668,12 +1668,12 @@ ostree_checksum_file (<em class="parameter"><code><span class="type">GFile</span
<div class="refsect2">
<a name="ostree-checksum-file-async"></a><h3>ostree_checksum_file_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
ostree_checksum_file_async (<em class="parameter"><code><span class="type">GFile</span> *f</code></em>,
ostree_checksum_file_async (<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="type">GFile</span></a> *f</code></em>,
<em class="parameter"><code><a class="link" href="ostree-Core-repository-independent-functions.html#OstreeObjectType" title="enum OstreeObjectType"><span class="type">OstreeObjectType</span></a> objtype</code></em>,
<em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GAsyncReadyCallback</span> callback</code></em>,
<em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GAsyncResult.html#GAsyncReadyCallback"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>Asynchronously compute the OSTree checksum for a given file;
complete with <a class="link" href="ostree-Core-repository-independent-functions.html#ostree-checksum-file-async-finish" title="ostree_checksum_file_async_finish ()"><code class="function">ostree_checksum_file_async_finish()</code></a>.</p>
<div class="refsect3">
@ -1723,11 +1723,11 @@ complete with <a class="link" href="ostree-Core-repository-independent-functions
<hr>
<div class="refsect2">
<a name="ostree-checksum-file-async-finish"></a><h3>ostree_checksum_file_async_finish ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
ostree_checksum_file_async_finish (<em class="parameter"><code><span class="type">GFile</span> *f</code></em>,
<em class="parameter"><code><span class="type">GAsyncResult</span> *result</code></em>,
<em class="parameter"><code><span class="type">guchar</span> **out_csum</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_checksum_file_async_finish (<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="type">GFile</span></a> *f</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GAsyncResult.html#GAsyncResult-struct"><span class="type">GAsyncResult</span></a> *result</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guchar"><span class="type">guchar</span></a> **out_csum</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Finish computing the OSTree checksum for a given file; see
<a class="link" href="ostree-Core-repository-independent-functions.html#ostree-checksum-file-async" title="ostree_checksum_file_async ()"><code class="function">ostree_checksum_file_async()</code></a>.</p>
<div class="refsect3">
@ -1766,9 +1766,9 @@ ostree_checksum_file_async_finish (<em class="parameter"><code><span class="type
<hr>
<div class="refsect2">
<a name="ostree-create-directory-metadata"></a><h3>ostree_create_directory_metadata ()</h3>
<pre class="programlisting"><span class="returnvalue">GVariant</span> *
ostree_create_directory_metadata (<em class="parameter"><code><span class="type">GFileInfo</span> *dir_info</code></em>,
<em class="parameter"><code><span class="type">GVariant</span> *xattrs</code></em>);</pre>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
ostree_create_directory_metadata (<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFileInfo.html#GFileInfo-struct"><span class="type">GFileInfo</span></a> *dir_info</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *xattrs</code></em>);</pre>
<div class="refsect3">
<a name="ostree-create-directory-metadata.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -1780,7 +1780,7 @@ ostree_create_directory_metadata (<em class="parameter"><code><span class="type"
<tbody>
<tr>
<td class="parameter_name"><p>dir_info</p></td>
<td class="parameter_description"><p>a <span class="type">GFileInfo</span> containing directory information</p></td>
<td class="parameter_description"><p>a <a href="https://developer.gnome.org/gio/unstable/GFileInfo.html#GFileInfo-struct"><span class="type">GFileInfo</span></a> containing directory information</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
@ -1793,16 +1793,16 @@ ostree_create_directory_metadata (<em class="parameter"><code><span class="type"
</div>
<div class="refsect3">
<a name="ostree-create-directory-metadata.returns"></a><h4>Returns</h4>
<p> A new <span class="type">GVariant</span> containing <a class="link" href="ostree-Core-repository-independent-functions.html#OSTREE-OBJECT-TYPE-DIR-META:CAPS"><code class="literal">OSTREE_OBJECT_TYPE_DIR_META</code></a>. </p>
<p> A new <a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> containing <a class="link" href="ostree-Core-repository-independent-functions.html#OSTREE-OBJECT-TYPE-DIR-META:CAPS"><code class="literal">OSTREE_OBJECT_TYPE_DIR_META</code></a>. </p>
<p><span class="annotation">[<a href="http://foldoc.org/transfer%20full"><span class="acronym">transfer full</span></a>]</span></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ostree-validate-structureof-objtype"></a><h3>ostree_validate_structureof_objtype ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
ostree_validate_structureof_objtype (<em class="parameter"><code><span class="type">guchar</span> objtype</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_validate_structureof_objtype (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guchar"><span class="type">guchar</span></a> objtype</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<div class="refsect3">
<a name="ostree-validate-structureof-objtype.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -1820,16 +1820,16 @@ ostree_validate_structureof_objtype (<em class="parameter"><code><span class="ty
</div>
<div class="refsect3">
<a name="ostree-validate-structureof-objtype.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> if <em class="parameter"><code>objtype</code></em>
<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>objtype</code></em>
represents a valid object type</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ostree-validate-structureof-csum-v"></a><h3>ostree_validate_structureof_csum_v ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
ostree_validate_structureof_csum_v (<em class="parameter"><code><span class="type">GVariant</span> *checksum</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_validate_structureof_csum_v (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *checksum</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<div class="refsect3">
<a name="ostree-validate-structureof-csum-v.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -1841,7 +1841,7 @@ ostree_validate_structureof_csum_v (<em class="parameter"><code><span class="typ
<tbody>
<tr>
<td class="parameter_name"><p>checksum</p></td>
<td class="parameter_description"><p>a <span class="type">GVariant</span> of type "ay"</p></td>
<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> of type "ay"</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
@ -1854,17 +1854,17 @@ ostree_validate_structureof_csum_v (<em class="parameter"><code><span class="typ
</div>
<div class="refsect3">
<a name="ostree-validate-structureof-csum-v.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> if <em class="parameter"><code>checksum</code></em>
<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>checksum</code></em>
is a valid binary SHA256 checksum</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ostree-validate-structureof-checksum-string"></a><h3>ostree_validate_structureof_checksum_string ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_validate_structureof_checksum_string
(<em class="parameter"><code>const <span class="type">char</span> *checksum</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<div class="refsect3">
<a name="ostree-validate-structureof-checksum-string.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -1889,16 +1889,16 @@ ostree_validate_structureof_checksum_string
</div>
<div class="refsect3">
<a name="ostree-validate-structureof-checksum-string.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> if <em class="parameter"><code>checksum</code></em>
<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>checksum</code></em>
is a valid ASCII SHA256 checksum</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ostree-validate-structureof-file-mode"></a><h3>ostree_validate_structureof_file_mode ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
ostree_validate_structureof_file_mode (<em class="parameter"><code><span class="type">guint32</span> mode</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_validate_structureof_file_mode (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> mode</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<div class="refsect3">
<a name="ostree-validate-structureof-file-mode.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -1923,16 +1923,16 @@ ostree_validate_structureof_file_mode (<em class="parameter"><code><span class="
</div>
<div class="refsect3">
<a name="ostree-validate-structureof-file-mode.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> if <em class="parameter"><code>mode</code></em>
<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>mode</code></em>
represents a valid file type and permissions</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ostree-validate-structureof-commit"></a><h3>ostree_validate_structureof_commit ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
ostree_validate_structureof_commit (<em class="parameter"><code><span class="type">GVariant</span> *commit</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_validate_structureof_commit (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *commit</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Use this to validate the basic structure of <em class="parameter"><code>commit</code></em>
, independent of
any other objects it references.</p>
@ -1960,16 +1960,16 @@ any other objects it references.</p>
</div>
<div class="refsect3">
<a name="ostree-validate-structureof-commit.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> if <em class="parameter"><code>commit</code></em>
<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>commit</code></em>
is structurally valid</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ostree-validate-structureof-dirtree"></a><h3>ostree_validate_structureof_dirtree ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
ostree_validate_structureof_dirtree (<em class="parameter"><code><span class="type">GVariant</span> *dirtree</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_validate_structureof_dirtree (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *dirtree</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Use this to validate the basic structure of <em class="parameter"><code>dirtree</code></em>
, independent of
any other objects it references.</p>
@ -1997,16 +1997,16 @@ any other objects it references.</p>
</div>
<div class="refsect3">
<a name="ostree-validate-structureof-dirtree.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> if <em class="parameter"><code>dirtree</code></em>
<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>dirtree</code></em>
is structurally valid</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ostree-validate-structureof-dirmeta"></a><h3>ostree_validate_structureof_dirmeta ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
ostree_validate_structureof_dirmeta (<em class="parameter"><code><span class="type">GVariant</span> *dirmeta</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_validate_structureof_dirmeta (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *dirmeta</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Use this to validate the basic structure of <em class="parameter"><code>dirmeta</code></em>
.</p>
<div class="refsect3">
@ -2033,15 +2033,15 @@ ostree_validate_structureof_dirmeta (<em class="parameter"><code><span class="ty
</div>
<div class="refsect3">
<a name="ostree-validate-structureof-dirmeta.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> if <em class="parameter"><code>dirmeta</code></em>
<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>dirmeta</code></em>
is structurally valid</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ostree-commit-get-parent"></a><h3>ostree_commit_get_parent ()</h3>
<pre class="programlisting"><span class="returnvalue">gchar</span> *
ostree_commit_get_parent (<em class="parameter"><code><span class="type">GVariant</span> *commit_variant</code></em>);</pre>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
ostree_commit_get_parent (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *commit_variant</code></em>);</pre>
<div class="refsect3">
<a name="ostree-commit-get-parent.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -2060,15 +2060,15 @@ ostree_commit_get_parent (<em class="parameter"><code><span class="type">GVarian
<div class="refsect3">
<a name="ostree-commit-get-parent.returns"></a><h4>Returns</h4>
<p> Checksum of the parent commit of <em class="parameter"><code>commit_variant</code></em>
, or <code class="literal">NULL</code>
, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
if none</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ostree-commit-get-timestamp"></a><h3>ostree_commit_get_timestamp ()</h3>
<pre class="programlisting"><span class="returnvalue">guint64</span>
ostree_commit_get_timestamp (<em class="parameter"><code><span class="type">GVariant</span> *commit_variant</code></em>);</pre>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint64"><span class="returnvalue">guint64</span></a>
ostree_commit_get_timestamp (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *commit_variant</code></em>);</pre>
</div>
</div>
<div class="refsect1">

View File

@ -41,7 +41,7 @@
<tbody>
<tr>
<td class="function_type">
<span class="returnvalue">guint</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-GPG-signature-verification-results.html#ostree-gpg-verify-result-count-all" title="ostree_gpg_verify_result_count_all ()">ostree_gpg_verify_result_count_all</a> <span class="c_punctuation">()</span>
@ -49,7 +49,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">guint</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-GPG-signature-verification-results.html#ostree-gpg-verify-result-count-valid" title="ostree_gpg_verify_result_count_valid ()">ostree_gpg_verify_result_count_valid</a> <span class="c_punctuation">()</span>
@ -57,7 +57,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-GPG-signature-verification-results.html#ostree-gpg-verify-result-lookup" title="ostree_gpg_verify_result_lookup ()">ostree_gpg_verify_result_lookup</a> <span class="c_punctuation">()</span>
@ -65,7 +65,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GVariant</span> *
<a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-GPG-signature-verification-results.html#ostree-gpg-verify-result-get" title="ostree_gpg_verify_result_get ()">ostree_gpg_verify_result_get</a> <span class="c_punctuation">()</span>
@ -73,7 +73,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GVariant</span> *
<a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-GPG-signature-verification-results.html#ostree-gpg-verify-result-get-all" title="ostree_gpg_verify_result_get_all ()">ostree_gpg_verify_result_get_all</a> <span class="c_punctuation">()</span>
@ -97,7 +97,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-GPG-signature-verification-results.html#ostree-gpg-verify-result-require-valid-signature" title="ostree_gpg_verify_result_require_valid_signature ()">ostree_gpg_verify_result_require_valid_signature</a> <span class="c_punctuation">()</span>
@ -146,7 +146,7 @@ or get all signature details with <a class="link" href="ostree-GPG-signature-ver
<a name="ostree-GPG-signature-verification-results.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="ostree-gpg-verify-result-count-all"></a><h3>ostree_gpg_verify_result_count_all ()</h3>
<pre class="programlisting"><span class="returnvalue">guint</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
ostree_gpg_verify_result_count_all (<em class="parameter"><code><a class="link" href="ostree-GPG-signature-verification-results.html#OstreeGpgVerifyResult" title="OstreeGpgVerifyResult"><span class="type">OstreeGpgVerifyResult</span></a> *result</code></em>);</pre>
<p>Counts all the signatures in <em class="parameter"><code>result</code></em>
.</p>
@ -173,7 +173,7 @@ ostree_gpg_verify_result_count_all (<em class="parameter"><code><a class="link"
<hr>
<div class="refsect2">
<a name="ostree-gpg-verify-result-count-valid"></a><h3>ostree_gpg_verify_result_count_valid ()</h3>
<pre class="programlisting"><span class="returnvalue">guint</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
ostree_gpg_verify_result_count_valid (<em class="parameter"><code><a class="link" href="ostree-GPG-signature-verification-results.html#OstreeGpgVerifyResult" title="OstreeGpgVerifyResult"><span class="type">OstreeGpgVerifyResult</span></a> *result</code></em>);</pre>
<p>Counts only the valid signatures in <em class="parameter"><code>result</code></em>
.</p>
@ -200,17 +200,17 @@ ostree_gpg_verify_result_count_valid (<em class="parameter"><code><a class="link
<hr>
<div class="refsect2">
<a name="ostree-gpg-verify-result-lookup"></a><h3>ostree_gpg_verify_result_lookup ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_gpg_verify_result_lookup (<em class="parameter"><code><a class="link" href="ostree-GPG-signature-verification-results.html#OstreeGpgVerifyResult" title="OstreeGpgVerifyResult"><span class="type">OstreeGpgVerifyResult</span></a> *result</code></em>,
<em class="parameter"><code>const <span class="type">gchar</span> *key_id</code></em>,
<em class="parameter"><code><span class="type">guint</span> *out_signature_index</code></em>);</pre>
<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key_id</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *out_signature_index</code></em>);</pre>
<p>Searches <em class="parameter"><code>result</code></em>
for a signature signed by <em class="parameter"><code>key_id</code></em>
. If a match is found,
the function returns <code class="literal">TRUE</code> and sets <em class="parameter"><code>out_signature_index</code></em>
the function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> and sets <em class="parameter"><code>out_signature_index</code></em>
so that further
signature details can be obtained through <a class="link" href="ostree-GPG-signature-verification-results.html#ostree-gpg-verify-result-get" title="ostree_gpg_verify_result_get ()"><code class="function">ostree_gpg_verify_result_get()</code></a>.
If no match is found, the function returns <code class="literal">FALSE</code> and leaves
If no match is found, the function returns <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> and leaves
<em class="parameter"><code>out_signature_index</code></em>
unchanged.</p>
<div class="refsect3">
@ -236,7 +236,7 @@ If no match is found, the function returns <code class="literal">FALSE</code> an
<td class="parameter_name"><p>out_signature_index</p></td>
<td class="parameter_description"><p> return location for the index of the signature
signed by <em class="parameter"><code>key_id</code></em>
, or <code class="literal">NULL</code>. </p></td>
, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<a href="http://foldoc.org/out"><span class="acronym">out</span></a>]</span></td>
</tr>
</tbody>
@ -244,22 +244,22 @@ signed by <em class="parameter"><code>key_id</code></em>
</div>
<div class="refsect3">
<a name="ostree-gpg-verify-result-lookup.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> on success, <code class="literal">FALSE</code> on failure</p>
<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on failure</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ostree-gpg-verify-result-get"></a><h3>ostree_gpg_verify_result_get ()</h3>
<pre class="programlisting"><span class="returnvalue">GVariant</span> *
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
ostree_gpg_verify_result_get (<em class="parameter"><code><a class="link" href="ostree-GPG-signature-verification-results.html#OstreeGpgVerifyResult" title="OstreeGpgVerifyResult"><span class="type">OstreeGpgVerifyResult</span></a> *result</code></em>,
<em class="parameter"><code><span class="type">guint</span> signature_index</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> signature_index</code></em>,
<em class="parameter"><code><a class="link" href="ostree-GPG-signature-verification-results.html#OstreeGpgSignatureAttr" title="enum OstreeGpgSignatureAttr"><span class="type">OstreeGpgSignatureAttr</span></a> *attrs</code></em>,
<em class="parameter"><code><span class="type">guint</span> n_attrs</code></em>);</pre>
<p>Builds a <span class="type">GVariant</span> tuple of requested attributes for the GPG signature at
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_attrs</code></em>);</pre>
<p>Builds a <a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> tuple of requested attributes for the GPG signature at
<em class="parameter"><code>signature_index</code></em>
in <em class="parameter"><code>result</code></em>
. See the <a class="link" href="ostree-GPG-signature-verification-results.html#OstreeGpgSignatureAttr" title="enum OstreeGpgSignatureAttr"><span class="type">OstreeGpgSignatureAttr</span></a> description
for the <span class="type">GVariantType</span> of each available attribute.</p>
for the <a href="https://developer.gnome.org/glib/unstable/glib-GVariantType.html#GVariantType"><span class="type">GVariantType</span></a> of each available attribute.</p>
<p>It is a programmer error to request an invalid <a class="link" href="ostree-GPG-signature-verification-results.html#OstreeGpgSignatureAttr" title="enum OstreeGpgSignatureAttr"><span class="type">OstreeGpgSignatureAttr</span></a> or
an invalid <em class="parameter"><code>signature_index</code></em>
. Use <a class="link" href="ostree-GPG-signature-verification-results.html#ostree-gpg-verify-result-count-all" title="ostree_gpg_verify_result_count_all ()"><code class="function">ostree_gpg_verify_result_count_all()</code></a> to
@ -300,29 +300,29 @@ array</p></td>
</div>
<div class="refsect3">
<a name="ostree-gpg-verify-result-get.returns"></a><h4>Returns</h4>
<p> a new, floating, <span class="type">GVariant</span> tuple</p>
<p> a new, floating, <a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> tuple</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ostree-gpg-verify-result-get-all"></a><h3>ostree_gpg_verify_result_get_all ()</h3>
<pre class="programlisting"><span class="returnvalue">GVariant</span> *
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
ostree_gpg_verify_result_get_all (<em class="parameter"><code><a class="link" href="ostree-GPG-signature-verification-results.html#OstreeGpgVerifyResult" title="OstreeGpgVerifyResult"><span class="type">OstreeGpgVerifyResult</span></a> *result</code></em>,
<em class="parameter"><code><span class="type">guint</span> signature_index</code></em>);</pre>
<p>Builds a <span class="type">GVariant</span> tuple of all available attributes for the GPG signature
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> signature_index</code></em>);</pre>
<p>Builds a <a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> tuple of all available attributes for the GPG signature
at <em class="parameter"><code>signature_index</code></em>
in <em class="parameter"><code>result</code></em>
.</p>
<p>The child values in the returned <span class="type">GVariant</span> tuple are ordered to match the
<p>The child values in the returned <a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> tuple are ordered to match the
<a class="link" href="ostree-GPG-signature-verification-results.html#OstreeGpgSignatureAttr" title="enum OstreeGpgSignatureAttr"><span class="type">OstreeGpgSignatureAttr</span></a> enumeration, which means the enum values can be
used as index values in functions like <code class="function">g_variant_get_child()</code>. See the
<a class="link" href="ostree-GPG-signature-verification-results.html#OstreeGpgSignatureAttr" title="enum OstreeGpgSignatureAttr"><span class="type">OstreeGpgSignatureAttr</span></a> description for the <span class="type">GVariantType</span> of each
used as index values in functions like <a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#g-variant-get-child"><code class="function">g_variant_get_child()</code></a>. See the
<a class="link" href="ostree-GPG-signature-verification-results.html#OstreeGpgSignatureAttr" title="enum OstreeGpgSignatureAttr"><span class="type">OstreeGpgSignatureAttr</span></a> description for the <a href="https://developer.gnome.org/glib/unstable/glib-GVariantType.html#GVariantType"><span class="type">GVariantType</span></a> of each
available attribute.</p>
<div class="note"><p>
The <a class="link" href="ostree-GPG-signature-verification-results.html#OstreeGpgSignatureAttr" title="enum OstreeGpgSignatureAttr"><span class="type">OstreeGpgSignatureAttr</span></a> enumeration may be extended in the future
with new attributes, which would affect the <span class="type">GVariant</span> tuple returned by
with new attributes, which would affect the <a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> tuple returned by
this function. While the position and type of current child values in
the <span class="type">GVariant</span> tuple will not change, to avoid backward-compatibility
the <a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> tuple will not change, to avoid backward-compatibility
issues <span class="emphasis"><em>please do not depend on the tuple's overall size or
type signature</em></span>.
</p></div>
@ -355,7 +355,7 @@ available attribute.</p>
</div>
<div class="refsect3">
<a name="ostree-gpg-verify-result-get-all.returns"></a><h4>Returns</h4>
<p> a new, floating, <span class="type">GVariant</span> tuple</p>
<p> a new, floating, <a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> tuple</p>
</div>
</div>
<hr>
@ -363,9 +363,9 @@ available attribute.</p>
<a name="ostree-gpg-verify-result-describe"></a><h3>ostree_gpg_verify_result_describe ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
ostree_gpg_verify_result_describe (<em class="parameter"><code><a class="link" href="ostree-GPG-signature-verification-results.html#OstreeGpgVerifyResult" title="OstreeGpgVerifyResult"><span class="type">OstreeGpgVerifyResult</span></a> *result</code></em>,
<em class="parameter"><code><span class="type">guint</span> signature_index</code></em>,
<em class="parameter"><code><span class="type">GString</span> *output_buffer</code></em>,
<em class="parameter"><code>const <span class="type">gchar</span> *line_prefix</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> signature_index</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Strings.html#GString"><span class="type">GString</span></a> *output_buffer</code></em>,
<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *line_prefix</code></em>,
<em class="parameter"><code><a class="link" href="ostree-GPG-signature-verification-results.html#OstreeGpgSignatureFormatFlags" title="enum OstreeGpgSignatureFormatFlags"><span class="type">OstreeGpgSignatureFormatFlags</span></a> flags</code></em>);</pre>
<p>Appends a brief, human-readable description of the GPG signature at
<em class="parameter"><code>signature_index</code></em>
@ -404,7 +404,7 @@ format. Currently must be 0.</p>
</tr>
<tr>
<td class="parameter_name"><p>output_buffer</p></td>
<td class="parameter_description"><p>a <span class="type">GString</span> to hold the description</p></td>
<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Strings.html#GString"><span class="type">GString</span></a> to hold the description</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
@ -426,11 +426,11 @@ format. Currently must be 0.</p>
<a name="ostree-gpg-verify-result-describe-variant"></a><h3>ostree_gpg_verify_result_describe_variant ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
ostree_gpg_verify_result_describe_variant
(<em class="parameter"><code><span class="type">GVariant</span> *variant</code></em>,
<em class="parameter"><code><span class="type">GString</span> *output_buffer</code></em>,
<em class="parameter"><code>const <span class="type">gchar</span> *line_prefix</code></em>,
(<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *variant</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Strings.html#GString"><span class="type">GString</span></a> *output_buffer</code></em>,
<em class="parameter"><code>const <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *line_prefix</code></em>,
<em class="parameter"><code><a class="link" href="ostree-GPG-signature-verification-results.html#OstreeGpgSignatureFormatFlags" title="enum OstreeGpgSignatureFormatFlags"><span class="type">OstreeGpgSignatureFormatFlags</span></a> flags</code></em>);</pre>
<p>Similar to <a class="link" href="ostree-GPG-signature-verification-results.html#ostree-gpg-verify-result-describe" title="ostree_gpg_verify_result_describe ()"><code class="function">ostree_gpg_verify_result_describe()</code></a> but takes a <span class="type">GVariant</span> of
<p>Similar to <a class="link" href="ostree-GPG-signature-verification-results.html#ostree-gpg-verify-result-describe" title="ostree_gpg_verify_result_describe ()"><code class="function">ostree_gpg_verify_result_describe()</code></a> but takes a <a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> of
all attributes for a GPG signature instead of an <a class="link" href="ostree-GPG-signature-verification-results.html#OstreeGpgVerifyResult" title="OstreeGpgVerifyResult"><span class="type">OstreeGpgVerifyResult</span></a>
and signature index.</p>
<p>The <em class="parameter"><code>variant</code></em>
@ -447,12 +447,12 @@ and signature index.</p>
<tbody>
<tr>
<td class="parameter_name"><p>variant</p></td>
<td class="parameter_description"><p>a <span class="type">GVariant</span> from <a class="link" href="ostree-GPG-signature-verification-results.html#ostree-gpg-verify-result-get-all" title="ostree_gpg_verify_result_get_all ()"><code class="function">ostree_gpg_verify_result_get_all()</code></a></p></td>
<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> from <a class="link" href="ostree-GPG-signature-verification-results.html#ostree-gpg-verify-result-get-all" title="ostree_gpg_verify_result_get_all ()"><code class="function">ostree_gpg_verify_result_get_all()</code></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>output_buffer</p></td>
<td class="parameter_description"><p>a <span class="type">GString</span> to hold the description</p></td>
<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Strings.html#GString"><span class="type">GString</span></a> to hold the description</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
@ -472,14 +472,14 @@ and signature index.</p>
<hr>
<div class="refsect2">
<a name="ostree-gpg-verify-result-require-valid-signature"></a><h3>ostree_gpg_verify_result_require_valid_signature ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_gpg_verify_result_require_valid_signature
(<em class="parameter"><code><a class="link" href="ostree-GPG-signature-verification-results.html#OstreeGpgVerifyResult" title="OstreeGpgVerifyResult"><span class="type">OstreeGpgVerifyResult</span></a> *result</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Checks if the result contains at least one signature from the
trusted keyring. You can call this function immediately after
<a class="link" href="ostree-Content-addressed-object-store.html#ostree-repo-verify-summary" title="ostree_repo_verify_summary ()"><code class="function">ostree_repo_verify_summary()</code></a> or <a class="link" href="ostree-Content-addressed-object-store.html#ostree-repo-verify-commit-ext" title="ostree_repo_verify_commit_ext ()"><code class="function">ostree_repo_verify_commit_ext()</code></a> -
it will handle the <code class="literal">NULL</code> <em class="parameter"><code>result</code></em>
it will handle the <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> <em class="parameter"><code>result</code></em>
and filled <em class="parameter"><code>error</code></em>
too.</p>
<div class="refsect3">
@ -498,7 +498,7 @@ it will handle the <code class="literal">NULL</code> <em class="parameter"><code
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
<td class="parameter_description"><p>A <span class="type">GError</span></p></td>
<td class="parameter_description"><p>A <a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
@ -506,9 +506,9 @@ it will handle the <code class="literal">NULL</code> <em class="parameter"><code
</div>
<div class="refsect3">
<a name="ostree-gpg-verify-result-require-valid-signature.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> if <em class="parameter"><code>result</code></em>
was not <code class="literal">NULL</code> and had at least one
signature from trusted keyring, otherwise <code class="literal">FALSE</code></p>
<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>result</code></em>
was not <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and had at least one
signature from trusted keyring, otherwise <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p>
</div>
</div>
</div>
@ -524,7 +524,7 @@ signature from trusted keyring, otherwise <code class="literal">FALSE</code></p>
<div class="refsect2">
<a name="OstreeGpgSignatureAttr"></a><h3>enum OstreeGpgSignatureAttr</h3>
<p>Signature attributes available from an <a class="link" href="ostree-GPG-signature-verification-results.html#OstreeGpgVerifyResult" title="OstreeGpgVerifyResult"><span class="type">OstreeGpgVerifyResult</span></a>.
The attribute's <span class="type">GVariantType</span> is shown in brackets.</p>
The attribute's <a href="https://developer.gnome.org/glib/unstable/glib-GVariantType.html#GVariantType"><span class="type">GVariantType</span></a> is shown in brackets.</p>
<div class="refsect3">
<a name="OstreeGpgSignatureAttr.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -537,56 +537,56 @@ The attribute's <span class="type">GVariantType</span> is shown in brackets.</p>
<tr>
<td class="enum_member_name"><p><a name="OSTREE-GPG-SIGNATURE-ATTR-VALID:CAPS"></a>OSTREE_GPG_SIGNATURE_ATTR_VALID</p></td>
<td class="enum_member_description">
<p> [<span class="type">G_VARIANT_TYPE_BOOLEAN</span>] Is the signature valid?</p>
<p> [<a href="https://developer.gnome.org/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-BOOLEAN:CAPS"><span class="type">G_VARIANT_TYPE_BOOLEAN</span></a>] Is the signature valid?</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="OSTREE-GPG-SIGNATURE-ATTR-SIG-EXPIRED:CAPS"></a>OSTREE_GPG_SIGNATURE_ATTR_SIG_EXPIRED</p></td>
<td class="enum_member_description">
<p> [<span class="type">G_VARIANT_TYPE_BOOLEAN</span>] Has the signature expired?</p>
<p> [<a href="https://developer.gnome.org/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-BOOLEAN:CAPS"><span class="type">G_VARIANT_TYPE_BOOLEAN</span></a>] Has the signature expired?</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="OSTREE-GPG-SIGNATURE-ATTR-KEY-EXPIRED:CAPS"></a>OSTREE_GPG_SIGNATURE_ATTR_KEY_EXPIRED</p></td>
<td class="enum_member_description">
<p> [<span class="type">G_VARIANT_TYPE_BOOLEAN</span>] Has the signing key expired?</p>
<p> [<a href="https://developer.gnome.org/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-BOOLEAN:CAPS"><span class="type">G_VARIANT_TYPE_BOOLEAN</span></a>] Has the signing key expired?</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="OSTREE-GPG-SIGNATURE-ATTR-KEY-REVOKED:CAPS"></a>OSTREE_GPG_SIGNATURE_ATTR_KEY_REVOKED</p></td>
<td class="enum_member_description">
<p> [<span class="type">G_VARIANT_TYPE_BOOLEAN</span>] Has the signing key been revoked?</p>
<p> [<a href="https://developer.gnome.org/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-BOOLEAN:CAPS"><span class="type">G_VARIANT_TYPE_BOOLEAN</span></a>] Has the signing key been revoked?</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="OSTREE-GPG-SIGNATURE-ATTR-KEY-MISSING:CAPS"></a>OSTREE_GPG_SIGNATURE_ATTR_KEY_MISSING</p></td>
<td class="enum_member_description">
<p> [<span class="type">G_VARIANT_TYPE_BOOLEAN</span>] Is the signing key missing?</p>
<p> [<a href="https://developer.gnome.org/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-BOOLEAN:CAPS"><span class="type">G_VARIANT_TYPE_BOOLEAN</span></a>] Is the signing key missing?</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="OSTREE-GPG-SIGNATURE-ATTR-FINGERPRINT:CAPS"></a>OSTREE_GPG_SIGNATURE_ATTR_FINGERPRINT</p></td>
<td class="enum_member_description">
<p> [<span class="type">G_VARIANT_TYPE_STRING</span>] Fingerprint of the signing key</p>
<p> [<a href="https://developer.gnome.org/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-STRING:CAPS"><span class="type">G_VARIANT_TYPE_STRING</span></a>] Fingerprint of the signing key</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="OSTREE-GPG-SIGNATURE-ATTR-TIMESTAMP:CAPS"></a>OSTREE_GPG_SIGNATURE_ATTR_TIMESTAMP</p></td>
<td class="enum_member_description">
<p> [<span class="type">G_VARIANT_TYPE_INT64</span>] Signature creation Unix timestamp</p>
<p> [<a href="https://developer.gnome.org/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-INT64:CAPS"><span class="type">G_VARIANT_TYPE_INT64</span></a>] Signature creation Unix timestamp</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="OSTREE-GPG-SIGNATURE-ATTR-EXP-TIMESTAMP:CAPS"></a>OSTREE_GPG_SIGNATURE_ATTR_EXP_TIMESTAMP</p></td>
<td class="enum_member_description">
<p> [<span class="type">G_VARIANT_TYPE_INT64</span>] Signature expiration Unix timestamp (0 if no
<p> [<a href="https://developer.gnome.org/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-INT64:CAPS"><span class="type">G_VARIANT_TYPE_INT64</span></a>] Signature expiration Unix timestamp (0 if no
expiration)</p>
</td>
<td class="enum_member_annotations"> </td>
@ -594,7 +594,7 @@ The attribute's <span class="type">GVariantType</span> is shown in brackets.</p>
<tr>
<td class="enum_member_name"><p><a name="OSTREE-GPG-SIGNATURE-ATTR-PUBKEY-ALGO-NAME:CAPS"></a>OSTREE_GPG_SIGNATURE_ATTR_PUBKEY_ALGO_NAME</p></td>
<td class="enum_member_description">
<p> [<span class="type">G_VARIANT_TYPE_STRING</span>] Name of the public key algorithm used to create
<p> [<a href="https://developer.gnome.org/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-STRING:CAPS"><span class="type">G_VARIANT_TYPE_STRING</span></a>] Name of the public key algorithm used to create
the signature</p>
</td>
<td class="enum_member_annotations"> </td>
@ -602,7 +602,7 @@ The attribute's <span class="type">GVariantType</span> is shown in brackets.</p>
<tr>
<td class="enum_member_name"><p><a name="OSTREE-GPG-SIGNATURE-ATTR-HASH-ALGO-NAME:CAPS"></a>OSTREE_GPG_SIGNATURE_ATTR_HASH_ALGO_NAME</p></td>
<td class="enum_member_description">
<p> [<span class="type">G_VARIANT_TYPE_STRING</span>] Name of the hash algorithm used to create the
<p> [<a href="https://developer.gnome.org/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-STRING:CAPS"><span class="type">G_VARIANT_TYPE_STRING</span></a>] Name of the hash algorithm used to create the
signature</p>
</td>
<td class="enum_member_annotations"> </td>
@ -610,14 +610,14 @@ The attribute's <span class="type">GVariantType</span> is shown in brackets.</p>
<tr>
<td class="enum_member_name"><p><a name="OSTREE-GPG-SIGNATURE-ATTR-USER-NAME:CAPS"></a>OSTREE_GPG_SIGNATURE_ATTR_USER_NAME</p></td>
<td class="enum_member_description">
<p> [<span class="type">G_VARIANT_TYPE_STRING</span>] The name of the signing key's primary user</p>
<p> [<a href="https://developer.gnome.org/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-STRING:CAPS"><span class="type">G_VARIANT_TYPE_STRING</span></a>] The name of the signing key's primary user</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="OSTREE-GPG-SIGNATURE-ATTR-USER-EMAIL:CAPS"></a>OSTREE_GPG_SIGNATURE_ATTR_USER_EMAIL</p></td>
<td class="enum_member_description">
<p> [<span class="type">G_VARIANT_TYPE_STRING</span>] The email address of the signing key's primary
<p> [<a href="https://developer.gnome.org/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-STRING:CAPS"><span class="type">G_VARIANT_TYPE_STRING</span></a>] The email address of the signing key's primary
user</p>
</td>
<td class="enum_member_annotations"> </td>

View File

@ -79,7 +79,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-In-memory-modifiable-filesystem-tree.html#ostree-mutable-tree-replace-file" title="ostree_mutable_tree_replace_file ()">ostree_mutable_tree_replace_file</a> <span class="c_punctuation">()</span>
@ -87,7 +87,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-In-memory-modifiable-filesystem-tree.html#ostree-mutable-tree-ensure-dir" title="ostree_mutable_tree_ensure_dir ()">ostree_mutable_tree_ensure_dir</a> <span class="c_punctuation">()</span>
@ -95,7 +95,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-In-memory-modifiable-filesystem-tree.html#ostree-mutable-tree-lookup" title="ostree_mutable_tree_lookup ()">ostree_mutable_tree_lookup</a> <span class="c_punctuation">()</span>
@ -103,7 +103,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-In-memory-modifiable-filesystem-tree.html#ostree-mutable-tree-ensure-parent-dirs" title="ostree_mutable_tree_ensure_parent_dirs ()">ostree_mutable_tree_ensure_parent_dirs</a> <span class="c_punctuation">()</span>
@ -111,7 +111,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-In-memory-modifiable-filesystem-tree.html#ostree-mutable-tree-walk" title="ostree_mutable_tree_walk ()">ostree_mutable_tree_walk</a> <span class="c_punctuation">()</span>
@ -119,7 +119,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GHashTable</span> *
<a href="https://developer.gnome.org/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-In-memory-modifiable-filesystem-tree.html#ostree-mutable-tree-get-subdirs" title="ostree_mutable_tree_get_subdirs ()">ostree_mutable_tree_get_subdirs</a> <span class="c_punctuation">()</span>
@ -127,7 +127,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GHashTable</span> *
<a href="https://developer.gnome.org/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-In-memory-modifiable-filesystem-tree.html#ostree-mutable-tree-get-files" title="ostree_mutable_tree_get_files ()">ostree_mutable_tree_get_files</a> <span class="c_punctuation">()</span>
@ -202,41 +202,41 @@ ostree_mutable_tree_get_contents_checksum
<hr>
<div class="refsect2">
<a name="ostree-mutable-tree-replace-file"></a><h3>ostree_mutable_tree_replace_file ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_mutable_tree_replace_file (<em class="parameter"><code><a class="link" href="ostree-In-memory-modifiable-filesystem-tree.html#OstreeMutableTree" title="OstreeMutableTree"><span class="type">OstreeMutableTree</span></a> *self</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *name</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *checksum</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="ostree-mutable-tree-ensure-dir"></a><h3>ostree_mutable_tree_ensure_dir ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_mutable_tree_ensure_dir (<em class="parameter"><code><a class="link" href="ostree-In-memory-modifiable-filesystem-tree.html#OstreeMutableTree" title="OstreeMutableTree"><span class="type">OstreeMutableTree</span></a> *self</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *name</code></em>,
<em class="parameter"><code><a class="link" href="ostree-In-memory-modifiable-filesystem-tree.html#OstreeMutableTree" title="OstreeMutableTree"><span class="type">OstreeMutableTree</span></a> **out_subdir</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="ostree-mutable-tree-lookup"></a><h3>ostree_mutable_tree_lookup ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_mutable_tree_lookup (<em class="parameter"><code><a class="link" href="ostree-In-memory-modifiable-filesystem-tree.html#OstreeMutableTree" title="OstreeMutableTree"><span class="type">OstreeMutableTree</span></a> *self</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *name</code></em>,
<em class="parameter"><code><span class="type">char</span> **out_file_checksum</code></em>,
<em class="parameter"><code><a class="link" href="ostree-In-memory-modifiable-filesystem-tree.html#OstreeMutableTree" title="OstreeMutableTree"><span class="type">OstreeMutableTree</span></a> **out_subdir</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="ostree-mutable-tree-ensure-parent-dirs"></a><h3>ostree_mutable_tree_ensure_parent_dirs ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_mutable_tree_ensure_parent_dirs
(<em class="parameter"><code><a class="link" href="ostree-In-memory-modifiable-filesystem-tree.html#OstreeMutableTree" title="OstreeMutableTree"><span class="type">OstreeMutableTree</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">GPtrArray</span> *split_path</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *split_path</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *metadata_checksum</code></em>,
<em class="parameter"><code><a class="link" href="ostree-In-memory-modifiable-filesystem-tree.html#OstreeMutableTree" title="OstreeMutableTree"><span class="type">OstreeMutableTree</span></a> **out_parent</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Create all parent trees necessary for the given <em class="parameter"><code>split_path</code></em>
to
exist.</p>
@ -271,7 +271,7 @@ exist.</p>
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
<td class="parameter_description"><p>a <span class="type">GError</span></p></td>
<td class="parameter_description"><p>a <a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
@ -281,12 +281,12 @@ exist.</p>
<hr>
<div class="refsect2">
<a name="ostree-mutable-tree-walk"></a><h3>ostree_mutable_tree_walk ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_mutable_tree_walk (<em class="parameter"><code><a class="link" href="ostree-In-memory-modifiable-filesystem-tree.html#OstreeMutableTree" title="OstreeMutableTree"><span class="type">OstreeMutableTree</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">GPtrArray</span> *split_path</code></em>,
<em class="parameter"><code><span class="type">guint</span> start</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *split_path</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> start</code></em>,
<em class="parameter"><code><a class="link" href="ostree-In-memory-modifiable-filesystem-tree.html#OstreeMutableTree" title="OstreeMutableTree"><span class="type">OstreeMutableTree</span></a> **out_subdir</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Traverse <em class="parameter"><code>start</code></em>
number of elements starting from <em class="parameter"><code>split_path</code></em>
; the
@ -334,7 +334,7 @@ child will be returned in <em class="parameter"><code>out_subdir</code></em>
<hr>
<div class="refsect2">
<a name="ostree-mutable-tree-get-subdirs"></a><h3>ostree_mutable_tree_get_subdirs ()</h3>
<pre class="programlisting"><span class="returnvalue">GHashTable</span> *
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> *
ostree_mutable_tree_get_subdirs (<em class="parameter"><code><a class="link" href="ostree-In-memory-modifiable-filesystem-tree.html#OstreeMutableTree" title="OstreeMutableTree"><span class="type">OstreeMutableTree</span></a> *self</code></em>);</pre>
<div class="refsect3">
<a name="ostree-mutable-tree-get-subdirs.returns"></a><h4>Returns</h4>
@ -345,7 +345,7 @@ ostree_mutable_tree_get_subdirs (<em class="parameter"><code><a class="link" hre
<hr>
<div class="refsect2">
<a name="ostree-mutable-tree-get-files"></a><h3>ostree_mutable_tree_get_files ()</h3>
<pre class="programlisting"><span class="returnvalue">GHashTable</span> *
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> *
ostree_mutable_tree_get_files (<em class="parameter"><code><a class="link" href="ostree-In-memory-modifiable-filesystem-tree.html#OstreeMutableTree" title="OstreeMutableTree"><span class="type">OstreeMutableTree</span></a> *self</code></em>);</pre>
<div class="refsect3">
<a name="ostree-mutable-tree-get-files.returns"></a><h4>Returns</h4>

View File

@ -65,7 +65,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">guint</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Progress-notification-system-for-asynchronous-operations.html#ostree-async-progress-get-uint" title="ostree_async_progress_get_uint ()">ostree_async_progress_get_uint</a> <span class="c_punctuation">()</span>
@ -73,7 +73,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">guint64</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint64"><span class="returnvalue">guint64</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Progress-notification-system-for-asynchronous-operations.html#ostree-async-progress-get-uint64" title="ostree_async_progress_get_uint64 ()">ostree_async_progress_get_uint64</a> <span class="c_punctuation">()</span>
@ -156,7 +156,7 @@ ostree_async_progress_new (<em class="parameter"><code><span class="type">void</
<a name="ostree-async-progress-new-and-connect"></a><h3>ostree_async_progress_new_and_connect ()</h3>
<pre class="programlisting"><a class="link" href="ostree-Progress-notification-system-for-asynchronous-operations.html#OstreeAsyncProgress" title="OstreeAsyncProgress"><span class="returnvalue">OstreeAsyncProgress</span></a> *
ostree_async_progress_new_and_connect (<em class="parameter"><code><span class="type">void</span> (*changed) (OstreeAsyncProgress *self, gpointer user_data)</code></em>,
<em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
@ -167,14 +167,14 @@ ostree_async_progress_get_status (<em class="parameter"><code><a class="link" hr
<hr>
<div class="refsect2">
<a name="ostree-async-progress-get-uint"></a><h3>ostree_async_progress_get_uint ()</h3>
<pre class="programlisting"><span class="returnvalue">guint</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
ostree_async_progress_get_uint (<em class="parameter"><code><a class="link" href="ostree-Progress-notification-system-for-asynchronous-operations.html#OstreeAsyncProgress" title="OstreeAsyncProgress"><span class="type">OstreeAsyncProgress</span></a> *self</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *key</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="ostree-async-progress-get-uint64"></a><h3>ostree_async_progress_get_uint64 ()</h3>
<pre class="programlisting"><span class="returnvalue">guint64</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint64"><span class="returnvalue">guint64</span></a>
ostree_async_progress_get_uint64 (<em class="parameter"><code><a class="link" href="ostree-Progress-notification-system-for-asynchronous-operations.html#OstreeAsyncProgress" title="OstreeAsyncProgress"><span class="type">OstreeAsyncProgress</span></a> *self</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *key</code></em>);</pre>
</div>
@ -191,7 +191,7 @@ ostree_async_progress_set_status (<em class="parameter"><code><a class="link" hr
<pre class="programlisting"><span class="returnvalue">void</span>
ostree_async_progress_set_uint (<em class="parameter"><code><a class="link" href="ostree-Progress-notification-system-for-asynchronous-operations.html#OstreeAsyncProgress" title="OstreeAsyncProgress"><span class="type">OstreeAsyncProgress</span></a> *self</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *key</code></em>,
<em class="parameter"><code><span class="type">guint</span> value</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> value</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
@ -199,7 +199,7 @@ ostree_async_progress_set_uint (<em class="parameter"><code><a class="link" href
<pre class="programlisting"><span class="returnvalue">void</span>
ostree_async_progress_set_uint64 (<em class="parameter"><code><a class="link" href="ostree-Progress-notification-system-for-asynchronous-operations.html#OstreeAsyncProgress" title="OstreeAsyncProgress"><span class="type">OstreeAsyncProgress</span></a> *self</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *key</code></em>,
<em class="parameter"><code><span class="type">guint64</span> value</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> value</code></em>);</pre>
</div>
<hr>
<div class="refsect2">

View File

@ -57,7 +57,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GFile</span> *
<a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="returnvalue">GFile</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-get-path" title="ostree_sysroot_get_path ()">ostree_sysroot_get_path</a> <span class="c_punctuation">()</span>
@ -65,7 +65,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-load" title="ostree_sysroot_load ()">ostree_sysroot_load</a> <span class="c_punctuation">()</span>
@ -73,7 +73,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-load-if-changed" title="ostree_sysroot_load_if_changed ()">ostree_sysroot_load_if_changed</a> <span class="c_punctuation">()</span>
@ -81,7 +81,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-lock" title="ostree_sysroot_lock ()">ostree_sysroot_lock</a> <span class="c_punctuation">()</span>
@ -89,7 +89,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-try-lock" title="ostree_sysroot_try_lock ()">ostree_sysroot_try_lock</a> <span class="c_punctuation">()</span>
@ -105,7 +105,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-lock-finish" title="ostree_sysroot_lock_finish ()">ostree_sysroot_lock_finish</a> <span class="c_punctuation">()</span>
@ -137,7 +137,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-ensure-initialized" title="ostree_sysroot_ensure_initialized ()">ostree_sysroot_ensure_initialized</a> <span class="c_punctuation">()</span>
@ -161,7 +161,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GPtrArray</span> *
<a href="https://developer.gnome.org/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="returnvalue">GPtrArray</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-get-deployments" title="ostree_sysroot_get_deployments ()">ostree_sysroot_get_deployments</a> <span class="c_punctuation">()</span>
@ -177,7 +177,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GFile</span> *
<a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="returnvalue">GFile</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-get-deployment-directory" title="ostree_sysroot_get_deployment_directory ()">ostree_sysroot_get_deployment_directory</a> <span class="c_punctuation">()</span>
@ -193,7 +193,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GFile</span> *
<a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="returnvalue">GFile</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-get-deployment-origin-path" title="ostree_sysroot_get_deployment_origin_path ()">ostree_sysroot_get_deployment_origin_path</a> <span class="c_punctuation">()</span>
@ -201,7 +201,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-cleanup" title="ostree_sysroot_cleanup ()">ostree_sysroot_cleanup</a> <span class="c_punctuation">()</span>
@ -209,7 +209,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-prepare-cleanup" title="ostree_sysroot_prepare_cleanup ()">ostree_sysroot_prepare_cleanup</a> <span class="c_punctuation">()</span>
@ -217,7 +217,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-get-repo" title="ostree_sysroot_get_repo ()">ostree_sysroot_get_repo</a> <span class="c_punctuation">()</span>
@ -225,7 +225,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-init-osname" title="ostree_sysroot_init_osname ()">ostree_sysroot_init_osname</a> <span class="c_punctuation">()</span>
@ -233,7 +233,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-deployment-set-kargs" title="ostree_sysroot_deployment_set_kargs ()">ostree_sysroot_deployment_set_kargs</a> <span class="c_punctuation">()</span>
@ -241,7 +241,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-deployment-set-mutable" title="ostree_sysroot_deployment_set_mutable ()">ostree_sysroot_deployment_set_mutable</a> <span class="c_punctuation">()</span>
@ -249,7 +249,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-deployment-unlock" title="ostree_sysroot_deployment_unlock ()">ostree_sysroot_deployment_unlock</a> <span class="c_punctuation">()</span>
@ -257,7 +257,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-write-deployments" title="ostree_sysroot_write_deployments ()">ostree_sysroot_write_deployments</a> <span class="c_punctuation">()</span>
@ -265,7 +265,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-write-origin-file" title="ostree_sysroot_write_origin_file ()">ostree_sysroot_write_origin_file</a> <span class="c_punctuation">()</span>
@ -273,7 +273,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-deploy-tree" title="ostree_sysroot_deploy_tree ()">ostree_sysroot_deploy_tree</a> <span class="c_punctuation">()</span>
@ -289,7 +289,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GKeyFile</span> *
<a href="https://developer.gnome.org/glib/unstable/glib-Key-value-file-parser.html#GKeyFile"><span class="returnvalue">GKeyFile</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-origin-new-from-refspec" title="ostree_sysroot_origin_new_from_refspec ()">ostree_sysroot_origin_new_from_refspec</a> <span class="c_punctuation">()</span>
@ -297,7 +297,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-simple-write-deployment" title="ostree_sysroot_simple_write_deployment ()">ostree_sysroot_simple_write_deployment</a> <span class="c_punctuation">()</span>
@ -340,7 +340,7 @@ perform locking externally.</p>
<div class="refsect2">
<a name="ostree-sysroot-new"></a><h3>ostree_sysroot_new ()</h3>
<pre class="programlisting"><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="returnvalue">OstreeSysroot</span></a> *
ostree_sysroot_new (<em class="parameter"><code><span class="type">GFile</span> *path</code></em>);</pre>
ostree_sysroot_new (<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="type">GFile</span></a> *path</code></em>);</pre>
<div class="refsect3">
<a name="ostree-sysroot-new.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -351,7 +351,7 @@ ostree_sysroot_new (<em class="parameter"><code><span class="type">GFile</span>
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>path</p></td>
<td class="parameter_description"><p> Path to a system root directory, or <code class="literal">NULL</code>. </p></td>
<td class="parameter_description"><p> Path to a system root directory, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<a href="http://foldoc.org/allow-none"><span class="acronym">allow-none</span></a>]</span></td>
</tr></tbody>
</table></div>
@ -377,7 +377,7 @@ ostree_sysroot_new_default (<em class="parameter"><code><span class="type">void<
<hr>
<div class="refsect2">
<a name="ostree-sysroot-get-path"></a><h3>ostree_sysroot_get_path ()</h3>
<pre class="programlisting"><span class="returnvalue">GFile</span> *
<pre class="programlisting"><a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="returnvalue">GFile</span></a> *
ostree_sysroot_get_path (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *self</code></em>);</pre>
<div class="refsect3">
<a name="ostree-sysroot-get-path.returns"></a><h4>Returns</h4>
@ -388,10 +388,10 @@ ostree_sysroot_get_path (<em class="parameter"><code><a class="link" href="ostre
<hr>
<div class="refsect2">
<a name="ostree-sysroot-load"></a><h3>ostree_sysroot_load ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_load (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Load deployment list, bootversion, and subbootversion from the
rootfs <em class="parameter"><code>self</code></em>
.</p>
@ -426,18 +426,18 @@ rootfs <em class="parameter"><code>self</code></em>
<hr>
<div class="refsect2">
<a name="ostree-sysroot-load-if-changed"></a><h3>ostree_sysroot_load_if_changed ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_load_if_changed (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">gboolean</span> *out_changed</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *out_changed</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="ostree-sysroot-lock"></a><h3>ostree_sysroot_lock ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_lock (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Acquire an exclusive multi-process write lock for <em class="parameter"><code>self</code></em>
. This call
blocks until the lock has been acquired. The lock is not
@ -471,15 +471,15 @@ be released if <em class="parameter"><code>self</code></em>
<hr>
<div class="refsect2">
<a name="ostree-sysroot-try-lock"></a><h3>ostree_sysroot_try_lock ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_try_lock (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">gboolean</span> *out_acquired</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *out_acquired</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Try to acquire an exclusive multi-process write lock for <em class="parameter"><code>self</code></em>
. If
another process holds the lock, this function will return
immediately, setting <em class="parameter"><code>out_acquired</code></em>
to <code class="literal">FALSE</code>, and returning <code class="literal">TRUE</code>
to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, and returning <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>
(and no error).</p>
<p>Release the lock with <a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-unlock" title="ostree_sysroot_unlock ()"><code class="function">ostree_sysroot_unlock()</code></a>. The lock will also
be released if <em class="parameter"><code>self</code></em>
@ -517,9 +517,9 @@ be released if <em class="parameter"><code>self</code></em>
<a name="ostree-sysroot-lock-async"></a><h3>ostree_sysroot_lock_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
ostree_sysroot_lock_async (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GAsyncReadyCallback</span> callback</code></em>,
<em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GAsyncResult.html#GAsyncReadyCallback"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>An asynchronous version of <a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-lock" title="ostree_sysroot_lock ()"><code class="function">ostree_sysroot_lock()</code></a>.</p>
<div class="refsect3">
<a name="ostree-sysroot-lock-async.parameters"></a><h4>Parameters</h4>
@ -557,10 +557,10 @@ ostree_sysroot_lock_async (<em class="parameter"><code><a class="link" href="ost
<hr>
<div class="refsect2">
<a name="ostree-sysroot-lock-finish"></a><h3>ostree_sysroot_lock_finish ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_lock_finish (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">GAsyncResult</span> *result</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GAsyncResult.html#GAsyncResult-struct"><span class="type">GAsyncResult</span></a> *result</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Call when <a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-lock-async" title="ostree_sysroot_lock_async ()"><code class="function">ostree_sysroot_lock_async()</code></a> is ready.</p>
<div class="refsect3">
<a name="ostree-sysroot-lock-finish.parameters"></a><h4>Parameters</h4>
@ -672,10 +672,10 @@ calling this function.</p>
<hr>
<div class="refsect2">
<a name="ostree-sysroot-ensure-initialized"></a><h3>ostree_sysroot_ensure_initialized ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_ensure_initialized (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Ensure that <em class="parameter"><code>self</code></em>
is set up as a valid rootfs, by creating
/ostree/repo, among other things.</p>
@ -722,7 +722,7 @@ ostree_sysroot_get_subbootversion (<em class="parameter"><code><a class="link" h
<hr>
<div class="refsect2">
<a name="ostree-sysroot-get-deployments"></a><h3>ostree_sysroot_get_deployments ()</h3>
<pre class="programlisting"><span class="returnvalue">GPtrArray</span> *
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="returnvalue">GPtrArray</span></a> *
ostree_sysroot_get_deployments (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *self</code></em>);</pre>
<div class="refsect3">
<a name="ostree-sysroot-get-deployments.parameters"></a><h4>Parameters</h4>
@ -767,14 +767,14 @@ ostree_sysroot_get_booted_deployment (<em class="parameter"><code><a class="link
</div>
<div class="refsect3">
<a name="ostree-sysroot-get-booted-deployment.returns"></a><h4>Returns</h4>
<p> The currently booted deployment, or <code class="literal">NULL</code> if none. </p>
<p> The currently booted deployment, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none. </p>
<p><span class="annotation">[<a href="http://foldoc.org/transfer%20none"><span class="acronym">transfer none</span></a>]</span></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ostree-sysroot-get-deployment-directory"></a><h3>ostree_sysroot_get_deployment_directory ()</h3>
<pre class="programlisting"><span class="returnvalue">GFile</span> *
<pre class="programlisting"><a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="returnvalue">GFile</span></a> *
ostree_sysroot_get_deployment_directory
(<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *self</code></em>,
<em class="parameter"><code><a class="link" href="ostree-ostree-deployment.html#OstreeDeployment" title="OstreeDeployment"><span class="type">OstreeDeployment</span></a> *deployment</code></em>);</pre>
@ -846,9 +846,9 @@ or concatenate it with the full <a class="link" href="ostree-Root-partition-moun
<hr>
<div class="refsect2">
<a name="ostree-sysroot-get-deployment-origin-path"></a><h3>ostree_sysroot_get_deployment_origin_path ()</h3>
<pre class="programlisting"><span class="returnvalue">GFile</span> *
<pre class="programlisting"><a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="returnvalue">GFile</span></a> *
ostree_sysroot_get_deployment_origin_path
(<em class="parameter"><code><span class="type">GFile</span> *deployment_path</code></em>);</pre>
(<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="type">GFile</span></a> *deployment_path</code></em>);</pre>
<div class="refsect3">
<a name="ostree-sysroot-get-deployment-origin-path.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -873,10 +873,10 @@ ostree_sysroot_get_deployment_origin_path
<hr>
<div class="refsect2">
<a name="ostree-sysroot-cleanup"></a><h3>ostree_sysroot_cleanup ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_cleanup (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Delete any state that resulted from a partially completed
transaction, such as incomplete deployments.</p>
<div class="refsect3">
@ -910,10 +910,10 @@ transaction, such as incomplete deployments.</p>
<hr>
<div class="refsect2">
<a name="ostree-sysroot-prepare-cleanup"></a><h3>ostree_sysroot_prepare_cleanup ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_prepare_cleanup (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Like <a class="link" href="ostree-Root-partition-mount-point.html#ostree-sysroot-cleanup" title="ostree_sysroot_cleanup ()"><code class="function">ostree_sysroot_cleanup()</code></a> in that it cleans up incomplete deployments
and old boot versions, but does NOT prune the repository.</p>
<div class="refsect3">
@ -947,11 +947,11 @@ and old boot versions, but does NOT prune the repository.</p>
<hr>
<div class="refsect2">
<a name="ostree-sysroot-get-repo"></a><h3>ostree_sysroot_get_repo ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_get_repo (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *self</code></em>,
<em class="parameter"><code><a class="link" href="ostree-Content-addressed-object-store.html#OstreeRepo" title="OstreeRepo"><span class="type">OstreeRepo</span></a> **out_repo</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Retrieve the OSTree repository in sysroot <em class="parameter"><code>self</code></em>
.</p>
<div class="refsect3">
@ -991,11 +991,11 @@ ostree_sysroot_get_repo (<em class="parameter"><code><a class="link" href="ostre
<hr>
<div class="refsect2">
<a name="ostree-sysroot-init-osname"></a><h3>ostree_sysroot_init_osname ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_init_osname (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *self</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *osname</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Initialize the directory structure for an "osname", which is a
group of operating system deployments, with a shared <code class="literal">/var</code>. One
is required for generating a deployment.</p>
@ -1035,12 +1035,12 @@ is required for generating a deployment.</p>
<hr>
<div class="refsect2">
<a name="ostree-sysroot-deployment-set-kargs"></a><h3>ostree_sysroot_deployment_set_kargs ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_deployment_set_kargs (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *self</code></em>,
<em class="parameter"><code><a class="link" href="ostree-ostree-deployment.html#OstreeDeployment" title="OstreeDeployment"><span class="type">OstreeDeployment</span></a> *deployment</code></em>,
<em class="parameter"><code><span class="type">char</span> **new_kargs</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Entirely replace the kernel arguments of <em class="parameter"><code>deployment</code></em>
with the
values in <em class="parameter"><code>new_kargs</code></em>
@ -1086,12 +1086,12 @@ values in <em class="parameter"><code>new_kargs</code></em>
<hr>
<div class="refsect2">
<a name="ostree-sysroot-deployment-set-mutable"></a><h3>ostree_sysroot_deployment_set_mutable ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_deployment_set_mutable (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *self</code></em>,
<em class="parameter"><code><a class="link" href="ostree-ostree-deployment.html#OstreeDeployment" title="OstreeDeployment"><span class="type">OstreeDeployment</span></a> *deployment</code></em>,
<em class="parameter"><code><span class="type">gboolean</span> is_mutable</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> is_mutable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>By default, deployment directories are not mutable. This function
will allow making them temporarily mutable, for example to allow
layering additional non-OSTree content.</p>
@ -1131,12 +1131,12 @@ layering additional non-OSTree content.</p>
<hr>
<div class="refsect2">
<a name="ostree-sysroot-deployment-unlock"></a><h3>ostree_sysroot_deployment_unlock ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_deployment_unlock (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *self</code></em>,
<em class="parameter"><code><a class="link" href="ostree-ostree-deployment.html#OstreeDeployment" title="OstreeDeployment"><span class="type">OstreeDeployment</span></a> *deployment</code></em>,
<em class="parameter"><code><span class="type">OstreeDeploymentUnlockedState</span> unlocked_state</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Configure the target deployment <em class="parameter"><code>deployment</code></em>
such that it
is writable. There are multiple modes, essentially differing
@ -1184,11 +1184,11 @@ across reboots.</p>
<hr>
<div class="refsect2">
<a name="ostree-sysroot-write-deployments"></a><h3>ostree_sysroot_write_deployments ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_write_deployments (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">GPtrArray</span> *new_deployments</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *new_deployments</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Assuming <em class="parameter"><code>new_deployments</code></em>
have already been deployed in place on
disk, atomically update bootloader configuration.</p>
@ -1228,17 +1228,17 @@ disk, atomically update bootloader configuration.</p>
<hr>
<div class="refsect2">
<a name="ostree-sysroot-write-origin-file"></a><h3>ostree_sysroot_write_origin_file ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_write_origin_file (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *sysroot</code></em>,
<em class="parameter"><code><a class="link" href="ostree-ostree-deployment.html#OstreeDeployment" title="OstreeDeployment"><span class="type">OstreeDeployment</span></a> *deployment</code></em>,
<em class="parameter"><code><span class="type">GKeyFile</span> *new_origin</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Key-value-file-parser.html#GKeyFile"><span class="type">GKeyFile</span></a> *new_origin</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Immediately replace the origin file of the referenced <em class="parameter"><code>deployment</code></em>
with the contents of <em class="parameter"><code>new_origin</code></em>
. If <em class="parameter"><code>new_origin</code></em>
is <code class="literal">NULL</code>,
is <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>,
this function will write the current origin of <em class="parameter"><code>deployment</code></em>
.</p>
<div class="refsect3">
@ -1282,16 +1282,16 @@ this function will write the current origin of <em class="parameter"><code>deplo
<hr>
<div class="refsect2">
<a name="ostree-sysroot-deploy-tree"></a><h3>ostree_sysroot_deploy_tree ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_deploy_tree (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *self</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *osname</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *revision</code></em>,
<em class="parameter"><code><span class="type">GKeyFile</span> *origin</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Key-value-file-parser.html#GKeyFile"><span class="type">GKeyFile</span></a> *origin</code></em>,
<em class="parameter"><code><a class="link" href="ostree-ostree-deployment.html#OstreeDeployment" title="OstreeDeployment"><span class="type">OstreeDeployment</span></a> *provided_merge_deployment</code></em>,
<em class="parameter"><code><span class="type">char</span> **override_kernel_argv</code></em>,
<em class="parameter"><code><a class="link" href="ostree-ostree-deployment.html#OstreeDeployment" title="OstreeDeployment"><span class="type">OstreeDeployment</span></a> **out_new_deployment</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Check out deployment tree with revision <em class="parameter"><code>revision</code></em>
, performing a 3
way merge with <em class="parameter"><code>provided_merge_deployment</code></em>
@ -1332,7 +1332,7 @@ way merge with <em class="parameter"><code>provided_merge_deployment</code></em>
</tr>
<tr>
<td class="parameter_name"><p>override_kernel_argv</p></td>
<td class="parameter_description"><p> Use these as kernel arguments; if <code class="literal">NULL</code>, inherit options from provided_merge_deployment. </p></td>
<td class="parameter_description"><p> Use these as kernel arguments; if <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, inherit options from provided_merge_deployment. </p></td>
<td class="parameter_annotations"><span class="annotation">[<a href="http://foldoc.org/allow-none"><span class="acronym">allow-none</span></a>][<a href="http://foldoc.org/array"><span class="acronym">array</span></a> zero-terminated=1][<a href="http://foldoc.org/element-type"><span class="acronym">element-type</span></a> utf8]</span></td>
</tr>
<tr>
@ -1393,7 +1393,7 @@ the first one in the current deployment list which matches osname.</p>
<hr>
<div class="refsect2">
<a name="ostree-sysroot-origin-new-from-refspec"></a><h3>ostree_sysroot_origin_new_from_refspec ()</h3>
<pre class="programlisting"><span class="returnvalue">GKeyFile</span> *
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Key-value-file-parser.html#GKeyFile"><span class="returnvalue">GKeyFile</span></a> *
ostree_sysroot_origin_new_from_refspec
(<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *self</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *refspec</code></em>);</pre>
@ -1422,15 +1422,15 @@ as an origin. </p>
<hr>
<div class="refsect2">
<a name="ostree-sysroot-simple-write-deployment"></a><h3>ostree_sysroot_simple_write_deployment ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_simple_write_deployment
(<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *sysroot</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *osname</code></em>,
<em class="parameter"><code><a class="link" href="ostree-ostree-deployment.html#OstreeDeployment" title="OstreeDeployment"><span class="type">OstreeDeployment</span></a> *new_deployment</code></em>,
<em class="parameter"><code><a class="link" href="ostree-ostree-deployment.html#OstreeDeployment" title="OstreeDeployment"><span class="type">OstreeDeployment</span></a> *merge_deployment</code></em>,
<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysrootSimpleWriteDeploymentFlags" title="enum OstreeSysrootSimpleWriteDeploymentFlags"><span class="type">OstreeSysrootSimpleWriteDeploymentFlags</span></a> flags</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Prepend <em class="parameter"><code>new_deployment</code></em>
to the list of deployments, commit, and
cleanup. By default, all other deployments for the given <em class="parameter"><code>osname</code></em>

View File

@ -49,7 +49,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GFile</span> *
<a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="returnvalue">GFile</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-SELinux-policy-management.html#ostree-sepolicy-get-path" title="ostree_sepolicy_get_path ()">ostree_sepolicy_get_path</a> <span class="c_punctuation">()</span>
@ -64,7 +64,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-SELinux-policy-management.html#ostree-sepolicy-get-label" title="ostree_sepolicy_get_label ()">ostree_sepolicy_get_label</a> <span class="c_punctuation">()</span>
@ -79,7 +79,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-SELinux-policy-management.html#ostree-sepolicy-restorecon" title="ostree_sepolicy_restorecon ()">ostree_sepolicy_restorecon</a> <span class="c_punctuation">()</span>
@ -87,7 +87,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-SELinux-policy-management.html#ostree-sepolicy-setfscreatecon" title="ostree_sepolicy_setfscreatecon ()">ostree_sepolicy_setfscreatecon</a> <span class="c_punctuation">()</span>
@ -133,9 +133,9 @@ root and perform labeling.</p>
<div class="refsect2">
<a name="ostree-sepolicy-new"></a><h3>ostree_sepolicy_new ()</h3>
<pre class="programlisting"><a class="link" href="ostree-SELinux-policy-management.html#OstreeSePolicy" title="OstreeSePolicy"><span class="returnvalue">OstreeSePolicy</span></a> *
ostree_sepolicy_new (<em class="parameter"><code><span class="type">GFile</span> *path</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
ostree_sepolicy_new (<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="type">GFile</span></a> *path</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<div class="refsect3">
<a name="ostree-sepolicy-new.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -161,7 +161,7 @@ ostree_sepolicy_new (<em class="parameter"><code><span class="type">GFile</span>
<hr>
<div class="refsect2">
<a name="ostree-sepolicy-get-path"></a><h3>ostree_sepolicy_get_path ()</h3>
<pre class="programlisting"><span class="returnvalue">GFile</span> *
<pre class="programlisting"><a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="returnvalue">GFile</span></a> *
ostree_sepolicy_get_path (<em class="parameter"><code><a class="link" href="ostree-SELinux-policy-management.html#OstreeSePolicy" title="OstreeSePolicy"><span class="type">OstreeSePolicy</span></a> *self</code></em>);</pre>
<div class="refsect3">
<a name="ostree-sepolicy-get-path.returns"></a><h4>Returns</h4>
@ -183,18 +183,18 @@ ostree_sepolicy_get_name (<em class="parameter"><code><a class="link" href="ostr
<hr>
<div class="refsect2">
<a name="ostree-sepolicy-get-label"></a><h3>ostree_sepolicy_get_label ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sepolicy_get_label (<em class="parameter"><code><a class="link" href="ostree-SELinux-policy-management.html#OstreeSePolicy" title="OstreeSePolicy"><span class="type">OstreeSePolicy</span></a> *self</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *relpath</code></em>,
<em class="parameter"><code><span class="type">guint32</span> unix_mode</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> unix_mode</code></em>,
<em class="parameter"><code><span class="type">char</span> **out_label</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Store in <em class="parameter"><code>out_label</code></em>
the security context for the given <em class="parameter"><code>relpath</code></em>
and
mode <em class="parameter"><code>unix_mode</code></em>
. If the policy does not specify a label, <code class="literal">NULL</code>
. If the policy does not specify a label, <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
will be returned.</p>
<div class="refsect3">
<a name="ostree-sepolicy-get-label.parameters"></a><h4>Parameters</h4>
@ -253,15 +253,15 @@ ostree_sepolicy_get_csum (<em class="parameter"><code><a class="link" href="ostr
<hr>
<div class="refsect2">
<a name="ostree-sepolicy-restorecon"></a><h3>ostree_sepolicy_restorecon ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sepolicy_restorecon (<em class="parameter"><code><a class="link" href="ostree-SELinux-policy-management.html#OstreeSePolicy" title="OstreeSePolicy"><span class="type">OstreeSePolicy</span></a> *self</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *path</code></em>,
<em class="parameter"><code><span class="type">GFileInfo</span> *info</code></em>,
<em class="parameter"><code><span class="type">GFile</span> *target</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFileInfo.html#GFileInfo-struct"><span class="type">GFileInfo</span></a> *info</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="type">GFile</span></a> *target</code></em>,
<em class="parameter"><code><a class="link" href="ostree-SELinux-policy-management.html#OstreeSePolicyRestoreconFlags" title="enum OstreeSePolicyRestoreconFlags"><span class="type">OstreeSePolicyRestoreconFlags</span></a> flags</code></em>,
<em class="parameter"><code><span class="type">char</span> **out_new_label</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Reset the security context of <em class="parameter"><code>target</code></em>
based on the SELinux policy.</p>
<div class="refsect3">
@ -300,7 +300,7 @@ ostree_sepolicy_restorecon (<em class="parameter"><code><a class="link" href="os
</tr>
<tr>
<td class="parameter_name"><p>out_new_label</p></td>
<td class="parameter_description"><p> New label, or <code class="literal">NULL</code> if unchanged. </p></td>
<td class="parameter_description"><p> New label, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if unchanged. </p></td>
<td class="parameter_annotations"><span class="annotation">[<a href="http://foldoc.org/allow-none"><span class="acronym">allow-none</span></a>][<a href="http://foldoc.org/out"><span class="acronym">out</span></a>]</span></td>
</tr>
<tr>
@ -320,11 +320,11 @@ ostree_sepolicy_restorecon (<em class="parameter"><code><a class="link" href="os
<hr>
<div class="refsect2">
<a name="ostree-sepolicy-setfscreatecon"></a><h3>ostree_sepolicy_setfscreatecon ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sepolicy_setfscreatecon (<em class="parameter"><code><a class="link" href="ostree-SELinux-policy-management.html#OstreeSePolicy" title="OstreeSePolicy"><span class="type">OstreeSePolicy</span></a> *self</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *path</code></em>,
<em class="parameter"><code><span class="type">guint32</span> mode</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> mode</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<div class="refsect3">
<a name="ostree-sepolicy-setfscreatecon.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">

View File

@ -65,7 +65,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GKeyFile</span> *
<a href="https://developer.gnome.org/glib/unstable/glib-Key-value-file-parser.html#GKeyFile"><span class="returnvalue">GKeyFile</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-Simple-upgrade-class.html#ostree-sysroot-upgrader-get-origin" title="ostree_sysroot_upgrader_get_origin ()">ostree_sysroot_upgrader_get_origin</a> <span class="c_punctuation">()</span>
@ -73,7 +73,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GKeyFile</span> *
<a href="https://developer.gnome.org/glib/unstable/glib-Key-value-file-parser.html#GKeyFile"><span class="returnvalue">GKeyFile</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-Simple-upgrade-class.html#ostree-sysroot-upgrader-dup-origin" title="ostree_sysroot_upgrader_dup_origin ()">ostree_sysroot_upgrader_dup_origin</a> <span class="c_punctuation">()</span>
@ -81,7 +81,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Simple-upgrade-class.html#ostree-sysroot-upgrader-set-origin" title="ostree_sysroot_upgrader_set_origin ()">ostree_sysroot_upgrader_set_origin</a> <span class="c_punctuation">()</span>
@ -97,7 +97,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Simple-upgrade-class.html#ostree-sysroot-upgrader-check-timestamps" title="ostree_sysroot_upgrader_check_timestamps ()">ostree_sysroot_upgrader_check_timestamps</a> <span class="c_punctuation">()</span>
@ -105,7 +105,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Simple-upgrade-class.html#ostree-sysroot-upgrader-pull" title="ostree_sysroot_upgrader_pull ()">ostree_sysroot_upgrader_pull</a> <span class="c_punctuation">()</span>
@ -113,7 +113,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Simple-upgrade-class.html#ostree-sysroot-upgrader-pull-one-dir" title="ostree_sysroot_upgrader_pull_one_dir ()">ostree_sysroot_upgrader_pull_one_dir</a> <span class="c_punctuation">()</span>
@ -121,7 +121,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-Simple-upgrade-class.html#ostree-sysroot-upgrader-deploy" title="ostree_sysroot_upgrader_deploy ()">ostree_sysroot_upgrader_deploy</a> <span class="c_punctuation">()</span>
@ -164,8 +164,8 @@ operations.</p>
<a name="ostree-sysroot-upgrader-new"></a><h3>ostree_sysroot_upgrader_new ()</h3>
<pre class="programlisting"><a class="link" href="ostree-Simple-upgrade-class.html#OstreeSysrootUpgrader" title="OstreeSysrootUpgrader"><span class="returnvalue">OstreeSysrootUpgrader</span></a> *
ostree_sysroot_upgrader_new (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *sysroot</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<div class="refsect3">
<a name="ostree-sysroot-upgrader-new.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -193,8 +193,8 @@ ostree_sysroot_upgrader_new (<em class="parameter"><code><a class="link" href="o
<pre class="programlisting"><a class="link" href="ostree-Simple-upgrade-class.html#OstreeSysrootUpgrader" title="OstreeSysrootUpgrader"><span class="returnvalue">OstreeSysrootUpgrader</span></a> *
ostree_sysroot_upgrader_new_for_os (<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *sysroot</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *osname</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<div class="refsect3">
<a name="ostree-sysroot-upgrader-new-for-os.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -231,8 +231,8 @@ ostree_sysroot_upgrader_new_for_os_with_flags
(<em class="parameter"><code><a class="link" href="ostree-Root-partition-mount-point.html#OstreeSysroot" title="OstreeSysroot"><span class="type">OstreeSysroot</span></a> *sysroot</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *osname</code></em>,
<em class="parameter"><code><a class="link" href="ostree-Simple-upgrade-class.html#OstreeSysrootUpgraderFlags" title="enum OstreeSysrootUpgraderFlags"><span class="type">OstreeSysrootUpgraderFlags</span></a> flags</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<div class="refsect3">
<a name="ostree-sysroot-upgrader-new-for-os-with-flags.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -269,7 +269,7 @@ ostree_sysroot_upgrader_new_for_os_with_flags
<hr>
<div class="refsect2">
<a name="ostree-sysroot-upgrader-get-origin"></a><h3>ostree_sysroot_upgrader_get_origin ()</h3>
<pre class="programlisting"><span class="returnvalue">GKeyFile</span> *
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Key-value-file-parser.html#GKeyFile"><span class="returnvalue">GKeyFile</span></a> *
ostree_sysroot_upgrader_get_origin (<em class="parameter"><code><a class="link" href="ostree-Simple-upgrade-class.html#OstreeSysrootUpgrader" title="OstreeSysrootUpgrader"><span class="type">OstreeSysrootUpgrader</span></a> *self</code></em>);</pre>
<div class="refsect3">
<a name="ostree-sysroot-upgrader-get-origin.parameters"></a><h4>Parameters</h4>
@ -288,14 +288,14 @@ ostree_sysroot_upgrader_get_origin (<em class="parameter"><code><a class="link"
</div>
<div class="refsect3">
<a name="ostree-sysroot-upgrader-get-origin.returns"></a><h4>Returns</h4>
<p> The origin file, or <code class="literal">NULL</code> if unknown. </p>
<p> The origin file, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if unknown. </p>
<p><span class="annotation">[<a href="http://foldoc.org/transfer%20none"><span class="acronym">transfer none</span></a>]</span></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ostree-sysroot-upgrader-dup-origin"></a><h3>ostree_sysroot_upgrader_dup_origin ()</h3>
<pre class="programlisting"><span class="returnvalue">GKeyFile</span> *
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Key-value-file-parser.html#GKeyFile"><span class="returnvalue">GKeyFile</span></a> *
ostree_sysroot_upgrader_dup_origin (<em class="parameter"><code><a class="link" href="ostree-Simple-upgrade-class.html#OstreeSysrootUpgrader" title="OstreeSysrootUpgrader"><span class="type">OstreeSysrootUpgrader</span></a> *self</code></em>);</pre>
<div class="refsect3">
<a name="ostree-sysroot-upgrader-dup-origin.parameters"></a><h4>Parameters</h4>
@ -314,18 +314,18 @@ ostree_sysroot_upgrader_dup_origin (<em class="parameter"><code><a class="link"
</div>
<div class="refsect3">
<a name="ostree-sysroot-upgrader-dup-origin.returns"></a><h4>Returns</h4>
<p> A copy of the origin file, or <code class="literal">NULL</code> if unknown. </p>
<p> A copy of the origin file, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if unknown. </p>
<p><span class="annotation">[<a href="http://foldoc.org/transfer%20full"><span class="acronym">transfer full</span></a>]</span></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ostree-sysroot-upgrader-set-origin"></a><h3>ostree_sysroot_upgrader_set_origin ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_upgrader_set_origin (<em class="parameter"><code><a class="link" href="ostree-Simple-upgrade-class.html#OstreeSysrootUpgrader" title="OstreeSysrootUpgrader"><span class="type">OstreeSysrootUpgrader</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">GKeyFile</span> *origin</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Key-value-file-parser.html#GKeyFile"><span class="type">GKeyFile</span></a> *origin</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Replace the origin with <em class="parameter"><code>origin</code></em>
.</p>
<div class="refsect3">
@ -384,18 +384,18 @@ ostree_sysroot_upgrader_get_origin_description
</div>
<div class="refsect3">
<a name="ostree-sysroot-upgrader-get-origin-description.returns"></a><h4>Returns</h4>
<p> A one-line descriptive summary of the origin, or <code class="literal">NULL</code> if unknown</p>
<p> A one-line descriptive summary of the origin, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if unknown</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="ostree-sysroot-upgrader-check-timestamps"></a><h3>ostree_sysroot_upgrader_check_timestamps ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_upgrader_check_timestamps
(<em class="parameter"><code><a class="link" href="ostree-Content-addressed-object-store.html#OstreeRepo" title="OstreeRepo"><span class="type">OstreeRepo</span></a> *repo</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *from_rev</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *to_rev</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Check that the timestamp on <em class="parameter"><code>to_rev</code></em>
is equal to or newer than
<em class="parameter"><code>from_rev</code></em>
@ -437,21 +437,21 @@ attackers which provide a client with an older commit.</p>
<hr>
<div class="refsect2">
<a name="ostree-sysroot-upgrader-pull"></a><h3>ostree_sysroot_upgrader_pull ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_upgrader_pull (<em class="parameter"><code><a class="link" href="ostree-Simple-upgrade-class.html#OstreeSysrootUpgrader" title="OstreeSysrootUpgrader"><span class="type">OstreeSysrootUpgrader</span></a> *self</code></em>,
<em class="parameter"><code><a class="link" href="ostree-Content-addressed-object-store.html#OstreeRepoPullFlags" title="enum OstreeRepoPullFlags"><span class="type">OstreeRepoPullFlags</span></a> flags</code></em>,
<em class="parameter"><code><a class="link" href="ostree-Simple-upgrade-class.html#OstreeSysrootUpgraderPullFlags" title="enum OstreeSysrootUpgraderPullFlags"><span class="type">OstreeSysrootUpgraderPullFlags</span></a> upgrader_flags</code></em>,
<em class="parameter"><code><a class="link" href="ostree-Progress-notification-system-for-asynchronous-operations.html#OstreeAsyncProgress" title="OstreeAsyncProgress"><span class="type">OstreeAsyncProgress</span></a> *progress</code></em>,
<em class="parameter"><code><span class="type">gboolean</span> *out_changed</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *out_changed</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Perform a pull from the origin. First check if the ref has
changed, if so download the linked objects, and store the updated
ref locally. Then <em class="parameter"><code>out_changed</code></em>
will be <code class="literal">TRUE</code>.</p>
will be <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.</p>
<p>If the origin remote is unchanged, <em class="parameter"><code>out_changed</code></em>
will be set to
<code class="literal">FALSE</code>.</p>
<a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</p>
<div class="refsect3">
<a name="ostree-sysroot-upgrader-pull.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -503,15 +503,15 @@ ref locally. Then <em class="parameter"><code>out_changed</code></em>
<hr>
<div class="refsect2">
<a name="ostree-sysroot-upgrader-pull-one-dir"></a><h3>ostree_sysroot_upgrader_pull_one_dir ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_upgrader_pull_one_dir (<em class="parameter"><code><a class="link" href="ostree-Simple-upgrade-class.html#OstreeSysrootUpgrader" title="OstreeSysrootUpgrader"><span class="type">OstreeSysrootUpgrader</span></a> *self</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *dir_to_pull</code></em>,
<em class="parameter"><code><a class="link" href="ostree-Content-addressed-object-store.html#OstreeRepoPullFlags" title="enum OstreeRepoPullFlags"><span class="type">OstreeRepoPullFlags</span></a> flags</code></em>,
<em class="parameter"><code><a class="link" href="ostree-Simple-upgrade-class.html#OstreeSysrootUpgraderPullFlags" title="enum OstreeSysrootUpgraderPullFlags"><span class="type">OstreeSysrootUpgraderPullFlags</span></a> upgrader_flags</code></em>,
<em class="parameter"><code><a class="link" href="ostree-Progress-notification-system-for-asynchronous-operations.html#OstreeAsyncProgress" title="OstreeAsyncProgress"><span class="type">OstreeAsyncProgress</span></a> *progress</code></em>,
<em class="parameter"><code><span class="type">gboolean</span> *out_changed</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *out_changed</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Like <a class="link" href="ostree-Simple-upgrade-class.html#ostree-sysroot-upgrader-pull" title="ostree_sysroot_upgrader_pull ()"><code class="function">ostree_sysroot_upgrader_pull()</code></a>, but allows retrieving just a
subpath of the tree. This can be used to download metadata files
from inside the tree such as package databases.</p>
@ -519,10 +519,10 @@ from inside the tree such as package databases.</p>
<hr>
<div class="refsect2">
<a name="ostree-sysroot-upgrader-deploy"></a><h3>ostree_sysroot_upgrader_deploy ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_sysroot_upgrader_deploy (<em class="parameter"><code><a class="link" href="ostree-Simple-upgrade-class.html#OstreeSysrootUpgrader" title="OstreeSysrootUpgrader"><span class="type">OstreeSysrootUpgrader</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Write the new deployment to disk, perform a configuration merge
with /etc, and update the bootloader configuration.</p>
<div class="refsect3">

View File

@ -57,7 +57,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-ostree-bootconfig-parser.html#ostree-bootconfig-parser-parse" title="ostree_bootconfig_parser_parse ()">ostree_bootconfig_parser_parse</a> <span class="c_punctuation">()</span>
@ -65,7 +65,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-ostree-bootconfig-parser.html#ostree-bootconfig-parser-parse-at" title="ostree_bootconfig_parser_parse_at ()">ostree_bootconfig_parser_parse_at</a> <span class="c_punctuation">()</span>
@ -73,7 +73,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-ostree-bootconfig-parser.html#ostree-bootconfig-parser-write" title="ostree_bootconfig_parser_write ()">ostree_bootconfig_parser_write</a> <span class="c_punctuation">()</span>
@ -81,7 +81,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-ostree-bootconfig-parser.html#ostree-bootconfig-parser-write-at" title="ostree_bootconfig_parser_write_at ()">ostree_bootconfig_parser_write_at</a> <span class="c_punctuation">()</span>
@ -158,21 +158,21 @@ ostree_bootconfig_parser_clone (<em class="parameter"><code><a class="link" href
<hr>
<div class="refsect2">
<a name="ostree-bootconfig-parser-parse"></a><h3>ostree_bootconfig_parser_parse ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_bootconfig_parser_parse (<em class="parameter"><code><a class="link" href="ostree-ostree-bootconfig-parser.html#OstreeBootconfigParser" title="OstreeBootconfigParser"><span class="type">OstreeBootconfigParser</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">GFile</span> *path</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="type">GFile</span></a> *path</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="ostree-bootconfig-parser-parse-at"></a><h3>ostree_bootconfig_parser_parse_at ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_bootconfig_parser_parse_at (<em class="parameter"><code><a class="link" href="ostree-ostree-bootconfig-parser.html#OstreeBootconfigParser" title="OstreeBootconfigParser"><span class="type">OstreeBootconfigParser</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">int</span> dfd</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *path</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Initialize a bootconfig from the given file.</p>
<div class="refsect3">
<a name="ostree-bootconfig-parser-parse-at.parameters"></a><h4>Parameters</h4>
@ -215,21 +215,21 @@ ostree_bootconfig_parser_parse_at (<em class="parameter"><code><a class="link" h
<hr>
<div class="refsect2">
<a name="ostree-bootconfig-parser-write"></a><h3>ostree_bootconfig_parser_write ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_bootconfig_parser_write (<em class="parameter"><code><a class="link" href="ostree-ostree-bootconfig-parser.html#OstreeBootconfigParser" title="OstreeBootconfigParser"><span class="type">OstreeBootconfigParser</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">GFile</span> *output</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="type">GFile</span></a> *output</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="ostree-bootconfig-parser-write-at"></a><h3>ostree_bootconfig_parser_write_at ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_bootconfig_parser_write_at (<em class="parameter"><code><a class="link" href="ostree-ostree-bootconfig-parser.html#OstreeBootconfigParser" title="OstreeBootconfigParser"><span class="type">OstreeBootconfigParser</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">int</span> dfd</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *path</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
</div>
<hr>
<div class="refsect2">

View File

@ -69,7 +69,7 @@
<div class="refsect2">
<a name="ostree-chain-input-stream-new"></a><h3>ostree_chain_input_stream_new ()</h3>
<pre class="programlisting"><a class="link" href="ostree-ostree-chain-input-stream.html#OstreeChainInputStream" title="struct OstreeChainInputStream"><span class="returnvalue">OstreeChainInputStream</span></a> *
ostree_chain_input_stream_new (<em class="parameter"><code><span class="type">GPtrArray</span> *streams</code></em>);</pre>
ostree_chain_input_stream_new (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *streams</code></em>);</pre>
</div>
</div>
<div class="refsect1">

View File

@ -69,8 +69,8 @@
<div class="refsect2">
<a name="ostree-checksum-input-stream-new"></a><h3>ostree_checksum_input_stream_new ()</h3>
<pre class="programlisting"><a class="link" href="ostree-ostree-checksum-input-stream.html#OstreeChecksumInputStream" title="struct OstreeChecksumInputStream"><span class="returnvalue">OstreeChecksumInputStream</span></a> *
ostree_checksum_input_stream_new (<em class="parameter"><code><span class="type">GInputStream</span> *stream</code></em>,
<em class="parameter"><code><span class="type">GChecksum</span> *checksum</code></em>);</pre>
ostree_checksum_input_stream_new (<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GInputStream.html#GInputStream-struct"><span class="type">GInputStream</span></a> *stream</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Data-Checksums.html#GChecksum"><span class="type">GChecksum</span></a> *checksum</code></em>);</pre>
</div>
</div>
<div class="refsect1">

View File

@ -41,7 +41,7 @@
<tbody>
<tr>
<td class="function_type">
<span class="returnvalue">guint</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-ostree-deployment.html#ostree-deployment-hash" title="ostree_deployment_hash ()">ostree_deployment_hash</a> <span class="c_punctuation">()</span>
@ -49,7 +49,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-ostree-deployment.html#ostree-deployment-equal" title="ostree_deployment_equal ()">ostree_deployment_equal</a> <span class="c_punctuation">()</span>
@ -118,7 +118,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GKeyFile</span> *
<a href="https://developer.gnome.org/glib/unstable/glib-Key-value-file-parser.html#GKeyFile"><span class="returnvalue">GKeyFile</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-ostree-deployment.html#ostree-deployment-get-origin" title="ostree_deployment_get_origin ()">ostree_deployment_get_origin</a> <span class="c_punctuation">()</span>
@ -210,15 +210,15 @@
<a name="ostree-ostree-deployment.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="ostree-deployment-hash"></a><h3>ostree_deployment_hash ()</h3>
<pre class="programlisting"><span class="returnvalue">guint</span>
ostree_deployment_hash (<em class="parameter"><code><span class="type">gconstpointer</span> v</code></em>);</pre>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
ostree_deployment_hash (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> v</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="ostree-deployment-equal"></a><h3>ostree_deployment_equal ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
ostree_deployment_equal (<em class="parameter"><code><span class="type">gconstpointer</span> ap</code></em>,
<em class="parameter"><code><span class="type">gconstpointer</span> bp</code></em>);</pre>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_deployment_equal (<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> ap</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> bp</code></em>);</pre>
<div class="refsect3">
<a name="ostree-deployment-equal.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -243,7 +243,7 @@ ostree_deployment_equal (<em class="parameter"><code><span class="type">gconstpo
</div>
<div class="refsect3">
<a name="ostree-deployment-equal.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> if deployments have the same osname, csum, and deployserial</p>
<p> <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if deployments have the same osname, csum, and deployserial</p>
</div>
</div>
<hr>
@ -322,7 +322,7 @@ ostree_deployment_get_bootconfig (<em class="parameter"><code><a class="link" hr
<hr>
<div class="refsect2">
<a name="ostree-deployment-get-origin"></a><h3>ostree_deployment_get_origin ()</h3>
<pre class="programlisting"><span class="returnvalue">GKeyFile</span> *
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Key-value-file-parser.html#GKeyFile"><span class="returnvalue">GKeyFile</span></a> *
ostree_deployment_get_origin (<em class="parameter"><code><a class="link" href="ostree-ostree-deployment.html#OstreeDeployment" title="OstreeDeployment"><span class="type">OstreeDeployment</span></a> *self</code></em>);</pre>
<div class="refsect3">
<a name="ostree-deployment-get-origin.parameters"></a><h4>Parameters</h4>
@ -406,7 +406,7 @@ ostree_deployment_set_bootconfig (<em class="parameter"><code><a class="link" hr
<a name="ostree-deployment-set-origin"></a><h3>ostree_deployment_set_origin ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
ostree_deployment_set_origin (<em class="parameter"><code><a class="link" href="ostree-ostree-deployment.html#OstreeDeployment" title="OstreeDeployment"><span class="type">OstreeDeployment</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">GKeyFile</span> *origin</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Key-value-file-parser.html#GKeyFile"><span class="type">GKeyFile</span></a> *origin</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
@ -506,7 +506,7 @@ ostree_deployment_unlocked_state_to_string
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><span class="type">GKeyFile</span> *<em class="structfield"><code><a name="OstreeDeployment.origin"></a>origin</code></em>;</p></td>
<td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Key-value-file-parser.html#GKeyFile"><span class="type">GKeyFile</span></a> *<em class="structfield"><code><a name="OstreeDeployment.origin"></a>origin</code></em>;</p></td>
<td class="struct_member_description"><p>How to construct an upgraded version of this tree</p></td>
<td class="struct_member_annotations"> </td>
</tr>

View File

@ -57,7 +57,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-ostree-diff.html#ostree-diff-dirs" title="ostree_diff_dirs ()">ostree_diff_dirs</a> <span class="c_punctuation">()</span>
@ -112,15 +112,15 @@ ostree_diff_item_unref (<em class="parameter"><code><a class="link" href="ostree
<hr>
<div class="refsect2">
<a name="ostree-diff-dirs"></a><h3>ostree_diff_dirs ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_diff_dirs (<em class="parameter"><code><a class="link" href="ostree-ostree-diff.html#OstreeDiffFlags" title="enum OstreeDiffFlags"><span class="type">OstreeDiffFlags</span></a> flags</code></em>,
<em class="parameter"><code><span class="type">GFile</span> *a</code></em>,
<em class="parameter"><code><span class="type">GFile</span> *b</code></em>,
<em class="parameter"><code><span class="type">GPtrArray</span> *modified</code></em>,
<em class="parameter"><code><span class="type">GPtrArray</span> *removed</code></em>,
<em class="parameter"><code><span class="type">GPtrArray</span> *added</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="type">GFile</span></a> *a</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="type">GFile</span></a> *b</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *modified</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *removed</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *added</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>Compute the difference between directory <em class="parameter"><code>a</code></em>
and <em class="parameter"><code>b</code></em>
as 3 separate
@ -144,7 +144,7 @@ sets of <a class="link" href="ostree-ostree-diff.html#OstreeDiffItem" title="str
</tr>
<tr>
<td class="parameter_name"><p>a</p></td>
<td class="parameter_description"><p>First directory path, or <code class="literal">NULL</code></p></td>
<td class="parameter_description"><p>First directory path, or <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
@ -185,11 +185,11 @@ sets of <a class="link" href="ostree-ostree-diff.html#OstreeDiffItem" title="str
<div class="refsect2">
<a name="ostree-diff-print"></a><h3>ostree_diff_print ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
ostree_diff_print (<em class="parameter"><code><span class="type">GFile</span> *a</code></em>,
<em class="parameter"><code><span class="type">GFile</span> *b</code></em>,
<em class="parameter"><code><span class="type">GPtrArray</span> *modified</code></em>,
<em class="parameter"><code><span class="type">GPtrArray</span> *removed</code></em>,
<em class="parameter"><code><span class="type">GPtrArray</span> *added</code></em>);</pre>
ostree_diff_print (<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="type">GFile</span></a> *a</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFile.html#GFile-struct"><span class="type">GFile</span></a> *b</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *modified</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *removed</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *added</code></em>);</pre>
<p>Print the contents of a diff to stdout.</p>
<div class="refsect3">
<a name="ostree-diff-print.parameters"></a><h4>Parameters</h4>

View File

@ -40,7 +40,7 @@
<tbody>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-ostree-repo-file.html#ostree-repo-file-ensure-resolved" title="ostree_repo_file_ensure_resolved ()">ostree_repo_file_ensure_resolved</a> <span class="c_punctuation">()</span>
@ -48,7 +48,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-ostree-repo-file.html#ostree-repo-file-get-xattrs" title="ostree_repo_file_get_xattrs ()">ostree_repo_file_get_xattrs</a> <span class="c_punctuation">()</span>
@ -94,7 +94,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GVariant</span> *
<a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-ostree-repo-file.html#ostree-repo-file-tree-get-contents" title="ostree_repo_file_tree_get_contents ()">ostree_repo_file_tree_get_contents</a> <span class="c_punctuation">()</span>
@ -102,7 +102,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GVariant</span> *
<a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
</td>
<td class="function_name">
<a class="link" href="ostree-ostree-repo-file.html#ostree-repo-file-tree-get-metadata" title="ostree_repo_file_tree_get_metadata ()">ostree_repo_file_tree_get_metadata</a> <span class="c_punctuation">()</span>
@ -125,7 +125,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
<a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="ostree-ostree-repo-file.html#ostree-repo-file-tree-query-child" title="ostree_repo_file_tree_query_child ()">ostree_repo_file_tree_query_child</a> <span class="c_punctuation">()</span>
@ -154,18 +154,18 @@
<a name="ostree-ostree-repo-file.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="ostree-repo-file-ensure-resolved"></a><h3>ostree_repo_file_ensure_resolved ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_repo_file_ensure_resolved (<em class="parameter"><code><a class="link" href="ostree-ostree-repo-file.html#OstreeRepoFile" title="OstreeRepoFile"><span class="type">OstreeRepoFile</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="ostree-repo-file-get-xattrs"></a><h3>ostree_repo_file_get_xattrs ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_repo_file_get_xattrs (<em class="parameter"><code><a class="link" href="ostree-ostree-repo-file.html#OstreeRepoFile" title="OstreeRepoFile"><span class="type">OstreeRepoFile</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">GVariant</span> **out_xattrs</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> **out_xattrs</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
@ -195,7 +195,7 @@ ostree_repo_file_get_root (<em class="parameter"><code><a class="link" href="ost
<pre class="programlisting"><span class="returnvalue">void</span>
ostree_repo_file_tree_set_metadata (<em class="parameter"><code><a class="link" href="ostree-ostree-repo-file.html#OstreeRepoFile" title="OstreeRepoFile"><span class="type">OstreeRepoFile</span></a> *self</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *checksum</code></em>,
<em class="parameter"><code><span class="type">GVariant</span> *metadata</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *metadata</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
@ -214,13 +214,13 @@ ostree_repo_file_tree_get_metadata_checksum
<hr>
<div class="refsect2">
<a name="ostree-repo-file-tree-get-contents"></a><h3>ostree_repo_file_tree_get_contents ()</h3>
<pre class="programlisting"><span class="returnvalue">GVariant</span> *
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
ostree_repo_file_tree_get_contents (<em class="parameter"><code><a class="link" href="ostree-ostree-repo-file.html#OstreeRepoFile" title="OstreeRepoFile"><span class="type">OstreeRepoFile</span></a> *self</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="ostree-repo-file-tree-get-metadata"></a><h3>ostree_repo_file_tree_get_metadata ()</h3>
<pre class="programlisting"><span class="returnvalue">GVariant</span> *
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
ostree_repo_file_tree_get_metadata (<em class="parameter"><code><a class="link" href="ostree-ostree-repo-file.html#OstreeRepoFile" title="OstreeRepoFile"><span class="type">OstreeRepoFile</span></a> *self</code></em>);</pre>
</div>
<hr>
@ -235,20 +235,20 @@ ostree_repo_file_get_checksum (<em class="parameter"><code><a class="link" href=
<pre class="programlisting"><span class="returnvalue">int</span>
ostree_repo_file_tree_find_child (<em class="parameter"><code><a class="link" href="ostree-ostree-repo-file.html#OstreeRepoFile" title="OstreeRepoFile"><span class="type">OstreeRepoFile</span></a> *self</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *name</code></em>,
<em class="parameter"><code><span class="type">gboolean</span> *is_dir</code></em>,
<em class="parameter"><code><span class="type">GVariant</span> **out_container</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *is_dir</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> **out_container</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="ostree-repo-file-tree-query-child"></a><h3>ostree_repo_file_tree_query_child ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
ostree_repo_file_tree_query_child (<em class="parameter"><code><a class="link" href="ostree-ostree-repo-file.html#OstreeRepoFile" title="OstreeRepoFile"><span class="type">OstreeRepoFile</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">int</span> n</code></em>,
<em class="parameter"><code>const <span class="type">char</span> *attributes</code></em>,
<em class="parameter"><code><span class="type">GFileQueryInfoFlags</span> flags</code></em>,
<em class="parameter"><code><span class="type">GFileInfo</span> **out_info</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFile.html#GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GFileInfo.html#GFileInfo-struct"><span class="type">GFileInfo</span></a> **out_info</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/gio/unstable/GCancellable.html#GCancellable-struct"><span class="type">GCancellable</span></a> *cancellable</code></em>,
<em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
</div>
</div>
<div class="refsect1">

View File

@ -196,6 +196,7 @@
<keyword type="function" name="ostree_repo_gpg_verify_data ()" link="ostree-Content-addressed-object-store.html#ostree-repo-gpg-verify-data"/>
<keyword type="function" name="ostree_repo_verify_commit ()" link="ostree-Content-addressed-object-store.html#ostree-repo-verify-commit"/>
<keyword type="function" name="ostree_repo_verify_commit_ext ()" link="ostree-Content-addressed-object-store.html#ostree-repo-verify-commit-ext"/>
<keyword type="function" name="ostree_repo_verify_commit_for_remote ()" link="ostree-Content-addressed-object-store.html#ostree-repo-verify-commit-for-remote"/>
<keyword type="function" name="ostree_repo_verify_summary ()" link="ostree-Content-addressed-object-store.html#ostree-repo-verify-summary"/>
<keyword type="function" name="ostree_repo_regenerate_summary ()" link="ostree-Content-addressed-object-store.html#ostree-repo-regenerate-summary"/>
<keyword type="typedef" name="OstreeRepo" link="ostree-Content-addressed-object-store.html#OstreeRepo"/>

View File

@ -1066,6 +1066,10 @@
</dt>
<dd></dd>
<dt>
<a class="link" href="ostree-Content-addressed-object-store.html#ostree-repo-verify-commit-for-remote" title="ostree_repo_verify_commit_for_remote ()">ostree_repo_verify_commit_for_remote</a>, function in <a class="link" href="ostree-Content-addressed-object-store.html" title="Content-addressed object store">Content-addressed object store</a>
</dt>
<dd></dd>
<dt>
<a class="link" href="ostree-Content-addressed-object-store.html#ostree-repo-verify-summary" title="ostree_repo_verify_summary ()">ostree_repo_verify_summary</a>, function in <a class="link" href="ostree-Content-addressed-object-store.html" title="Content-addressed object store">Content-addressed object store</a>
</dt>
<dd></dd>

View File

@ -379,6 +379,7 @@ ostree_repo_add_gpg_signature_summary
ostree_repo_gpg_verify_data
ostree_repo_verify_commit
ostree_repo_verify_commit_ext
ostree_repo_verify_commit_for_remote
ostree_repo_verify_summary
ostree_repo_regenerate_summary
<SUBSECTION Standard>

View File

@ -1 +1 @@
2016.12
2016.13

View File

@ -11,13 +11,24 @@ bn=$(basename $1)
tempdir=$(mktemp -d /var/tmp/tap-test.XXXXXX)
touch ${tempdir}/.testtmp
function cleanup () {
if test -n "${TEST_SKIP_CLEANUP:-}"; then
echo "Skipping cleanup of ${tempdir}"
else if test -f ${tempdir}/.testtmp; then
if test -f ${tempdir}/.testtmp; then
rm "${tempdir}" -rf
fi
fi
}
trap cleanup EXIT
function skip_cleanup() {
echo "Skipping cleanup of ${tempdir}"
}
cd ${tempdir}
${srcd}/${bn} -k --tap
rc=$?
case "${TEST_SKIP_CLEANUP:-}" in
no|"") cleanup ;;
err)
if test $rc != 0; then
skip_cleanup
else
cleanup
fi ;;
*) skip_cleanup ;;
esac
exit $rc

20
configure vendored
View File

@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.69 for ostree 2016.13.
# Generated by GNU Autoconf 2.69 for ostree 2016.14.
#
# Report bugs to <walters@verbum.org>.
#
@ -590,8 +590,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='ostree'
PACKAGE_TARNAME='ostree'
PACKAGE_VERSION='2016.13'
PACKAGE_STRING='ostree 2016.13'
PACKAGE_VERSION='2016.14'
PACKAGE_STRING='ostree 2016.14'
PACKAGE_BUGREPORT='walters@verbum.org'
PACKAGE_URL=''
@ -1480,7 +1480,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures ostree 2016.13 to adapt to many kinds of systems.
\`configure' configures ostree 2016.14 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1550,7 +1550,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of ostree 2016.13:";;
short | recursive ) echo "Configuration of ostree 2016.14:";;
esac
cat <<\_ACEOF
@ -1759,7 +1759,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
ostree configure 2016.13
ostree configure 2016.14
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@ -2174,7 +2174,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by ostree $as_me 2016.13, which was
It was created by ostree $as_me 2016.14, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@ -3041,7 +3041,7 @@ fi
# Define the identity of the package.
PACKAGE='ostree'
VERSION='2016.13'
VERSION='2016.14'
# Some tools Automake needs.
@ -17092,7 +17092,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by ostree $as_me 2016.13, which was
This file was extended by ostree $as_me 2016.14, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@ -17158,7 +17158,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
ostree config.status 2016.13
ostree config.status 2016.14
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"

View File

@ -1,6 +1,6 @@
AC_PREREQ([2.63])
dnl If incrementing the version here, remember to update libostree.sym too
AC_INIT([ostree], [2016.13], [walters@verbum.org])
AC_INIT([ostree], [2016.14], [walters@verbum.org])
AC_CONFIG_HEADER([config.h])
AC_CONFIG_MACRO_DIR([buildutil])
AC_CONFIG_AUX_DIR([build-aux])

View File

@ -2,7 +2,7 @@
.\" Title: ostree admin cleanup
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree admin cleanup
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree admin config-diff
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree admin config-diff
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree admin deploy
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree admin deploy
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree admin init-fs
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree admin init-fs
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree admin instutil
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree admin instutil
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree admin os-init
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree admin os-init
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree admin set-origin
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree admin set-origin
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree admin status
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree admin status
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree admin switch
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree admin switch
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree admin undeploy
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree admin undeploy
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree admin unlock
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree admin unlock
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree admin upgrade
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree admin upgrade
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree admin
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree admin
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree cat
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree cat
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree checkout
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree checkout
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree checksum
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree checksum
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree commit
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree commit
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree config
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree config
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree diff
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree diff
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree export
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree export
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree fsck
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree fsck
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree gpg-sign
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree gpg-sign
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree init
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree init
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree log
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree log
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree ls
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree ls
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree prune
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree prune
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree pull-local
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree pull-local
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree pull
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree pull
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree refs
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree refs
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree remote
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/10/2016
.\" Date: 11/23/2016
.\" Manual: ostree remote
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree reset
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree reset
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree rev-parse
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree rev-parse
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree show
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree show
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree static-delta
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree static-delta
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree summary
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree summary
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree trivial-httpd
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree trivial-httpd
.\" Source: OSTree
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: ostree
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree
.\" Source: OSTree
.\" Language: English
@ -250,7 +250,11 @@ or
OSTree supports signing commits with GPG\&. Operations on the system repository by default use keyring files in
/usr/share/ostree/trusted\&.gpg\&.d\&. Any public key in a keyring file in that directory will be trusted by the client\&. No private keys should be present in this directory\&.
.PP
In addition to the system repository, OSTree supports a per\-remote
In addition to the system repository, OSTree supports two other paths\&. First, there is a
gpgkeypath
option for remotes, which must point to the filename of an ASCII\-armored key\&.
.PP
Second, there is support for a per\-remote
\fIremotename\fR\&.trustedkeys\&.gpg
file stored in the toplevel of the repository (alongside
objects/

View File

@ -2,7 +2,7 @@
.\" Title: ostree.repo-config
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/10/2016
.\" Date: 11/23/2016
.\" Manual: ostree.repo-config
.\" Source: OSTree
.\" Language: English
@ -136,7 +136,9 @@ file, remotes may also be specified in
will be ignored\&.
.SH "PER\-REMOTE GPG KEYRINGS AND VERIFICATION"
.PP
OSTree supports a per\-remote GPG keyring\&. For more information see
OSTree supports a per\-remote GPG keyring, as well as a
gpgkeypath
option\&. For more information see
\fBostree\fR(1)\&. in the section
GPG verification\&.
.SH "PER\-REMOTE HTTP COOKIES"

View File

@ -199,7 +199,8 @@ Boston, MA 02111-1307, USA.
<refsect1>
<title>Per-remote GPG keyrings and verification</title>
<para>
OSTree supports a per-remote GPG keyring. For more information see
OSTree supports a per-remote GPG keyring, as well as a
<literal>gpgkeypath</literal> option. For more information see
<citerefentry><refentrytitle>ostree</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
in the section <literal>GPG verification</literal>.
</para>

View File

@ -2,7 +2,7 @@
.\" Title: ostree.repo
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: ostree.repo
.\" Source: OSTree
.\" Language: English

View File

@ -433,8 +433,12 @@ Boston, MA 02111-1307, USA.
in this directory.
</para>
<para>
In addition to the system repository, OSTree supports a
per-remote
In addition to the system repository, OSTree supports two
other paths. First, there is a
<literal>gpgkeypath</literal> option for remotes, which must
point to the filename of an ASCII-armored key.
</para>
<para>Second, there is support for a per-remote
<filename><replaceable>remotename</replaceable>.trustedkeys.gpg</filename>
file stored in the toplevel of the repository (alongside
<filename>objects/</filename> and such). This is

View File

@ -2,7 +2,7 @@
.\" Title: rofiles-fuse
.\" Author: Colin Walters <walters@verbum.org>
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 11/03/2016
.\" Date: 11/23/2016
.\" Manual: rofiles-fuse
.\" Source: rofiles-fuse
.\" Language: English

View File

@ -359,14 +359,28 @@ global:
/* No new symbols in 2016.12 */
/* No new symbols in 2016.13 */
LIBOSTREE_2016.14 {
global:
ostree_repo_verify_commit_for_remote;
} LIBOSTREE_2016.8;
/* NOTE NOTE NOTE
* Versions above here are released. Only add symbols below this line.
* NOTE NOTE NOTE
*/
/* Remove comment when first new symbol is added, replace XX with new stable version.
LIBOSTREE_2016.XX
/* Remove comment when first new symbol is added
LIBOSTREE_2016.XX {
global:
someostree_symbol_deleteme;
} LIBOSTREE_2016.8;
* Remove comment when first new symbol is added */
} LIBOSTREE_2016.14;
*/
/* Stub section for the stable release *after* this development one; don't
* edit this other than to update the last number. This is just a copy/paste
* source.
LIBOSTREE_2016.XX {
global:
someostree_symbol_deleteme;
} LIBOSTREE_2016.14;
*/

View File

@ -53,6 +53,7 @@ typedef struct {
GLnxLockFile tmpdir_lock;
int base_tmpdir_dfd;
GVariant *extra_headers;
int max_outstanding;
/* Queue for libsoup, see bgo#708591 */
@ -127,11 +128,10 @@ G_DEFINE_TYPE (OstreeFetcher, _ostree_fetcher, G_TYPE_OBJECT)
static ThreadClosure *
thread_closure_ref (ThreadClosure *thread_closure)
{
int refcount;
g_return_val_if_fail (thread_closure != NULL, NULL);
g_return_val_if_fail (thread_closure->ref_count > 0, NULL);
g_atomic_int_inc (&thread_closure->ref_count);
refcount = g_atomic_int_add (&thread_closure->ref_count, 1);
g_assert (refcount > 0);
return thread_closure;
}
@ -139,7 +139,6 @@ static void
thread_closure_unref (ThreadClosure *thread_closure)
{
g_return_if_fail (thread_closure != NULL);
g_return_if_fail (thread_closure->ref_count > 0);
if (g_atomic_int_dec_and_test (&thread_closure->ref_count))
{
@ -148,6 +147,8 @@ thread_closure_unref (ThreadClosure *thread_closure)
g_clear_pointer (&thread_closure->main_context, g_main_context_unref);
g_clear_pointer (&thread_closure->extra_headers, (GDestroyNotify)g_variant_unref);
if (thread_closure->tmpdir_dfd != -1)
close (thread_closure->tmpdir_dfd);
@ -194,11 +195,10 @@ pending_task_compare (gconstpointer a,
static OstreeFetcherPendingURI *
pending_uri_ref (OstreeFetcherPendingURI *pending)
{
gint refcount;
g_return_val_if_fail (pending != NULL, NULL);
g_return_val_if_fail (pending->ref_count > 0, NULL);
g_atomic_int_inc (&pending->ref_count);
refcount = g_atomic_int_add (&pending->ref_count, 1);
g_assert (refcount > 0);
return pending;
}
@ -336,6 +336,16 @@ session_thread_set_cookie_jar_cb (ThreadClosure *thread_closure,
SOUP_SESSION_FEATURE (jar));
}
static void
session_thread_set_headers_cb (ThreadClosure *thread_closure,
gpointer data)
{
GVariant *headers = data;
g_clear_pointer (&thread_closure->extra_headers, (GDestroyNotify)g_variant_unref);
thread_closure->extra_headers = g_variant_ref (headers);
}
#ifdef HAVE_LIBSOUP_CLIENT_CERTS
static void
session_thread_set_tls_interaction_cb (ThreadClosure *thread_closure,
@ -448,6 +458,17 @@ session_thread_request_uri (ThreadClosure *thread_closure,
return;
}
if (SOUP_IS_REQUEST_HTTP (pending->request) && thread_closure->extra_headers)
{
glnx_unref_object SoupMessage *msg = soup_request_http_get_message ((SoupRequestHTTP*) pending->request);
g_autoptr(GVariantIter) viter = g_variant_iter_new (thread_closure->extra_headers);
const char *key;
const char *value;
while (g_variant_iter_next (viter, "(&s&s)", &key, &value))
soup_message_headers_append (msg->request_headers, key, value);
}
if (pending->is_stream)
{
soup_request_send_async (pending->request,
@ -812,6 +833,16 @@ _ostree_fetcher_set_tls_database (OstreeFetcher *self,
}
}
void
_ostree_fetcher_set_extra_headers (OstreeFetcher *self,
GVariant *extra_headers)
{
session_thread_idle_add (self->thread_closure,
session_thread_set_headers_cb,
g_variant_ref (extra_headers),
(GDestroyNotify) g_variant_unref);
}
static gboolean
finish_stream (OstreeFetcherPendingURI *pending,
GCancellable *cancellable,

View File

@ -71,6 +71,9 @@ void _ostree_fetcher_set_client_cert (OstreeFetcher *fetcher,
void _ostree_fetcher_set_tls_database (OstreeFetcher *self,
GTlsDatabase *db);
void _ostree_fetcher_set_extra_headers (OstreeFetcher *self,
GVariant *extra_headers);
guint64 _ostree_fetcher_bytes_transferred (OstreeFetcher *self);
void _ostree_fetcher_mirrored_request_with_partial_async (OstreeFetcher *self,

View File

@ -25,6 +25,7 @@
#include "libglnx.h"
#include "ostree-gpg-verifier.h"
#include "ot-gpg-utils.h"
#include "ostree-gpg-verify-result-private.h"
#include "otutil.h"
@ -39,6 +40,7 @@ struct OstreeGpgVerifier {
GObject parent;
GList *keyrings;
GPtrArray *key_ascii_files;
};
G_DEFINE_TYPE (OstreeGpgVerifier, _ostree_gpg_verifier, G_TYPE_OBJECT)
@ -49,6 +51,8 @@ ostree_gpg_verifier_finalize (GObject *object)
OstreeGpgVerifier *self = OSTREE_GPG_VERIFIER (object);
g_list_free_full (self->keyrings, g_object_unref);
if (self->key_ascii_files)
g_ptr_array_unref (self->key_ascii_files);
G_OBJECT_CLASS (_ostree_gpg_verifier_parent_class)->finalize (object);
}
@ -89,15 +93,15 @@ _ostree_gpg_verifier_check_signature (OstreeGpgVerifier *self,
GCancellable *cancellable,
GError **error)
{
gpgme_ctx_t gpg_ctx = NULL;
gpgme_error_t gpg_error = 0;
gpgme_data_t data_buffer = NULL;
gpgme_data_t signature_buffer = NULL;
ot_auto_gpgme_data gpgme_data_t data_buffer = NULL;
ot_auto_gpgme_data gpgme_data_t signature_buffer = NULL;
g_autofree char *tmp_dir = NULL;
g_autoptr(GOutputStream) target_stream = NULL;
OstreeGpgVerifyResult *result = NULL;
gboolean success = FALSE;
GList *link;
int armor;
/* GPGME has no API for using multiple keyrings (aka, gpg --keyring),
* so we concatenate all the keyring files into one pubring.gpg in a
@ -149,6 +153,44 @@ _ostree_gpg_verifier_check_signature (OstreeGpgVerifier *self,
if (!g_output_stream_close (target_stream, cancellable, error))
goto out;
/* Save the previous armor value - we need it on for importing ASCII keys */
armor = gpgme_get_armor (result->context);
gpgme_set_armor (result->context, 1);
/* Now, use the API to import ASCII-armored keys */
if (self->key_ascii_files)
{
for (guint i = 0; i < self->key_ascii_files->len; i++)
{
const char *path = self->key_ascii_files->pdata[i];
glnx_fd_close int fd = -1;
ot_auto_gpgme_data gpgme_data_t kdata = NULL;
fd = openat (AT_FDCWD, path, O_RDONLY | O_CLOEXEC) ;
if (fd < 0)
{
glnx_set_prefix_error_from_errno (error, "Opening %s", path);
goto out;
}
gpg_error = gpgme_data_new_from_fd (&kdata, fd);
if (gpg_error != GPG_ERR_NO_ERROR)
{
ot_gpgme_error_to_gio_error (gpg_error, error);
goto out;
}
gpg_error = gpgme_op_import (result->context, kdata);
if (gpg_error != GPG_ERR_NO_ERROR)
{
ot_gpgme_error_to_gio_error (gpg_error, error);
goto out;
}
}
}
gpgme_set_armor (result->context, armor);
/* Both the signed data and signature GBytes instances will outlive the
* gpgme_data_t structs, so we can safely reuse the GBytes memory buffer
* directly and avoid a copy. */
@ -191,14 +233,6 @@ _ostree_gpg_verifier_check_signature (OstreeGpgVerifier *self,
success = TRUE;
out:
if (gpg_ctx != NULL)
gpgme_release (gpg_ctx);
if (data_buffer != NULL)
gpgme_data_release (data_buffer);
if (signature_buffer != NULL)
gpgme_data_release (signature_buffer);
if (success)
{
/* Keep the temporary directory around for the life of the result
@ -233,6 +267,15 @@ _ostree_gpg_verifier_add_keyring (OstreeGpgVerifier *self,
self->keyrings = g_list_append (self->keyrings, g_object_ref (path));
}
void
_ostree_gpg_verifier_add_key_ascii_file (OstreeGpgVerifier *self,
const char *path)
{
if (!self->key_ascii_files)
self->key_ascii_files = g_ptr_array_new_with_free_func (g_free);
g_ptr_array_add (self->key_ascii_files, g_strdup (path));
}
gboolean
_ostree_gpg_verifier_add_keyring_dir (OstreeGpgVerifier *self,
GFile *path,

View File

@ -62,4 +62,7 @@ gboolean _ostree_gpg_verifier_add_global_keyring_dir (OstreeGpgVerifier *s
void _ostree_gpg_verifier_add_keyring (OstreeGpgVerifier *self,
GFile *path);
void _ostree_gpg_verifier_add_key_ascii_file (OstreeGpgVerifier *self,
const char *path);
G_END_DECLS

View File

@ -632,6 +632,9 @@ _ostree_metalink_request_sync (OstreeMetalink *self,
if (mainctx)
g_main_context_pop_thread_default (mainctx);
g_clear_object (&request.metalink);
g_clear_pointer (&request.verification_sha256, g_free);
g_clear_pointer (&request.verification_sha512, g_free);
g_clear_pointer (&request.last_metalink_error, g_free);
g_clear_pointer (&request.urls, g_ptr_array_unref);
g_clear_pointer (&request.parser, g_markup_parse_context_free);
return ret;

View File

@ -2281,7 +2281,15 @@ get_modified_xattrs (OstreeRepo *self,
}
else if (!(modifier && (modifier->flags & OSTREE_REPO_COMMIT_MODIFIER_FLAGS_SKIP_XATTRS) > 0))
{
if (path)
if (path && OSTREE_IS_REPO_FILE (path))
{
if (!ostree_repo_file_get_xattrs (OSTREE_REPO_FILE (path),
&ret_xattrs,
cancellable,
error))
goto out;
}
else if (path)
{
if (!glnx_dfd_name_get_all_xattrs (AT_FDCWD, gs_file_get_path_cached (path),
&ret_xattrs, cancellable, error))
@ -2542,16 +2550,6 @@ write_directory_to_mtree_internal (OstreeRepo *self,
ostree_mutable_tree_set_metadata_checksum (mtree, ostree_repo_file_tree_get_metadata_checksum (repo_dir));
/* If the mtree was empty beforehand, the checksums on the mtree can simply
* become the checksums on the tree in the repo. Super simple. */
if (g_hash_table_size (ostree_mutable_tree_get_files (mtree)) == 0 &&
g_hash_table_size (ostree_mutable_tree_get_subdirs (mtree)) == 0)
{
ostree_mutable_tree_set_contents_checksum (mtree, ostree_repo_file_tree_get_contents_checksum (repo_dir));
ret = TRUE;
goto out;
}
filter_result = OSTREE_REPO_COMMIT_FILTER_ALLOW;
}
else
@ -2961,7 +2959,8 @@ ostree_repo_commit_modifier_new (OstreeRepoCommitModifierFlags flags,
OstreeRepoCommitModifier *
ostree_repo_commit_modifier_ref (OstreeRepoCommitModifier *modifier)
{
g_atomic_int_inc (&modifier->refcount);
gint refcount = g_atomic_int_add (&modifier->refcount, 1);
g_assert (refcount > 0);
return modifier;
}

View File

@ -943,7 +943,10 @@ ostree_repo_write_archive_to_mtree (OstreeRepo *self,
ret = TRUE;
out:
if (a)
(void)archive_read_close (a);
{
(void)archive_read_close (a);
(void)archive_read_free (a);
}
return ret;
#else
g_set_error (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,

View File

@ -54,6 +54,8 @@ typedef struct {
GCancellable *cancellable;
OstreeAsyncProgress *progress;
GVariant *extra_headers;
gboolean dry_run;
gboolean dry_run_emitted_progress;
gboolean legacy_transaction_resuming;
@ -100,7 +102,6 @@ typedef struct {
gboolean is_untrusted;
GPtrArray *dirs;
gboolean commitpartial_exists;
gboolean have_previous_bytes;
guint64 previous_bytes_sec;
@ -1026,6 +1027,57 @@ static_deltapart_fetch_on_complete (GObject *object,
fetch_static_delta_data_free (fetch_data);
}
static gboolean
process_verify_result (OtPullData *pull_data,
const char *checksum,
OstreeGpgVerifyResult *result,
GError **error)
{
if (result == NULL)
return FALSE;
/* Allow callers to output the results immediately. */
g_signal_emit_by_name (pull_data->repo,
"gpg-verify-result",
checksum, result);
return ostree_gpg_verify_result_require_valid_signature (result, error);
}
static gboolean
gpg_verify_unwritten_commit (OtPullData *pull_data,
const char *checksum,
GVariant *commit,
GVariant *detached_metadata,
GCancellable *cancellable,
GError **error)
{
if (pull_data->gpg_verify)
{
glnx_unref_object OstreeGpgVerifyResult *result = NULL;
g_autoptr(GBytes) signed_data = g_variant_get_data_as_bytes (commit);
if (!detached_metadata)
{
g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_FAILED,
"No detached metadata found for GPG verification");
return FALSE;
}
result = _ostree_repo_gpg_verify_with_metadata (pull_data->repo,
signed_data,
detached_metadata,
pull_data->remote_name,
NULL, NULL,
cancellable,
error);
if (!process_verify_result (pull_data, checksum, result, error))
return FALSE;
}
return TRUE;
}
static gboolean
scan_commit_object (OtPullData *pull_data,
const char *checksum,
@ -1034,11 +1086,17 @@ scan_commit_object (OtPullData *pull_data,
GError **error)
{
gboolean ret = FALSE;
/* If we found a legacy transaction flag, assume we have to scan.
* We always do a scan of dirtree objects; see
* https://github.com/ostreedev/ostree/issues/543
*/
OstreeRepoCommitState commitstate;
g_autoptr(GVariant) commit = NULL;
g_autoptr(GVariant) parent_csum = NULL;
const guchar *parent_csum_bytes = NULL;
gpointer depthp;
gint depth;
gboolean is_partial;
if (recursion_depth > OSTREE_MAX_RECURSION)
{
@ -1063,30 +1121,22 @@ scan_commit_object (OtPullData *pull_data,
{
glnx_unref_object OstreeGpgVerifyResult *result = NULL;
result = _ostree_repo_verify_commit_internal (pull_data->repo,
checksum,
pull_data->remote_name,
NULL,
NULL,
cancellable,
error);
if (result == NULL)
result = ostree_repo_verify_commit_for_remote (pull_data->repo,
checksum,
pull_data->remote_name,
cancellable,
error);
if (!process_verify_result (pull_data, checksum, result, error))
goto out;
/* Allow callers to output the results immediately. */
g_signal_emit_by_name (pull_data->repo,
"gpg-verify-result",
checksum, result);
if (ostree_gpg_verify_result_count_valid (result) == 0)
{
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
"GPG signatures found, but none are in trusted keyring");
goto out;
}
}
if (!ostree_repo_load_commit (pull_data->repo, checksum, &commit, &commitstate, error))
goto out;
/* If we found a legacy transaction flag, assume all commits are partial */
is_partial = pull_data->legacy_transaction_resuming
|| (commitstate & OSTREE_REPO_COMMIT_STATE_PARTIAL) > 0;
if (!ostree_repo_load_variant (pull_data->repo, OSTREE_OBJECT_TYPE_COMMIT, checksum,
&commit, error))
goto out;
@ -1135,7 +1185,11 @@ scan_commit_object (OtPullData *pull_data,
}
}
if (!pull_data->is_commit_only)
/* We only recurse to looking whether we need dirtree/dirmeta
* objects if the commit is partial, and we're not doing a
* commit-only fetch.
*/
if (is_partial && !pull_data->is_commit_only)
{
g_autoptr(GVariant) tree_contents_csum = NULL;
g_autoptr(GVariant) tree_meta_csum = NULL;
@ -1249,8 +1303,11 @@ scan_one_metadata_object_c (OtPullData *pull_data,
do_fetch_detached = (objtype == OSTREE_OBJECT_TYPE_COMMIT);
enqueue_one_object_request (pull_data, tmp_checksum, objtype, path, do_fetch_detached, FALSE);
}
else if (objtype == OSTREE_OBJECT_TYPE_COMMIT && pull_data->is_commit_only)
else if (is_stored && objtype == OSTREE_OBJECT_TYPE_COMMIT)
{
/* For commits, always refetch detached metadata. */
enqueue_one_object_request (pull_data, tmp_checksum, objtype, path, TRUE, TRUE);
if (!scan_commit_object (pull_data, tmp_checksum, recursion_depth,
pull_data->cancellable, error))
goto out;
@ -1258,59 +1315,12 @@ scan_one_metadata_object_c (OtPullData *pull_data,
g_hash_table_insert (pull_data->scanned_metadata, g_variant_ref (object), object);
pull_data->n_scanned_metadata++;
}
else if (is_stored)
else if (is_stored && objtype == OSTREE_OBJECT_TYPE_DIR_TREE)
{
gboolean do_scan = pull_data->legacy_transaction_resuming || is_requested || pull_data->commitpartial_exists;
if (!scan_dirtree_object (pull_data, tmp_checksum, path, recursion_depth,
pull_data->cancellable, error))
goto out;
/* For commits, always refetch detached metadata. */
if (objtype == OSTREE_OBJECT_TYPE_COMMIT)
enqueue_one_object_request (pull_data, tmp_checksum, objtype, path, TRUE, TRUE);
/* For commits, check whether we only had a partial fetch */
if (!do_scan && objtype == OSTREE_OBJECT_TYPE_COMMIT)
{
OstreeRepoCommitState commitstate;
if (!ostree_repo_load_commit (pull_data->repo, tmp_checksum, NULL, &commitstate, error))
goto out;
if (commitstate & OSTREE_REPO_COMMIT_STATE_PARTIAL)
{
do_scan = TRUE;
pull_data->commitpartial_exists = TRUE;
}
else if (pull_data->maxdepth != 0)
{
/* Not fully accurate, but the cost here of scanning all
* input commit objects if we're doing a depth fetch is
* pretty low. We'll do more accurate handling of depth
* when parsing the actual commit.
*/
do_scan = TRUE;
}
}
if (do_scan)
{
switch (objtype)
{
case OSTREE_OBJECT_TYPE_COMMIT:
if (!scan_commit_object (pull_data, tmp_checksum, recursion_depth,
pull_data->cancellable, error))
goto out;
break;
case OSTREE_OBJECT_TYPE_DIR_META:
break;
case OSTREE_OBJECT_TYPE_DIR_TREE:
if (!scan_dirtree_object (pull_data, tmp_checksum, path, recursion_depth,
pull_data->cancellable, error))
goto out;
break;
default:
g_assert_not_reached ();
break;
}
}
g_hash_table_insert (pull_data->scanned_metadata, g_variant_ref (object), object);
pull_data->n_scanned_metadata++;
}
@ -1595,7 +1605,6 @@ process_one_static_delta (OtPullData *pull_data,
{
g_autoptr(GVariant) to_csum_v = NULL;
g_autofree char *to_checksum = NULL;
g_autoptr(GVariant) to_commit = NULL;
gboolean have_to_commit;
to_csum_v = g_variant_get_child_value (delta_superblock, 3);
@ -1610,10 +1619,16 @@ process_one_static_delta (OtPullData *pull_data,
if (!have_to_commit)
{
FetchObjectData *fetch_data;
g_autoptr(GVariant) to_commit = g_variant_get_child_value (delta_superblock, 4);
g_autofree char *detached_path = _ostree_get_relative_static_delta_path (from_revision, to_revision, "commitmeta");
g_autoptr(GVariant) detached_data = NULL;
detached_data = g_variant_lookup_value (metadata, detached_path, G_VARIANT_TYPE("a{sv}"));
if (!gpg_verify_unwritten_commit (pull_data, to_revision, to_commit, detached_data,
cancellable, error))
goto out;
if (detached_data && !ostree_repo_write_commit_detached_metadata (pull_data->repo,
to_revision,
detached_data,
@ -1627,8 +1642,6 @@ process_one_static_delta (OtPullData *pull_data,
fetch_data->is_detached_meta = FALSE;
fetch_data->object_is_stored = FALSE;
to_commit = g_variant_get_child_value (delta_superblock, 4);
ostree_repo_write_metadata_async (pull_data->repo, OSTREE_OBJECT_TYPE_COMMIT, to_checksum,
to_commit,
pull_data->cancellable,
@ -1969,7 +1982,7 @@ _ostree_repo_remote_new_fetcher (OstreeRepo *self,
g_autofree char *cookie_file = g_strdup_printf ("%s.cookies.txt",
remote_name);
jar_path = g_build_filename (g_file_get_path (self->repodir), cookie_file,
jar_path = g_build_filename (gs_file_get_path_cached (self->repodir), cookie_file,
NULL);
if (g_file_test(jar_path, G_FILE_TEST_IS_REGULAR))
@ -2048,7 +2061,7 @@ fetch_mirrorlist (OstreeFetcher *fetcher,
GError **error)
{
gboolean ret = FALSE;
char **lines = NULL;
g_auto(GStrv) lines = NULL;
g_autofree char *contents = NULL;
SoupURI *mirrorlist = NULL;
g_autoptr(GPtrArray) ret_mirrorlist =
@ -2276,6 +2289,23 @@ repo_remote_fetch_summary (OstreeRepo *self,
return ret;
}
/* Create the fetcher by unioning options from the remote config, plus
* any options specific to this pull (such as extra headers).
*/
static gboolean
reinitialize_fetcher (OtPullData *pull_data, const char *remote_name, GError **error)
{
g_clear_object (&pull_data->fetcher);
pull_data->fetcher = _ostree_repo_remote_new_fetcher (pull_data->repo, remote_name, error);
if (pull_data->fetcher == NULL)
return FALSE;
if (pull_data->extra_headers)
_ostree_fetcher_set_extra_headers (pull_data->fetcher, pull_data->extra_headers);
return TRUE;
}
/* ------------------------------------------------------------------------------------------
* Below is the libsoup-invariant API; these should match
* the stub functions in the #else clause
@ -2308,6 +2338,7 @@ repo_remote_fetch_summary (OstreeRepo *self,
* * dry-run (b): Only print information on what will be downloaded (requires static deltas)
* * override-url (s): Fetch objects from this URL if remote specifies no metalink in options
* * inherit-transaction (b): Don't initiate, finish or abort a transaction, usefult to do mutliple pulls in one transaction.
* * http-headers (a(ss)): Additional headers to add to all HTTP requests
*/
gboolean
ostree_repo_pull_with_options (OstreeRepo *self,
@ -2336,7 +2367,7 @@ ostree_repo_pull_with_options (OstreeRepo *self,
const char *dir_to_pull = NULL;
g_autofree char **dirs_to_pull = NULL;
g_autofree char **refs_to_fetch = NULL;
char **override_commit_ids = NULL;
g_autofree char **override_commit_ids = NULL;
GSource *update_timeout = NULL;
gboolean disable_static_deltas = FALSE;
gboolean require_static_deltas = FALSE;
@ -2368,6 +2399,7 @@ ostree_repo_pull_with_options (OstreeRepo *self,
(void) g_variant_lookup (options, "dry-run", "b", &pull_data->dry_run);
(void) g_variant_lookup (options, "override-url", "&s", &url_override);
(void) g_variant_lookup (options, "inherit-transaction", "b", &inherit_transaction);
(void) g_variant_lookup (options, "http-headers", "@a(ss)", &pull_data->extra_headers);
}
g_return_val_if_fail (pull_data->maxdepth >= -1, FALSE);
@ -2467,8 +2499,7 @@ ostree_repo_pull_with_options (OstreeRepo *self,
pull_data->phase = OSTREE_PULL_PHASE_FETCHING_REFS;
pull_data->fetcher = _ostree_repo_remote_new_fetcher (self, remote_name_or_baseurl, error);
if (pull_data->fetcher == NULL)
if (!reinitialize_fetcher (pull_data, remote_name_or_baseurl, error))
goto out;
pull_data->tmpdir_dfd = pull_data->repo->tmp_dir_fd;
@ -2745,15 +2776,8 @@ ostree_repo_pull_with_options (OstreeRepo *self,
NULL,
cancellable,
error);
if (result == NULL)
if (!ostree_gpg_verify_result_require_valid_signature (result, error))
goto out;
if (ostree_gpg_verify_result_count_valid (result) == 0)
{
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
"GPG signatures found, but none are in trusted keyring");
goto out;
}
}
if (pull_data->summary)
@ -2906,9 +2930,7 @@ ostree_repo_pull_with_options (OstreeRepo *self,
/* Now discard the previous fetcher, as it was bound to a temporary main context
* for synchronous requests.
*/
g_clear_object (&pull_data->fetcher);
pull_data->fetcher = _ostree_repo_remote_new_fetcher (self, remote_name_or_baseurl, error);
if (pull_data->fetcher == NULL)
if (!reinitialize_fetcher (pull_data, remote_name_or_baseurl, error))
goto out;
pull_data->legacy_transaction_resuming = FALSE;
@ -3120,6 +3142,7 @@ ostree_repo_pull_with_options (OstreeRepo *self,
g_source_destroy (update_timeout);
g_strfreev (configured_branches);
g_clear_object (&pull_data->fetcher);
g_clear_pointer (&pull_data->extra_headers, (GDestroyNotify)g_variant_unref);
g_clear_object (&pull_data->cancellable);
g_clear_object (&pull_data->remote_repo_local);
g_free (pull_data->remote_name);

View File

@ -243,7 +243,7 @@ _ostree_delta_compute_similar_objects (OstreeRepo *repo,
{
gboolean ret = FALSE;
g_autoptr(GHashTable) ret_modified_regfile_content =
g_hash_table_new_full (g_str_hash, g_str_equal, g_free, (GDestroyNotify)g_ptr_array_unref);
g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free);
g_autoptr(GPtrArray) from_sizes = NULL;
g_autoptr(GPtrArray) to_sizes = NULL;
guint i, j;

View File

@ -157,6 +157,9 @@ xattr_chunk_equals (const void *one, const void *two)
if (l1 != l2)
return FALSE;
if (l1 == 0)
return l2 == 0;
return memcmp (g_variant_get_data (v1), g_variant_get_data (v2), l1) == 0;
}

View File

@ -880,7 +880,9 @@ _ostree_repo_static_delta_dump (OstreeRepo *self,
OT_VARIANT_MAP_TRUSTED, &delta_superblock, error))
goto out;
g_print ("%s\n", g_variant_print (delta_superblock, 1));
{ g_autofree char *variant_string = g_variant_print (delta_superblock, 1);
g_print ("%s\n", variant_string);
}
g_print ("Delta: %s\n", delta_id);
{ const char *endianness_description;

View File

@ -842,7 +842,7 @@ dispatch_set_read_source (OstreeRepo *repo,
gboolean ret = FALSE;
guint64 source_offset;
if (state->read_source_fd)
if (state->read_source_fd != -1)
{
(void) close (state->read_source_fd);
state->read_source_fd = -1;
@ -887,7 +887,7 @@ dispatch_unset_read_source (OstreeRepo *repo,
goto out;
}
if (state->read_source_fd)
if (state->read_source_fd != -1)
{
(void) close (state->read_source_fd);
state->read_source_fd = -1;

View File

@ -161,11 +161,10 @@ ost_remote_new_from_keyfile (GKeyFile *keyfile,
static OstreeRemote *
ost_remote_ref (OstreeRemote *remote)
{
gint refcount;
g_return_val_if_fail (remote != NULL, NULL);
g_return_val_if_fail (remote->ref_count > 0, NULL);
g_atomic_int_inc (&remote->ref_count);
refcount = g_atomic_int_add (&remote->ref_count, 1);
g_assert (refcount > 0);
return remote;
}
@ -1440,9 +1439,9 @@ ostree_repo_remote_gpg_import (OstreeRepo *self,
GError **error)
{
OstreeRemote *remote;
gpgme_ctx_t source_context = NULL;
gpgme_ctx_t target_context = NULL;
gpgme_data_t data_buffer = NULL;
ot_auto_gpgme_ctx gpgme_ctx_t source_context = NULL;
ot_auto_gpgme_ctx gpgme_ctx_t target_context = NULL;
ot_auto_gpgme_data gpgme_data_t data_buffer = NULL;
gpgme_import_result_t import_result;
gpgme_import_status_t import_status;
const char *tmp_dir = NULL;
@ -1479,13 +1478,9 @@ ostree_repo_remote_gpg_import (OstreeRepo *self,
* the keys to a new pubring.gpg file. If the key data format is ASCII
* armored, this step will convert them to binary. */
gpg_error = gpgme_new (&source_context);
if (gpg_error != GPG_ERR_NO_ERROR)
{
ot_gpgme_error_to_gio_error (gpg_error, error);
g_prefix_error (error, "Unable to create context: ");
goto out;
}
source_context = ot_gpgme_new_ctx (NULL, error);
if (!source_context)
goto out;
if (source_stream != NULL)
{
@ -1569,13 +1564,9 @@ ostree_repo_remote_gpg_import (OstreeRepo *self,
* of the remote's keyring file. We'll let the import operation alter
* the pubring.gpg file, then rename it back to its permanent home. */
gpg_error = gpgme_new (&target_context);
if (gpg_error != GPG_ERR_NO_ERROR)
{
ot_gpgme_error_to_gio_error (gpg_error, error);
g_prefix_error (error, "Unable to create context: ");
goto out;
}
target_context = ot_gpgme_new_ctx (NULL, error);
if (!target_context)
goto out;
/* No need for an output stream since we copy in a pubring.gpg. */
if (!ot_gpgme_ctx_tmp_home_dir (target_context, tmp_dir, &target_tmp_dir,
@ -1700,15 +1691,6 @@ out:
if (target_tmp_dir != NULL)
(void) glnx_shutil_rm_rf_at (AT_FDCWD, target_tmp_dir, NULL, NULL);
if (source_context != NULL)
gpgme_release (source_context);
if (target_context != NULL)
gpgme_release (target_context);
if (data_buffer != NULL)
gpgme_data_release (data_buffer);
g_prefix_error (error, "GPG: ");
return ret;
@ -3989,7 +3971,6 @@ sign_data (OstreeRepo *self,
g_autoptr(GOutputStream) tmp_signature_output = NULL;
gpgme_ctx_t context = NULL;
g_autoptr(GBytes) ret_signature = NULL;
gpgme_engine_info_t info;
gpgme_error_t err;
gpgme_key_t key = NULL;
gpgme_data_t commit_buffer = NULL;
@ -4001,34 +3982,9 @@ sign_data (OstreeRepo *self,
goto out;
tmp_signature_output = g_unix_output_stream_new (tmp_fd, FALSE);
if ((err = gpgme_new (&context)) != GPG_ERR_NO_ERROR)
{
ot_gpgme_error_to_gio_error (err, error);
g_prefix_error (error, "Unable to create gpg context: ");
goto out;
}
info = gpgme_ctx_get_engine_info (context);
if ((err = gpgme_set_protocol (context, GPGME_PROTOCOL_OpenPGP)) !=
GPG_ERR_NO_ERROR)
{
ot_gpgme_error_to_gio_error (err, error);
g_prefix_error (error, "Unable to set gpg protocol: ");
goto out;
}
if (homedir != NULL)
{
if ((err = gpgme_ctx_set_engine_info (context, info->protocol, NULL, homedir))
!= GPG_ERR_NO_ERROR)
{
ot_gpgme_error_to_gio_error (err, error);
g_prefix_error (error, "Unable to set gpg homedir to '%s': ",
homedir);
goto out;
}
}
context = ot_gpgme_new_ctx (homedir, error);
if (!context)
goto out;
/* Get the secret keys with the given key id */
err = gpgme_get_key (context, key_id, &key, 1);
@ -4045,7 +4001,7 @@ sign_data (OstreeRepo *self,
g_prefix_error (error, "Unable to lookup key ID %s: ", key_id);
goto out;
}
/* Add the key to the context as a signer */
if ((err = gpgme_signers_add (context, key)) != GPG_ERR_NO_ERROR)
{
@ -4325,6 +4281,7 @@ _ostree_repo_gpg_verify_data_internal (OstreeRepo *self,
}
else if (remote_name != NULL)
{
g_autofree char *gpgkeypath = NULL;
/* Add the remote's keyring file if it exists. */
OstreeRemote *remote;
@ -4342,6 +4299,13 @@ _ostree_repo_gpg_verify_data_internal (OstreeRepo *self,
add_global_keyring_dir = FALSE;
}
if (!ot_keyfile_get_value_with_default (remote->options, remote->group, "gpgkeypath", NULL,
&gpgkeypath, error))
return NULL;
if (gpgkeypath)
_ostree_gpg_verifier_add_key_ascii_file (verifier, gpgkeypath);
ost_remote_unref (remote);
}
@ -4544,6 +4508,36 @@ ostree_repo_verify_commit_ext (OstreeRepo *self,
error);
}
/**
* ostree_repo_verify_commit_for_remote:
* @self: Repository
* @commit_checksum: ASCII SHA256 checksum
* @remote_name: OSTree remote to use for configuration
* @cancellable: Cancellable
* @error: Error
*
* Read GPG signature(s) on the commit named by the ASCII checksum
* @commit_checksum and return detailed results, based on the keyring
* configured for @remote.
*
* Returns: (transfer full): an #OstreeGpgVerifyResult, or %NULL on error
*/
OstreeGpgVerifyResult *
ostree_repo_verify_commit_for_remote (OstreeRepo *self,
const gchar *commit_checksum,
const gchar *remote_name,
GCancellable *cancellable,
GError **error)
{
return _ostree_repo_verify_commit_internal (self,
commit_checksum,
remote_name,
NULL,
NULL,
cancellable,
error);
}
/**
* ostree_repo_gpg_verify_data:
* @self: Repository
@ -4875,7 +4869,7 @@ _ostree_repo_allocate_tmpdir (int tmpdir_dfd,
/* We put the lock outside the dir, so we can hold the lock
* until the directory is fully removed */
if (!_ostree_repo_try_lock_tmpdir (dfd_iter.fd, dent->d_name,
if (!_ostree_repo_try_lock_tmpdir (tmpdir_dfd, dent->d_name,
file_lock_out, &did_lock,
error))
goto out;

View File

@ -1064,6 +1064,14 @@ OstreeGpgVerifyResult * ostree_repo_verify_commit_ext (OstreeRepo *self,
GCancellable *cancellable,
GError **error);
_OSTREE_PUBLIC
OstreeGpgVerifyResult *
ostree_repo_verify_commit_for_remote (OstreeRepo *self,
const gchar *commit_checksum,
const gchar *remote_name,
GCancellable *cancellable,
GError **error);
_OSTREE_PUBLIC
OstreeGpgVerifyResult * ostree_repo_gpg_verify_data (OstreeRepo *self,
const gchar *remote_name,

View File

@ -258,7 +258,7 @@ initable_init (GInitable *initable,
g_autoptr(GFileInputStream) filein = NULL;
g_autoptr(GDataInputStream) datain = NULL;
gboolean enabled = FALSE;
char *policytype = NULL;
g_autofree char *policytype = NULL;
const char *selinux_prefix = "SELINUX=";
const char *selinuxtype_prefix = "SELINUXTYPE=";
@ -352,7 +352,7 @@ initable_init (GInitable *initable,
goto out;
}
self->selinux_policy_name = g_strdup (policytype);
self->selinux_policy_name = g_steal_pointer (&policytype);
self->selinux_policy_root = g_object_ref (etc_selinux_dir);
}

View File

@ -491,7 +491,7 @@ prune_repo (OstreeRepo *repo,
if (freed_space > 0)
{
char *freed_space_str = g_format_size_full (freed_space, 0);
g_autofree char *freed_space_str = g_format_size_full (freed_space, 0);
g_print ("Freed objects: %s\n", freed_space_str);
}

View File

@ -105,6 +105,7 @@ parse_refspec (OstreeSysrootUpgrader *self,
csum = g_key_file_get_string (self->origin, "origin", "override-commit", NULL);
if (csum != NULL && !ostree_validate_checksum_string (csum, error))
goto out;
g_clear_pointer (&self->override_csum, g_free);
self->override_csum = g_steal_pointer (&csum);
ret = TRUE;

View File

@ -411,3 +411,36 @@ ot_gpgme_data_output (GOutputStream *output_stream)
return data;
}
gpgme_ctx_t
ot_gpgme_new_ctx (const char *homedir,
GError **error)
{
gpgme_error_t err;
ot_auto_gpgme_ctx gpgme_ctx_t context = NULL;
if ((err = gpgme_new (&context)) != GPG_ERR_NO_ERROR)
{
ot_gpgme_error_to_gio_error (err, error);
g_prefix_error (error, "Unable to create gpg context: ");
return NULL;
}
if (homedir != NULL)
{
gpgme_engine_info_t info;
info = gpgme_ctx_get_engine_info (context);
if ((err = gpgme_ctx_set_engine_info (context, info->protocol, NULL, homedir))
!= GPG_ERR_NO_ERROR)
{
ot_gpgme_error_to_gio_error (err, error);
g_prefix_error (error, "Unable to set gpg homedir to '%s': ",
homedir);
return NULL;
}
}
return g_steal_pointer (&context);
}

View File

@ -22,9 +22,15 @@
#include <gpgme.h>
#include <gio/gio.h>
#include "libglnx.h"
G_BEGIN_DECLS
GLNX_DEFINE_CLEANUP_FUNCTION0(gpgme_data_t, ot_cleanup_gpgme_data, gpgme_data_release)
#define ot_auto_gpgme_data __attribute__((cleanup(ot_cleanup_gpgme_data)))
GLNX_DEFINE_CLEANUP_FUNCTION0(gpgme_ctx_t, ot_cleanup_gpgme_ctx, gpgme_release)
#define ot_auto_gpgme_ctx __attribute__((cleanup(ot_cleanup_gpgme_ctx)))
void ot_gpgme_error_to_gio_error (gpgme_error_t gpg_error, GError **error);
gboolean ot_gpgme_ctx_tmp_home_dir (gpgme_ctx_t gpgme_ctx,
@ -37,4 +43,7 @@ gboolean ot_gpgme_ctx_tmp_home_dir (gpgme_ctx_t gpgme_ctx,
gpgme_data_t ot_gpgme_data_input (GInputStream *input_stream);
gpgme_data_t ot_gpgme_data_output (GOutputStream *output_stream);
gpgme_ctx_t ot_gpgme_new_ctx (const char *homedir,
GError **error);
G_END_DECLS

View File

@ -67,7 +67,7 @@ ostree_builtin_export (int argc, char **argv, GCancellable *cancellable, GError
g_autoptr(GFile) subtree = NULL;
g_autofree char *commit = NULL;
g_autoptr(GVariant) commit_data = NULL;
struct archive *a;
struct archive *a = NULL;
OstreeRepoExportArchiveOptions opts = { 0, };
context = g_option_context_new ("COMMIT - Stream COMMIT to stdout in tar format");
@ -154,6 +154,10 @@ ostree_builtin_export (int argc, char **argv, GCancellable *cancellable, GError
ret = TRUE;
out:
#ifdef HAVE_LIBARCHIVE
if (a)
archive_write_free (a);
#endif
if (context)
g_option_context_free (context);
return ret;

View File

@ -287,7 +287,7 @@ ostree_builtin_fsck (int argc, char **argv, GCancellable *cancellable, GError **
if (opt_add_tombstones)
{
GError *local_error = NULL;
const char *parent = ostree_commit_get_parent (commit);
g_autofree char *parent = ostree_commit_get_parent (commit);
if (parent)
{
g_autoptr(GVariant) parent_commit = NULL;

View File

@ -35,6 +35,7 @@ static gboolean opt_disable_static_deltas;
static gboolean opt_require_static_deltas;
static gboolean opt_untrusted;
static char** opt_subpaths;
static char** opt_http_headers;
static char* opt_cache_dir;
static int opt_depth = 0;
static char* opt_url;
@ -51,6 +52,7 @@ static GOptionEntry options[] = {
{ "dry-run", 0, 0, G_OPTION_ARG_NONE, &opt_dry_run, "Only print information on what will be downloaded (requires static deltas)", NULL },
{ "depth", 0, 0, G_OPTION_ARG_INT, &opt_depth, "Traverse DEPTH parents (-1=infinite) (default: 0)", "DEPTH" },
{ "url", 0, 0, G_OPTION_ARG_STRING, &opt_url, "Pull objects from this URL instead of the one from the remote config", NULL },
{ "http-header", 0, 0, G_OPTION_ARG_STRING_ARRAY, &opt_http_headers, "Add NAME=VALUE as HTTP header to all requests", "NAME=VALUE" },
{ NULL }
};
@ -249,6 +251,29 @@ ostree_builtin_pull (int argc, char **argv, GCancellable *cancellable, GError **
g_variant_builder_add (&builder, "{s@v}", "override-commit-ids",
g_variant_new_variant (g_variant_new_strv ((const char*const*)override_commit_ids->pdata, override_commit_ids->len)));
if (opt_http_headers)
{
GVariantBuilder hdr_builder;
g_variant_builder_init (&hdr_builder, G_VARIANT_TYPE ("a(ss)"));
for (char **iter = opt_http_headers; iter && *iter; iter++)
{
const char *kv = *iter;
const char *eq = strchr (kv, '=');
g_autofree char *key = NULL;
if (!eq)
{
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
"Missing '=' in --http-header");
goto out;
}
key = g_strndup (kv, eq - kv);
g_variant_builder_add (&hdr_builder, "(ss)", key, eq + 1);
}
g_variant_builder_add (&builder, "{s@v}", "http-headers",
g_variant_new_variant (g_variant_builder_end (&hdr_builder)));
}
if (!opt_dry_run)
{
if (console.is_tty)

View File

@ -34,6 +34,7 @@ static char* opt_print_metadata_key;
static char* opt_print_detached_metadata_key;
static gboolean opt_raw;
static char *opt_gpg_homedir;
static char *opt_gpg_verify_remote;
static GOptionEntry options[] = {
{ "print-related", 0, 0, G_OPTION_ARG_NONE, &opt_print_related, "Show the \"related\" commits", NULL },
@ -42,6 +43,7 @@ static GOptionEntry options[] = {
{ "print-detached-metadata-key", 0, 0, G_OPTION_ARG_STRING, &opt_print_detached_metadata_key, "Print string value of detached metadata key", "KEY" },
{ "raw", 0, 0, G_OPTION_ARG_NONE, &opt_raw, "Show raw variant data" },
{ "gpg-homedir", 0, 0, G_OPTION_ARG_STRING, &opt_gpg_homedir, "GPG Homedir to use when looking for keyrings", "HOMEDIR"},
{ "gpg-verify-remote", 0, 0, G_OPTION_ARG_STRING, &opt_gpg_verify_remote, "Use REMOTE name for GPG configuration", "REMOTE"},
{ NULL }
};
@ -170,9 +172,17 @@ print_object (OstreeRepo *repo,
GError *local_error = NULL;
g_autoptr(GFile) gpg_homedir = opt_gpg_homedir ? g_file_new_for_path (opt_gpg_homedir) : NULL;
result = ostree_repo_verify_commit_ext (repo, checksum,
gpg_homedir, NULL, NULL,
&local_error);
if (opt_gpg_verify_remote)
{
result = ostree_repo_verify_commit_for_remote (repo, checksum, opt_gpg_verify_remote,
NULL, &local_error);
}
else
{
result = ostree_repo_verify_commit_ext (repo, checksum,
gpg_homedir, NULL, NULL,
&local_error);
}
if (g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND))
{

View File

@ -43,8 +43,8 @@ static int opt_random_500s_percentage;
* cases involving repeated random 500s. */
static int opt_random_500s_max = 100;
static gint opt_port = 0;
static gchar **opt_expected_cookies;
static gchar **opt_expected_headers;
static guint emitted_random_500s_count = 0;
@ -64,6 +64,7 @@ static GOptionEntry options[] = {
{ "random-500s-max", 0, 0, G_OPTION_ARG_INT, &opt_random_500s_max, "Limit HTTP 500 errors to MAX (default 100)", "MAX" },
{ "log-file", 0, 0, G_OPTION_ARG_FILENAME, &opt_log, "Put logs here", "PATH" },
{ "expected-cookies", 0, 0, G_OPTION_ARG_STRING_ARRAY, &opt_expected_cookies, "Expect given cookies in the http request", "KEY=VALUE" },
{ "expected-header", 0, 0, G_OPTION_ARG_STRING_ARRAY, &opt_expected_headers, "Expect given headers in the http request", "KEY=VALUE" },
{ NULL }
};
@ -238,6 +239,36 @@ do_get (OtTrivialHttpd *self,
soup_cookies_free (cookies);
}
if (opt_expected_headers)
{
for (int i = 0 ; opt_expected_headers[i] != NULL; i++)
{
const gchar *kv = opt_expected_headers[i];
const gchar *eq = strchr (kv, '=');
g_assert (eq);
{
g_autofree char *k = g_strndup (kv, eq - kv);
const gchar *expected_v = eq + 1;
const gchar *found_v = soup_message_headers_get_one (msg->request_headers, k);
if (!found_v)
{
httpd_log (self, "Expected header not found %s\n", k);
soup_message_set_status (msg, SOUP_STATUS_FORBIDDEN);
goto out;
}
if (strcmp (found_v, expected_v) != 0)
{
httpd_log (self, "Expected header %s: %s but found %s\n", k, expected_v, found_v);
soup_message_set_status (msg, SOUP_STATUS_FORBIDDEN);
goto out;
}
}
}
}
if (strstr (path, "../") != NULL)
{
soup_message_set_status (msg, SOUP_STATUS_FORBIDDEN);

View File

@ -125,7 +125,6 @@ ostree_run (int argc,
GError *error = NULL;
GCancellable *cancellable = NULL;
const char *command_name = NULL;
g_autofree char *prgname = NULL;
gboolean success = FALSE;
int in, out;
@ -202,10 +201,6 @@ ostree_run (int argc,
goto out;
}
prgname = g_strdup_printf ("%s %s", g_get_prgname (), command_name);
g_set_prgname (prgname);
if (!command->fn (argc, argv, cancellable, &error))
goto out;

View File

@ -68,7 +68,7 @@ ot_remote_builtin_add_cookie (int argc, char **argv, GCancellable *cancellable,
value = argv[5];
cookie_file = g_strdup_printf ("%s.cookies.txt", remote_name);
jar_path = g_build_filename (g_file_get_path (repo->repodir), cookie_file, NULL);
jar_path = g_build_filename (gs_file_get_path_cached (repo->repodir), cookie_file, NULL);
jar = soup_cookie_jar_text_new (jar_path, FALSE);
@ -80,5 +80,7 @@ ot_remote_builtin_add_cookie (int argc, char **argv, GCancellable *cancellable,
/* jar takes ownership of cookie */
soup_cookie_jar_add_cookie (jar, cookie);
if (context)
g_option_context_free (context);
return TRUE;
}

View File

@ -67,7 +67,7 @@ ot_remote_builtin_delete_cookie (int argc, char **argv, GCancellable *cancellabl
cookie_name = argv[4];
cookie_file = g_strdup_printf ("%s.cookies.txt", remote_name);
jar_path = g_build_filename (g_file_get_path (repo->repodir), cookie_file, NULL);
jar_path = g_build_filename (gs_file_get_path_cached (repo->repodir), cookie_file, NULL);
jar = soup_cookie_jar_text_new (jar_path, FALSE);
cookies = soup_cookie_jar_all_cookies (jar);
@ -92,5 +92,7 @@ ot_remote_builtin_delete_cookie (int argc, char **argv, GCancellable *cancellabl
if (!found)
g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_FAILED, "Cookie not found in jar");
if (context)
g_option_context_free (context);
return found;
}

View File

@ -19,7 +19,7 @@
set -euo pipefail
echo "1..58"
echo "1..60"
$OSTREE checkout test2 checkout-test2
echo "ok checkout"
@ -178,6 +178,9 @@ echo "ok user checkout"
$OSTREE commit -b test2 -s "Another commit" --tree=ref=test2
echo "ok commit from ref"
$OSTREE commit -b test2 -s "Another commit with modifier" --tree=ref=test2 --owner-uid=`id -u`
echo "ok commit from ref with modifier"
$OSTREE commit -b trees/test2 -s 'ref with / in it' --tree=ref=test2
echo "ok commit ref with /"
@ -191,6 +194,20 @@ cd ${test_tmpdir}/checkout-test2-4
$OSTREE commit -b test2 -s "no xattrs" --no-xattrs
echo "ok commit with no xattrs"
mkdir tree-A tree-B
touch tree-A/file-a tree-B/file-b
$OSTREE commit -b test3-1 -s "Initial tree" --tree=dir=tree-A
$OSTREE commit -b test3-2 -s "Replacement tree" --tree=dir=tree-B
$OSTREE commit -b test3-combined -s "combined tree" --tree=ref=test3-1 --tree=ref=test3-2
$OSTREE checkout test3-combined checkout-test3-combined
assert_has_file checkout-test3-combined/file-a
assert_has_file checkout-test3-combined/file-b
echo "ok commit combined ref trees"
# NB: The + is optional, but we need to make sure we support it
cd ${test_tmpdir}
cat > test-statoverride.txt <<EOF

View File

@ -51,7 +51,7 @@ fi
newstagepath=$(ls -d sysroot/ostree/repo/tmp/staging-${NEW_TEST_BOOTID}-*)
assert_has_dir "${newstagepath}"
env OSTREE_BOOTID=${NEW_TEST_BOOTID} ${CMD_PREFIX} ostree admin deploy --karg=root=LABEL=MOO --karg=quiet --os=testos testos:testos/buildmaster/x86_64-runtime
newstagepath=$(ls -d sysroot/ostree/repo/tmp/staging-${NEW_TEST_BOOTID}-*)
newstagepath=$(echo sysroot/ostree/repo/tmp/staging-${NEW_TEST_BOOTID}-*)
assert_not_has_dir "${stagepath}"
assert_not_has_dir "${newstagepath}"

View File

@ -80,6 +80,8 @@ mkdir repo
${CMD_PREFIX} ostree --repo=repo init
${CMD_PREFIX} ostree --repo=repo remote add origin $(cat httpd-address)/ostree/gnomerepo
${CMD_PREFIX} ostree --repo=repo pull origin main
${CMD_PREFIX} ostree --repo=repo show --gpg-verify-remote=origin main | grep -o 'Found [[:digit:]] signature' > show-verify-remote
assert_file_has_content show-verify-remote 'Found 1 signature'
rm repo -rf
# A test with corrupted detached signature

View File

@ -468,6 +468,8 @@ entry_pathname_test_helper (gconstpointer data, gboolean on)
goto out;
}
archive_read_free (a);
ostree_repo_commit_modifier_unref (modifier);
out:
g_assert_no_error (error);
}
@ -534,6 +536,7 @@ test_libarchive_selinux (gconstpointer data)
g_assert_cmpstr (buf, ==, "system_u:object_r:etc_t:s0");
out:
archive_read_free (a);
if (modifier)
ostree_repo_commit_modifier_unref (modifier);
g_assert_no_error (error);
@ -562,5 +565,6 @@ int main (int argc, char **argv)
if (td.tmpd && g_getenv ("TEST_SKIP_CLEANUP") == NULL)
(void) glnx_shutil_rm_rf_at (AT_FDCWD, td.tmpd, NULL, NULL);
g_free (td.tmpd);
return r;
}

View File

@ -26,7 +26,7 @@ unset OSTREE_GPG_HOME
setup_fake_remote_repo1 "archive-z2"
echo "1..1"
echo "1..4"
cd ${test_tmpdir}
mkdir repo
@ -143,5 +143,67 @@ if ${OSTREE} pull R2:main >/dev/null 2>&1; then
fi
${OSTREE} pull R3:main >/dev/null
libtest_cleanup_gpg
echo "ok"
rm repo/refs/remotes/* -rf
${OSTREE} prune --refs-only
# Test the successful gpgkeypath option
${OSTREE} remote add --set=gpgkeypath=${test_tmpdir}/gpghome/key3.asc R4 $(cat httpd-address)/ostree/gnomerepo
${OSTREE} pull R4:main >/dev/null
rm repo/refs/remotes/* -rf
${OSTREE} prune --refs-only
${OSTREE} remote add --set=gpgkeypath=${test_tmpdir}/gpghome/INVALIDKEYPATH.asc R5 $(cat httpd-address)/ostree/gnomerepo
if ${OSTREE} pull R5:main 2>err.txt; then
assert_not_reached "Unexpectedly succeeded at pulling with nonexistent key"
fi
assert_file_has_content err.txt "INVALIDKEYPATH.*No such file or directory"
rm repo/refs/remotes/* -rf
${OSTREE} prune --refs-only
${OSTREE} remote add --set=gpgkeypath=${test_tmpdir}/gpghome/key2.asc R6 $(cat httpd-address)/ostree/gnomerepo
if ${OSTREE} pull R6:main 2>err.txt; then
assert_not_reached "Unexpectedly succeeded at pulling with different key"
fi
assert_file_has_content err.txt "GPG signatures found, but none are in trusted keyring"
echo "ok"
# Test deltas with signed commits; this test is a bit
# weird here but this file has separate per-remote keys.
cd ${test_tmpdir}
rm repo/refs/remotes/* -rf
${OSTREE} prune --refs-only
echo $(date) > workdir/testfile-for-deltas-1
# Sign with keyid 1 for first commit
${CMD_PREFIX} ostree --repo=${test_tmpdir}/ostree-srv/gnomerepo commit -b main --gpg-sign ${TEST_GPG_KEYID_1} --gpg-homedir ${test_tmpdir}/gpghome workdir
prevrev=$(${CMD_PREFIX} ostree --repo=${test_tmpdir}/ostree-srv/gnomerepo rev-parse main)
# Pull the previous revision
${OSTREE} pull R1:main
assert_streq $(${OSTREE} rev-parse R1:main) ${prevrev}
# Sign with keyid 2, but use remote r1
echo $(date) > workdir/testfile-for-deltas-2
${CMD_PREFIX} ostree --repo=${test_tmpdir}/ostree-srv/gnomerepo commit -b main --gpg-sign ${TEST_GPG_KEYID_2} --gpg-homedir ${test_tmpdir}/gpghome workdir
${CMD_PREFIX} ostree --repo=${test_tmpdir}/ostree-srv/gnomerepo static-delta generate main
# Summary is signed with key1
${CMD_PREFIX} ostree --repo=${test_tmpdir}/ostree-srv/gnomerepo summary -u --gpg-sign ${TEST_GPG_KEYID_1} --gpg-homedir ${test_tmpdir}/gpghome
newrev=$(${CMD_PREFIX} ostree --repo=${test_tmpdir}/ostree-srv/gnomerepo rev-parse main)
if ${OSTREE} pull --require-static-deltas R1:main 2>err.txt; then
assert_not_reached "Unexpectedly succeeded at pulling commit signed with untrusted key"
fi
assert_file_has_content err.txt "GPG signatures found, but none are in trusted keyring"
echo "ok gpg untrusted signed commit for delta upgrades"
${CMD_PREFIX} ostree --repo=${test_tmpdir}/ostree-srv/gnomerepo reset main{,^}
${CMD_PREFIX} ostree --repo=${test_tmpdir}/ostree-srv/gnomerepo commit -b main --gpg-sign ${TEST_GPG_KEYID_1} --gpg-homedir ${test_tmpdir}/gpghome workdir
${CMD_PREFIX} ostree --repo=${test_tmpdir}/ostree-srv/gnomerepo static-delta generate main
${CMD_PREFIX} ostree --repo=${test_tmpdir}/ostree-srv/gnomerepo summary -u --gpg-sign ${TEST_GPG_KEYID_1} --gpg-homedir ${test_tmpdir}/gpghome
${OSTREE} pull --require-static-deltas R1:main
echo "ok gpg trusted signed commit for delta upgrades"
libtest_cleanup_gpg

52
tests/test-remote-headers.sh Executable file
View File

@ -0,0 +1,52 @@
#!/bin/bash
#
# Copyright (C) 2016 Red Hat, Inc.
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the
# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
set -euo pipefail
echo '1..2'
. $(dirname $0)/libtest.sh
setup_fake_remote_repo1 "archive" "" \
"--expected-header foo=bar --expected-header baz=badger"
assert_fail (){
set +e
$@
if [ $? = 0 ] ; then
echo 1>&2 "$@ did not fail"; exit 1
fi
set -euo pipefail
}
cd ${test_tmpdir}
rm repo -rf
mkdir repo
${CMD_PREFIX} ostree --repo=repo init
${CMD_PREFIX} ostree --repo=repo remote add --set=gpg-verify=false origin $(cat httpd-address)/ostree/gnomerepo
# Sanity check the setup, without headers the pull should fail
assert_fail ${CMD_PREFIX} ostree --repo=repo pull origin main
echo "ok, setup done"
# Now pull should succeed now
${CMD_PREFIX} ostree --repo=repo pull --http-header foo=bar --http-header baz=badger origin main
echo "ok, pull succeeded"