blob: 3a02bf42ffb09f0c2ed952ab4780aa732b217cfe [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Proton DotNet: Apache.Qpid.Proton.Engine.Sasl.ISaslServerContext Interface Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Proton DotNet
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceApache.html">Apache</a></li><li class="navelem"><a class="el" href="namespaceApache_1_1Qpid.html">Qpid</a></li><li class="navelem"><a class="el" href="namespaceApache_1_1Qpid_1_1Proton.html">Proton</a></li><li class="navelem"><a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Engine.html">Engine</a></li><li class="navelem"><a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl.html">Sasl</a></li><li class="navelem"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.html">ISaslServerContext</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#properties">Properties</a> &#124;
<a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">Apache.Qpid.Proton.Engine.Sasl.ISaslServerContext Interface Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>SASL Server operating context used by an <a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Engine.html">Engine</a> that has been configured as a SASL server or that has receiver an AMQP header thereby forcing it into becoming the server side of the SASL exchange.
<a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.html#details">More...</a></p>
<div class="dynheader">
Inheritance diagram for Apache.Qpid.Proton.Engine.Sasl.ISaslServerContext:</div>
<div class="dyncontent">
<div class="center">
<img src="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.png" usemap="#Apache.Qpid.Proton.Engine.Sasl.ISaslServerContext_map" alt=""/>
<map id="Apache.Qpid.Proton.Engine.Sasl.ISaslServerContext_map" name="Apache.Qpid.Proton.Engine.Sasl.ISaslServerContext_map">
<area href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html" title="Root context of a SASL authentication API which provides common elements used in both clients and ser..." alt="Apache.Qpid.Proton.Engine.Sasl.ISaslContext" shape="rect" coords="0,0,431,24"/>
<area href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1Sasl_1_1ProtonSaslServerContext.html" title="SASL Context for SASL client instances which handles the client side management of the SASL exchange." alt="Apache.Qpid.Proton.Engine.Implementation.Sasl.ProtonSaslServerContext" shape="rect" coords="0,112,431,136"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a28ac39200e67889f33e8939874a759d6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.html">ISaslServerContext</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.html#a28ac39200e67889f33e8939874a759d6">SendMechanisms</a> (<a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Types_1_1Symbol.html">Symbol</a>[] mechanisms)</td></tr>
<tr class="memdesc:a28ac39200e67889f33e8939874a759d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sends the set of supported mechanisms to the SASL client from which it must choose and return one mechanism which will then be the basis for the SASL authentication negotiation. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.html#a28ac39200e67889f33e8939874a759d6">More...</a><br /></td></tr>
<tr class="separator:a28ac39200e67889f33e8939874a759d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa3f23390e03f95ba3e9639c60a39805b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.html">ISaslServerContext</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.html#aa3f23390e03f95ba3e9639c60a39805b">SendChallenge</a> (<a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a> challenge)</td></tr>
<tr class="memdesc:aa3f23390e03f95ba3e9639c60a39805b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sends the SASL challenge defined by the SASL mechanism that is in use during this SASL negotiation. The challenge is an opaque binary that is provided to the server by the security mechanism. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.html#aa3f23390e03f95ba3e9639c60a39805b">More...</a><br /></td></tr>
<tr class="separator:aa3f23390e03f95ba3e9639c60a39805b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afe9ea9510d98afa42f191b69e407c719"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.html">ISaslServerContext</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.html#afe9ea9510d98afa42f191b69e407c719">SendOutcome</a> (<a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl.html#a007ac2ee5719c195cd362bfa2aec1b3a">SaslAuthOutcome</a> outcome, <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a> additional)</td></tr>
<tr class="memdesc:afe9ea9510d98afa42f191b69e407c719"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sends a response to a server side challenge that comprises the challenge / response exchange for the chosen SASL mechanism. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.html#afe9ea9510d98afa42f191b69e407c719">More...</a><br /></td></tr>
<tr class="separator:afe9ea9510d98afa42f191b69e407c719"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a01f958c255928768a4c0248071a376f3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.html">ISaslServerContext</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.html#a01f958c255928768a4c0248071a376f3">SaslFailure</a> (<a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1SaslException.html">SaslException</a> failure)</td></tr>
<tr class="memdesc:a01f958c255928768a4c0248071a376f3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allows the server implementation to fail the SASL negotiation process due to some unrecoverable error. Failing the process will signal the <a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Engine.html">Engine</a> that the SASL process has failed and place the engine in a failed state as well as notify the registered error handler for the <a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Engine.html">Engine</a>. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.html#a01f958c255928768a4c0248071a376f3">More...</a><br /></td></tr>
<tr class="separator:a01f958c255928768a4c0248071a376f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="properties"></a>
Properties</h2></td></tr>
<tr class="memitem:ad66d3933041fbfa3e51f4a993e702351"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerAuthenticator.html">ISaslServerAuthenticator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.html#ad66d3933041fbfa3e51f4a993e702351">Authenticator</a><code> [get, set]</code></td></tr>
<tr class="memdesc:ad66d3933041fbfa3e51f4a993e702351"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configures the SASL authenticator which will be used to drive the SASL authentication process on the server side. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.html#ad66d3933041fbfa3e51f4a993e702351">More...</a><br /></td></tr>
<tr class="separator:ad66d3933041fbfa3e51f4a993e702351"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td colspan="2" onclick="javascript:toggleInherit('properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext')"><img src="closed.png" alt="-"/>&#160;Properties inherited from <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html">Apache.Qpid.Proton.Engine.Sasl.ISaslContext</a></td></tr>
<tr class="memitem:a6972d4297705f3d575103188e5fbb11a inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl.html#a52f941085984113db91d0318285d9040">SaslContextRole</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html#a6972d4297705f3d575103188e5fbb11a">Role</a><code> [get]</code></td></tr>
<tr class="memdesc:a6972d4297705f3d575103188e5fbb11a inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the role this context plays either client or server <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html#a6972d4297705f3d575103188e5fbb11a">More...</a><br /></td></tr>
<tr class="separator:a6972d4297705f3d575103188e5fbb11a inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75ef27dafac5b8b0728b306433eba0bb inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IAttachments.html">IAttachments</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html#a75ef27dafac5b8b0728b306433eba0bb">Attachments</a><code> [get]</code></td></tr>
<tr class="memdesc:a75ef27dafac5b8b0728b306433eba0bb inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access to the linked attachments instance where properties can be attached to this context for later application use. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html#a75ef27dafac5b8b0728b306433eba0bb">More...</a><br /></td></tr>
<tr class="separator:a75ef27dafac5b8b0728b306433eba0bb inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a403e1fdc89fa90668b749a1002a2c96a inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html#a403e1fdc89fa90668b749a1002a2c96a">IsDone</a><code> [get]</code></td></tr>
<tr class="memdesc:a403e1fdc89fa90668b749a1002a2c96a inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if SASL authentication has completed and an outcome is available. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html#a403e1fdc89fa90668b749a1002a2c96a">More...</a><br /></td></tr>
<tr class="separator:a403e1fdc89fa90668b749a1002a2c96a inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af8e4ee537c294a75f46070616f542a9b inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html#af8e4ee537c294a75f46070616f542a9b">IsServer</a><code> [get]</code></td></tr>
<tr class="memdesc:af8e4ee537c294a75f46070616f542a9b inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides a quick check for this context being a server context <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html#af8e4ee537c294a75f46070616f542a9b">More...</a><br /></td></tr>
<tr class="separator:af8e4ee537c294a75f46070616f542a9b inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ecbba6508822305643bb1c267d73418 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html#a2ecbba6508822305643bb1c267d73418">IsClient</a><code> [get]</code></td></tr>
<tr class="memdesc:a2ecbba6508822305643bb1c267d73418 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides a quick check for this context being a server context <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html#a2ecbba6508822305643bb1c267d73418">More...</a><br /></td></tr>
<tr class="separator:a2ecbba6508822305643bb1c267d73418 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19c2730e84df0a9c407043256cfbae87 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl.html#a007ac2ee5719c195cd362bfa2aec1b3a">SaslAuthOutcome</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html#a19c2730e84df0a9c407043256cfbae87">Outcome</a><code> [get]</code></td></tr>
<tr class="memdesc:a19c2730e84df0a9c407043256cfbae87 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the outcome of the SASL authentication process. If the SASL exchange is ongoing or the SASL layer was skipped because a particular engine configuration allows such behavior then this method should return null to indicate no SASL outcome is available. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html#a19c2730e84df0a9c407043256cfbae87">More...</a><br /></td></tr>
<tr class="separator:a19c2730e84df0a9c407043256cfbae87 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a32e0f2ca8ae8112a5ff7fef29823aa3a inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Engine.html#ae14090a56ba2b8dc9b9bdccb6c5fdfb5">EngineSaslState</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html#a32e0f2ca8ae8112a5ff7fef29823aa3a">State</a><code> [get]</code></td></tr>
<tr class="memdesc:a32e0f2ca8ae8112a5ff7fef29823aa3a inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a state enum that indicates the current operating state of the SASL negotiation process or conversely if no SASL layer is configured this method should return the no-SASL state. This method must never return a null result. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html#a32e0f2ca8ae8112a5ff7fef29823aa3a">More...</a><br /></td></tr>
<tr class="separator:a32e0f2ca8ae8112a5ff7fef29823aa3a inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11538259185fc4d7a5b3231ee5f41acd inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Types_1_1Symbol.html">Symbol</a>[]&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html#a11538259185fc4d7a5b3231ee5f41acd">ServerMechanisms</a><code> [get]</code></td></tr>
<tr class="memdesc:a11538259185fc4d7a5b3231ee5f41acd inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="mdescLeft">&#160;</td><td class="mdescRight">After the server has sent its supported mechanisms this method will return a copy of that list for review by the server event handler. If called before the server has sent the mechanisms list this method will return null. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html#a11538259185fc4d7a5b3231ee5f41acd">More...</a><br /></td></tr>
<tr class="separator:a11538259185fc4d7a5b3231ee5f41acd inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84ffa464643531a99cbe8b93fe7e52a5 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Types_1_1Symbol.html">Symbol</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html#a84ffa464643531a99cbe8b93fe7e52a5">ChosenMechanism</a><code> [get]</code></td></tr>
<tr class="memdesc:a84ffa464643531a99cbe8b93fe7e52a5 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the mechanism that was sent to the server to select the SASL mechanism to use for negotiations. If called before the client has sent its chosen mechanism this method returns null. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html#a84ffa464643531a99cbe8b93fe7e52a5">More...</a><br /></td></tr>
<tr class="separator:a84ffa464643531a99cbe8b93fe7e52a5 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6c7a8f0228fe0de0aacf0ac55acf8e28 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="memItemLeft" align="right" valign="top">string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html#a6c7a8f0228fe0de0aacf0ac55acf8e28">Hostname</a><code> [get]</code></td></tr>
<tr class="memdesc:a6c7a8f0228fe0de0aacf0ac55acf8e28 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="mdescLeft">&#160;</td><td class="mdescRight">The DNS name of the host (either fully qualified or relative) that was sent to the server which define the host the sending peer is connecting to. If called before the client sent the host name information to the server this method returns null. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext.html#a6c7a8f0228fe0de0aacf0ac55acf8e28">More...</a><br /></td></tr>
<tr class="separator:a6c7a8f0228fe0de0aacf0ac55acf8e28 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslContext"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>SASL Server operating context used by an <a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Engine.html">Engine</a> that has been configured as a SASL server or that has receiver an AMQP header thereby forcing it into becoming the server side of the SASL exchange. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a01f958c255928768a4c0248071a376f3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a01f958c255928768a4c0248071a376f3">&#9670;&nbsp;</a></span>SaslFailure()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.html">ISaslServerContext</a> Apache.Qpid.Proton.Engine.Sasl.ISaslServerContext.SaslFailure </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1SaslException.html">SaslException</a>&#160;</td>
<td class="paramname"><em>failure</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Allows the server implementation to fail the SASL negotiation process due to some unrecoverable error. Failing the process will signal the <a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Engine.html">Engine</a> that the SASL process has failed and place the engine in a failed state as well as notify the registered error handler for the <a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Engine.html">Engine</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">failure</td><td>The exception that indicates the reason for the server failure</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This SASL server context instance.</dd></dl>
<p>Implemented in <a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1Sasl_1_1ProtonSaslServerContext.html#a8be4b734a49d4799fe0e8ed085fc7549">Apache.Qpid.Proton.Engine.Implementation.Sasl.ProtonSaslServerContext</a>.</p>
</div>
</div>
<a id="aa3f23390e03f95ba3e9639c60a39805b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa3f23390e03f95ba3e9639c60a39805b">&#9670;&nbsp;</a></span>SendChallenge()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.html">ISaslServerContext</a> Apache.Qpid.Proton.Engine.Sasl.ISaslServerContext.SendChallenge </td>
<td>(</td>
<td class="paramtype"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a>&#160;</td>
<td class="paramname"><em>challenge</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sends the SASL challenge defined by the SASL mechanism that is in use during this SASL negotiation. The challenge is an opaque binary that is provided to the server by the security mechanism. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">challenge</td><td>The challenge bytes to send to the client</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This SASL server context instance.</dd></dl>
<p>Implemented in <a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1Sasl_1_1ProtonSaslServerContext.html#a894fc823f15b6ac63cecd23919965ada">Apache.Qpid.Proton.Engine.Implementation.Sasl.ProtonSaslServerContext</a>.</p>
</div>
</div>
<a id="a28ac39200e67889f33e8939874a759d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a28ac39200e67889f33e8939874a759d6">&#9670;&nbsp;</a></span>SendMechanisms()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.html">ISaslServerContext</a> Apache.Qpid.Proton.Engine.Sasl.ISaslServerContext.SendMechanisms </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Types_1_1Symbol.html">Symbol</a>[]&#160;</td>
<td class="paramname"><em>mechanisms</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sends the set of supported mechanisms to the SASL client from which it must choose and return one mechanism which will then be the basis for the SASL authentication negotiation. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">mechanisms</td><td>The SASL mechanisms to offer to the client</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This SASL server context instance.</dd></dl>
<p>Implemented in <a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1Sasl_1_1ProtonSaslServerContext.html#ad1834df4ac7b2d189eeacce7294cec96">Apache.Qpid.Proton.Engine.Implementation.Sasl.ProtonSaslServerContext</a>.</p>
</div>
</div>
<a id="afe9ea9510d98afa42f191b69e407c719"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afe9ea9510d98afa42f191b69e407c719">&#9670;&nbsp;</a></span>SendOutcome()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerContext.html">ISaslServerContext</a> Apache.Qpid.Proton.Engine.Sasl.ISaslServerContext.SendOutcome </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl.html#a007ac2ee5719c195cd362bfa2aec1b3a">SaslAuthOutcome</a>&#160;</td>
<td class="paramname"><em>outcome</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a>&#160;</td>
<td class="paramname"><em>additional</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sends a response to a server side challenge that comprises the challenge / response exchange for the chosen SASL mechanism. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">outcome</td><td>The SASL Authentication outcome to send</td></tr>
<tr><td class="paramname">additional</td><td>Optional additional data to send</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This SASL server context instance.</dd></dl>
<p>Implemented in <a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1Sasl_1_1ProtonSaslServerContext.html#a0ec73309dcb9d1f6248abefb0073290a">Apache.Qpid.Proton.Engine.Implementation.Sasl.ProtonSaslServerContext</a>.</p>
</div>
</div>
<h2 class="groupheader">Property Documentation</h2>
<a id="ad66d3933041fbfa3e51f4a993e702351"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad66d3933041fbfa3e51f4a993e702351">&#9670;&nbsp;</a></span>Authenticator</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslServerAuthenticator.html">ISaslServerAuthenticator</a> Apache.Qpid.Proton.Engine.Sasl.ISaslServerContext.Authenticator</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span><span class="mlabel">set</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Configures the SASL authenticator which will be used to drive the SASL authentication process on the server side. </p>
</div>
</div>
<hr/>The documentation for this interface was generated from the following file:<ul>
<li>src/Proton/Engine/Sasl/ISaslServerContext.cs</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>