blob: 0244d420ad276ba822a9654d8def8188369599ac [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.ISaslClientContext 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_1ISaslClientContext.html">ISaslClientContext</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_1ISaslClientContext-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">Apache.Qpid.Proton.Engine.Sasl.ISaslClientContext Interface Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Root context of a SASL authentication API which provides common elements used in both clients and servers.
<a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslClientContext.html#details">More...</a></p>
<div class="dynheader">
Inheritance diagram for Apache.Qpid.Proton.Engine.Sasl.ISaslClientContext:</div>
<div class="dyncontent">
<div class="center">
<img src="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslClientContext.png" usemap="#Apache.Qpid.Proton.Engine.Sasl.ISaslClientContext_map" alt=""/>
<map id="Apache.Qpid.Proton.Engine.Sasl.ISaslClientContext_map" name="Apache.Qpid.Proton.Engine.Sasl.ISaslClientContext_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,424,24"/>
<area href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1Sasl_1_1ProtonSaslClientContext.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.ProtonSaslClientContext" shape="rect" coords="0,112,424,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:ae1baa69049a6aec0ad19422712817294"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslClientContext.html">ISaslClientContext</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslClientContext.html#ae1baa69049a6aec0ad19422712817294">SendSASLHeader</a> ()</td></tr>
<tr class="memdesc:ae1baa69049a6aec0ad19422712817294"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sends the AMQP Header indicating the desire for SASL negotiations to be commenced on this connection. The hosting application my wish to start SASL negotiations prior to opening a connection in order to validation authentication state out of band if the normal open process. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslClientContext.html#ae1baa69049a6aec0ad19422712817294">More...</a><br /></td></tr>
<tr class="separator:ae1baa69049a6aec0ad19422712817294"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5064a6de5a0e5c995601916288778ae8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslClientContext.html">ISaslClientContext</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslClientContext.html#a5064a6de5a0e5c995601916288778ae8">SendChosenMechanism</a> (<a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Types_1_1Symbol.html">Symbol</a> mechanism, string host, <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a> initialResponse)</td></tr>
<tr class="memdesc:a5064a6de5a0e5c995601916288778ae8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sends a response to the SASL server indicating the chosen mechanism for this client and the host name that this client is identifying itself as. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslClientContext.html#a5064a6de5a0e5c995601916288778ae8">More...</a><br /></td></tr>
<tr class="separator:a5064a6de5a0e5c995601916288778ae8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aec0c3e3a697130ccdcfde22ee1c9e47d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslClientContext.html">ISaslClientContext</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslClientContext.html#aec0c3e3a697130ccdcfde22ee1c9e47d">SendResponse</a> (<a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a> response)</td></tr>
<tr class="memdesc:aec0c3e3a697130ccdcfde22ee1c9e47d"><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_1ISaslClientContext.html#aec0c3e3a697130ccdcfde22ee1c9e47d">More...</a><br /></td></tr>
<tr class="separator:aec0c3e3a697130ccdcfde22ee1c9e47d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4551129b93829b8548389a5b5a0c4c74"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslClientContext.html">ISaslClientContext</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslClientContext.html#a4551129b93829b8548389a5b5a0c4c74">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:a4551129b93829b8548389a5b5a0c4c74"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allows the client implementation to fail the SASL negotiation process due to some unrecoverable error. Failing the process will signal the engine that the SASL process has failed and place the engine in a failed state as well as notify the registered error handler for the protocol engine. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslClientContext.html#a4551129b93829b8548389a5b5a0c4c74">More...</a><br /></td></tr>
<tr class="separator:a4551129b93829b8548389a5b5a0c4c74"><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:ae6e68656cb7ef88cc383e76b6cdc1d71"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslClientAuthenticator.html">ISaslClientAuthenticator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslClientContext.html#ae6e68656cb7ef88cc383e76b6cdc1d71">Authenticator</a><code> [get, set]</code></td></tr>
<tr class="memdesc:ae6e68656cb7ef88cc383e76b6cdc1d71"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configures the SASL Authenticator instance that will process the incoming SASL exchange and provide authentication information and response to challenge requests from the remote. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Sasl_1_1ISaslClientContext.html#ae6e68656cb7ef88cc383e76b6cdc1d71">More...</a><br /></td></tr>
<tr class="separator:ae6e68656cb7ef88cc383e76b6cdc1d71"><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>Root context of a SASL authentication API which provides common elements used in both clients and servers. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a4551129b93829b8548389a5b5a0c4c74"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4551129b93829b8548389a5b5a0c4c74">&#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_1ISaslClientContext.html">ISaslClientContext</a> Apache.Qpid.Proton.Engine.Sasl.ISaslClientContext.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 client implementation to fail the SASL negotiation process due to some unrecoverable error. Failing the process will signal the engine that the SASL process has failed and place the engine in a failed state as well as notify the registered error handler for the protocol engine. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">failure</td><td>The exception that defines the cause of the failure</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This SASL client context instance.</dd></dl>
<p>Implemented in <a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1Sasl_1_1ProtonSaslClientContext.html#a7029870041e19ed4efed4a09d8082838">Apache.Qpid.Proton.Engine.Implementation.Sasl.ProtonSaslClientContext</a>.</p>
</div>
</div>
<a id="a5064a6de5a0e5c995601916288778ae8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5064a6de5a0e5c995601916288778ae8">&#9670;&nbsp;</a></span>SendChosenMechanism()</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_1ISaslClientContext.html">ISaslClientContext</a> Apache.Qpid.Proton.Engine.Sasl.ISaslClientContext.SendChosenMechanism </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>mechanism</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">string&#160;</td>
<td class="paramname"><em>host</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>initialResponse</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sends a response to the SASL server indicating the chosen mechanism for this client and the host name that this client is identifying itself as. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">mechanism</td><td>The server mechanism that the client has selected</td></tr>
<tr><td class="paramname">host</td><td>The name of the host</td></tr>
<tr><td class="paramname">initialResponse</td><td>The binary response to transmit</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This SASL client context instance.</dd></dl>
<p>Implemented in <a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1Sasl_1_1ProtonSaslClientContext.html#af8bdf4854b44e20854911af4e8253a5e">Apache.Qpid.Proton.Engine.Implementation.Sasl.ProtonSaslClientContext</a>.</p>
</div>
</div>
<a id="aec0c3e3a697130ccdcfde22ee1c9e47d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aec0c3e3a697130ccdcfde22ee1c9e47d">&#9670;&nbsp;</a></span>SendResponse()</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_1ISaslClientContext.html">ISaslClientContext</a> Apache.Qpid.Proton.Engine.Sasl.ISaslClientContext.SendResponse </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>response</em></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">response</td><td>The response bytes to transmit</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This SASL client context instance.</dd></dl>
<p>Implemented in <a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1Sasl_1_1ProtonSaslClientContext.html#aae245624bfff50ba2c0b04282c67a8c1">Apache.Qpid.Proton.Engine.Implementation.Sasl.ProtonSaslClientContext</a>.</p>
</div>
</div>
<a id="ae1baa69049a6aec0ad19422712817294"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae1baa69049a6aec0ad19422712817294">&#9670;&nbsp;</a></span>SendSASLHeader()</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_1ISaslClientContext.html">ISaslClientContext</a> Apache.Qpid.Proton.Engine.Sasl.ISaslClientContext.SendSASLHeader </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sends the AMQP Header indicating the desire for SASL negotiations to be commenced on this connection. The hosting application my wish to start SASL negotiations prior to opening a connection in order to validation authentication state out of band if the normal open process. </p>
<dl class="section return"><dt>Returns</dt><dd>This SASL client context instance.</dd></dl>
<p>Implemented in <a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1Sasl_1_1ProtonSaslClientContext.html#a2524370d45b3ced8943f5d950e063af2">Apache.Qpid.Proton.Engine.Implementation.Sasl.ProtonSaslClientContext</a>.</p>
</div>
</div>
<h2 class="groupheader">Property Documentation</h2>
<a id="ae6e68656cb7ef88cc383e76b6cdc1d71"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae6e68656cb7ef88cc383e76b6cdc1d71">&#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_1ISaslClientAuthenticator.html">ISaslClientAuthenticator</a> Apache.Qpid.Proton.Engine.Sasl.ISaslClientContext.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 instance that will process the incoming SASL exchange and provide authentication information and response to challenge requests from the remote. </p>
</div>
</div>
<hr/>The documentation for this interface was generated from the following file:<ul>
<li>src/Proton/Engine/Sasl/ISaslClientContext.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>