diff options
| author | Cy Schubert <cy@FreeBSD.org> | 2023-08-04 17:53:10 +0000 |
|---|---|---|
| committer | Cy Schubert <cy@FreeBSD.org> | 2023-08-04 17:53:10 +0000 |
| commit | 0320e0d5bb9fbb5da53478b3fd80ad79b110191d (patch) | |
| tree | e1185f75bd2d3f87b0c17f787debc3ee8648214b /doc/html/appdev/refs/api/krb5_rd_priv.html | |
| parent | b0e4d68d5124581ae353493d69bea352de4cff8a (diff) | |
Diffstat (limited to 'doc/html/appdev/refs/api/krb5_rd_priv.html')
| -rw-r--r-- | doc/html/appdev/refs/api/krb5_rd_priv.html | 45 |
1 files changed, 19 insertions, 26 deletions
diff --git a/doc/html/appdev/refs/api/krb5_rd_priv.html b/doc/html/appdev/refs/api/krb5_rd_priv.html index 9e5fe2594802..7a0143dd620d 100644 --- a/doc/html/appdev/refs/api/krb5_rd_priv.html +++ b/doc/html/appdev/refs/api/krb5_rd_priv.html @@ -1,33 +1,31 @@ + <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>krb5_rd_priv - Process a KRB-PRIV message. — MIT Kerberos Documentation</title> - + <title>krb5_rd_priv - Process a KRB-PRIV message. — MIT Kerberos Documentation</title> <link rel="stylesheet" href="../../../_static/agogo.css" type="text/css" /> <link rel="stylesheet" href="../../../_static/pygments.css" type="text/css" /> <link rel="stylesheet" href="../../../_static/kerb.css" type="text/css" /> - <script type="text/javascript"> var DOCUMENTATION_OPTIONS = { URL_ROOT: '../../../', - VERSION: '1.16', + VERSION: '1.21.1', COLLAPSE_INDEX: false, FILE_SUFFIX: '.html', - HAS_SOURCE: true + HAS_SOURCE: true, + SOURCELINK_SUFFIX: '.txt' }; </script> <script type="text/javascript" src="../../../_static/jquery.js"></script> <script type="text/javascript" src="../../../_static/underscore.js"></script> <script type="text/javascript" src="../../../_static/doctools.js"></script> <link rel="author" title="About these documents" href="../../../about.html" /> + <link rel="index" title="Index" href="../../../genindex.html" /> + <link rel="search" title="Search" href="../../../search.html" /> <link rel="copyright" title="Copyright" href="../../../copyright.html" /> - <link rel="top" title="MIT Kerberos Documentation" href="../../../index.html" /> - <link rel="up" title="krb5 API" href="index.html" /> <link rel="next" title="krb5_rd_rep - Parse and decrypt a KRB_AP_REP message." href="krb5_rd_rep.html" /> <link rel="prev" title="krb5_rd_error - Decode a KRB-ERROR message." href="krb5_rd_error.html" /> </head> @@ -61,13 +59,13 @@ <div class="documentwrapper"> <div class="bodywrapper"> - <div class="body"> + <div class="body" role="main"> <div class="section" id="krb5-rd-priv-process-a-krb-priv-message"> <h1>krb5_rd_priv - Process a KRB-PRIV message.<a class="headerlink" href="#krb5-rd-priv-process-a-krb-priv-message" title="Permalink to this headline">¶</a></h1> <dl class="function"> <dt id="c.krb5_rd_priv"> -<a class="reference internal" href="../types/krb5_error_code.html#c.krb5_error_code" title="krb5_error_code">krb5_error_code</a> <tt class="descname">krb5_rd_priv</tt><big>(</big><a class="reference internal" href="../types/krb5_context.html#c.krb5_context" title="krb5_context">krb5_context</a><em> context</em>, <a class="reference internal" href="../types/krb5_auth_context.html#c.krb5_auth_context" title="krb5_auth_context">krb5_auth_context</a><em> auth_context</em>, const <a class="reference internal" href="../types/krb5_data.html#c.krb5_data" title="krb5_data">krb5_data</a> *<em> inbuf</em>, <a class="reference internal" href="../types/krb5_data.html#c.krb5_data" title="krb5_data">krb5_data</a> *<em> outbuf</em>, <a class="reference internal" href="../types/krb5_replay_data.html#c.krb5_replay_data" title="krb5_replay_data">krb5_replay_data</a> *<em> outdata</em><big>)</big><a class="headerlink" href="#c.krb5_rd_priv" title="Permalink to this definition">¶</a></dt> +<a class="reference internal" href="../types/krb5_error_code.html#c.krb5_error_code" title="krb5_error_code">krb5_error_code</a> <code class="descname">krb5_rd_priv</code><span class="sig-paren">(</span><a class="reference internal" href="../types/krb5_context.html#c.krb5_context" title="krb5_context">krb5_context</a><em> context</em>, <a class="reference internal" href="../types/krb5_auth_context.html#c.krb5_auth_context" title="krb5_auth_context">krb5_auth_context</a><em> auth_context</em>, const <a class="reference internal" href="../types/krb5_data.html#c.krb5_data" title="krb5_data">krb5_data</a> *<em> inbuf</em>, <a class="reference internal" href="../types/krb5_data.html#c.krb5_data" title="krb5_data">krb5_data</a> *<em> userdata_out</em>, <a class="reference internal" href="../types/krb5_replay_data.html#c.krb5_replay_data" title="krb5_replay_data">krb5_replay_data</a> *<em> rdata_out</em><span class="sig-paren">)</span><a class="headerlink" href="#c.krb5_rd_priv" title="Permalink to this definition">¶</a></dt> <dd></dd></dl> <table class="docutils field-list" frame="void" rules="none"> @@ -77,8 +75,8 @@ <tr class="field-odd field"><th class="field-name">param:</th><td class="field-body"><p class="first"><strong>[in]</strong> <strong>context</strong> - Library context</p> <p><strong>[in]</strong> <strong>auth_context</strong> - Authentication structure</p> <p><strong>[in]</strong> <strong>inbuf</strong> - <strong>KRB-PRIV</strong> message to be parsed</p> -<p><strong>[out]</strong> <strong>outbuf</strong> - Data parsed from <strong>KRB-PRIV</strong> message</p> -<p class="last"><strong>[out]</strong> <strong>outdata</strong> - Replay data. Specify NULL if not needed</p> +<p><strong>[out]</strong> <strong>userdata_out</strong> - Data parsed from <strong>KRB-PRIV</strong> message</p> +<p class="last"><strong>[out]</strong> <strong>rdata_out</strong> - Replay data. Specify NULL if not needed</p> </td> </tr> </tbody> @@ -94,19 +92,14 @@ </tr> </tbody> </table> -<p>This function parses a <strong>KRB-PRIV</strong> message, verifies its integrity, and stores its unencrypted data into <em>outbuf</em> .</p> -<p>If the <a class="reference internal" href="../macros/KRB5_AUTH_CONTEXT_DO_SEQUENCE.html#KRB5_AUTH_CONTEXT_DO_SEQUENCE" title="KRB5_AUTH_CONTEXT_DO_SEQUENCE"><tt class="xref py py-data docutils literal"><span class="pre">KRB5_AUTH_CONTEXT_DO_SEQUENCE</span></tt></a> flag is set in <em>auth_context</em> , the sequence number of the KRB-SAFE message is checked against the remote sequence number field of <em>auth_context</em> . Otherwise, the sequence number is not used.</p> -<p>If the <a class="reference internal" href="../macros/KRB5_AUTH_CONTEXT_DO_TIME.html#KRB5_AUTH_CONTEXT_DO_TIME" title="KRB5_AUTH_CONTEXT_DO_TIME"><tt class="xref py py-data docutils literal"><span class="pre">KRB5_AUTH_CONTEXT_DO_TIME</span></tt></a> flag is set in <em>auth_context</em> , then two additional checks are performed:</p> -<blockquote> -<div><ul class="simple"> -<li>The timestamp in the message must be within the permitted clock skew (which is usually five minutes).</li> -<li>The message must not be a replayed message field in <em>auth_context</em> .</li> -</ul> -</div></blockquote> +<p>This function parses a <strong>KRB-PRIV</strong> message, verifies its integrity, and stores its unencrypted data into <em>userdata_out</em> .</p> +<p>If <em>auth_context</em> has a remote address set, the address will be used to verify the sender address in the KRB-PRIV message. If <em>auth_context</em> has a local address set, it will be used to verify the receiver address in the KRB-PRIV message if the message contains one.</p> +<p>If the <a class="reference internal" href="../macros/KRB5_AUTH_CONTEXT_DO_SEQUENCE.html#KRB5_AUTH_CONTEXT_DO_SEQUENCE" title="KRB5_AUTH_CONTEXT_DO_SEQUENCE"><code class="xref py py-data docutils literal"><span class="pre">KRB5_AUTH_CONTEXT_DO_SEQUENCE</span></code></a> flag is set in <em>auth_context</em> , the sequence number of the KRB-PRIV message is checked against the remote sequence number field of <em>auth_context</em> . Otherwise, the sequence number is not used.</p> +<p>If the <a class="reference internal" href="../macros/KRB5_AUTH_CONTEXT_DO_TIME.html#KRB5_AUTH_CONTEXT_DO_TIME" title="KRB5_AUTH_CONTEXT_DO_TIME"><code class="xref py py-data docutils literal"><span class="pre">KRB5_AUTH_CONTEXT_DO_TIME</span></code></a> flag is set in <em>auth_context</em> , then the timestamp in the message is verified to be within the permitted clock skew of the current time, and the message is checked against an in-memory replay cache to detect reflections or replays.</p> +<p>Use <a class="reference internal" href="krb5_free_data_contents.html#c.krb5_free_data_contents" title="krb5_free_data_contents"><code class="xref c c-func docutils literal"><span class="pre">krb5_free_data_contents()</span></code></a> to free <em>userdata_out</em> when it is no longer needed.</p> <div class="admonition note"> <p class="first admonition-title">Note</p> -<p>If the <a class="reference internal" href="../macros/KRB5_AUTH_CONTEXT_RET_TIME.html#KRB5_AUTH_CONTEXT_RET_TIME" title="KRB5_AUTH_CONTEXT_RET_TIME"><tt class="xref py py-data docutils literal"><span class="pre">KRB5_AUTH_CONTEXT_RET_TIME</span></tt></a> or <a class="reference internal" href="../macros/KRB5_AUTH_CONTEXT_RET_SEQUENCE.html#KRB5_AUTH_CONTEXT_RET_SEQUENCE" title="KRB5_AUTH_CONTEXT_RET_SEQUENCE"><tt class="xref py py-data docutils literal"><span class="pre">KRB5_AUTH_CONTEXT_RET_SEQUENCE</span></tt></a> flag is set in <em>auth_context</em> , <em>outdata</em> is required.</p> -<p class="last"><em>auth_context</em> must have a remote address set. This address will be used to verify the sender address in the KRB-PRIV message. If <em>auth_context</em> has a local address set, it will be used to verify the receiver address in the KRB-PRIV message if the message contains one. Both addresses must use type <strong>ADDRTYPE_ADDRPORT</strong> .</p> +<p class="last">The <em>rdata_out</em> argument is required if the <a class="reference internal" href="../macros/KRB5_AUTH_CONTEXT_RET_TIME.html#KRB5_AUTH_CONTEXT_RET_TIME" title="KRB5_AUTH_CONTEXT_RET_TIME"><code class="xref py py-data docutils literal"><span class="pre">KRB5_AUTH_CONTEXT_RET_TIME</span></code></a> or <a class="reference internal" href="../macros/KRB5_AUTH_CONTEXT_RET_SEQUENCE.html#KRB5_AUTH_CONTEXT_RET_SEQUENCE" title="KRB5_AUTH_CONTEXT_RET_SEQUENCE"><code class="xref py py-data docutils literal"><span class="pre">KRB5_AUTH_CONTEXT_RET_SEQUENCE</span></code></a> flag is set in <em>auth_context</em> .</p> </div> </div> @@ -166,8 +159,8 @@ <div class="footer-wrapper"> <div class="footer" > - <div class="right" ><i>Release: 1.16</i><br /> - © <a href="../../../copyright.html">Copyright</a> 1985-2017, MIT. + <div class="right" ><i>Release: 1.21.1</i><br /> + © <a href="../../../copyright.html">Copyright</a> 1985-2023, MIT. </div> <div class="left"> |
