Update haddock documentation
This commit is contained in:
parent
db021f3d36
commit
b1ce3be2ee
93
Ldap-Asn1-FromAsn1.html
Normal file
93
Ldap-Asn1-FromAsn1.html
Normal file
@ -0,0 +1,93 @@
|
||||
<!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>Ldap.Asn1.FromAsn1</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();setSynopsis("mini_Ldap-Asn1-FromAsn1.html");};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Ldap-Asn1-FromAsn1.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr><tr><th>Language</th><td>Haskell2010</td></tr></table><p class="caption">Ldap.Asn1.FromAsn1</p></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">class</span> <a name="t:FromAsn1" class="def">FromAsn1</a> a <span class="keyword">where</span> <a href="src/Ldap-Asn1-FromAsn1.html#FromAsn1" class="link">Source</a></p><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:fromAsn1" class="def">fromAsn1</a> :: <a href="Ldap-Asn1-FromAsn1.html#t:Parser">Parser</a> [ASN1] a <a href="src/Ldap-Asn1-FromAsn1.html#fromAsn1" class="link">Source</a></p></div><div class="subs instances"><p id="control.i:FromAsn1" class="caption collapser" onclick="toggleSection('i:FromAsn1')">Instances</p><div id="section.i:FromAsn1" class="show"><table><tr><td class="src"><a href="Ldap-Asn1-FromAsn1.html#t:FromAsn1">FromAsn1</a> <a href="Ldap-Asn1-Type.html#t:LdapOid">LdapOid</a> <a href="src/Ldap-Asn1-FromAsn1.html#line-84" class="link">Source</a></td><td class="doc"><pre>LDAPOID ::= OCTET STRING -- Constrained to <numericoid>
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-FromAsn1.html#t:FromAsn1">FromAsn1</a> <a href="Ldap-Asn1-Type.html#t:LdapString">LdapString</a> <a href="src/Ldap-Asn1-FromAsn1.html#line-72" class="link">Source</a></td><td class="doc"><pre>LDAPString ::= OCTET STRING -- UTF-8 encoded,
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-FromAsn1.html#t:FromAsn1">FromAsn1</a> <a href="Ldap-Asn1-Type.html#t:Uri">Uri</a> <a href="src/Ldap-Asn1-FromAsn1.html#line-260" class="link">Source</a></td><td class="doc"><pre>URI ::= LDAPString
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-FromAsn1.html#t:FromAsn1">FromAsn1</a> <a href="Ldap-Asn1-Type.html#t:ReferralUris">ReferralUris</a> <a href="src/Ldap-Asn1-FromAsn1.html#line-248" class="link">Source</a></td><td class="doc"><pre>Referral ::= SEQUENCE SIZE (1..MAX) OF uri URI
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-FromAsn1.html#t:FromAsn1">FromAsn1</a> <a href="Ldap-Asn1-Type.html#t:LdapDn">LdapDn</a> <a href="src/Ldap-Asn1-FromAsn1.html#line-94" class="link">Source</a></td><td class="doc"><pre>LDAPDN ::= LDAPString
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-FromAsn1.html#t:FromAsn1">FromAsn1</a> <a href="Ldap-Asn1-Type.html#t:PartialAttribute">PartialAttribute</a> <a href="src/Ldap-Asn1-FromAsn1.html#line-122" class="link">Source</a></td><td class="doc"><pre>PartialAttribute ::= SEQUENCE {
|
||||
type AttributeDescription,
|
||||
vals SET OF value AttributeValue }
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-FromAsn1.html#t:FromAsn1">FromAsn1</a> <a href="Ldap-Asn1-Type.html#t:AttributeValue">AttributeValue</a> <a href="src/Ldap-Asn1-FromAsn1.html#line-110" class="link">Source</a></td><td class="doc"><pre>AttributeValue ::= OCTET STRING
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-FromAsn1.html#t:FromAsn1">FromAsn1</a> <a href="Ldap-Asn1-Type.html#t:AttributeDescription">AttributeDescription</a> <a href="src/Ldap-Asn1-FromAsn1.html#line-102" class="link">Source</a></td><td class="doc"><pre>AttributeDescription ::= LDAPString
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-FromAsn1.html#t:FromAsn1">FromAsn1</a> <a href="Ldap-Asn1-Type.html#t:LdapResult">LdapResult</a> <a href="src/Ldap-Asn1-FromAsn1.html#line-188" class="link">Source</a></td><td class="doc"><pre>LDAPResult ::= SEQUENCE {
|
||||
resultCode ENUMERATED {
|
||||
success (0),
|
||||
operationsError (1),
|
||||
protocolError (2),
|
||||
timeLimitExceeded (3),
|
||||
sizeLimitExceeded (4),
|
||||
compareFalse (5),
|
||||
compareTrue (6),
|
||||
authMethodNotSupported (7),
|
||||
strongerAuthRequired (8),
|
||||
-- 9 reserved --
|
||||
referral (10),
|
||||
adminLimitExceeded (11),
|
||||
unavailableCriticalExtension (12),
|
||||
confidentialityRequired (13),
|
||||
saslBindInProgress (14),
|
||||
noSuchAttribute (16),
|
||||
undefinedAttributeType (17),
|
||||
inappropriateMatching (18),
|
||||
constraintViolation (19),
|
||||
attributeOrValueExists (20),
|
||||
invalidAttributeSyntax (21),
|
||||
-- 22-31 unused --
|
||||
noSuchObject (32),
|
||||
aliasProblem (33),
|
||||
invalidDNSyntax (34),
|
||||
-- 35 reserved for undefined isLeaf --
|
||||
aliasDereferencingProblem (36),
|
||||
-- 37-47 unused --
|
||||
inappropriateAuthentication (48),
|
||||
invalidCredentials (49),
|
||||
insufficientAccessRights (50),
|
||||
busy (51),
|
||||
unavailable (52),
|
||||
unwillingToPerform (53),
|
||||
loopDetect (54),
|
||||
-- 55-63 unused --
|
||||
namingViolation (64),
|
||||
objectClassViolation (65),
|
||||
notAllowedOnNonLeaf (66),
|
||||
notAllowedOnRDN (67),
|
||||
entryAlreadyExists (68),
|
||||
objectClassModsProhibited (69),
|
||||
-- 70 reserved for CLDAP --
|
||||
affectsMultipleDSAs (71),
|
||||
-- 72-79 unused --
|
||||
other (80),
|
||||
... },
|
||||
matchedDN LDAPDN,
|
||||
diagnosticMessage LDAPString,
|
||||
referral [3] Referral OPTIONAL }
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-FromAsn1.html#t:FromAsn1">FromAsn1</a> <a href="Ldap-Asn1-Type.html#t:PartialAttributeList">PartialAttributeList</a> <a href="src/Ldap-Asn1-FromAsn1.html#line-332" class="link">Source</a></td><td class="doc"><pre>PartialAttributeList ::= SEQUENCE OF partialAttribute PartialAttribute
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-FromAsn1.html#t:FromAsn1">FromAsn1</a> <a href="Ldap-Asn1-Type.html#t:ProtocolServerOp">ProtocolServerOp</a> <a href="src/Ldap-Asn1-FromAsn1.html#line-296" class="link">Source</a></td><td class="doc"><pre>BindResponse ::= [APPLICATION 1] SEQUENCE {
|
||||
COMPONENTS OF LDAPResult,
|
||||
serverSaslCreds [7] OCTET STRING OPTIONAL }
|
||||
</pre><pre>SearchResultEntry ::= [APPLICATION 4] SEQUENCE {
|
||||
objectName LDAPDN,
|
||||
attributes PartialAttributeList }
|
||||
</pre><pre>SearchResultDone ::= [APPLICATION 5] LDAPResult
|
||||
</pre><pre>ModifyResponse ::= [APPLICATION 7] LDAPResult
|
||||
</pre><pre>AddResponse ::= [APPLICATION 9] LDAPResult
|
||||
</pre><pre>DelResponse ::= [APPLICATION 11] LDAPResult
|
||||
</pre><pre>CompareResponse ::= [APPLICATION 15] LDAPResult
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-FromAsn1.html#t:FromAsn1">FromAsn1</a> <a href="Ldap-Asn1-Type.html#t:Id">Id</a> <a href="src/Ldap-Asn1-FromAsn1.html#line-62" class="link">Source</a></td><td class="doc"><pre>MessageID ::= INTEGER (0 .. maxInt)
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-FromAsn1.html#t:FromAsn1">FromAsn1</a> op => <a href="Ldap-Asn1-FromAsn1.html#t:FromAsn1">FromAsn1</a> (<a href="Ldap-Asn1-Type.html#t:LdapMessage">LdapMessage</a> op) <a href="src/Ldap-Asn1-FromAsn1.html#line-49" class="link">Source</a></td><td class="doc"><pre>LDAPMessage ::= SEQUENCE {
|
||||
messageID MessageID,
|
||||
protocolOp CHOICE {
|
||||
bindRequest BindRequest,
|
||||
bindResponse BindResponse,
|
||||
unbindRequest UnbindRequest,
|
||||
searchRequest SearchRequest,
|
||||
searchResEntry SearchResultEntry,
|
||||
searchResDone SearchResultDone,
|
||||
searchResRef SearchResultReference,
|
||||
addRequest AddRequest,
|
||||
addResponse AddResponse,
|
||||
... },
|
||||
controls [0] Controls OPTIONAL }
|
||||
</pre></td></tr><tr><td class="src">(<a href="Ldap-Asn1-FromAsn1.html#t:FromAsn1">FromAsn1</a> a, <a href="Ldap-Asn1-FromAsn1.html#t:FromAsn1">FromAsn1</a> b) => <a href="Ldap-Asn1-FromAsn1.html#t:FromAsn1">FromAsn1</a> (a, b) <a href="src/Ldap-Asn1-FromAsn1.html#line-339" class="link">Source</a></td><td class="doc empty"> </td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a name="t:Parser" class="def">Parser</a> s a <a href="src/Ldap-Asn1-FromAsn1.html#Parser" class="link">Source</a></p><div class="subs instances"><p id="control.i:Parser" class="caption collapser" onclick="toggleSection('i:Parser')">Instances</p><div id="section.i:Parser" class="show"><table><tr><td class="src"><a href="http://hackage.haskell.org/package/base/docs/Control-Monad.html#t:Monad">Monad</a> (<a href="Ldap-Asn1-FromAsn1.html#t:Parser">Parser</a> s) <a href="src/Ldap-Asn1-FromAsn1.html#line-360" class="link">Source</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="http://hackage.haskell.org/package/base/docs/Data-Functor.html#t:Functor">Functor</a> (<a href="Ldap-Asn1-FromAsn1.html#t:Parser">Parser</a> s) <a href="src/Ldap-Asn1-FromAsn1.html#line-345" class="link">Source</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="http://hackage.haskell.org/package/base/docs/Control-Applicative.html#t:Applicative">Applicative</a> (<a href="Ldap-Asn1-FromAsn1.html#t:Parser">Parser</a> s) <a href="src/Ldap-Asn1-FromAsn1.html#line-348" class="link">Source</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="http://hackage.haskell.org/package/base/docs/Control-Applicative.html#t:Alternative">Alternative</a> (<a href="Ldap-Asn1-FromAsn1.html#t:Parser">Parser</a> s) <a href="src/Ldap-Asn1-FromAsn1.html#line-355" class="link">Source</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="http://hackage.haskell.org/package/base/docs/Control-Monad.html#t:MonadPlus">MonadPlus</a> (<a href="Ldap-Asn1-FromAsn1.html#t:Parser">Parser</a> s) <a href="src/Ldap-Asn1-FromAsn1.html#line-366" class="link">Source</a></td><td class="doc empty"> </td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:parseAsn1" class="def">parseAsn1</a> :: <a href="Ldap-Asn1-FromAsn1.html#t:FromAsn1">FromAsn1</a> a => [ASN1] -> <a href="http://hackage.haskell.org/package/base/docs/Data-Maybe.html#t:Maybe">Maybe</a> ([ASN1], a) <a href="src/Ldap-Asn1-FromAsn1.html#parseAsn1" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:parse" class="def">parse</a> :: <a href="Ldap-Asn1-FromAsn1.html#t:Parser">Parser</a> s a -> s -> <a href="http://hackage.haskell.org/package/base/docs/Data-Maybe.html#t:Maybe">Maybe</a> (s, a) <a href="src/Ldap-Asn1-FromAsn1.html#parse" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:next" class="def">next</a> :: <a href="Ldap-Asn1-FromAsn1.html#t:Parser">Parser</a> [s] s <a href="src/Ldap-Asn1-FromAsn1.html#next" class="link">Source</a></p></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
116
Ldap-Asn1-ToAsn1.html
Normal file
116
Ldap-Asn1-ToAsn1.html
Normal file
@ -0,0 +1,116 @@
|
||||
<!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>Ldap.Asn1.ToAsn1</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();setSynopsis("mini_Ldap-Asn1-ToAsn1.html");};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Ldap-Asn1-ToAsn1.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr><tr><th>Language</th><td>Haskell2010</td></tr></table><p class="caption">Ldap.Asn1.ToAsn1</p></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">class</span> <a name="t:ToAsn1" class="def">ToAsn1</a> a <span class="keyword">where</span> <a href="src/Ldap-Asn1-ToAsn1.html#ToAsn1" class="link">Source</a></p><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:toAsn1" class="def">toAsn1</a> :: a -> <a href="http://hackage.haskell.org/package/base/docs/Data-Monoid.html#t:Endo">Endo</a> [ASN1] <a href="src/Ldap-Asn1-ToAsn1.html#toAsn1" class="link">Source</a></p></div><div class="subs instances"><p id="control.i:ToAsn1" class="caption collapser" onclick="toggleSection('i:ToAsn1')">Instances</p><div id="section.i:ToAsn1" class="show"><table><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:LdapOid">LdapOid</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-64" class="link">Source</a></td><td class="doc"><pre>LDAPOID ::= OCTET STRING -- Constrained to <numericoid>
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:LdapString">LdapString</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-56" class="link">Source</a></td><td class="doc"><pre>LDAPString ::= OCTET STRING -- UTF-8 encoded
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:RelativeLdapDn">RelativeLdapDn</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-80" class="link">Source</a></td><td class="doc"><pre>RelativeLDAPDN ::= LDAPString -- Constrained to <name-component>
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:LdapDn">LdapDn</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-72" class="link">Source</a></td><td class="doc"><pre>LDAPDN ::= LDAPString -- Constrained to <distinguishedName>
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:PartialAttribute">PartialAttribute</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-125" class="link">Source</a></td><td class="doc"><pre>PartialAttribute ::= SEQUENCE {
|
||||
type AttributeDescription,
|
||||
vals SET OF value AttributeValue }
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:Attribute">Attribute</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-135" class="link">Source</a></td><td class="doc"><pre>Attribute ::= PartialAttribute(WITH COMPONENTS {
|
||||
...,
|
||||
vals (SIZE(1..MAX))})
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:AssertionValue">AssertionValue</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-114" class="link">Source</a></td><td class="doc"><pre>AssertionValue ::= OCTET STRING
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:AttributeValueAssertion">AttributeValueAssertion</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-106" class="link">Source</a></td><td class="doc"><pre>AttributeValueAssertion ::= SEQUENCE {
|
||||
attributeDesc AttributeDescription,
|
||||
assertionValue AssertionValue }
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:AttributeValue">AttributeValue</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-96" class="link">Source</a></td><td class="doc"><pre>AttributeValue ::= OCTET STRING
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:AttributeDescription">AttributeDescription</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-88" class="link">Source</a></td><td class="doc"><pre>AttributeDescription ::= LDAPString
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:Control">Control</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-162" class="link">Source</a></td><td class="doc"><pre>Control ::= SEQUENCE {
|
||||
controlType LDAPOID,
|
||||
criticality BOOLEAN DEFAULT FALSE,
|
||||
controlValue OCTET STRING OPTIONAL }
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:Controls">Controls</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-151" class="link">Source</a></td><td class="doc"><pre>Controls ::= SEQUENCE OF control Control
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:AttributeList">AttributeList</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-387" class="link">Source</a></td><td class="doc"><pre>AttributeList ::= SEQUENCE OF attribute Attribute
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:AttributeSelection">AttributeSelection</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-314" class="link">Source</a></td><td class="doc"><pre>AttributeSelection ::= SEQUENCE OF selector LDAPString
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:MatchingRuleId">MatchingRuleId</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-143" class="link">Source</a></td><td class="doc"><pre>MatchingRuleId ::= LDAPString
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:MatchingRuleAssertion">MatchingRuleAssertion</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-374" class="link">Source</a></td><td class="doc"><pre>MatchingRuleAssertion ::= SEQUENCE {
|
||||
matchingRule [1] MatchingRuleId OPTIONAL,
|
||||
type [2] AttributeDescription OPTIONAL,
|
||||
matchValue [3] AssertionValue,
|
||||
dnAttributes [4] BOOLEAN DEFAULT FALSE }
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:SubstringFilter">SubstringFilter</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-358" class="link">Source</a></td><td class="doc"><pre>SubstringFilter ::= SEQUENCE {
|
||||
type AttributeDescription,
|
||||
substrings SEQUENCE SIZE (1..MAX) OF substring CHOICE {
|
||||
initial [0] AssertionValue, -- can occur at most once
|
||||
any [1] AssertionValue,
|
||||
final [2] AssertionValue } -- can occur at most once
|
||||
}
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:Filter">Filter</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-333" class="link">Source</a></td><td class="doc"><pre>Filter ::= CHOICE {
|
||||
and [0] SET SIZE (1..MAX) OF filter Filter,
|
||||
or [1] SET SIZE (1..MAX) OF filter Filter,
|
||||
not [2] Filter,
|
||||
equalityMatch [3] AttributeValueAssertion,
|
||||
substrings [4] SubstringFilter,
|
||||
greaterOrEqual [5] AttributeValueAssertion,
|
||||
lessOrEqual [6] AttributeValueAssertion,
|
||||
present [7] AttributeDescription,
|
||||
approxMatch [8] AttributeValueAssertion,
|
||||
extensibleMatch [9] MatchingRuleAssertion,
|
||||
... }
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:AuthenticationChoice">AuthenticationChoice</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-306" class="link">Source</a></td><td class="doc"><pre>AuthenticationChoice ::= CHOICE {
|
||||
simple [0] OCTET STRING,
|
||||
... }
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:ProtocolClientOp">ProtocolClientOp</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-244" class="link">Source</a></td><td class="doc"><pre>BindRequest ::= [APPLICATION 0] SEQUENCE {
|
||||
version INTEGER (1 .. 127),
|
||||
name LDAPDN,
|
||||
authentication AuthenticationChoice }
|
||||
</pre><pre>UnbindRequest ::= [APPLICATION 2] NULL
|
||||
</pre><pre>SearchRequest ::= [APPLICATION 3] SEQUENCE {
|
||||
baseObject LDAPDN,
|
||||
scope ENUMERATED {
|
||||
baseObject (0),
|
||||
singleLevel (1),
|
||||
wholeSubtree (2),
|
||||
... },
|
||||
derefAliases ENUMERATED {
|
||||
neverDerefAliases (0),
|
||||
derefInSearching (1),
|
||||
derefFindingBaseObj (2),
|
||||
derefAlways (3) },
|
||||
sizeLimit INTEGER (0 .. maxInt),
|
||||
timeLimit INTEGER (0 .. maxInt),
|
||||
typesOnly BOOLEAN,
|
||||
filter Filter,
|
||||
attributes AttributeSelection }
|
||||
</pre><pre>ModifyRequest ::= [APPLICATION 6] SEQUENCE {
|
||||
object LDAPDN,
|
||||
changes SEQUENCE OF change SEQUENCE {
|
||||
operation ENUMERATED {
|
||||
add (0),
|
||||
delete (1),
|
||||
replace (2),
|
||||
... },
|
||||
modification PartialAttribute } }
|
||||
</pre><pre>AddRequest ::= [APPLICATION 8] SEQUENCE {
|
||||
entry LDAPDN,
|
||||
attributes AttributeList }
|
||||
</pre><pre>DelRequest ::= [APPLICATION 10] LDAPDN
|
||||
</pre><pre>ModifyDNRequest ::= [APPLICATION 12] SEQUENCE {
|
||||
entry LDAPDN,
|
||||
newrdn RelativeLDAPDN,
|
||||
deleteoldrdn BOOLEAN,
|
||||
newSuperior [0] LDAPDN OPTIONAL }
|
||||
</pre><pre>CompareRequest ::= [APPLICATION 14] SEQUENCE {
|
||||
entry LDAPDN,
|
||||
ava AttributeValueAssertion }
|
||||
</pre><pre>ExtendedRequest ::= [APPLICATION 23] SEQUENCE {
|
||||
requestName [0] LDAPOID,
|
||||
requestValue [1] OCTET STRING OPTIONAL }
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> <a href="Ldap-Asn1-Type.html#t:Id">Id</a> <a href="src/Ldap-Asn1-ToAsn1.html#line-48" class="link">Source</a></td><td class="doc"><pre>MessageID ::= INTEGER (0 .. maxInt)
|
||||
</pre></td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> a => <a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> [a] <a href="src/Ldap-Asn1-ToAsn1.html#line-390" class="link">Source</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> a => <a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> (<a href="Ldap-Client.html#t:NonEmpty">NonEmpty</a> a) <a href="src/Ldap-Asn1-ToAsn1.html#line-393" class="link">Source</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> op => <a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">ToAsn1</a> (<a href="Ldap-Asn1-Type.html#t:LdapMessage">LdapMessage</a> op) <a href="src/Ldap-Asn1-ToAsn1.html#line-39" class="link">Source</a></td><td class="doc"><pre>LDAPMessage ::= SEQUENCE {
|
||||
messageID MessageID,
|
||||
protocolOp CHOICE {
|
||||
bindRequest BindRequest,
|
||||
bindResponse BindResponse,
|
||||
unbindRequest UnbindRequest,
|
||||
searchRequest SearchRequest,
|
||||
searchResEntry SearchResultEntry,
|
||||
searchResDone SearchResultDone,
|
||||
searchResRef SearchResultReference,
|
||||
addRequest AddRequest,
|
||||
addResponse AddResponse,
|
||||
... },
|
||||
controls [0] Controls OPTIONAL }
|
||||
</pre></td></tr></table></div></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
208
Ldap-Asn1-Type.html
Normal file
208
Ldap-Asn1-Type.html
Normal file
File diff suppressed because one or more lines are too long
4
Ldap-Client-Add.html
Normal file
4
Ldap-Client-Add.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>Ldap.Client.Add</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();setSynopsis("mini_Ldap-Client-Add.html");};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Ldap-Client-Add.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr><tr><th>Language</th><td>Haskell2010</td></tr></table><p class="caption">Ldap.Client.Add</p></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a name="v:add" class="def">add</a> :: <a href="Ldap-Client-Internal.html#t:Ldap">Ldap</a> -> <a href="Ldap-Client-Internal.html#t:Dn">Dn</a> -> <a href="Ldap-Client-Internal.html#t:AttrList">AttrList</a> <a href="Ldap-Client.html#t:NonEmpty">NonEmpty</a> -> <a href="http://hackage.haskell.org/package/base/docs/System-IO.html#t:IO">IO</a> () <a href="src/Ldap-Client-Add.html#add" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:addEither" class="def">addEither</a> :: <a href="Ldap-Client-Internal.html#t:Ldap">Ldap</a> -> <a href="Ldap-Client-Internal.html#t:Dn">Dn</a> -> <a href="Ldap-Client-Internal.html#t:AttrList">AttrList</a> <a href="Ldap-Client.html#t:NonEmpty">NonEmpty</a> -> <a href="http://hackage.haskell.org/package/base/docs/System-IO.html#t:IO">IO</a> (<a href="http://hackage.haskell.org/package/base/docs/Data-Either.html#t:Either">Either</a> <a href="Ldap-Client-Internal.html#t:ResponseError">ResponseError</a> ()) <a href="src/Ldap-Client-Add.html#addEither" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:addAsync" class="def">addAsync</a> :: <a href="Ldap-Client-Internal.html#t:Ldap">Ldap</a> -> <a href="Ldap-Client-Internal.html#t:Dn">Dn</a> -> <a href="Ldap-Client-Internal.html#t:AttrList">AttrList</a> <a href="Ldap-Client.html#t:NonEmpty">NonEmpty</a> -> <a href="http://hackage.haskell.org/package/base/docs/System-IO.html#t:IO">IO</a> (<a href="Ldap-Client-Internal.html#t:Async">Async</a> ()) <a href="src/Ldap-Client-Add.html#addAsync" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:addAsyncSTM" class="def">addAsyncSTM</a> :: <a href="Ldap-Client-Internal.html#t:Ldap">Ldap</a> -> <a href="Ldap-Client-Internal.html#t:Dn">Dn</a> -> <a href="Ldap-Client-Internal.html#t:AttrList">AttrList</a> <a href="Ldap-Client.html#t:NonEmpty">NonEmpty</a> -> <a href="http://hackage.haskell.org/package/base/docs/GHC-Conc.html#t:STM">STM</a> (<a href="Ldap-Client-Internal.html#t:Async">Async</a> ()) <a href="src/Ldap-Client-Add.html#addAsyncSTM" class="link">Source</a></p></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
10
Ldap-Client-Bind.html
Normal file
10
Ldap-Client-Bind.html
Normal file
File diff suppressed because one or more lines are too long
4
Ldap-Client-Compare.html
Normal file
4
Ldap-Client-Compare.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>Ldap.Client.Compare</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();setSynopsis("mini_Ldap-Client-Compare.html");};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Ldap-Client-Compare.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr><tr><th>Language</th><td>Haskell2010</td></tr></table><p class="caption">Ldap.Client.Compare</p></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a name="v:compare" class="def">compare</a> :: <a href="Ldap-Client-Internal.html#t:Ldap">Ldap</a> -> <a href="Ldap-Client-Internal.html#t:Dn">Dn</a> -> <a href="Ldap-Client-Internal.html#t:Attr">Attr</a> -> <a href="http://hackage.haskell.org/package/bytestring/docs/Data-ByteString.html#t:ByteString">ByteString</a> -> <a href="http://hackage.haskell.org/package/base/docs/System-IO.html#t:IO">IO</a> <a href="http://hackage.haskell.org/package/base/docs/Data-Bool.html#t:Bool">Bool</a> <a href="src/Ldap-Client-Compare.html#compare" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:compareEither" class="def">compareEither</a> :: <a href="Ldap-Client-Internal.html#t:Ldap">Ldap</a> -> <a href="Ldap-Client-Internal.html#t:Dn">Dn</a> -> <a href="Ldap-Client-Internal.html#t:Attr">Attr</a> -> <a href="http://hackage.haskell.org/package/bytestring/docs/Data-ByteString.html#t:ByteString">ByteString</a> -> <a href="http://hackage.haskell.org/package/base/docs/System-IO.html#t:IO">IO</a> (<a href="http://hackage.haskell.org/package/base/docs/Data-Either.html#t:Either">Either</a> <a href="Ldap-Client-Internal.html#t:ResponseError">ResponseError</a> <a href="http://hackage.haskell.org/package/base/docs/Data-Bool.html#t:Bool">Bool</a>) <a href="src/Ldap-Client-Compare.html#compareEither" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:compareAsync" class="def">compareAsync</a> :: <a href="Ldap-Client-Internal.html#t:Ldap">Ldap</a> -> <a href="Ldap-Client-Internal.html#t:Dn">Dn</a> -> <a href="Ldap-Client-Internal.html#t:Attr">Attr</a> -> <a href="http://hackage.haskell.org/package/bytestring/docs/Data-ByteString.html#t:ByteString">ByteString</a> -> <a href="http://hackage.haskell.org/package/base/docs/System-IO.html#t:IO">IO</a> (<a href="Ldap-Client-Internal.html#t:Async">Async</a> <a href="http://hackage.haskell.org/package/base/docs/Data-Bool.html#t:Bool">Bool</a>) <a href="src/Ldap-Client-Compare.html#compareAsync" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:compareAsyncSTM" class="def">compareAsyncSTM</a> :: <a href="Ldap-Client-Internal.html#t:Ldap">Ldap</a> -> <a href="Ldap-Client-Internal.html#t:Dn">Dn</a> -> <a href="Ldap-Client-Internal.html#t:Attr">Attr</a> -> <a href="http://hackage.haskell.org/package/bytestring/docs/Data-ByteString.html#t:ByteString">ByteString</a> -> <a href="http://hackage.haskell.org/package/base/docs/GHC-Conc.html#t:STM">STM</a> (<a href="Ldap-Client-Internal.html#t:Async">Async</a> <a href="http://hackage.haskell.org/package/base/docs/Data-Bool.html#t:Bool">Bool</a>) <a href="src/Ldap-Client-Compare.html#compareAsyncSTM" class="link">Source</a></p></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
Ldap-Client-Delete.html
Normal file
4
Ldap-Client-Delete.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>Ldap.Client.Delete</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();setSynopsis("mini_Ldap-Client-Delete.html");};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Ldap-Client-Delete.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr><tr><th>Language</th><td>Haskell2010</td></tr></table><p class="caption">Ldap.Client.Delete</p></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a name="v:delete" class="def">delete</a> :: <a href="Ldap-Client-Internal.html#t:Ldap">Ldap</a> -> <a href="Ldap-Client-Internal.html#t:Dn">Dn</a> -> <a href="http://hackage.haskell.org/package/base/docs/System-IO.html#t:IO">IO</a> () <a href="src/Ldap-Client-Delete.html#delete" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:deleteEither" class="def">deleteEither</a> :: <a href="Ldap-Client-Internal.html#t:Ldap">Ldap</a> -> <a href="Ldap-Client-Internal.html#t:Dn">Dn</a> -> <a href="http://hackage.haskell.org/package/base/docs/System-IO.html#t:IO">IO</a> (<a href="http://hackage.haskell.org/package/base/docs/Data-Either.html#t:Either">Either</a> <a href="Ldap-Client-Internal.html#t:ResponseError">ResponseError</a> ()) <a href="src/Ldap-Client-Delete.html#deleteEither" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:deleteAsync" class="def">deleteAsync</a> :: <a href="Ldap-Client-Internal.html#t:Ldap">Ldap</a> -> <a href="Ldap-Client-Internal.html#t:Dn">Dn</a> -> <a href="http://hackage.haskell.org/package/base/docs/System-IO.html#t:IO">IO</a> (<a href="Ldap-Client-Internal.html#t:Async">Async</a> ()) <a href="src/Ldap-Client-Delete.html#deleteAsync" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:deleteAsyncSTM" class="def">deleteAsyncSTM</a> :: <a href="Ldap-Client-Internal.html#t:Ldap">Ldap</a> -> <a href="Ldap-Client-Internal.html#t:Dn">Dn</a> -> <a href="http://hackage.haskell.org/package/base/docs/GHC-Conc.html#t:STM">STM</a> (<a href="Ldap-Client-Internal.html#t:Async">Async</a> ()) <a href="src/Ldap-Client-Delete.html#deleteAsyncSTM" class="link">Source</a></p></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
Ldap-Client-Extended.html
Normal file
4
Ldap-Client-Extended.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>Ldap.Client.Extended</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();setSynopsis("mini_Ldap-Client-Extended.html");};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Ldap-Client-Extended.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr><tr><th>Language</th><td>Haskell2010</td></tr></table><p class="caption">Ldap.Client.Extended</p></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a name="v:extended" class="def">extended</a> :: <a href="Ldap-Client-Internal.html#t:Ldap">Ldap</a> -> <a href="Ldap-Client-Internal.html#t:Oid">Oid</a> -> <a href="http://hackage.haskell.org/package/base/docs/Data-Maybe.html#t:Maybe">Maybe</a> <a href="http://hackage.haskell.org/package/bytestring/docs/Data-ByteString.html#t:ByteString">ByteString</a> -> <a href="http://hackage.haskell.org/package/base/docs/System-IO.html#t:IO">IO</a> () <a href="src/Ldap-Client-Extended.html#extended" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:extendedEither" class="def">extendedEither</a> :: <a href="Ldap-Client-Internal.html#t:Ldap">Ldap</a> -> <a href="Ldap-Client-Internal.html#t:Oid">Oid</a> -> <a href="http://hackage.haskell.org/package/base/docs/Data-Maybe.html#t:Maybe">Maybe</a> <a href="http://hackage.haskell.org/package/bytestring/docs/Data-ByteString.html#t:ByteString">ByteString</a> -> <a href="http://hackage.haskell.org/package/base/docs/System-IO.html#t:IO">IO</a> (<a href="http://hackage.haskell.org/package/base/docs/Data-Either.html#t:Either">Either</a> <a href="Ldap-Client-Internal.html#t:ResponseError">ResponseError</a> ()) <a href="src/Ldap-Client-Extended.html#extendedEither" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:extendedAsync" class="def">extendedAsync</a> :: <a href="Ldap-Client-Internal.html#t:Ldap">Ldap</a> -> <a href="Ldap-Client-Internal.html#t:Oid">Oid</a> -> <a href="http://hackage.haskell.org/package/base/docs/Data-Maybe.html#t:Maybe">Maybe</a> <a href="http://hackage.haskell.org/package/bytestring/docs/Data-ByteString.html#t:ByteString">ByteString</a> -> <a href="http://hackage.haskell.org/package/base/docs/System-IO.html#t:IO">IO</a> (<a href="Ldap-Client-Internal.html#t:Async">Async</a> ()) <a href="src/Ldap-Client-Extended.html#extendedAsync" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:extendedAsyncSTM" class="def">extendedAsyncSTM</a> :: <a href="Ldap-Client-Internal.html#t:Ldap">Ldap</a> -> <a href="Ldap-Client-Internal.html#t:Oid">Oid</a> -> <a href="http://hackage.haskell.org/package/base/docs/Data-Maybe.html#t:Maybe">Maybe</a> <a href="http://hackage.haskell.org/package/bytestring/docs/Data-ByteString.html#t:ByteString">ByteString</a> -> <a href="http://hackage.haskell.org/package/base/docs/GHC-Conc.html#t:STM">STM</a> (<a href="Ldap-Client-Internal.html#t:Async">Async</a> ()) <a href="src/Ldap-Client-Extended.html#extendedAsyncSTM" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:startTls" class="def">startTls</a> :: <a href="Ldap-Client-Internal.html#t:Ldap">Ldap</a> -> <a href="http://hackage.haskell.org/package/base/docs/System-IO.html#t:IO">IO</a> () <a href="src/Ldap-Client-Extended.html#startTls" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:startTlsEither" class="def">startTlsEither</a> :: <a href="Ldap-Client-Internal.html#t:Ldap">Ldap</a> -> <a href="http://hackage.haskell.org/package/base/docs/System-IO.html#t:IO">IO</a> (<a href="http://hackage.haskell.org/package/base/docs/Data-Either.html#t:Either">Either</a> <a href="Ldap-Client-Internal.html#t:ResponseError">ResponseError</a> ()) <a href="src/Ldap-Client-Extended.html#startTlsEither" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:startTlsAsync" class="def">startTlsAsync</a> :: <a href="Ldap-Client-Internal.html#t:Ldap">Ldap</a> -> <a href="http://hackage.haskell.org/package/base/docs/System-IO.html#t:IO">IO</a> (<a href="Ldap-Client-Internal.html#t:Async">Async</a> ()) <a href="src/Ldap-Client-Extended.html#startTlsAsync" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:startTlsAsyncSTM" class="def">startTlsAsyncSTM</a> :: <a href="Ldap-Client-Internal.html#t:Ldap">Ldap</a> -> <a href="http://hackage.haskell.org/package/base/docs/GHC-Conc.html#t:STM">STM</a> (<a href="Ldap-Client-Internal.html#t:Async">Async</a> ()) <a href="src/Ldap-Client-Extended.html#startTlsAsyncSTM" class="link">Source</a></p></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
Ldap-Client-Internal.html
Normal file
4
Ldap-Client-Internal.html
Normal file
File diff suppressed because one or more lines are too long
4
Ldap-Client-Modify.html
Normal file
4
Ldap-Client-Modify.html
Normal file
File diff suppressed because one or more lines are too long
4
Ldap-Client-Search.html
Normal file
4
Ldap-Client-Search.html
Normal file
File diff suppressed because one or more lines are too long
4
Ldap-Client.html
Normal file
4
Ldap-Client.html
Normal file
File diff suppressed because one or more lines are too long
4
doc-index-58.html
Normal file
4
doc-index-58.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library (Index - :)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="alphabet"><ul><li><a href="doc-index-A.html">A</a></li><li><a href="doc-index-B.html">B</a></li><li><a href="doc-index-C.html">C</a></li><li><a href="doc-index-D.html">D</a></li><li><a href="doc-index-E.html">E</a></li><li><a href="doc-index-F.html">F</a></li><li><a href="doc-index-G.html">G</a></li><li><a href="doc-index-H.html">H</a></li><li><a href="doc-index-I.html">I</a></li><li><a href="doc-index-L.html">L</a></li><li><a href="doc-index-M.html">M</a></li><li><a href="doc-index-N.html">N</a></li><li><a href="doc-index-O.html">O</a></li><li><a href="doc-index-P.html">P</a></li><li><a href="doc-index-R.html">R</a></li><li><a href="doc-index-S.html">S</a></li><li><a href="doc-index-T.html">T</a></li><li><a href="doc-index-U.html">U</a></li><li><a href="doc-index-W.html">W</a></li><li><a href="doc-index-58.html">:</a></li><li><a href="doc-index-All.html">All</a></li></ul></div><div id="index"><p class="caption">Index - :</p><table><tr><td class="src">::=</td><td class="module"><a href="Ldap-Client-Search.html#v:::-61-">Ldap.Client.Search</a>, <a href="Ldap-Client.html#v:::-61-">Ldap.Client</a></td></tr><tr><td class="src">:<=</td><td class="module"><a href="Ldap-Client-Search.html#v::-60--61-">Ldap.Client.Search</a>, <a href="Ldap-Client.html#v::-60--61-">Ldap.Client</a></td></tr><tr><td class="src">:=</td><td class="module"><a href="Ldap-Client-Search.html#v::-61-">Ldap.Client.Search</a>, <a href="Ldap-Client.html#v::-61-">Ldap.Client</a></td></tr><tr><td class="src">:=*</td><td class="module"><a href="Ldap-Client-Search.html#v::-61--42-">Ldap.Client.Search</a>, <a href="Ldap-Client.html#v::-61--42-">Ldap.Client</a></td></tr><tr><td class="src">:>=</td><td class="module"><a href="Ldap-Client-Search.html#v::-62--61-">Ldap.Client.Search</a>, <a href="Ldap-Client.html#v::-62--61-">Ldap.Client</a></td></tr><tr><td class="src">:~=</td><td class="module"><a href="Ldap-Client-Search.html#v::-126--61-">Ldap.Client.Search</a>, <a href="Ldap-Client.html#v::-126--61-">Ldap.Client</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
doc-index-A.html
Normal file
4
doc-index-A.html
Normal file
File diff suppressed because one or more lines are too long
4
doc-index-All.html
Normal file
4
doc-index-All.html
Normal file
File diff suppressed because one or more lines are too long
4
doc-index-B.html
Normal file
4
doc-index-B.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library (Index - B)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="alphabet"><ul><li><a href="doc-index-A.html">A</a></li><li><a href="doc-index-B.html">B</a></li><li><a href="doc-index-C.html">C</a></li><li><a href="doc-index-D.html">D</a></li><li><a href="doc-index-E.html">E</a></li><li><a href="doc-index-F.html">F</a></li><li><a href="doc-index-G.html">G</a></li><li><a href="doc-index-H.html">H</a></li><li><a href="doc-index-I.html">I</a></li><li><a href="doc-index-L.html">L</a></li><li><a href="doc-index-M.html">M</a></li><li><a href="doc-index-N.html">N</a></li><li><a href="doc-index-O.html">O</a></li><li><a href="doc-index-P.html">P</a></li><li><a href="doc-index-R.html">R</a></li><li><a href="doc-index-S.html">S</a></li><li><a href="doc-index-T.html">T</a></li><li><a href="doc-index-U.html">U</a></li><li><a href="doc-index-W.html">W</a></li><li><a href="doc-index-58.html">:</a></li><li><a href="doc-index-All.html">All</a></li></ul></div><div id="index"><p class="caption">Index - B</p><table><tr><td class="src">BaseObject</td><td class="module"><a href="Ldap-Asn1-Type.html#v:BaseObject">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Search.html#v:BaseObject">Ldap.Client.Search</a>, <a href="Ldap-Client.html#v:BaseObject">Ldap.Client</a></td></tr><tr><td class="src">bind</td><td class="module"><a href="Ldap-Client-Bind.html#v:bind">Ldap.Client.Bind</a>, <a href="Ldap-Client.html#v:bind">Ldap.Client</a></td></tr><tr><td class="src">bindAsync</td><td class="module"><a href="Ldap-Client-Bind.html#v:bindAsync">Ldap.Client.Bind</a></td></tr><tr><td class="src">bindAsyncSTM</td><td class="module"><a href="Ldap-Client-Bind.html#v:bindAsyncSTM">Ldap.Client.Bind</a></td></tr><tr><td class="src">bindEither</td><td class="module"><a href="Ldap-Client-Bind.html#v:bindEither">Ldap.Client.Bind</a></td></tr><tr><td class="src">BindRequest</td><td class="module"><a href="Ldap-Asn1-Type.html#v:BindRequest">Ldap.Asn1.Type</a></td></tr><tr><td class="src">BindResponse</td><td class="module"><a href="Ldap-Asn1-Type.html#v:BindResponse">Ldap.Asn1.Type</a></td></tr><tr><td class="src">Busy</td><td class="module"><a href="Ldap-Asn1-Type.html#v:Busy">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:Busy">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:Busy">Ldap.Client</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
doc-index-C.html
Normal file
4
doc-index-C.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library (Index - C)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="alphabet"><ul><li><a href="doc-index-A.html">A</a></li><li><a href="doc-index-B.html">B</a></li><li><a href="doc-index-C.html">C</a></li><li><a href="doc-index-D.html">D</a></li><li><a href="doc-index-E.html">E</a></li><li><a href="doc-index-F.html">F</a></li><li><a href="doc-index-G.html">G</a></li><li><a href="doc-index-H.html">H</a></li><li><a href="doc-index-I.html">I</a></li><li><a href="doc-index-L.html">L</a></li><li><a href="doc-index-M.html">M</a></li><li><a href="doc-index-N.html">N</a></li><li><a href="doc-index-O.html">O</a></li><li><a href="doc-index-P.html">P</a></li><li><a href="doc-index-R.html">R</a></li><li><a href="doc-index-S.html">S</a></li><li><a href="doc-index-T.html">T</a></li><li><a href="doc-index-U.html">U</a></li><li><a href="doc-index-W.html">W</a></li><li><a href="doc-index-58.html">:</a></li><li><a href="doc-index-All.html">All</a></li></ul></div><div id="index"><p class="caption">Index - C</p><table><tr><td class="src">client</td><td class="module"><a href="Ldap-Client-Internal.html#v:client">Ldap.Client.Internal</a></td></tr><tr><td class="src">ClientMessage</td><td class="module"><a href="Ldap-Client-Internal.html#t:ClientMessage">Ldap.Client.Internal</a></td></tr><tr><td class="src">compare</td><td class="module"><a href="Ldap-Client-Compare.html#v:compare">Ldap.Client.Compare</a>, <a href="Ldap-Client.html#v:compare">Ldap.Client</a></td></tr><tr><td class="src">compareAsync</td><td class="module"><a href="Ldap-Client-Compare.html#v:compareAsync">Ldap.Client.Compare</a></td></tr><tr><td class="src">compareAsyncSTM</td><td class="module"><a href="Ldap-Client-Compare.html#v:compareAsyncSTM">Ldap.Client.Compare</a></td></tr><tr><td class="src">compareEither</td><td class="module"><a href="Ldap-Client-Compare.html#v:compareEither">Ldap.Client.Compare</a></td></tr><tr><td class="src">CompareFalse</td><td class="module"><a href="Ldap-Asn1-Type.html#v:CompareFalse">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:CompareFalse">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:CompareFalse">Ldap.Client</a></td></tr><tr><td class="src">CompareRequest</td><td class="module"><a href="Ldap-Asn1-Type.html#v:CompareRequest">Ldap.Asn1.Type</a></td></tr><tr><td class="src">CompareResponse</td><td class="module"><a href="Ldap-Asn1-Type.html#v:CompareResponse">Ldap.Asn1.Type</a></td></tr><tr><td class="src">CompareTrue</td><td class="module"><a href="Ldap-Asn1-Type.html#v:CompareTrue">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:CompareTrue">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:CompareTrue">Ldap.Client</a></td></tr><tr><td class="src">ConfidentialityRequired</td><td class="module"><a href="Ldap-Asn1-Type.html#v:ConfidentialityRequired">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:ConfidentialityRequired">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:ConfidentialityRequired">Ldap.Client</a></td></tr><tr><td class="src">ConstraintViolation</td><td class="module"><a href="Ldap-Asn1-Type.html#v:ConstraintViolation">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:ConstraintViolation">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:ConstraintViolation">Ldap.Client</a></td></tr><tr><td class="src">Control</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Asn1-Type.html#t:Control">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Asn1-Type.html#v:Control">Ldap.Asn1.Type</a></td></tr><tr><td class="src">Controls</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Asn1-Type.html#t:Controls">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Asn1-Type.html#v:Controls">Ldap.Asn1.Type</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
doc-index-D.html
Normal file
4
doc-index-D.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library (Index - D)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="alphabet"><ul><li><a href="doc-index-A.html">A</a></li><li><a href="doc-index-B.html">B</a></li><li><a href="doc-index-C.html">C</a></li><li><a href="doc-index-D.html">D</a></li><li><a href="doc-index-E.html">E</a></li><li><a href="doc-index-F.html">F</a></li><li><a href="doc-index-G.html">G</a></li><li><a href="doc-index-H.html">H</a></li><li><a href="doc-index-I.html">I</a></li><li><a href="doc-index-L.html">L</a></li><li><a href="doc-index-M.html">M</a></li><li><a href="doc-index-N.html">N</a></li><li><a href="doc-index-O.html">O</a></li><li><a href="doc-index-P.html">P</a></li><li><a href="doc-index-R.html">R</a></li><li><a href="doc-index-S.html">S</a></li><li><a href="doc-index-T.html">T</a></li><li><a href="doc-index-U.html">U</a></li><li><a href="doc-index-W.html">W</a></li><li><a href="doc-index-58.html">:</a></li><li><a href="doc-index-All.html">All</a></li></ul></div><div id="index"><p class="caption">Index - D</p><table><tr><td class="src">Delete</td><td> </td></tr><tr><td class="alt">1 (Data Constructor)</td><td class="module"><a href="Ldap-Asn1-Type.html#v:Delete">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Client-Modify.html#v:Delete">Ldap.Client.Modify</a>, <a href="Ldap-Client.html#v:Delete">Ldap.Client</a></td></tr><tr><td class="src">delete</td><td class="module"><a href="Ldap-Client-Delete.html#v:delete">Ldap.Client.Delete</a>, <a href="Ldap-Client.html#v:delete">Ldap.Client</a></td></tr><tr><td class="src">deleteAsync</td><td class="module"><a href="Ldap-Client-Delete.html#v:deleteAsync">Ldap.Client.Delete</a></td></tr><tr><td class="src">deleteAsyncSTM</td><td class="module"><a href="Ldap-Client-Delete.html#v:deleteAsyncSTM">Ldap.Client.Delete</a></td></tr><tr><td class="src">deleteEither</td><td class="module"><a href="Ldap-Client-Delete.html#v:deleteEither">Ldap.Client.Delete</a></td></tr><tr><td class="src">DeleteRequest</td><td class="module"><a href="Ldap-Asn1-Type.html#v:DeleteRequest">Ldap.Asn1.Type</a></td></tr><tr><td class="src">DeleteResponse</td><td class="module"><a href="Ldap-Asn1-Type.html#v:DeleteResponse">Ldap.Asn1.Type</a></td></tr><tr><td class="src">DerefAliases</td><td class="module"><a href="Ldap-Asn1-Type.html#t:DerefAliases">Ldap.Asn1.Type</a></td></tr><tr><td class="src">derefAliases</td><td class="module"><a href="Ldap-Client-Search.html#v:derefAliases">Ldap.Client.Search</a>, <a href="Ldap-Client.html#v:derefAliases">Ldap.Client</a></td></tr><tr><td class="src">DerefAlways</td><td class="module"><a href="Ldap-Asn1-Type.html#v:DerefAlways">Ldap.Asn1.Type</a></td></tr><tr><td class="src">DerefFindingBaseObject</td><td class="module"><a href="Ldap-Asn1-Type.html#v:DerefFindingBaseObject">Ldap.Asn1.Type</a></td></tr><tr><td class="src">DerefInSearching</td><td class="module"><a href="Ldap-Asn1-Type.html#v:DerefInSearching">Ldap.Asn1.Type</a></td></tr><tr><td class="src">Dn</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Client-Internal.html#t:Dn">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#t:Dn">Ldap.Client</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Client-Internal.html#v:Dn">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:Dn">Ldap.Client</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
doc-index-E.html
Normal file
4
doc-index-E.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library (Index - E)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="alphabet"><ul><li><a href="doc-index-A.html">A</a></li><li><a href="doc-index-B.html">B</a></li><li><a href="doc-index-C.html">C</a></li><li><a href="doc-index-D.html">D</a></li><li><a href="doc-index-E.html">E</a></li><li><a href="doc-index-F.html">F</a></li><li><a href="doc-index-G.html">G</a></li><li><a href="doc-index-H.html">H</a></li><li><a href="doc-index-I.html">I</a></li><li><a href="doc-index-L.html">L</a></li><li><a href="doc-index-M.html">M</a></li><li><a href="doc-index-N.html">N</a></li><li><a href="doc-index-O.html">O</a></li><li><a href="doc-index-P.html">P</a></li><li><a href="doc-index-R.html">R</a></li><li><a href="doc-index-S.html">S</a></li><li><a href="doc-index-T.html">T</a></li><li><a href="doc-index-U.html">U</a></li><li><a href="doc-index-W.html">W</a></li><li><a href="doc-index-58.html">:</a></li><li><a href="doc-index-All.html">All</a></li></ul></div><div id="index"><p class="caption">Index - E</p><table><tr><td class="src">EntryAlreadyExists</td><td class="module"><a href="Ldap-Asn1-Type.html#v:EntryAlreadyExists">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:EntryAlreadyExists">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:EntryAlreadyExists">Ldap.Client</a></td></tr><tr><td class="src">EqualityMatch</td><td class="module"><a href="Ldap-Asn1-Type.html#v:EqualityMatch">Ldap.Asn1.Type</a></td></tr><tr><td class="src">extended</td><td class="module"><a href="Ldap-Client-Extended.html#v:extended">Ldap.Client.Extended</a>, <a href="Ldap-Client.html#v:extended">Ldap.Client</a></td></tr><tr><td class="src">extendedAsync</td><td class="module"><a href="Ldap-Client-Extended.html#v:extendedAsync">Ldap.Client.Extended</a></td></tr><tr><td class="src">extendedAsyncSTM</td><td class="module"><a href="Ldap-Client-Extended.html#v:extendedAsyncSTM">Ldap.Client.Extended</a></td></tr><tr><td class="src">extendedEither</td><td class="module"><a href="Ldap-Client-Extended.html#v:extendedEither">Ldap.Client.Extended</a></td></tr><tr><td class="src">ExtendedRequest</td><td class="module"><a href="Ldap-Asn1-Type.html#v:ExtendedRequest">Ldap.Asn1.Type</a></td></tr><tr><td class="src">ExtendedResponse</td><td class="module"><a href="Ldap-Asn1-Type.html#v:ExtendedResponse">Ldap.Asn1.Type</a></td></tr><tr><td class="src">ExtensibleMatch</td><td class="module"><a href="Ldap-Asn1-Type.html#v:ExtensibleMatch">Ldap.Asn1.Type</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
doc-index-F.html
Normal file
4
doc-index-F.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library (Index - F)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="alphabet"><ul><li><a href="doc-index-A.html">A</a></li><li><a href="doc-index-B.html">B</a></li><li><a href="doc-index-C.html">C</a></li><li><a href="doc-index-D.html">D</a></li><li><a href="doc-index-E.html">E</a></li><li><a href="doc-index-F.html">F</a></li><li><a href="doc-index-G.html">G</a></li><li><a href="doc-index-H.html">H</a></li><li><a href="doc-index-I.html">I</a></li><li><a href="doc-index-L.html">L</a></li><li><a href="doc-index-M.html">M</a></li><li><a href="doc-index-N.html">N</a></li><li><a href="doc-index-O.html">O</a></li><li><a href="doc-index-P.html">P</a></li><li><a href="doc-index-R.html">R</a></li><li><a href="doc-index-S.html">S</a></li><li><a href="doc-index-T.html">T</a></li><li><a href="doc-index-U.html">U</a></li><li><a href="doc-index-W.html">W</a></li><li><a href="doc-index-58.html">:</a></li><li><a href="doc-index-All.html">All</a></li></ul></div><div id="index"><p class="caption">Index - F</p><table><tr><td class="src">Filter</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Asn1-Type.html#t:Filter">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Type/Class)</td><td class="module"><a href="Ldap-Client-Search.html#t:Filter">Ldap.Client.Search</a>, <a href="Ldap-Client.html#t:Filter">Ldap.Client</a></td></tr><tr><td class="src">Final</td><td class="module"><a href="Ldap-Asn1-Type.html#v:Final">Ldap.Asn1.Type</a></td></tr><tr><td class="src">FromAsn1</td><td class="module"><a href="Ldap-Asn1-FromAsn1.html#t:FromAsn1">Ldap.Asn1.FromAsn1</a></td></tr><tr><td class="src">fromAsn1</td><td class="module"><a href="Ldap-Asn1-FromAsn1.html#v:fromAsn1">Ldap.Asn1.FromAsn1</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
doc-index-G.html
Normal file
4
doc-index-G.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library (Index - G)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="alphabet"><ul><li><a href="doc-index-A.html">A</a></li><li><a href="doc-index-B.html">B</a></li><li><a href="doc-index-C.html">C</a></li><li><a href="doc-index-D.html">D</a></li><li><a href="doc-index-E.html">E</a></li><li><a href="doc-index-F.html">F</a></li><li><a href="doc-index-G.html">G</a></li><li><a href="doc-index-H.html">H</a></li><li><a href="doc-index-I.html">I</a></li><li><a href="doc-index-L.html">L</a></li><li><a href="doc-index-M.html">M</a></li><li><a href="doc-index-N.html">N</a></li><li><a href="doc-index-O.html">O</a></li><li><a href="doc-index-P.html">P</a></li><li><a href="doc-index-R.html">R</a></li><li><a href="doc-index-S.html">S</a></li><li><a href="doc-index-T.html">T</a></li><li><a href="doc-index-U.html">U</a></li><li><a href="doc-index-W.html">W</a></li><li><a href="doc-index-58.html">:</a></li><li><a href="doc-index-All.html">All</a></li></ul></div><div id="index"><p class="caption">Index - G</p><table><tr><td class="src">GreaterOrEqual</td><td class="module"><a href="Ldap-Asn1-Type.html#v:GreaterOrEqual">Ldap.Asn1.Type</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
doc-index-H.html
Normal file
4
doc-index-H.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library (Index - H)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="alphabet"><ul><li><a href="doc-index-A.html">A</a></li><li><a href="doc-index-B.html">B</a></li><li><a href="doc-index-C.html">C</a></li><li><a href="doc-index-D.html">D</a></li><li><a href="doc-index-E.html">E</a></li><li><a href="doc-index-F.html">F</a></li><li><a href="doc-index-G.html">G</a></li><li><a href="doc-index-H.html">H</a></li><li><a href="doc-index-I.html">I</a></li><li><a href="doc-index-L.html">L</a></li><li><a href="doc-index-M.html">M</a></li><li><a href="doc-index-N.html">N</a></li><li><a href="doc-index-O.html">O</a></li><li><a href="doc-index-P.html">P</a></li><li><a href="doc-index-R.html">R</a></li><li><a href="doc-index-S.html">S</a></li><li><a href="doc-index-T.html">T</a></li><li><a href="doc-index-U.html">U</a></li><li><a href="doc-index-W.html">W</a></li><li><a href="doc-index-58.html">:</a></li><li><a href="doc-index-All.html">All</a></li></ul></div><div id="index"><p class="caption">Index - H</p><table><tr><td class="src">Host</td><td class="module"><a href="Ldap-Client-Internal.html#t:Host">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#t:Host">Ldap.Client</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
doc-index-I.html
Normal file
4
doc-index-I.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library (Index - I)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="alphabet"><ul><li><a href="doc-index-A.html">A</a></li><li><a href="doc-index-B.html">B</a></li><li><a href="doc-index-C.html">C</a></li><li><a href="doc-index-D.html">D</a></li><li><a href="doc-index-E.html">E</a></li><li><a href="doc-index-F.html">F</a></li><li><a href="doc-index-G.html">G</a></li><li><a href="doc-index-H.html">H</a></li><li><a href="doc-index-I.html">I</a></li><li><a href="doc-index-L.html">L</a></li><li><a href="doc-index-M.html">M</a></li><li><a href="doc-index-N.html">N</a></li><li><a href="doc-index-O.html">O</a></li><li><a href="doc-index-P.html">P</a></li><li><a href="doc-index-R.html">R</a></li><li><a href="doc-index-S.html">S</a></li><li><a href="doc-index-T.html">T</a></li><li><a href="doc-index-U.html">U</a></li><li><a href="doc-index-W.html">W</a></li><li><a href="doc-index-58.html">:</a></li><li><a href="doc-index-All.html">All</a></li></ul></div><div id="index"><p class="caption">Index - I</p><table><tr><td class="src">Id</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Asn1-Type.html#t:Id">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Asn1-Type.html#v:Id">Ldap.Asn1.Type</a></td></tr><tr><td class="src">InappropriateAuthentication</td><td class="module"><a href="Ldap-Asn1-Type.html#v:InappropriateAuthentication">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:InappropriateAuthentication">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:InappropriateAuthentication">Ldap.Client</a></td></tr><tr><td class="src">InappropriateMatching</td><td class="module"><a href="Ldap-Asn1-Type.html#v:InappropriateMatching">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:InappropriateMatching">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:InappropriateMatching">Ldap.Client</a></td></tr><tr><td class="src">Initial</td><td class="module"><a href="Ldap-Asn1-Type.html#v:Initial">Ldap.Asn1.Type</a></td></tr><tr><td class="src">Insecure</td><td class="module"><a href="Ldap-Client-Internal.html#v:Insecure">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:Insecure">Ldap.Client</a></td></tr><tr><td class="src">InsufficientAccessRights</td><td class="module"><a href="Ldap-Asn1-Type.html#v:InsufficientAccessRights">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:InsufficientAccessRights">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:InsufficientAccessRights">Ldap.Client</a></td></tr><tr><td class="src">InvalidAttributeSyntax</td><td class="module"><a href="Ldap-Asn1-Type.html#v:InvalidAttributeSyntax">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:InvalidAttributeSyntax">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:InvalidAttributeSyntax">Ldap.Client</a></td></tr><tr><td class="src">InvalidCredentials</td><td class="module"><a href="Ldap-Asn1-Type.html#v:InvalidCredentials">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:InvalidCredentials">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:InvalidCredentials">Ldap.Client</a></td></tr><tr><td class="src">InvalidDNSyntax</td><td class="module"><a href="Ldap-Asn1-Type.html#v:InvalidDNSyntax">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:InvalidDNSyntax">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:InvalidDNSyntax">Ldap.Client</a></td></tr><tr><td class="src">IOError</td><td class="module"><a href="Ldap-Client.html#v:IOError">Ldap.Client</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
doc-index-L.html
Normal file
4
doc-index-L.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library (Index - L)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="alphabet"><ul><li><a href="doc-index-A.html">A</a></li><li><a href="doc-index-B.html">B</a></li><li><a href="doc-index-C.html">C</a></li><li><a href="doc-index-D.html">D</a></li><li><a href="doc-index-E.html">E</a></li><li><a href="doc-index-F.html">F</a></li><li><a href="doc-index-G.html">G</a></li><li><a href="doc-index-H.html">H</a></li><li><a href="doc-index-I.html">I</a></li><li><a href="doc-index-L.html">L</a></li><li><a href="doc-index-M.html">M</a></li><li><a href="doc-index-N.html">N</a></li><li><a href="doc-index-O.html">O</a></li><li><a href="doc-index-P.html">P</a></li><li><a href="doc-index-R.html">R</a></li><li><a href="doc-index-S.html">S</a></li><li><a href="doc-index-T.html">T</a></li><li><a href="doc-index-U.html">U</a></li><li><a href="doc-index-W.html">W</a></li><li><a href="doc-index-58.html">:</a></li><li><a href="doc-index-All.html">All</a></li></ul></div><div id="index"><p class="caption">Index - L</p><table><tr><td class="src">Ldap</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Client-Internal.html#t:Ldap">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#t:Ldap">Ldap.Client</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Client-Internal.html#v:Ldap">Ldap.Client.Internal</a></td></tr><tr><td class="src">LdapDn</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Asn1-Type.html#t:LdapDn">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Asn1-Type.html#v:LdapDn">Ldap.Asn1.Type</a></td></tr><tr><td class="src">LdapError</td><td class="module"><a href="Ldap-Client.html#t:LdapError">Ldap.Client</a></td></tr><tr><td class="src">LdapMessage</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Asn1-Type.html#t:LdapMessage">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Asn1-Type.html#v:LdapMessage">Ldap.Asn1.Type</a></td></tr><tr><td class="src">ldapMessageControls</td><td class="module"><a href="Ldap-Asn1-Type.html#v:ldapMessageControls">Ldap.Asn1.Type</a></td></tr><tr><td class="src">ldapMessageId</td><td class="module"><a href="Ldap-Asn1-Type.html#v:ldapMessageId">Ldap.Asn1.Type</a></td></tr><tr><td class="src">ldapMessageOp</td><td class="module"><a href="Ldap-Asn1-Type.html#v:ldapMessageOp">Ldap.Asn1.Type</a></td></tr><tr><td class="src">LdapOid</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Asn1-Type.html#t:LdapOid">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Asn1-Type.html#v:LdapOid">Ldap.Asn1.Type</a></td></tr><tr><td class="src">LdapResult</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Asn1-Type.html#t:LdapResult">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Asn1-Type.html#v:LdapResult">Ldap.Asn1.Type</a></td></tr><tr><td class="src">LdapString</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Asn1-Type.html#t:LdapString">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Asn1-Type.html#v:LdapString">Ldap.Asn1.Type</a></td></tr><tr><td class="src">LessOrEqual</td><td class="module"><a href="Ldap-Asn1-Type.html#v:LessOrEqual">Ldap.Asn1.Type</a></td></tr><tr><td class="src">LoopDetect</td><td class="module"><a href="Ldap-Asn1-Type.html#v:LoopDetect">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:LoopDetect">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:LoopDetect">Ldap.Client</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
doc-index-M.html
Normal file
4
doc-index-M.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library (Index - M)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="alphabet"><ul><li><a href="doc-index-A.html">A</a></li><li><a href="doc-index-B.html">B</a></li><li><a href="doc-index-C.html">C</a></li><li><a href="doc-index-D.html">D</a></li><li><a href="doc-index-E.html">E</a></li><li><a href="doc-index-F.html">F</a></li><li><a href="doc-index-G.html">G</a></li><li><a href="doc-index-H.html">H</a></li><li><a href="doc-index-I.html">I</a></li><li><a href="doc-index-L.html">L</a></li><li><a href="doc-index-M.html">M</a></li><li><a href="doc-index-N.html">N</a></li><li><a href="doc-index-O.html">O</a></li><li><a href="doc-index-P.html">P</a></li><li><a href="doc-index-R.html">R</a></li><li><a href="doc-index-S.html">S</a></li><li><a href="doc-index-T.html">T</a></li><li><a href="doc-index-U.html">U</a></li><li><a href="doc-index-W.html">W</a></li><li><a href="doc-index-58.html">:</a></li><li><a href="doc-index-All.html">All</a></li></ul></div><div id="index"><p class="caption">Index - M</p><table><tr><td class="src">MatchingRuleAssertion</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Asn1-Type.html#t:MatchingRuleAssertion">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Asn1-Type.html#v:MatchingRuleAssertion">Ldap.Asn1.Type</a></td></tr><tr><td class="src">MatchingRuleId</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Asn1-Type.html#t:MatchingRuleId">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Asn1-Type.html#v:MatchingRuleId">Ldap.Asn1.Type</a></td></tr><tr><td class="src">Mod</td><td class="module"><a href="Ldap-Client-Search.html#t:Mod">Ldap.Client.Search</a>, <a href="Ldap-Client.html#t:Mod">Ldap.Client</a></td></tr><tr><td class="src">modify</td><td class="module"><a href="Ldap-Client-Modify.html#v:modify">Ldap.Client.Modify</a>, <a href="Ldap-Client.html#v:modify">Ldap.Client</a></td></tr><tr><td class="src">modifyAsync</td><td class="module"><a href="Ldap-Client-Modify.html#v:modifyAsync">Ldap.Client.Modify</a></td></tr><tr><td class="src">modifyAsyncSTM</td><td class="module"><a href="Ldap-Client-Modify.html#v:modifyAsyncSTM">Ldap.Client.Modify</a></td></tr><tr><td class="src">modifyDn</td><td class="module"><a href="Ldap-Client-Modify.html#v:modifyDn">Ldap.Client.Modify</a>, <a href="Ldap-Client.html#v:modifyDn">Ldap.Client</a></td></tr><tr><td class="src">modifyDnAsync</td><td class="module"><a href="Ldap-Client-Modify.html#v:modifyDnAsync">Ldap.Client.Modify</a></td></tr><tr><td class="src">modifyDnAsyncSTM</td><td class="module"><a href="Ldap-Client-Modify.html#v:modifyDnAsyncSTM">Ldap.Client.Modify</a></td></tr><tr><td class="src">modifyDnEither</td><td class="module"><a href="Ldap-Client-Modify.html#v:modifyDnEither">Ldap.Client.Modify</a></td></tr><tr><td class="src">ModifyDnRequest</td><td class="module"><a href="Ldap-Asn1-Type.html#v:ModifyDnRequest">Ldap.Asn1.Type</a></td></tr><tr><td class="src">ModifyDnResponse</td><td class="module"><a href="Ldap-Asn1-Type.html#v:ModifyDnResponse">Ldap.Asn1.Type</a></td></tr><tr><td class="src">modifyEither</td><td class="module"><a href="Ldap-Client-Modify.html#v:modifyEither">Ldap.Client.Modify</a></td></tr><tr><td class="src">ModifyRequest</td><td class="module"><a href="Ldap-Asn1-Type.html#v:ModifyRequest">Ldap.Asn1.Type</a></td></tr><tr><td class="src">ModifyResponse</td><td class="module"><a href="Ldap-Asn1-Type.html#v:ModifyResponse">Ldap.Asn1.Type</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
doc-index-N.html
Normal file
4
doc-index-N.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library (Index - N)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="alphabet"><ul><li><a href="doc-index-A.html">A</a></li><li><a href="doc-index-B.html">B</a></li><li><a href="doc-index-C.html">C</a></li><li><a href="doc-index-D.html">D</a></li><li><a href="doc-index-E.html">E</a></li><li><a href="doc-index-F.html">F</a></li><li><a href="doc-index-G.html">G</a></li><li><a href="doc-index-H.html">H</a></li><li><a href="doc-index-I.html">I</a></li><li><a href="doc-index-L.html">L</a></li><li><a href="doc-index-M.html">M</a></li><li><a href="doc-index-N.html">N</a></li><li><a href="doc-index-O.html">O</a></li><li><a href="doc-index-P.html">P</a></li><li><a href="doc-index-R.html">R</a></li><li><a href="doc-index-S.html">S</a></li><li><a href="doc-index-T.html">T</a></li><li><a href="doc-index-U.html">U</a></li><li><a href="doc-index-W.html">W</a></li><li><a href="doc-index-58.html">:</a></li><li><a href="doc-index-All.html">All</a></li></ul></div><div id="index"><p class="caption">Index - N</p><table><tr><td class="src">NamingViolation</td><td class="module"><a href="Ldap-Asn1-Type.html#v:NamingViolation">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:NamingViolation">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:NamingViolation">Ldap.Client</a></td></tr><tr><td class="src">NeverDerefAliases</td><td class="module"><a href="Ldap-Asn1-Type.html#v:NeverDerefAliases">Ldap.Asn1.Type</a></td></tr><tr><td class="src">New</td><td class="module"><a href="Ldap-Client-Internal.html#v:New">Ldap.Client.Internal</a></td></tr><tr><td class="src">next</td><td class="module"><a href="Ldap-Asn1-FromAsn1.html#v:next">Ldap.Asn1.FromAsn1</a></td></tr><tr><td class="src">NonEmpty</td><td class="module"><a href="Ldap-Client.html#t:NonEmpty">Ldap.Client</a></td></tr><tr><td class="src">NoSuchAttribute</td><td class="module"><a href="Ldap-Asn1-Type.html#v:NoSuchAttribute">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:NoSuchAttribute">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:NoSuchAttribute">Ldap.Client</a></td></tr><tr><td class="src">NoSuchObject</td><td class="module"><a href="Ldap-Asn1-Type.html#v:NoSuchObject">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:NoSuchObject">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:NoSuchObject">Ldap.Client</a></td></tr><tr><td class="src">Not</td><td> </td></tr><tr><td class="alt">1 (Data Constructor)</td><td class="module"><a href="Ldap-Asn1-Type.html#v:Not">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Client-Search.html#v:Not">Ldap.Client.Search</a>, <a href="Ldap-Client.html#v:Not">Ldap.Client</a></td></tr><tr><td class="src">NotAllowedOnNonLeaf</td><td class="module"><a href="Ldap-Asn1-Type.html#v:NotAllowedOnNonLeaf">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:NotAllowedOnNonLeaf">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:NotAllowedOnNonLeaf">Ldap.Client</a></td></tr><tr><td class="src">NotAllowedOnRDN</td><td class="module"><a href="Ldap-Asn1-Type.html#v:NotAllowedOnRDN">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:NotAllowedOnRDN">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:NotAllowedOnRDN">Ldap.Client</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
doc-index-O.html
Normal file
4
doc-index-O.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library (Index - O)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="alphabet"><ul><li><a href="doc-index-A.html">A</a></li><li><a href="doc-index-B.html">B</a></li><li><a href="doc-index-C.html">C</a></li><li><a href="doc-index-D.html">D</a></li><li><a href="doc-index-E.html">E</a></li><li><a href="doc-index-F.html">F</a></li><li><a href="doc-index-G.html">G</a></li><li><a href="doc-index-H.html">H</a></li><li><a href="doc-index-I.html">I</a></li><li><a href="doc-index-L.html">L</a></li><li><a href="doc-index-M.html">M</a></li><li><a href="doc-index-N.html">N</a></li><li><a href="doc-index-O.html">O</a></li><li><a href="doc-index-P.html">P</a></li><li><a href="doc-index-R.html">R</a></li><li><a href="doc-index-S.html">S</a></li><li><a href="doc-index-T.html">T</a></li><li><a href="doc-index-U.html">U</a></li><li><a href="doc-index-W.html">W</a></li><li><a href="doc-index-58.html">:</a></li><li><a href="doc-index-All.html">All</a></li></ul></div><div id="index"><p class="caption">Index - O</p><table><tr><td class="src">ObjectClassModsProhibited</td><td class="module"><a href="Ldap-Asn1-Type.html#v:ObjectClassModsProhibited">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:ObjectClassModsProhibited">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:ObjectClassModsProhibited">Ldap.Client</a></td></tr><tr><td class="src">ObjectClassViolation</td><td class="module"><a href="Ldap-Asn1-Type.html#v:ObjectClassViolation">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:ObjectClassViolation">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:ObjectClassViolation">Ldap.Client</a></td></tr><tr><td class="src">Oid</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Client-Internal.html#t:Oid">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#t:Oid">Ldap.Client</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Client-Internal.html#v:Oid">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:Oid">Ldap.Client</a></td></tr><tr><td class="src">Operation</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Asn1-Type.html#t:Operation">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Type/Class)</td><td class="module"><a href="Ldap-Client-Modify.html#t:Operation">Ldap.Client.Modify</a>, <a href="Ldap-Client.html#t:Operation">Ldap.Client</a></td></tr><tr><td class="src">OperationError</td><td class="module"><a href="Ldap-Asn1-Type.html#v:OperationError">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:OperationError">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:OperationError">Ldap.Client</a></td></tr><tr><td class="src">Or</td><td> </td></tr><tr><td class="alt">1 (Data Constructor)</td><td class="module"><a href="Ldap-Asn1-Type.html#v:Or">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Client-Search.html#v:Or">Ldap.Client.Search</a>, <a href="Ldap-Client.html#v:Or">Ldap.Client</a></td></tr><tr><td class="src">Other</td><td class="module"><a href="Ldap-Asn1-Type.html#v:Other">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:Other">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:Other">Ldap.Client</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
doc-index-P.html
Normal file
4
doc-index-P.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library (Index - P)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="alphabet"><ul><li><a href="doc-index-A.html">A</a></li><li><a href="doc-index-B.html">B</a></li><li><a href="doc-index-C.html">C</a></li><li><a href="doc-index-D.html">D</a></li><li><a href="doc-index-E.html">E</a></li><li><a href="doc-index-F.html">F</a></li><li><a href="doc-index-G.html">G</a></li><li><a href="doc-index-H.html">H</a></li><li><a href="doc-index-I.html">I</a></li><li><a href="doc-index-L.html">L</a></li><li><a href="doc-index-M.html">M</a></li><li><a href="doc-index-N.html">N</a></li><li><a href="doc-index-O.html">O</a></li><li><a href="doc-index-P.html">P</a></li><li><a href="doc-index-R.html">R</a></li><li><a href="doc-index-S.html">S</a></li><li><a href="doc-index-T.html">T</a></li><li><a href="doc-index-U.html">U</a></li><li><a href="doc-index-W.html">W</a></li><li><a href="doc-index-58.html">:</a></li><li><a href="doc-index-All.html">All</a></li></ul></div><div id="index"><p class="caption">Index - P</p><table><tr><td class="src">parse</td><td class="module"><a href="Ldap-Asn1-FromAsn1.html#v:parse">Ldap.Asn1.FromAsn1</a></td></tr><tr><td class="src">parseAsn1</td><td class="module"><a href="Ldap-Asn1-FromAsn1.html#v:parseAsn1">Ldap.Asn1.FromAsn1</a></td></tr><tr><td class="src">ParseError</td><td class="module"><a href="Ldap-Client.html#v:ParseError">Ldap.Client</a></td></tr><tr><td class="src">Parser</td><td class="module"><a href="Ldap-Asn1-FromAsn1.html#t:Parser">Ldap.Asn1.FromAsn1</a></td></tr><tr><td class="src">PartialAttribute</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Asn1-Type.html#t:PartialAttribute">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Asn1-Type.html#v:PartialAttribute">Ldap.Asn1.Type</a></td></tr><tr><td class="src">PartialAttributeList</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Asn1-Type.html#t:PartialAttributeList">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Asn1-Type.html#v:PartialAttributeList">Ldap.Asn1.Type</a></td></tr><tr><td class="src">Password</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Client-Internal.html#t:Password">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#t:Password">Ldap.Client</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Client-Internal.html#v:Password">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:Password">Ldap.Client</a></td></tr><tr><td class="src">Plain</td><td class="module"><a href="Ldap-Client-Internal.html#v:Plain">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:Plain">Ldap.Client</a></td></tr><tr><td class="src">PortNumber</td><td class="module"><a href="Ldap-Client-Internal.html#t:PortNumber">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#t:PortNumber">Ldap.Client</a></td></tr><tr><td class="src">Present</td><td> </td></tr><tr><td class="alt">1 (Data Constructor)</td><td class="module"><a href="Ldap-Asn1-Type.html#v:Present">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Client-Search.html#v:Present">Ldap.Client.Search</a>, <a href="Ldap-Client.html#v:Present">Ldap.Client</a></td></tr><tr><td class="src">ProtocolClientOp</td><td class="module"><a href="Ldap-Asn1-Type.html#t:ProtocolClientOp">Ldap.Asn1.Type</a></td></tr><tr><td class="src">ProtocolError</td><td class="module"><a href="Ldap-Asn1-Type.html#v:ProtocolError">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:ProtocolError">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:ProtocolError">Ldap.Client</a></td></tr><tr><td class="src">ProtocolServerOp</td><td class="module"><a href="Ldap-Asn1-Type.html#t:ProtocolServerOp">Ldap.Asn1.Type</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
doc-index-R.html
Normal file
4
doc-index-R.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library (Index - R)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="alphabet"><ul><li><a href="doc-index-A.html">A</a></li><li><a href="doc-index-B.html">B</a></li><li><a href="doc-index-C.html">C</a></li><li><a href="doc-index-D.html">D</a></li><li><a href="doc-index-E.html">E</a></li><li><a href="doc-index-F.html">F</a></li><li><a href="doc-index-G.html">G</a></li><li><a href="doc-index-H.html">H</a></li><li><a href="doc-index-I.html">I</a></li><li><a href="doc-index-L.html">L</a></li><li><a href="doc-index-M.html">M</a></li><li><a href="doc-index-N.html">N</a></li><li><a href="doc-index-O.html">O</a></li><li><a href="doc-index-P.html">P</a></li><li><a href="doc-index-R.html">R</a></li><li><a href="doc-index-S.html">S</a></li><li><a href="doc-index-T.html">T</a></li><li><a href="doc-index-U.html">U</a></li><li><a href="doc-index-W.html">W</a></li><li><a href="doc-index-58.html">:</a></li><li><a href="doc-index-All.html">All</a></li></ul></div><div id="index"><p class="caption">Index - R</p><table><tr><td class="src">raise</td><td class="module"><a href="Ldap-Client-Internal.html#v:raise">Ldap.Client.Internal</a></td></tr><tr><td class="src">Referral</td><td class="module"><a href="Ldap-Asn1-Type.html#v:Referral">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:Referral">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:Referral">Ldap.Client</a></td></tr><tr><td class="src">ReferralUris</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Asn1-Type.html#t:ReferralUris">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Asn1-Type.html#v:ReferralUris">Ldap.Asn1.Type</a></td></tr><tr><td class="src">RelativeDn</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Client-Internal.html#t:RelativeDn">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#t:RelativeDn">Ldap.Client</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Client-Internal.html#v:RelativeDn">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:RelativeDn">Ldap.Client</a></td></tr><tr><td class="src">RelativeLdapDn</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Asn1-Type.html#t:RelativeLdapDn">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Asn1-Type.html#v:RelativeLdapDn">Ldap.Asn1.Type</a></td></tr><tr><td class="src">Replace</td><td> </td></tr><tr><td class="alt">1 (Data Constructor)</td><td class="module"><a href="Ldap-Asn1-Type.html#v:Replace">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Client-Modify.html#v:Replace">Ldap.Client.Modify</a>, <a href="Ldap-Client.html#v:Replace">Ldap.Client</a></td></tr><tr><td class="src">Request</td><td class="module"><a href="Ldap-Client-Internal.html#t:Request">Ldap.Client.Internal</a></td></tr><tr><td class="src">Response</td><td class="module"><a href="Ldap-Client-Internal.html#t:Response">Ldap.Client.Internal</a></td></tr><tr><td class="src">ResponseError</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Client-Internal.html#t:ResponseError">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#t:ResponseError">Ldap.Client</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Client.html#v:ResponseError">Ldap.Client</a></td></tr><tr><td class="src">ResponseErrorCode</td><td class="module"><a href="Ldap-Client-Internal.html#v:ResponseErrorCode">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:ResponseErrorCode">Ldap.Client</a></td></tr><tr><td class="src">ResponseInvalid</td><td class="module"><a href="Ldap-Client-Internal.html#v:ResponseInvalid">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:ResponseInvalid">Ldap.Client</a></td></tr><tr><td class="src">ResultCode</td><td class="module"><a href="Ldap-Asn1-Type.html#t:ResultCode">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#t:ResultCode">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#t:ResultCode">Ldap.Client</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
doc-index-S.html
Normal file
4
doc-index-S.html
Normal file
File diff suppressed because one or more lines are too long
4
doc-index-T.html
Normal file
4
doc-index-T.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library (Index - T)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="alphabet"><ul><li><a href="doc-index-A.html">A</a></li><li><a href="doc-index-B.html">B</a></li><li><a href="doc-index-C.html">C</a></li><li><a href="doc-index-D.html">D</a></li><li><a href="doc-index-E.html">E</a></li><li><a href="doc-index-F.html">F</a></li><li><a href="doc-index-G.html">G</a></li><li><a href="doc-index-H.html">H</a></li><li><a href="doc-index-I.html">I</a></li><li><a href="doc-index-L.html">L</a></li><li><a href="doc-index-M.html">M</a></li><li><a href="doc-index-N.html">N</a></li><li><a href="doc-index-O.html">O</a></li><li><a href="doc-index-P.html">P</a></li><li><a href="doc-index-R.html">R</a></li><li><a href="doc-index-S.html">S</a></li><li><a href="doc-index-T.html">T</a></li><li><a href="doc-index-U.html">U</a></li><li><a href="doc-index-W.html">W</a></li><li><a href="doc-index-58.html">:</a></li><li><a href="doc-index-All.html">All</a></li></ul></div><div id="index"><p class="caption">Index - T</p><table><tr><td class="src">time</td><td class="module"><a href="Ldap-Client-Search.html#v:time">Ldap.Client.Search</a>, <a href="Ldap-Client.html#v:time">Ldap.Client</a></td></tr><tr><td class="src">TimeLimitExceeded</td><td class="module"><a href="Ldap-Asn1-Type.html#v:TimeLimitExceeded">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:TimeLimitExceeded">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:TimeLimitExceeded">Ldap.Client</a></td></tr><tr><td class="src">ToAsn1</td><td class="module"><a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1">Ldap.Asn1.ToAsn1</a></td></tr><tr><td class="src">toAsn1</td><td class="module"><a href="Ldap-Asn1-ToAsn1.html#v:toAsn1">Ldap.Asn1.ToAsn1</a></td></tr><tr><td class="src">typesOnly</td><td class="module"><a href="Ldap-Client-Search.html#v:typesOnly">Ldap.Client.Search</a>, <a href="Ldap-Client.html#v:typesOnly">Ldap.Client</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
doc-index-U.html
Normal file
4
doc-index-U.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library (Index - U)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="alphabet"><ul><li><a href="doc-index-A.html">A</a></li><li><a href="doc-index-B.html">B</a></li><li><a href="doc-index-C.html">C</a></li><li><a href="doc-index-D.html">D</a></li><li><a href="doc-index-E.html">E</a></li><li><a href="doc-index-F.html">F</a></li><li><a href="doc-index-G.html">G</a></li><li><a href="doc-index-H.html">H</a></li><li><a href="doc-index-I.html">I</a></li><li><a href="doc-index-L.html">L</a></li><li><a href="doc-index-M.html">M</a></li><li><a href="doc-index-N.html">N</a></li><li><a href="doc-index-O.html">O</a></li><li><a href="doc-index-P.html">P</a></li><li><a href="doc-index-R.html">R</a></li><li><a href="doc-index-S.html">S</a></li><li><a href="doc-index-T.html">T</a></li><li><a href="doc-index-U.html">U</a></li><li><a href="doc-index-W.html">W</a></li><li><a href="doc-index-58.html">:</a></li><li><a href="doc-index-All.html">All</a></li></ul></div><div id="index"><p class="caption">Index - U</p><table><tr><td class="src">unAttr</td><td class="module"><a href="Ldap-Client-Internal.html#v:unAttr">Ldap.Client.Internal</a></td></tr><tr><td class="src">Unavailable</td><td class="module"><a href="Ldap-Asn1-Type.html#v:Unavailable">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:Unavailable">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:Unavailable">Ldap.Client</a></td></tr><tr><td class="src">UnavailableCriticalExtension</td><td class="module"><a href="Ldap-Asn1-Type.html#v:UnavailableCriticalExtension">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:UnavailableCriticalExtension">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:UnavailableCriticalExtension">Ldap.Client</a></td></tr><tr><td class="src">unbindAsync</td><td class="module"><a href="Ldap-Client-Bind.html#v:unbindAsync">Ldap.Client.Bind</a></td></tr><tr><td class="src">unbindAsyncSTM</td><td class="module"><a href="Ldap-Client-Bind.html#v:unbindAsyncSTM">Ldap.Client.Bind</a></td></tr><tr><td class="src">UnbindRequest</td><td class="module"><a href="Ldap-Asn1-Type.html#v:UnbindRequest">Ldap.Asn1.Type</a></td></tr><tr><td class="src">UndefinedAttributeType</td><td class="module"><a href="Ldap-Asn1-Type.html#v:UndefinedAttributeType">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:UndefinedAttributeType">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:UndefinedAttributeType">Ldap.Client</a></td></tr><tr><td class="src">unId</td><td class="module"><a href="Ldap-Asn1-Type.html#v:unId">Ldap.Asn1.Type</a></td></tr><tr><td class="src">UnwillingToPerform</td><td class="module"><a href="Ldap-Asn1-Type.html#v:UnwillingToPerform">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Internal.html#v:UnwillingToPerform">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:UnwillingToPerform">Ldap.Client</a></td></tr><tr><td class="src">Uri</td><td> </td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ldap-Asn1-Type.html#t:Uri">Ldap.Asn1.Type</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ldap-Asn1-Type.html#v:Uri">Ldap.Asn1.Type</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
doc-index-W.html
Normal file
4
doc-index-W.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library (Index - W)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="alphabet"><ul><li><a href="doc-index-A.html">A</a></li><li><a href="doc-index-B.html">B</a></li><li><a href="doc-index-C.html">C</a></li><li><a href="doc-index-D.html">D</a></li><li><a href="doc-index-E.html">E</a></li><li><a href="doc-index-F.html">F</a></li><li><a href="doc-index-G.html">G</a></li><li><a href="doc-index-H.html">H</a></li><li><a href="doc-index-I.html">I</a></li><li><a href="doc-index-L.html">L</a></li><li><a href="doc-index-M.html">M</a></li><li><a href="doc-index-N.html">N</a></li><li><a href="doc-index-O.html">O</a></li><li><a href="doc-index-P.html">P</a></li><li><a href="doc-index-R.html">R</a></li><li><a href="doc-index-S.html">S</a></li><li><a href="doc-index-T.html">T</a></li><li><a href="doc-index-U.html">U</a></li><li><a href="doc-index-W.html">W</a></li><li><a href="doc-index-58.html">:</a></li><li><a href="doc-index-All.html">All</a></li></ul></div><div id="index"><p class="caption">Index - W</p><table><tr><td class="src">wait</td><td class="module"><a href="Ldap-Client-Internal.html#v:wait">Ldap.Client.Internal</a>, <a href="Ldap-Client.html#v:wait">Ldap.Client</a></td></tr><tr><td class="src">waitSTM</td><td class="module"><a href="Ldap-Client-Internal.html#v:waitSTM">Ldap.Client.Internal</a></td></tr><tr><td class="src">WholeSubtree</td><td class="module"><a href="Ldap-Asn1-Type.html#v:WholeSubtree">Ldap.Asn1.Type</a>, <a href="Ldap-Client-Search.html#v:WholeSubtree">Ldap.Client.Search</a>, <a href="Ldap-Client.html#v:WholeSubtree">Ldap.Client</a></td></tr><tr><td class="src">with</td><td class="module"><a href="Ldap-Client.html#v:with">Ldap.Client</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
4
doc-index.html
Normal file
4
doc-index.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library (Index)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="alphabet"><ul><li><a href="doc-index-A.html">A</a></li><li><a href="doc-index-B.html">B</a></li><li><a href="doc-index-C.html">C</a></li><li><a href="doc-index-D.html">D</a></li><li><a href="doc-index-E.html">E</a></li><li><a href="doc-index-F.html">F</a></li><li><a href="doc-index-G.html">G</a></li><li><a href="doc-index-H.html">H</a></li><li><a href="doc-index-I.html">I</a></li><li><a href="doc-index-L.html">L</a></li><li><a href="doc-index-M.html">M</a></li><li><a href="doc-index-N.html">N</a></li><li><a href="doc-index-O.html">O</a></li><li><a href="doc-index-P.html">P</a></li><li><a href="doc-index-R.html">R</a></li><li><a href="doc-index-S.html">S</a></li><li><a href="doc-index-T.html">T</a></li><li><a href="doc-index-U.html">U</a></li><li><a href="doc-index-W.html">W</a></li><li><a href="doc-index-58.html">:</a></li><li><a href="doc-index-All.html">All</a></li></ul></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
30
frames.html
Normal file
30
frames.html
Normal file
@ -0,0 +1,30 @@
|
||||
<!DOCTYPE html
|
||||
PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<title></title>
|
||||
<script src="haddock-util.js" type="text/javascript"></script>
|
||||
<script type="text/javascript"><!--
|
||||
/*
|
||||
|
||||
The synopsis frame needs to be updated using javascript, so we hide
|
||||
it by default and only show it if javascript is enabled.
|
||||
|
||||
TODO: provide some means to disable it.
|
||||
*/
|
||||
function load() {
|
||||
var d = document.getElementById("inner-fs");
|
||||
d.rows = "50%,50%";
|
||||
postReframe();
|
||||
}
|
||||
--></script>
|
||||
</head>
|
||||
<frameset id="outer-fs" cols="25%,75%" onload="load()">
|
||||
<frameset id="inner-fs" rows="100%,0%">
|
||||
<frame src="index-frames.html" name="modules" />
|
||||
<frame src="" name="synopsis" />
|
||||
</frameset>
|
||||
<frame src="index.html" name="main" />
|
||||
</frameset>
|
||||
</html>
|
||||
344
haddock-util.js
Normal file
344
haddock-util.js
Normal file
@ -0,0 +1,344 @@
|
||||
// Haddock JavaScript utilities
|
||||
|
||||
var rspace = /\s\s+/g,
|
||||
rtrim = /^\s+|\s+$/g;
|
||||
|
||||
function spaced(s) { return (" " + s + " ").replace(rspace, " "); }
|
||||
function trim(s) { return s.replace(rtrim, ""); }
|
||||
|
||||
function hasClass(elem, value) {
|
||||
var className = spaced(elem.className || "");
|
||||
return className.indexOf( " " + value + " " ) >= 0;
|
||||
}
|
||||
|
||||
function addClass(elem, value) {
|
||||
var className = spaced(elem.className || "");
|
||||
if ( className.indexOf( " " + value + " " ) < 0 ) {
|
||||
elem.className = trim(className + " " + value);
|
||||
}
|
||||
}
|
||||
|
||||
function removeClass(elem, value) {
|
||||
var className = spaced(elem.className || "");
|
||||
className = className.replace(" " + value + " ", " ");
|
||||
elem.className = trim(className);
|
||||
}
|
||||
|
||||
function toggleClass(elem, valueOn, valueOff, bool) {
|
||||
if (bool == null) { bool = ! hasClass(elem, valueOn); }
|
||||
if (bool) {
|
||||
removeClass(elem, valueOff);
|
||||
addClass(elem, valueOn);
|
||||
}
|
||||
else {
|
||||
removeClass(elem, valueOn);
|
||||
addClass(elem, valueOff);
|
||||
}
|
||||
return bool;
|
||||
}
|
||||
|
||||
|
||||
function makeClassToggle(valueOn, valueOff)
|
||||
{
|
||||
return function(elem, bool) {
|
||||
return toggleClass(elem, valueOn, valueOff, bool);
|
||||
}
|
||||
}
|
||||
|
||||
toggleShow = makeClassToggle("show", "hide");
|
||||
toggleCollapser = makeClassToggle("collapser", "expander");
|
||||
|
||||
function toggleSection(id)
|
||||
{
|
||||
var b = toggleShow(document.getElementById("section." + id));
|
||||
toggleCollapser(document.getElementById("control." + id), b);
|
||||
rememberCollapsed(id, b);
|
||||
return b;
|
||||
}
|
||||
|
||||
var collapsed = {};
|
||||
function rememberCollapsed(id, b)
|
||||
{
|
||||
if(b)
|
||||
delete collapsed[id]
|
||||
else
|
||||
collapsed[id] = null;
|
||||
|
||||
var sections = [];
|
||||
for(var i in collapsed)
|
||||
{
|
||||
if(collapsed.hasOwnProperty(i))
|
||||
sections.push(i);
|
||||
}
|
||||
// cookie specific to this page; don't use setCookie which sets path=/
|
||||
document.cookie = "collapsed=" + escape(sections.join('+'));
|
||||
}
|
||||
|
||||
function restoreCollapsed()
|
||||
{
|
||||
var cookie = getCookie("collapsed");
|
||||
if(!cookie)
|
||||
return;
|
||||
|
||||
var ids = cookie.split('+');
|
||||
for(var i in ids)
|
||||
{
|
||||
if(document.getElementById("section." + ids[i]))
|
||||
toggleSection(ids[i]);
|
||||
}
|
||||
}
|
||||
|
||||
function setCookie(name, value) {
|
||||
document.cookie = name + "=" + escape(value) + ";path=/;";
|
||||
}
|
||||
|
||||
function clearCookie(name) {
|
||||
document.cookie = name + "=;path=/;expires=Thu, 01-Jan-1970 00:00:01 GMT;";
|
||||
}
|
||||
|
||||
function getCookie(name) {
|
||||
var nameEQ = name + "=";
|
||||
var ca = document.cookie.split(';');
|
||||
for(var i=0;i < ca.length;i++) {
|
||||
var c = ca[i];
|
||||
while (c.charAt(0)==' ') c = c.substring(1,c.length);
|
||||
if (c.indexOf(nameEQ) == 0) {
|
||||
return unescape(c.substring(nameEQ.length,c.length));
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
|
||||
var max_results = 75; // 50 is not enough to search for map in the base libraries
|
||||
var shown_range = null;
|
||||
var last_search = null;
|
||||
|
||||
function quick_search()
|
||||
{
|
||||
perform_search(false);
|
||||
}
|
||||
|
||||
function full_search()
|
||||
{
|
||||
perform_search(true);
|
||||
}
|
||||
|
||||
|
||||
function perform_search(full)
|
||||
{
|
||||
var text = document.getElementById("searchbox").value.toLowerCase();
|
||||
if (text == last_search && !full) return;
|
||||
last_search = text;
|
||||
|
||||
var table = document.getElementById("indexlist");
|
||||
var status = document.getElementById("searchmsg");
|
||||
var children = table.firstChild.childNodes;
|
||||
|
||||
// first figure out the first node with the prefix
|
||||
var first = bisect(-1);
|
||||
var last = (first == -1 ? -1 : bisect(1));
|
||||
|
||||
if (first == -1)
|
||||
{
|
||||
table.className = "";
|
||||
status.innerHTML = "No results found, displaying all";
|
||||
}
|
||||
else if (first == 0 && last == children.length - 1)
|
||||
{
|
||||
table.className = "";
|
||||
status.innerHTML = "";
|
||||
}
|
||||
else if (last - first >= max_results && !full)
|
||||
{
|
||||
table.className = "";
|
||||
status.innerHTML = "More than " + max_results + ", press Search to display";
|
||||
}
|
||||
else
|
||||
{
|
||||
// decide what you need to clear/show
|
||||
if (shown_range)
|
||||
setclass(shown_range[0], shown_range[1], "indexrow");
|
||||
setclass(first, last, "indexshow");
|
||||
shown_range = [first, last];
|
||||
table.className = "indexsearch";
|
||||
status.innerHTML = "";
|
||||
}
|
||||
|
||||
|
||||
function setclass(first, last, status)
|
||||
{
|
||||
for (var i = first; i <= last; i++)
|
||||
{
|
||||
children[i].className = status;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// do a binary search, treating 0 as ...
|
||||
// return either -1 (no 0's found) or location of most far match
|
||||
function bisect(dir)
|
||||
{
|
||||
var first = 0, finish = children.length - 1;
|
||||
var mid, success = false;
|
||||
|
||||
while (finish - first > 3)
|
||||
{
|
||||
mid = Math.floor((finish + first) / 2);
|
||||
|
||||
var i = checkitem(mid);
|
||||
if (i == 0) i = dir;
|
||||
if (i == -1)
|
||||
finish = mid;
|
||||
else
|
||||
first = mid;
|
||||
}
|
||||
var a = (dir == 1 ? first : finish);
|
||||
var b = (dir == 1 ? finish : first);
|
||||
for (var i = b; i != a - dir; i -= dir)
|
||||
{
|
||||
if (checkitem(i) == 0) return i;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
||||
// from an index, decide what the result is
|
||||
// 0 = match, -1 is lower, 1 is higher
|
||||
function checkitem(i)
|
||||
{
|
||||
var s = getitem(i).toLowerCase().substr(0, text.length);
|
||||
if (s == text) return 0;
|
||||
else return (s > text ? -1 : 1);
|
||||
}
|
||||
|
||||
|
||||
// from an index, get its string
|
||||
// this abstracts over alternates
|
||||
function getitem(i)
|
||||
{
|
||||
for ( ; i >= 0; i--)
|
||||
{
|
||||
var s = children[i].firstChild.firstChild.data;
|
||||
if (s.indexOf(' ') == -1)
|
||||
return s;
|
||||
}
|
||||
return ""; // should never be reached
|
||||
}
|
||||
}
|
||||
|
||||
function setSynopsis(filename) {
|
||||
if (parent.window.synopsis) {
|
||||
if (parent.window.synopsis.location.replace) {
|
||||
// In Firefox this avoids adding the change to the history.
|
||||
parent.window.synopsis.location.replace(filename);
|
||||
} else {
|
||||
parent.window.synopsis.location = filename;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function addMenuItem(html) {
|
||||
var menu = document.getElementById("page-menu");
|
||||
if (menu) {
|
||||
var btn = menu.firstChild.cloneNode(false);
|
||||
btn.innerHTML = html;
|
||||
menu.appendChild(btn);
|
||||
}
|
||||
}
|
||||
|
||||
function adjustForFrames() {
|
||||
var bodyCls;
|
||||
|
||||
if (parent.location.href == window.location.href) {
|
||||
// not in frames, so add Frames button
|
||||
addMenuItem("<a href='#' onclick='reframe();return true;'>Frames</a>");
|
||||
bodyCls = "no-frame";
|
||||
}
|
||||
else {
|
||||
bodyCls = "in-frame";
|
||||
}
|
||||
addClass(document.body, bodyCls);
|
||||
}
|
||||
|
||||
function reframe() {
|
||||
setCookie("haddock-reframe", document.URL);
|
||||
window.location = "frames.html";
|
||||
}
|
||||
|
||||
function postReframe() {
|
||||
var s = getCookie("haddock-reframe");
|
||||
if (s) {
|
||||
parent.window.main.location = s;
|
||||
clearCookie("haddock-reframe");
|
||||
}
|
||||
}
|
||||
|
||||
function styles() {
|
||||
var i, a, es = document.getElementsByTagName("link"), rs = [];
|
||||
for (i = 0; a = es[i]; i++) {
|
||||
if(a.rel.indexOf("style") != -1 && a.title) {
|
||||
rs.push(a);
|
||||
}
|
||||
}
|
||||
return rs;
|
||||
}
|
||||
|
||||
function addStyleMenu() {
|
||||
var as = styles();
|
||||
var i, a, btns = "";
|
||||
for(i=0; a = as[i]; i++) {
|
||||
btns += "<li><a href='#' onclick=\"setActiveStyleSheet('"
|
||||
+ a.title + "'); return false;\">"
|
||||
+ a.title + "</a></li>"
|
||||
}
|
||||
if (as.length > 1) {
|
||||
var h = "<div id='style-menu-holder'>"
|
||||
+ "<a href='#' onclick='styleMenu(); return false;'>Style ▾</a>"
|
||||
+ "<ul id='style-menu' class='hide'>" + btns + "</ul>"
|
||||
+ "</div>";
|
||||
addMenuItem(h);
|
||||
}
|
||||
}
|
||||
|
||||
function setActiveStyleSheet(title) {
|
||||
var as = styles();
|
||||
var i, a, found;
|
||||
for(i=0; a = as[i]; i++) {
|
||||
a.disabled = true;
|
||||
// need to do this always, some browsers are edge triggered
|
||||
if(a.title == title) {
|
||||
found = a;
|
||||
}
|
||||
}
|
||||
if (found) {
|
||||
found.disabled = false;
|
||||
setCookie("haddock-style", title);
|
||||
}
|
||||
else {
|
||||
as[0].disabled = false;
|
||||
clearCookie("haddock-style");
|
||||
}
|
||||
styleMenu(false);
|
||||
}
|
||||
|
||||
function resetStyle() {
|
||||
var s = getCookie("haddock-style");
|
||||
if (s) setActiveStyleSheet(s);
|
||||
}
|
||||
|
||||
|
||||
function styleMenu(show) {
|
||||
var m = document.getElementById('style-menu');
|
||||
if (m) toggleShow(m, show);
|
||||
}
|
||||
|
||||
|
||||
function pageLoad() {
|
||||
addStyleMenu();
|
||||
adjustForFrames();
|
||||
resetStyle();
|
||||
restoreCollapsed();
|
||||
}
|
||||
|
||||
BIN
hslogo-16.png
Normal file
BIN
hslogo-16.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.6 KiB |
4
index-frames.html
Normal file
4
index-frames.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body id="mini"><div id="module-list"><p class="caption">Modules</p><ul><li class="module"><a href="Ldap-Asn1-FromAsn1.html" target="main">Ldap.Asn1.FromAsn1</a></li><li class="module"><a href="Ldap-Asn1-ToAsn1.html" target="main">Ldap.Asn1.ToAsn1</a></li><li class="module"><a href="Ldap-Asn1-Type.html" target="main">Ldap.Asn1.Type</a></li><li class="module"><a href="Ldap-Client.html" target="main">Ldap.Client</a></li><li class="module"><a href="Ldap-Client-Add.html" target="main">Ldap.Client.Add</a></li><li class="module"><a href="Ldap-Client-Bind.html" target="main">Ldap.Client.Bind</a></li><li class="module"><a href="Ldap-Client-Compare.html" target="main">Ldap.Client.Compare</a></li><li class="module"><a href="Ldap-Client-Delete.html" target="main">Ldap.Client.Delete</a></li><li class="module"><a href="Ldap-Client-Extended.html" target="main">Ldap.Client.Extended</a></li><li class="module"><a href="Ldap-Client-Internal.html" target="main">Ldap.Client.Internal</a></li><li class="module"><a href="Ldap-Client-Modify.html" target="main">Ldap.Client.Modify</a></li><li class="module"><a href="Ldap-Client-Search.html" target="main">Ldap.Client.Search</a></li></ul></div></body></html>
|
||||
4
index.html
Normal file
4
index.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>ldap-client-0.1.0: Pure Haskell LDAP Client Library</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ldap-client-0.1.0: Pure Haskell LDAP Client Library</p></div><div id="content"><div id="description"><h1>ldap-client-0.1.0: Pure Haskell LDAP Client Library</h1><div class="doc"><p>Pure Haskell LDAP client library implementing (the parts of) RFC 4511.</p></div></div><div id="module-list"><p class="caption">Modules</p><ul><li><span id="control.n.1" class="module collapser" onclick="toggleSection('n.1')">Ldap</span><ul id="section.n.1" class="show"><li><span id="control.n.1.1" class="module collapser" onclick="toggleSection('n.1.1')">Asn1</span><ul id="section.n.1.1" class="show"><li><span class="module"><a href="Ldap-Asn1-FromAsn1.html">Ldap.Asn1.FromAsn1</a></span></li><li><span class="module"><a href="Ldap-Asn1-ToAsn1.html">Ldap.Asn1.ToAsn1</a></span></li><li><span class="module"><a href="Ldap-Asn1-Type.html">Ldap.Asn1.Type</a></span></li></ul></li><li><span class="module"><span id="control.n.1.2" class="collapser" onclick="toggleSection('n.1.2')"> </span><a href="Ldap-Client.html">Ldap.Client</a></span><ul id="section.n.1.2" class="show"><li><span class="module"><a href="Ldap-Client-Add.html">Ldap.Client.Add</a></span></li><li><span class="module"><a href="Ldap-Client-Bind.html">Ldap.Client.Bind</a></span></li><li><span class="module"><a href="Ldap-Client-Compare.html">Ldap.Client.Compare</a></span></li><li><span class="module"><a href="Ldap-Client-Delete.html">Ldap.Client.Delete</a></span></li><li><span class="module"><a href="Ldap-Client-Extended.html">Ldap.Client.Extended</a></span></li><li><span class="module"><a href="Ldap-Client-Internal.html">Ldap.Client.Internal</a></span></li><li><span class="module"><a href="Ldap-Client-Modify.html">Ldap.Client.Modify</a></span></li><li><span class="module"><a href="Ldap-Client-Search.html">Ldap.Client.Search</a></span></li></ul></li></ul></li></ul></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.0</p></div></body></html>
|
||||
BIN
ldap-client.haddock
Normal file
BIN
ldap-client.haddock
Normal file
Binary file not shown.
4
mini_Ldap-Asn1-FromAsn1.html
Normal file
4
mini_Ldap-Asn1-FromAsn1.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>Ldap.Asn1.FromAsn1</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body id="mini"><div id="module-header"><p class="caption">Ldap.Asn1.FromAsn1</p></div><div id="interface"><div class="top"><p class="src"><span class="keyword">class</span> <a href="Ldap-Asn1-FromAsn1.html#t:FromAsn1" target="main">FromAsn1</a> a</p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-FromAsn1.html#t:Parser" target="main">Parser</a> s a</p></div><div class="top"><p class="src"><a href="Ldap-Asn1-FromAsn1.html#v:parseAsn1" target="main">parseAsn1</a></p></div><div class="top"><p class="src"><a href="Ldap-Asn1-FromAsn1.html#v:parse" target="main">parse</a></p></div><div class="top"><p class="src"><a href="Ldap-Asn1-FromAsn1.html#v:next" target="main">next</a></p></div></div></body></html>
|
||||
4
mini_Ldap-Asn1-ToAsn1.html
Normal file
4
mini_Ldap-Asn1-ToAsn1.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>Ldap.Asn1.ToAsn1</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body id="mini"><div id="module-header"><p class="caption">Ldap.Asn1.ToAsn1</p></div><div id="interface"><div class="top"><p class="src"><span class="keyword">class</span> <a href="Ldap-Asn1-ToAsn1.html#t:ToAsn1" target="main">ToAsn1</a> a</p></div></div></body></html>
|
||||
4
mini_Ldap-Asn1-Type.html
Normal file
4
mini_Ldap-Asn1-Type.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>Ldap.Asn1.Type</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body id="mini"><div id="module-header"><p class="caption">Ldap.Asn1.Type</p></div><div id="interface"><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:LdapMessage" target="main">LdapMessage</a> op</p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:Id" target="main">Id</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:ProtocolClientOp" target="main">ProtocolClientOp</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:ProtocolServerOp" target="main">ProtocolServerOp</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:AuthenticationChoice" target="main">AuthenticationChoice</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:Scope" target="main">Scope</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:DerefAliases" target="main">DerefAliases</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:Filter" target="main">Filter</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:SubstringFilter" target="main">SubstringFilter</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:Substring" target="main">Substring</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:MatchingRuleAssertion" target="main">MatchingRuleAssertion</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:MatchingRuleId" target="main">MatchingRuleId</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:AttributeSelection" target="main">AttributeSelection</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:AttributeList" target="main">AttributeList</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:PartialAttributeList" target="main">PartialAttributeList</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:Controls" target="main">Controls</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:Control" target="main">Control</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:LdapResult" target="main">LdapResult</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:ResultCode" target="main">ResultCode</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:AttributeDescription" target="main">AttributeDescription</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:AttributeValue" target="main">AttributeValue</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:AttributeValueAssertion" target="main">AttributeValueAssertion</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:AssertionValue" target="main">AssertionValue</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:Attribute" target="main">Attribute</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:PartialAttribute" target="main">PartialAttribute</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:LdapDn" target="main">LdapDn</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:RelativeLdapDn" target="main">RelativeLdapDn</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:ReferralUris" target="main">ReferralUris</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:Uri" target="main">Uri</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:Operation" target="main">Operation</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:LdapString" target="main">LdapString</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Asn1-Type.html#t:LdapOid" target="main">LdapOid</a></p></div></div></body></html>
|
||||
4
mini_Ldap-Client-Add.html
Normal file
4
mini_Ldap-Client-Add.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>Ldap.Client.Add</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body id="mini"><div id="module-header"><p class="caption">Ldap.Client.Add</p></div><div id="interface"><div class="top"><p class="src"><a href="Ldap-Client-Add.html#v:add" target="main">add</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Add.html#v:addEither" target="main">addEither</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Add.html#v:addAsync" target="main">addAsync</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Add.html#v:addAsyncSTM" target="main">addAsyncSTM</a></p></div></div></body></html>
|
||||
4
mini_Ldap-Client-Bind.html
Normal file
4
mini_Ldap-Client-Bind.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>Ldap.Client.Bind</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body id="mini"><div id="module-header"><p class="caption">Ldap.Client.Bind</p></div><div id="interface"><div class="top"><p class="src"><a href="Ldap-Client-Bind.html#v:bind" target="main">bind</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Bind.html#v:bindEither" target="main">bindEither</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Bind.html#v:bindAsync" target="main">bindAsync</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Bind.html#v:bindAsyncSTM" target="main">bindAsyncSTM</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Bind.html#v:unbindAsync" target="main">unbindAsync</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Bind.html#v:unbindAsyncSTM" target="main">unbindAsyncSTM</a></p></div></div></body></html>
|
||||
4
mini_Ldap-Client-Compare.html
Normal file
4
mini_Ldap-Client-Compare.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>Ldap.Client.Compare</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body id="mini"><div id="module-header"><p class="caption">Ldap.Client.Compare</p></div><div id="interface"><div class="top"><p class="src"><a href="Ldap-Client-Compare.html#v:compare" target="main">compare</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Compare.html#v:compareEither" target="main">compareEither</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Compare.html#v:compareAsync" target="main">compareAsync</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Compare.html#v:compareAsyncSTM" target="main">compareAsyncSTM</a></p></div></div></body></html>
|
||||
4
mini_Ldap-Client-Delete.html
Normal file
4
mini_Ldap-Client-Delete.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>Ldap.Client.Delete</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body id="mini"><div id="module-header"><p class="caption">Ldap.Client.Delete</p></div><div id="interface"><div class="top"><p class="src"><a href="Ldap-Client-Delete.html#v:delete" target="main">delete</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Delete.html#v:deleteEither" target="main">deleteEither</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Delete.html#v:deleteAsync" target="main">deleteAsync</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Delete.html#v:deleteAsyncSTM" target="main">deleteAsyncSTM</a></p></div></div></body></html>
|
||||
4
mini_Ldap-Client-Extended.html
Normal file
4
mini_Ldap-Client-Extended.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>Ldap.Client.Extended</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body id="mini"><div id="module-header"><p class="caption">Ldap.Client.Extended</p></div><div id="interface"><div class="top"><p class="src"><a href="Ldap-Client-Extended.html#v:extended" target="main">extended</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Extended.html#v:extendedEither" target="main">extendedEither</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Extended.html#v:extendedAsync" target="main">extendedAsync</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Extended.html#v:extendedAsyncSTM" target="main">extendedAsyncSTM</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Extended.html#v:startTls" target="main">startTls</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Extended.html#v:startTlsEither" target="main">startTlsEither</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Extended.html#v:startTlsAsync" target="main">startTlsAsync</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Extended.html#v:startTlsAsyncSTM" target="main">startTlsAsyncSTM</a></p></div></div></body></html>
|
||||
4
mini_Ldap-Client-Internal.html
Normal file
4
mini_Ldap-Client-Internal.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>Ldap.Client.Internal</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body id="mini"><div id="module-header"><p class="caption">Ldap.Client.Internal</p></div><div id="interface"><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client-Internal.html#t:Host" target="main">Host</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client-Internal.html#t:PortNumber" target="main">PortNumber</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client-Internal.html#t:Ldap" target="main">Ldap</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client-Internal.html#t:ClientMessage" target="main">ClientMessage</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client-Internal.html#t:ResultCode" target="main">ResultCode</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client-Internal.html#t:Async" target="main">Async</a> a</p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client-Internal.html#t:Oid" target="main">Oid</a></p></div><div class="top"><p class="src"><span class="keyword">type</span> <a href="Ldap-Client-Internal.html#t:AttrList" target="main">AttrList</a> f</p></div><h1>Waiting for Request Completion</h1><div class="top"><p class="src"><a href="Ldap-Client-Internal.html#v:wait" target="main">wait</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Internal.html#v:waitSTM" target="main">waitSTM</a></p></div><h1>Misc</h1><div class="top"><p class="src"><span class="keyword">type</span> <a href="Ldap-Client-Internal.html#t:Response" target="main">Response</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client-Internal.html#t:ResponseError" target="main">ResponseError</a></p></div><div class="top"><p class="src"><span class="keyword">type</span> <a href="Ldap-Client-Internal.html#t:Request" target="main">Request</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Internal.html#v:raise" target="main">raise</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Internal.html#v:sendRequest" target="main">sendRequest</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client-Internal.html#t:Dn" target="main">Dn</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client-Internal.html#t:RelativeDn" target="main">RelativeDn</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client-Internal.html#t:Password" target="main">Password</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client-Internal.html#t:Attr" target="main">Attr</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Internal.html#v:unAttr" target="main">unAttr</a></p></div></div></body></html>
|
||||
4
mini_Ldap-Client-Modify.html
Normal file
4
mini_Ldap-Client-Modify.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>Ldap.Client.Modify</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body id="mini"><div id="module-header"><p class="caption">Ldap.Client.Modify</p></div><div id="interface"><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client-Modify.html#t:Operation" target="main">Operation</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Modify.html#v:modify" target="main">modify</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Modify.html#v:modifyEither" target="main">modifyEither</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Modify.html#v:modifyAsync" target="main">modifyAsync</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Modify.html#v:modifyAsyncSTM" target="main">modifyAsyncSTM</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Modify.html#v:modifyDn" target="main">modifyDn</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Modify.html#v:modifyDnEither" target="main">modifyDnEither</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Modify.html#v:modifyDnAsync" target="main">modifyDnAsync</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Modify.html#v:modifyDnAsyncSTM" target="main">modifyDnAsyncSTM</a></p></div></div></body></html>
|
||||
4
mini_Ldap-Client-Search.html
Normal file
4
mini_Ldap-Client-Search.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>Ldap.Client.Search</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body id="mini"><div id="module-header"><p class="caption">Ldap.Client.Search</p></div><div id="interface"><div class="top"><p class="src"><a href="Ldap-Client-Search.html#v:search" target="main">search</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Search.html#v:searchEither" target="main">searchEither</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Search.html#v:searchAsync" target="main">searchAsync</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Search.html#v:searchAsyncSTM" target="main">searchAsyncSTM</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client-Search.html#t:Search" target="main">Search</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client-Search.html#t:Mod" target="main">Mod</a> a</p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client-Search.html#t:Scope" target="main">Scope</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Search.html#v:scope" target="main">scope</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Search.html#v:size" target="main">size</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Search.html#v:time" target="main">time</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Search.html#v:typesOnly" target="main">typesOnly</a></p></div><div class="top"><p class="src"><a href="Ldap-Client-Search.html#v:derefAliases" target="main">derefAliases</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client-Search.html#t:Filter" target="main">Filter</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client-Search.html#t:SearchEntry" target="main">SearchEntry</a></p></div></div></body></html>
|
||||
4
mini_Ldap-Client.html
Normal file
4
mini_Ldap-Client.html
Normal file
@ -0,0 +1,4 @@
|
||||
<!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>Ldap.Client</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
|
||||
window.onload = function () {pageLoad();};
|
||||
//]]>
|
||||
</script></head><body id="mini"><div id="module-header"><p class="caption">Ldap.Client</p></div><div id="interface"><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client.html#t:Host" target="main">Host</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client.html#t:Ldap" target="main">Ldap</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client.html#t:LdapError" target="main">LdapError</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client.html#t:ResponseError" target="main">ResponseError</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client.html#t:ResultCode" target="main">ResultCode</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client.html#t:Async" target="main">Async</a> a</p></div><div class="top"><p class="src"><a href="Ldap-Client.html#v:with" target="main">with</a></p></div><h1>Bind</h1><div class="top"><p class="src"><a href="Ldap-Client.html#v:bind" target="main">bind</a></p></div><h1>Search</h1><div class="top"><p class="src"><a href="Ldap-Client.html#v:search" target="main">search</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client.html#t:SearchEntry" target="main">SearchEntry</a></p></div><h2>Search modifiers</h2><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client.html#t:Search" target="main">Search</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client.html#t:Mod" target="main">Mod</a> a</p></div><div class="top"><p class="src"><a href="Ldap-Client.html#v:scope" target="main">scope</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client.html#t:Scope" target="main">Scope</a></p></div><div class="top"><p class="src"><a href="Ldap-Client.html#v:size" target="main">size</a></p></div><div class="top"><p class="src"><a href="Ldap-Client.html#v:time" target="main">time</a></p></div><div class="top"><p class="src"><a href="Ldap-Client.html#v:typesOnly" target="main">typesOnly</a></p></div><div class="top"><p class="src"><a href="Ldap-Client.html#v:derefAliases" target="main">derefAliases</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client.html#t:Filter" target="main">Filter</a></p></div><h1>Modify</h1><div class="top"><p class="src"><a href="Ldap-Client.html#v:modify" target="main">modify</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client.html#t:Operation" target="main">Operation</a></p></div><h1>Add</h1><div class="top"><p class="src"><a href="Ldap-Client.html#v:add" target="main">add</a></p></div><h1>Delete</h1><div class="top"><p class="src"><a href="Ldap-Client.html#v:delete" target="main">delete</a></p></div><h1>ModifyDn</h1><div class="top"><p class="src"><a href="Ldap-Client.html#v:modifyDn" target="main">modifyDn</a></p></div><h1>Compare</h1><div class="top"><p class="src"><a href="Ldap-Client.html#v:compare" target="main">compare</a></p></div><h1>Extended</h1><div class="top"><p class="src"><a href="Ldap-Client.html#v:extended" target="main">extended</a></p></div><h1>Waiting for completion</h1><div class="top"><p class="src"><a href="Ldap-Client.html#v:wait" target="main">wait</a></p></div><h1>Miscellanous</h1><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client.html#t:Dn" target="main">Dn</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client.html#t:RelativeDn" target="main">RelativeDn</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client.html#t:Oid" target="main">Oid</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client.html#t:Password" target="main">Password</a></p></div><div class="top"><p class="src"><span class="keyword">type</span> <a href="Ldap-Client.html#t:AttrList" target="main">AttrList</a> f</p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client.html#t:Attr" target="main">Attr</a></p></div><h1>Re-exports</h1><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client.html#t:NonEmpty" target="main">NonEmpty</a> a</p></div><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ldap-Client.html#t:PortNumber" target="main">PortNumber</a></p></div></div></body></html>
|
||||
587
ocean.css
Normal file
587
ocean.css
Normal file
@ -0,0 +1,587 @@
|
||||
/* @group Fundamentals */
|
||||
|
||||
* { margin: 0; padding: 0 }
|
||||
|
||||
/* Is this portable? */
|
||||
html {
|
||||
background-color: white;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
body {
|
||||
background: white;
|
||||
color: black;
|
||||
text-align: left;
|
||||
min-height: 100%;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
p {
|
||||
margin: 0.8em 0;
|
||||
}
|
||||
|
||||
ul, ol {
|
||||
margin: 0.8em 0 0.8em 2em;
|
||||
}
|
||||
|
||||
dl {
|
||||
margin: 0.8em 0;
|
||||
}
|
||||
|
||||
dt {
|
||||
font-weight: bold;
|
||||
}
|
||||
dd {
|
||||
margin-left: 2em;
|
||||
}
|
||||
|
||||
a { text-decoration: none; }
|
||||
a[href]:link { color: rgb(196,69,29); }
|
||||
a[href]:visited { color: rgb(171,105,84); }
|
||||
a[href]:hover { text-decoration:underline; }
|
||||
|
||||
/* @end */
|
||||
|
||||
/* @group Fonts & Sizes */
|
||||
|
||||
/* Basic technique & IE workarounds from YUI 3
|
||||
For reasons, see:
|
||||
http://yui.yahooapis.com/3.1.1/build/cssfonts/fonts.css
|
||||
*/
|
||||
|
||||
body {
|
||||
font:13px/1.4 sans-serif;
|
||||
*font-size:small; /* for IE */
|
||||
*font:x-small; /* for IE in quirks mode */
|
||||
}
|
||||
|
||||
h1 { font-size: 146.5%; /* 19pt */ }
|
||||
h2 { font-size: 131%; /* 17pt */ }
|
||||
h3 { font-size: 116%; /* 15pt */ }
|
||||
h4 { font-size: 100%; /* 13pt */ }
|
||||
h5 { font-size: 100%; /* 13pt */ }
|
||||
|
||||
select, input, button, textarea {
|
||||
font:99% sans-serif;
|
||||
}
|
||||
|
||||
table {
|
||||
font-size:inherit;
|
||||
font:100%;
|
||||
}
|
||||
|
||||
pre, code, kbd, samp, tt, .src {
|
||||
font-family:monospace;
|
||||
*font-size:108%;
|
||||
line-height: 124%;
|
||||
}
|
||||
|
||||
.links, .link {
|
||||
font-size: 85%; /* 11pt */
|
||||
}
|
||||
|
||||
#module-header .caption {
|
||||
font-size: 182%; /* 24pt */
|
||||
}
|
||||
|
||||
.info {
|
||||
font-size: 85%; /* 11pt */
|
||||
}
|
||||
|
||||
#table-of-contents, #synopsis {
|
||||
/* font-size: 85%; /* 11pt */
|
||||
}
|
||||
|
||||
|
||||
/* @end */
|
||||
|
||||
/* @group Common */
|
||||
|
||||
.caption, h1, h2, h3, h4, h5, h6 {
|
||||
font-weight: bold;
|
||||
color: rgb(78,98,114);
|
||||
margin: 0.8em 0 0.4em;
|
||||
}
|
||||
|
||||
* + h1, * + h2, * + h3, * + h4, * + h5, * + h6 {
|
||||
margin-top: 2em;
|
||||
}
|
||||
|
||||
h1 + h2, h2 + h3, h3 + h4, h4 + h5, h5 + h6 {
|
||||
margin-top: inherit;
|
||||
}
|
||||
|
||||
ul.links {
|
||||
list-style: none;
|
||||
text-align: left;
|
||||
float: right;
|
||||
display: inline-table;
|
||||
margin: 0 0 0 1em;
|
||||
}
|
||||
|
||||
ul.links li {
|
||||
display: inline;
|
||||
border-left: 1px solid #d5d5d5;
|
||||
white-space: nowrap;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
ul.links li a {
|
||||
padding: 0.2em 0.5em;
|
||||
}
|
||||
|
||||
.hide { display: none; }
|
||||
.show { display: inherit; }
|
||||
.clear { clear: both; }
|
||||
|
||||
.collapser {
|
||||
background-image: url(minus.gif);
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
.expander {
|
||||
background-image: url(plus.gif);
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
p.caption.collapser,
|
||||
p.caption.expander {
|
||||
background-position: 0 0.4em;
|
||||
}
|
||||
.collapser, .expander {
|
||||
padding-left: 14px;
|
||||
margin-left: -14px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
pre {
|
||||
padding: 0.25em;
|
||||
margin: 0.8em 0;
|
||||
background: rgb(229,237,244);
|
||||
overflow: auto;
|
||||
border-bottom: 0.25em solid white;
|
||||
/* white border adds some space below the box to compensate
|
||||
for visual extra space that paragraphs have between baseline
|
||||
and the bounding box */
|
||||
}
|
||||
|
||||
.src {
|
||||
background: #f0f0f0;
|
||||
padding: 0.2em 0.5em;
|
||||
}
|
||||
|
||||
.keyword { font-weight: normal; }
|
||||
.def { font-weight: bold; }
|
||||
|
||||
|
||||
/* @end */
|
||||
|
||||
/* @group Page Structure */
|
||||
|
||||
#content {
|
||||
margin: 0 auto;
|
||||
padding: 0 2em 6em;
|
||||
}
|
||||
|
||||
#package-header {
|
||||
background: rgb(41,56,69);
|
||||
border-top: 5px solid rgb(78,98,114);
|
||||
color: #ddd;
|
||||
padding: 0.2em;
|
||||
position: relative;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
#package-header .caption {
|
||||
background: url(hslogo-16.png) no-repeat 0em;
|
||||
color: white;
|
||||
margin: 0 2em;
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
padding-left: 2em;
|
||||
}
|
||||
|
||||
#package-header a:link, #package-header a:visited { color: white; }
|
||||
#package-header a:hover { background: rgb(78,98,114); }
|
||||
|
||||
#module-header .caption {
|
||||
color: rgb(78,98,114);
|
||||
font-weight: bold;
|
||||
border-bottom: 1px solid #ddd;
|
||||
}
|
||||
|
||||
table.info {
|
||||
float: right;
|
||||
padding: 0.5em 1em;
|
||||
border: 1px solid #ddd;
|
||||
color: rgb(78,98,114);
|
||||
background-color: #fff;
|
||||
max-width: 40%;
|
||||
border-spacing: 0;
|
||||
position: relative;
|
||||
top: -0.5em;
|
||||
margin: 0 0 0 2em;
|
||||
}
|
||||
|
||||
.info th {
|
||||
padding: 0 1em 0 0;
|
||||
}
|
||||
|
||||
div#style-menu-holder {
|
||||
position: relative;
|
||||
z-index: 2;
|
||||
display: inline;
|
||||
}
|
||||
|
||||
#style-menu {
|
||||
position: absolute;
|
||||
z-index: 1;
|
||||
overflow: visible;
|
||||
background: #374c5e;
|
||||
margin: 0;
|
||||
text-align: center;
|
||||
right: 0;
|
||||
padding: 0;
|
||||
top: 1.25em;
|
||||
}
|
||||
|
||||
#style-menu li {
|
||||
display: list-item;
|
||||
border-style: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
color: #000;
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
#style-menu li + li {
|
||||
border-top: 1px solid #919191;
|
||||
}
|
||||
|
||||
#style-menu a {
|
||||
width: 6em;
|
||||
padding: 3px;
|
||||
display: block;
|
||||
}
|
||||
|
||||
#footer {
|
||||
background: #ddd;
|
||||
border-top: 1px solid #aaa;
|
||||
padding: 0.5em 0;
|
||||
color: #666;
|
||||
text-align: center;
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
width: 100%;
|
||||
height: 3em;
|
||||
}
|
||||
|
||||
/* @end */
|
||||
|
||||
/* @group Front Matter */
|
||||
|
||||
#table-of-contents {
|
||||
float: right;
|
||||
clear: right;
|
||||
background: #faf9dc;
|
||||
border: 1px solid #d8d7ad;
|
||||
padding: 0.5em 1em;
|
||||
max-width: 20em;
|
||||
margin: 0.5em 0 1em 1em;
|
||||
}
|
||||
|
||||
#table-of-contents .caption {
|
||||
text-align: center;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
#table-of-contents ul {
|
||||
list-style: none;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
#table-of-contents ul ul {
|
||||
margin-left: 2em;
|
||||
}
|
||||
|
||||
#description .caption {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#synopsis {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.no-frame #synopsis {
|
||||
display: block;
|
||||
position: fixed;
|
||||
right: 0;
|
||||
height: 80%;
|
||||
top: 10%;
|
||||
padding: 0;
|
||||
max-width: 75%;
|
||||
}
|
||||
|
||||
#synopsis .caption {
|
||||
float: left;
|
||||
width: 29px;
|
||||
color: rgba(255,255,255,0);
|
||||
height: 110px;
|
||||
margin: 0;
|
||||
font-size: 1px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#synopsis p.caption.collapser {
|
||||
background: url(synopsis.png) no-repeat -64px -8px;
|
||||
}
|
||||
|
||||
#synopsis p.caption.expander {
|
||||
background: url(synopsis.png) no-repeat 0px -8px;
|
||||
}
|
||||
|
||||
#synopsis ul {
|
||||
height: 100%;
|
||||
overflow: auto;
|
||||
padding: 0.5em;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
#synopsis ul ul {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
#synopsis ul,
|
||||
#synopsis ul li.src {
|
||||
background-color: #faf9dc;
|
||||
white-space: nowrap;
|
||||
list-style: none;
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
/* @end */
|
||||
|
||||
/* @group Main Content */
|
||||
|
||||
#interface div.top { margin: 2em 0; }
|
||||
#interface h1 + div.top,
|
||||
#interface h2 + div.top,
|
||||
#interface h3 + div.top,
|
||||
#interface h4 + div.top,
|
||||
#interface h5 + div.top {
|
||||
margin-top: 1em;
|
||||
}
|
||||
#interface p.src .link {
|
||||
float: right;
|
||||
color: #919191;
|
||||
border-left: 1px solid #919191;
|
||||
background: #f0f0f0;
|
||||
padding: 0 0.5em 0.2em;
|
||||
margin: 0 -0.5em 0 0.5em;
|
||||
}
|
||||
|
||||
#interface td.src .link {
|
||||
float: right;
|
||||
color: #919191;
|
||||
border-left: 1px solid #919191;
|
||||
background: #f0f0f0;
|
||||
padding: 0 0.5em 0.2em;
|
||||
margin: 0 -0.5em 0 0.5em;
|
||||
}
|
||||
|
||||
#interface span.fixity {
|
||||
color: #919191;
|
||||
border-left: 1px solid #919191;
|
||||
padding: 0.2em 0.5em 0.2em 0.5em;
|
||||
margin: 0 -1em 0 1em;
|
||||
}
|
||||
|
||||
#interface span.rightedge {
|
||||
border-left: 1px solid #919191;
|
||||
padding: 0.2em 0 0.2em 0;
|
||||
margin: 0 0 0 1em;
|
||||
}
|
||||
|
||||
#interface table { border-spacing: 2px; }
|
||||
#interface td {
|
||||
vertical-align: top;
|
||||
padding-left: 0.5em;
|
||||
}
|
||||
#interface td.src {
|
||||
white-space: nowrap;
|
||||
}
|
||||
#interface td.doc p {
|
||||
margin: 0;
|
||||
}
|
||||
#interface td.doc p + p {
|
||||
margin-top: 0.8em;
|
||||
}
|
||||
|
||||
.subs dl {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.subs dt {
|
||||
float: left;
|
||||
clear: left;
|
||||
display: block;
|
||||
margin: 1px 0;
|
||||
}
|
||||
|
||||
.subs dd {
|
||||
float: right;
|
||||
width: 90%;
|
||||
display: block;
|
||||
padding-left: 0.5em;
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
||||
.subs dd.empty {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.subs dd p {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/* Render short-style data instances */
|
||||
.inst ul {
|
||||
height: 100%;
|
||||
padding: 0.5em;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.inst, .inst li {
|
||||
list-style: none;
|
||||
margin-left: 1em;
|
||||
}
|
||||
|
||||
.top p.src {
|
||||
border-top: 1px solid #ccc;
|
||||
}
|
||||
|
||||
.subs, .doc {
|
||||
/* use this selector for one level of indent */
|
||||
padding-left: 2em;
|
||||
}
|
||||
|
||||
.warning {
|
||||
color: red;
|
||||
}
|
||||
|
||||
.arguments {
|
||||
margin-top: -0.4em;
|
||||
}
|
||||
.arguments .caption {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.fields { padding-left: 1em; }
|
||||
|
||||
.fields .caption { display: none; }
|
||||
|
||||
.fields p { margin: 0 0; }
|
||||
|
||||
/* this seems bulky to me
|
||||
.methods, .constructors {
|
||||
background: #f8f8f8;
|
||||
border: 1px solid #eee;
|
||||
}
|
||||
*/
|
||||
|
||||
/* @end */
|
||||
|
||||
/* @group Auxillary Pages */
|
||||
|
||||
|
||||
.extension-list {
|
||||
list-style-type: none;
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
#mini {
|
||||
margin: 0 auto;
|
||||
padding: 0 1em 1em;
|
||||
}
|
||||
|
||||
#mini > * {
|
||||
font-size: 93%; /* 12pt */
|
||||
}
|
||||
|
||||
#mini #module-list .caption,
|
||||
#mini #module-header .caption {
|
||||
font-size: 125%; /* 15pt */
|
||||
}
|
||||
|
||||
#mini #interface h1,
|
||||
#mini #interface h2,
|
||||
#mini #interface h3,
|
||||
#mini #interface h4 {
|
||||
font-size: 109%; /* 13pt */
|
||||
margin: 1em 0 0;
|
||||
}
|
||||
|
||||
#mini #interface .top,
|
||||
#mini #interface .src {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
#mini #module-list ul {
|
||||
list-style: none;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
#alphabet ul {
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
margin: 0.5em 0 0;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#alphabet li {
|
||||
display: inline;
|
||||
margin: 0 0.25em;
|
||||
}
|
||||
|
||||
#alphabet a {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
#index .caption,
|
||||
#module-list .caption { font-size: 131%; /* 17pt */ }
|
||||
|
||||
#index table {
|
||||
margin-left: 2em;
|
||||
}
|
||||
|
||||
#index .src {
|
||||
font-weight: bold;
|
||||
}
|
||||
#index .alt {
|
||||
font-size: 77%; /* 10pt */
|
||||
font-style: italic;
|
||||
padding-left: 2em;
|
||||
}
|
||||
|
||||
#index td + td {
|
||||
padding-left: 1em;
|
||||
}
|
||||
|
||||
#module-list ul {
|
||||
list-style: none;
|
||||
margin: 0 0 0 2em;
|
||||
}
|
||||
|
||||
#module-list li {
|
||||
clear: right;
|
||||
}
|
||||
|
||||
#module-list span.collapser,
|
||||
#module-list span.expander {
|
||||
background-position: 0 0.3em;
|
||||
}
|
||||
|
||||
#module-list .package {
|
||||
float: right;
|
||||
}
|
||||
|
||||
/* @end */
|
||||
389
src/Ldap-Asn1-FromAsn1.html
Normal file
389
src/Ldap-Asn1-FromAsn1.html
Normal file
@ -0,0 +1,389 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<!-- Generated by HsColour, http://code.haskell.org/~malcolm/hscolour/ -->
|
||||
<title>src/Ldap/Asn1/FromAsn1.hs</title>
|
||||
<link type='text/css' rel='stylesheet' href='hscolour.css' />
|
||||
</head>
|
||||
<body>
|
||||
<pre><a name="line-1"></a><span class='hs-comment'>{-# LANGUAGE CPP #-}</span>
|
||||
<a name="line-2"></a><span class='hs-keyword'>module</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>FromAsn1</span>
|
||||
<a name="line-3"></a> <span class='hs-layout'>(</span> <span class='hs-conid'>FromAsn1</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-4"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Parser</span>
|
||||
<a name="line-5"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>parseAsn1</span>
|
||||
<a name="line-6"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>parse</span>
|
||||
<a name="line-7"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-8"></a> <span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-9"></a>
|
||||
<a name="line-10"></a><span class='hs-cpp'>#if __GLASGOW_HASKELL__ >= 710</span>
|
||||
<a name="line-11"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Applicative</span> <span class='hs-layout'>(</span><span class='hs-conid'>Alternative</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span><span class='hs-layout'>,</span> <span class='hs-varid'>liftA2</span><span class='hs-layout'>,</span> <span class='hs-varid'>optional</span><span class='hs-layout'>)</span>
|
||||
<a name="line-12"></a><span class='hs-cpp'>#else</span>
|
||||
<a name="line-13"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Applicative</span> <span class='hs-layout'>(</span><span class='hs-conid'>Applicative</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span><span class='hs-layout'>,</span> <span class='hs-conid'>Alternative</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span><span class='hs-layout'>,</span> <span class='hs-varid'>liftA2</span><span class='hs-layout'>,</span> <span class='hs-varid'>optional</span><span class='hs-layout'>)</span>
|
||||
<a name="line-14"></a><span class='hs-cpp'>#endif</span>
|
||||
<a name="line-15"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Monad</span> <span class='hs-layout'>(</span><span class='hs-conid'>MonadPlus</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span><span class='hs-layout'>,</span> <span class='hs-layout'>(</span><span class='hs-varop'>>=></span><span class='hs-layout'>)</span><span class='hs-layout'>,</span> <span class='hs-varid'>guard</span><span class='hs-layout'>)</span>
|
||||
<a name="line-16"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>ASN1</span><span class='hs-varop'>.</span><span class='hs-conid'>Types</span> <span class='hs-layout'>(</span><span class='hs-conid'>ASN1</span><span class='hs-layout'>)</span>
|
||||
<a name="line-17"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>ASN1</span><span class='hs-varop'>.</span><span class='hs-conid'>Types</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>Asn1</span>
|
||||
<a name="line-18"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Foldable</span> <span class='hs-layout'>(</span><span class='hs-varid'>asum</span><span class='hs-layout'>)</span>
|
||||
<a name="line-19"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>List</span><span class='hs-varop'>.</span><span class='hs-conid'>NonEmpty</span> <span class='hs-layout'>(</span><span class='hs-varid'>some1</span><span class='hs-layout'>)</span>
|
||||
<a name="line-20"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Text</span><span class='hs-varop'>.</span><span class='hs-conid'>Encoding</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>Text</span>
|
||||
<a name="line-21"></a>
|
||||
<a name="line-22"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Type</span>
|
||||
<a name="line-23"></a>
|
||||
<a name="line-24"></a><span class='hs-comment'>{-# ANN module "HLint: ignore Use const" #-}</span>
|
||||
<a name="line-25"></a><span class='hs-comment'>{-# ANN module "HLint: ignore Avoid lambda" #-}</span>
|
||||
<a name="line-26"></a>
|
||||
<a name="line-27"></a>
|
||||
<a name="line-28"></a><a name="FromAsn1"></a><span class='hs-keyword'>class</span> <span class='hs-conid'>FromAsn1</span> <span class='hs-varid'>a</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-29"></a> <span class='hs-varid'>fromAsn1</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Parser</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>ASN1</span><span class='hs-keyglyph'>]</span> <span class='hs-varid'>a</span>
|
||||
<a name="line-30"></a>
|
||||
<a name="line-31"></a><a name="instance%20FromAsn1%20(LdapMessage%20op)"></a><span class='hs-comment'>{- |
|
||||
<a name="line-32"></a>@
|
||||
<a name="line-33"></a>LDAPMessage ::= SEQUENCE {
|
||||
<a name="line-34"></a> messageID MessageID,
|
||||
<a name="line-35"></a> protocolOp CHOICE {
|
||||
<a name="line-36"></a> bindRequest BindRequest,
|
||||
<a name="line-37"></a> bindResponse BindResponse,
|
||||
<a name="line-38"></a> unbindRequest UnbindRequest,
|
||||
<a name="line-39"></a> searchRequest SearchRequest,
|
||||
<a name="line-40"></a> searchResEntry SearchResultEntry,
|
||||
<a name="line-41"></a> searchResDone SearchResultDone,
|
||||
<a name="line-42"></a> searchResRef SearchResultReference,
|
||||
<a name="line-43"></a> addRequest AddRequest,
|
||||
<a name="line-44"></a> addResponse AddResponse,
|
||||
<a name="line-45"></a> ... },
|
||||
<a name="line-46"></a> controls [0] Controls OPTIONAL }
|
||||
<a name="line-47"></a>@
|
||||
<a name="line-48"></a>-}</span>
|
||||
<a name="line-49"></a><a name="instance%20FromAsn1%20(LdapMessage%20op)"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>FromAsn1</span> <span class='hs-varid'>op</span> <span class='hs-keyglyph'>=></span> <span class='hs-conid'>FromAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>LdapMessage</span> <span class='hs-varid'>op</span><span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-50"></a> <span class='hs-varid'>fromAsn1</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-51"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Start</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Sequence</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-52"></a> <span class='hs-varid'>i</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>fromAsn1</span>
|
||||
<a name="line-53"></a> <span class='hs-varid'>op</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>fromAsn1</span>
|
||||
<a name="line-54"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>End</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Sequence</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-55"></a> <span class='hs-varid'>return</span> <span class='hs-layout'>(</span><span class='hs-conid'>LdapMessage</span> <span class='hs-varid'>i</span> <span class='hs-varid'>op</span> <span class='hs-conid'>Nothing</span><span class='hs-layout'>)</span>
|
||||
<a name="line-56"></a>
|
||||
<a name="line-57"></a><a name="instance%20FromAsn1%20Id"></a><span class='hs-comment'>{- |
|
||||
<a name="line-58"></a>@
|
||||
<a name="line-59"></a>MessageID ::= INTEGER (0 .. maxInt)
|
||||
<a name="line-60"></a>@
|
||||
<a name="line-61"></a>-}</span>
|
||||
<a name="line-62"></a><a name="instance%20FromAsn1%20Id"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>FromAsn1</span> <span class='hs-conid'>Id</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-63"></a> <span class='hs-varid'>fromAsn1</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-64"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>IntVal</span> <span class='hs-varid'>i</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-65"></a> <span class='hs-varid'>return</span> <span class='hs-layout'>(</span><span class='hs-conid'>Id</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>i</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-66"></a>
|
||||
<a name="line-67"></a><a name="instance%20FromAsn1%20LdapString"></a><span class='hs-comment'>{- |
|
||||
<a name="line-68"></a>@
|
||||
<a name="line-69"></a>LDAPString ::= OCTET STRING -- UTF-8 encoded,
|
||||
<a name="line-70"></a>@
|
||||
<a name="line-71"></a>-}</span>
|
||||
<a name="line-72"></a><a name="instance%20FromAsn1%20LdapString"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>FromAsn1</span> <span class='hs-conid'>LdapString</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-73"></a> <span class='hs-varid'>fromAsn1</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-74"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>OctetString</span> <span class='hs-varid'>s</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-75"></a> <span class='hs-keyword'>case</span> <span class='hs-conid'>Text</span><span class='hs-varop'>.</span><span class='hs-varid'>decodeUtf8'</span> <span class='hs-varid'>s</span> <span class='hs-keyword'>of</span>
|
||||
<a name="line-76"></a> <span class='hs-conid'>Right</span> <span class='hs-varid'>t</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>return</span> <span class='hs-layout'>(</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>t</span><span class='hs-layout'>)</span>
|
||||
<a name="line-77"></a> <span class='hs-conid'>Left</span> <span class='hs-keyword'>_</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>empty</span>
|
||||
<a name="line-78"></a>
|
||||
<a name="line-79"></a><a name="instance%20FromAsn1%20LdapOid"></a><span class='hs-comment'>{- |
|
||||
<a name="line-80"></a>@
|
||||
<a name="line-81"></a>LDAPOID ::= OCTET STRING -- Constrained to \<numericoid\>
|
||||
<a name="line-82"></a>@
|
||||
<a name="line-83"></a>-}</span>
|
||||
<a name="line-84"></a><a name="instance%20FromAsn1%20LdapOid"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>FromAsn1</span> <span class='hs-conid'>LdapOid</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-85"></a> <span class='hs-varid'>fromAsn1</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-86"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>OctetString</span> <span class='hs-varid'>s</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-87"></a> <span class='hs-varid'>return</span> <span class='hs-layout'>(</span><span class='hs-conid'>LdapOid</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span>
|
||||
<a name="line-88"></a>
|
||||
<a name="line-89"></a><a name="instance%20FromAsn1%20LdapDn"></a><span class='hs-comment'>{- |
|
||||
<a name="line-90"></a>@
|
||||
<a name="line-91"></a>LDAPDN ::= LDAPString
|
||||
<a name="line-92"></a>@
|
||||
<a name="line-93"></a>-}</span>
|
||||
<a name="line-94"></a><a name="instance%20FromAsn1%20LdapDn"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>FromAsn1</span> <span class='hs-conid'>LdapDn</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-95"></a> <span class='hs-varid'>fromAsn1</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>fmap</span> <span class='hs-conid'>LdapDn</span> <span class='hs-varid'>fromAsn1</span>
|
||||
<a name="line-96"></a>
|
||||
<a name="line-97"></a><a name="instance%20FromAsn1%20AttributeDescription"></a><span class='hs-comment'>{- |
|
||||
<a name="line-98"></a>@
|
||||
<a name="line-99"></a>AttributeDescription ::= LDAPString
|
||||
<a name="line-100"></a>@
|
||||
<a name="line-101"></a>-}</span>
|
||||
<a name="line-102"></a><a name="instance%20FromAsn1%20AttributeDescription"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>FromAsn1</span> <span class='hs-conid'>AttributeDescription</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-103"></a> <span class='hs-varid'>fromAsn1</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>fmap</span> <span class='hs-conid'>AttributeDescription</span> <span class='hs-varid'>fromAsn1</span>
|
||||
<a name="line-104"></a>
|
||||
<a name="line-105"></a><a name="instance%20FromAsn1%20AttributeValue"></a><span class='hs-comment'>{- |
|
||||
<a name="line-106"></a>@
|
||||
<a name="line-107"></a>AttributeValue ::= OCTET STRING
|
||||
<a name="line-108"></a>@
|
||||
<a name="line-109"></a>-}</span>
|
||||
<a name="line-110"></a><a name="instance%20FromAsn1%20AttributeValue"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>FromAsn1</span> <span class='hs-conid'>AttributeValue</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-111"></a> <span class='hs-varid'>fromAsn1</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-112"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>OctetString</span> <span class='hs-varid'>s</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-113"></a> <span class='hs-varid'>return</span> <span class='hs-layout'>(</span><span class='hs-conid'>AttributeValue</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span>
|
||||
<a name="line-114"></a>
|
||||
<a name="line-115"></a><a name="instance%20FromAsn1%20PartialAttribute"></a><span class='hs-comment'>{- |
|
||||
<a name="line-116"></a>@
|
||||
<a name="line-117"></a>PartialAttribute ::= SEQUENCE {
|
||||
<a name="line-118"></a> type AttributeDescription,
|
||||
<a name="line-119"></a> vals SET OF value AttributeValue }
|
||||
<a name="line-120"></a>@
|
||||
<a name="line-121"></a>-}</span>
|
||||
<a name="line-122"></a><a name="instance%20FromAsn1%20PartialAttribute"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>FromAsn1</span> <span class='hs-conid'>PartialAttribute</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-123"></a> <span class='hs-varid'>fromAsn1</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-124"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Start</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Sequence</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-125"></a> <span class='hs-varid'>d</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>fromAsn1</span>
|
||||
<a name="line-126"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Start</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Set</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-127"></a> <span class='hs-varid'>vs</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>many</span> <span class='hs-varid'>fromAsn1</span>
|
||||
<a name="line-128"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>End</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Set</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-129"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>End</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Sequence</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-130"></a> <span class='hs-varid'>return</span> <span class='hs-layout'>(</span><span class='hs-conid'>PartialAttribute</span> <span class='hs-varid'>d</span> <span class='hs-varid'>vs</span><span class='hs-layout'>)</span>
|
||||
<a name="line-131"></a>
|
||||
<a name="line-132"></a><a name="instance%20FromAsn1%20LdapResult"></a><span class='hs-comment'>{- |
|
||||
<a name="line-133"></a>@
|
||||
<a name="line-134"></a>LDAPResult ::= SEQUENCE {
|
||||
<a name="line-135"></a> resultCode ENUMERATED {
|
||||
<a name="line-136"></a> success (0),
|
||||
<a name="line-137"></a> operationsError (1),
|
||||
<a name="line-138"></a> protocolError (2),
|
||||
<a name="line-139"></a> timeLimitExceeded (3),
|
||||
<a name="line-140"></a> sizeLimitExceeded (4),
|
||||
<a name="line-141"></a> compareFalse (5),
|
||||
<a name="line-142"></a> compareTrue (6),
|
||||
<a name="line-143"></a> authMethodNotSupported (7),
|
||||
<a name="line-144"></a> strongerAuthRequired (8),
|
||||
<a name="line-145"></a> -- 9 reserved --
|
||||
<a name="line-146"></a> referral (10),
|
||||
<a name="line-147"></a> adminLimitExceeded (11),
|
||||
<a name="line-148"></a> unavailableCriticalExtension (12),
|
||||
<a name="line-149"></a> confidentialityRequired (13),
|
||||
<a name="line-150"></a> saslBindInProgress (14),
|
||||
<a name="line-151"></a> noSuchAttribute (16),
|
||||
<a name="line-152"></a> undefinedAttributeType (17),
|
||||
<a name="line-153"></a> inappropriateMatching (18),
|
||||
<a name="line-154"></a> constraintViolation (19),
|
||||
<a name="line-155"></a> attributeOrValueExists (20),
|
||||
<a name="line-156"></a> invalidAttributeSyntax (21),
|
||||
<a name="line-157"></a> -- 22-31 unused --
|
||||
<a name="line-158"></a> noSuchObject (32),
|
||||
<a name="line-159"></a> aliasProblem (33),
|
||||
<a name="line-160"></a> invalidDNSyntax (34),
|
||||
<a name="line-161"></a> -- 35 reserved for undefined isLeaf --
|
||||
<a name="line-162"></a> aliasDereferencingProblem (36),
|
||||
<a name="line-163"></a> -- 37-47 unused --
|
||||
<a name="line-164"></a> inappropriateAuthentication (48),
|
||||
<a name="line-165"></a> invalidCredentials (49),
|
||||
<a name="line-166"></a> insufficientAccessRights (50),
|
||||
<a name="line-167"></a> busy (51),
|
||||
<a name="line-168"></a> unavailable (52),
|
||||
<a name="line-169"></a> unwillingToPerform (53),
|
||||
<a name="line-170"></a> loopDetect (54),
|
||||
<a name="line-171"></a> -- 55-63 unused --
|
||||
<a name="line-172"></a> namingViolation (64),
|
||||
<a name="line-173"></a> objectClassViolation (65),
|
||||
<a name="line-174"></a> notAllowedOnNonLeaf (66),
|
||||
<a name="line-175"></a> notAllowedOnRDN (67),
|
||||
<a name="line-176"></a> entryAlreadyExists (68),
|
||||
<a name="line-177"></a> objectClassModsProhibited (69),
|
||||
<a name="line-178"></a> -- 70 reserved for CLDAP --
|
||||
<a name="line-179"></a> affectsMultipleDSAs (71),
|
||||
<a name="line-180"></a> -- 72-79 unused --
|
||||
<a name="line-181"></a> other (80),
|
||||
<a name="line-182"></a> ... },
|
||||
<a name="line-183"></a> matchedDN LDAPDN,
|
||||
<a name="line-184"></a> diagnosticMessage LDAPString,
|
||||
<a name="line-185"></a> referral [3] Referral OPTIONAL }
|
||||
<a name="line-186"></a>@
|
||||
<a name="line-187"></a>-}</span>
|
||||
<a name="line-188"></a><a name="instance%20FromAsn1%20LdapResult"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>FromAsn1</span> <span class='hs-conid'>LdapResult</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-189"></a> <span class='hs-varid'>fromAsn1</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-190"></a> <span class='hs-varid'>resultCode</span> <span class='hs-keyglyph'><-</span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-191"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Enumerated</span> <span class='hs-varid'>x</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-192"></a> <span class='hs-keyword'>case</span> <span class='hs-varid'>x</span> <span class='hs-keyword'>of</span>
|
||||
<a name="line-193"></a> <span class='hs-num'>0</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>Success</span>
|
||||
<a name="line-194"></a> <span class='hs-num'>1</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>OperationError</span>
|
||||
<a name="line-195"></a> <span class='hs-num'>2</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>ProtocolError</span>
|
||||
<a name="line-196"></a> <span class='hs-num'>3</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>TimeLimitExceeded</span>
|
||||
<a name="line-197"></a> <span class='hs-num'>4</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>SizeLimitExceeded</span>
|
||||
<a name="line-198"></a> <span class='hs-num'>5</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>CompareFalse</span>
|
||||
<a name="line-199"></a> <span class='hs-num'>6</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>CompareTrue</span>
|
||||
<a name="line-200"></a> <span class='hs-num'>7</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>AuthMethodNotSupported</span>
|
||||
<a name="line-201"></a> <span class='hs-num'>8</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>StrongerAuthRequired</span>
|
||||
<a name="line-202"></a> <span class='hs-num'>10</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>Referral</span>
|
||||
<a name="line-203"></a> <span class='hs-num'>11</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>AdminLimitExceeded</span>
|
||||
<a name="line-204"></a> <span class='hs-num'>12</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>UnavailableCriticalExtension</span>
|
||||
<a name="line-205"></a> <span class='hs-num'>13</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>ConfidentialityRequired</span>
|
||||
<a name="line-206"></a> <span class='hs-num'>14</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>SaslBindInProgress</span>
|
||||
<a name="line-207"></a> <span class='hs-num'>16</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>NoSuchAttribute</span>
|
||||
<a name="line-208"></a> <span class='hs-num'>17</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>UndefinedAttributeType</span>
|
||||
<a name="line-209"></a> <span class='hs-num'>18</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>InappropriateMatching</span>
|
||||
<a name="line-210"></a> <span class='hs-num'>19</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>ConstraintViolation</span>
|
||||
<a name="line-211"></a> <span class='hs-num'>20</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>AttributeOrValueExists</span>
|
||||
<a name="line-212"></a> <span class='hs-num'>21</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>InvalidAttributeSyntax</span>
|
||||
<a name="line-213"></a> <span class='hs-num'>32</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>NoSuchObject</span>
|
||||
<a name="line-214"></a> <span class='hs-num'>33</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>AliasProblem</span>
|
||||
<a name="line-215"></a> <span class='hs-num'>34</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>InvalidDNSyntax</span>
|
||||
<a name="line-216"></a> <span class='hs-num'>36</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>AliasDereferencingProblem</span>
|
||||
<a name="line-217"></a> <span class='hs-num'>48</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>InappropriateAuthentication</span>
|
||||
<a name="line-218"></a> <span class='hs-num'>49</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>InvalidCredentials</span>
|
||||
<a name="line-219"></a> <span class='hs-num'>50</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>InsufficientAccessRights</span>
|
||||
<a name="line-220"></a> <span class='hs-num'>51</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>Busy</span>
|
||||
<a name="line-221"></a> <span class='hs-num'>52</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>Unavailable</span>
|
||||
<a name="line-222"></a> <span class='hs-num'>53</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>UnwillingToPerform</span>
|
||||
<a name="line-223"></a> <span class='hs-num'>54</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>LoopDetect</span>
|
||||
<a name="line-224"></a> <span class='hs-num'>64</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>NamingViolation</span>
|
||||
<a name="line-225"></a> <span class='hs-num'>65</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>ObjectClassViolation</span>
|
||||
<a name="line-226"></a> <span class='hs-num'>66</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>NotAllowedOnNonLeaf</span>
|
||||
<a name="line-227"></a> <span class='hs-num'>67</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>NotAllowedOnRDN</span>
|
||||
<a name="line-228"></a> <span class='hs-num'>68</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>EntryAlreadyExists</span>
|
||||
<a name="line-229"></a> <span class='hs-num'>69</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>ObjectClassModsProhibited</span>
|
||||
<a name="line-230"></a> <span class='hs-num'>71</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>AffectsMultipleDSAs</span>
|
||||
<a name="line-231"></a> <span class='hs-num'>80</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-conid'>Other</span>
|
||||
<a name="line-232"></a> <span class='hs-keyword'>_</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>empty</span>
|
||||
<a name="line-233"></a> <span class='hs-varid'>matchedDn</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>fromAsn1</span>
|
||||
<a name="line-234"></a> <span class='hs-varid'>diagnosticMessage</span>
|
||||
<a name="line-235"></a> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>fromAsn1</span>
|
||||
<a name="line-236"></a> <span class='hs-varid'>referral</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>optional</span> <span class='hs-varop'>$</span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-237"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Start</span> <span class='hs-layout'>(</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Container</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Context</span> <span class='hs-num'>0</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-238"></a> <span class='hs-varid'>x</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>fromAsn1</span>
|
||||
<a name="line-239"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>End</span> <span class='hs-layout'>(</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Container</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Context</span> <span class='hs-num'>0</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-240"></a> <span class='hs-varid'>return</span> <span class='hs-varid'>x</span>
|
||||
<a name="line-241"></a> <span class='hs-varid'>return</span> <span class='hs-layout'>(</span><span class='hs-conid'>LdapResult</span> <span class='hs-varid'>resultCode</span> <span class='hs-varid'>matchedDn</span> <span class='hs-varid'>diagnosticMessage</span> <span class='hs-varid'>referral</span><span class='hs-layout'>)</span>
|
||||
<a name="line-242"></a>
|
||||
<a name="line-243"></a><a name="instance%20FromAsn1%20ReferralUris"></a><span class='hs-comment'>{- |
|
||||
<a name="line-244"></a>@
|
||||
<a name="line-245"></a>Referral ::= SEQUENCE SIZE (1..MAX) OF uri URI
|
||||
<a name="line-246"></a>@
|
||||
<a name="line-247"></a>-}</span>
|
||||
<a name="line-248"></a><a name="instance%20FromAsn1%20ReferralUris"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>FromAsn1</span> <span class='hs-conid'>ReferralUris</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-249"></a> <span class='hs-varid'>fromAsn1</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-250"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Start</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Sequence</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-251"></a> <span class='hs-varid'>xs</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>some1</span> <span class='hs-varid'>fromAsn1</span>
|
||||
<a name="line-252"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>End</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Sequence</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-253"></a> <span class='hs-varid'>return</span> <span class='hs-layout'>(</span><span class='hs-conid'>ReferralUris</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span>
|
||||
<a name="line-254"></a>
|
||||
<a name="line-255"></a><a name="instance%20FromAsn1%20Uri"></a><span class='hs-comment'>{- |
|
||||
<a name="line-256"></a>@
|
||||
<a name="line-257"></a>URI ::= LDAPString
|
||||
<a name="line-258"></a>@
|
||||
<a name="line-259"></a>-}</span>
|
||||
<a name="line-260"></a><a name="instance%20FromAsn1%20Uri"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>FromAsn1</span> <span class='hs-conid'>Uri</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-261"></a> <span class='hs-varid'>fromAsn1</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>fmap</span> <span class='hs-conid'>Uri</span> <span class='hs-varid'>fromAsn1</span>
|
||||
<a name="line-262"></a>
|
||||
<a name="line-263"></a><a name="instance%20FromAsn1%20ProtocolServerOp"></a><span class='hs-comment'>{- |
|
||||
<a name="line-264"></a>@
|
||||
<a name="line-265"></a>BindResponse ::= [APPLICATION 1] SEQUENCE {
|
||||
<a name="line-266"></a> COMPONENTS OF LDAPResult,
|
||||
<a name="line-267"></a> serverSaslCreds [7] OCTET STRING OPTIONAL }
|
||||
<a name="line-268"></a>@
|
||||
<a name="line-269"></a>
|
||||
<a name="line-270"></a>@
|
||||
<a name="line-271"></a>SearchResultEntry ::= [APPLICATION 4] SEQUENCE {
|
||||
<a name="line-272"></a> objectName LDAPDN,
|
||||
<a name="line-273"></a> attributes PartialAttributeList }
|
||||
<a name="line-274"></a>@
|
||||
<a name="line-275"></a>
|
||||
<a name="line-276"></a>@
|
||||
<a name="line-277"></a>SearchResultDone ::= [APPLICATION 5] LDAPResult
|
||||
<a name="line-278"></a>@
|
||||
<a name="line-279"></a>
|
||||
<a name="line-280"></a>@
|
||||
<a name="line-281"></a>ModifyResponse ::= [APPLICATION 7] LDAPResult
|
||||
<a name="line-282"></a>@
|
||||
<a name="line-283"></a>
|
||||
<a name="line-284"></a>@
|
||||
<a name="line-285"></a>AddResponse ::= [APPLICATION 9] LDAPResult
|
||||
<a name="line-286"></a>@
|
||||
<a name="line-287"></a>
|
||||
<a name="line-288"></a>@
|
||||
<a name="line-289"></a>DelResponse ::= [APPLICATION 11] LDAPResult
|
||||
<a name="line-290"></a>@
|
||||
<a name="line-291"></a>
|
||||
<a name="line-292"></a>@
|
||||
<a name="line-293"></a>CompareResponse ::= [APPLICATION 15] LDAPResult
|
||||
<a name="line-294"></a>@
|
||||
<a name="line-295"></a>-}</span>
|
||||
<a name="line-296"></a><a name="instance%20FromAsn1%20ProtocolServerOp"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>FromAsn1</span> <span class='hs-conid'>ProtocolServerOp</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-297"></a> <span class='hs-varid'>fromAsn1</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>asum</span>
|
||||
<a name="line-298"></a> <span class='hs-keyglyph'>[</span> <span class='hs-varid'>fmap</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>res</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>BindResponse</span> <span class='hs-varid'>res</span> <span class='hs-conid'>Nothing</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-varid'>app</span> <span class='hs-num'>1</span><span class='hs-layout'>)</span>
|
||||
<a name="line-299"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>fmap</span> <span class='hs-layout'>(</span><span class='hs-varid'>uncurry</span> <span class='hs-conid'>SearchResultEntry</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-varid'>app</span> <span class='hs-num'>4</span><span class='hs-layout'>)</span>
|
||||
<a name="line-300"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>fmap</span> <span class='hs-conid'>SearchResultDone</span> <span class='hs-layout'>(</span><span class='hs-varid'>app</span> <span class='hs-num'>5</span><span class='hs-layout'>)</span>
|
||||
<a name="line-301"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>fmap</span> <span class='hs-conid'>ModifyResponse</span> <span class='hs-layout'>(</span><span class='hs-varid'>app</span> <span class='hs-num'>7</span><span class='hs-layout'>)</span>
|
||||
<a name="line-302"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>fmap</span> <span class='hs-conid'>AddResponse</span> <span class='hs-layout'>(</span><span class='hs-varid'>app</span> <span class='hs-num'>9</span><span class='hs-layout'>)</span>
|
||||
<a name="line-303"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>fmap</span> <span class='hs-conid'>DeleteResponse</span> <span class='hs-layout'>(</span><span class='hs-varid'>app</span> <span class='hs-num'>11</span><span class='hs-layout'>)</span>
|
||||
<a name="line-304"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>fmap</span> <span class='hs-conid'>ModifyDnResponse</span> <span class='hs-layout'>(</span><span class='hs-varid'>app</span> <span class='hs-num'>13</span><span class='hs-layout'>)</span>
|
||||
<a name="line-305"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>fmap</span> <span class='hs-conid'>CompareResponse</span> <span class='hs-layout'>(</span><span class='hs-varid'>app</span> <span class='hs-num'>15</span><span class='hs-layout'>)</span>
|
||||
<a name="line-306"></a> <span class='hs-layout'>,</span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-307"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Start</span> <span class='hs-layout'>(</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Container</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Application</span> <span class='hs-num'>24</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-308"></a> <span class='hs-varid'>res</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>fromAsn1</span>
|
||||
<a name="line-309"></a> <span class='hs-varid'>name</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>optional</span> <span class='hs-varop'>$</span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-310"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Other</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Context</span> <span class='hs-num'>0</span> <span class='hs-varid'>s</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-311"></a> <span class='hs-varid'>return</span> <span class='hs-varid'>s</span>
|
||||
<a name="line-312"></a> <span class='hs-varid'>value</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>optional</span> <span class='hs-varop'>$</span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-313"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Other</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Context</span> <span class='hs-num'>1</span> <span class='hs-varid'>s</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-314"></a> <span class='hs-varid'>return</span> <span class='hs-varid'>s</span>
|
||||
<a name="line-315"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>End</span> <span class='hs-layout'>(</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Container</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Application</span> <span class='hs-num'>24</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-316"></a> <span class='hs-varid'>return</span> <span class='hs-layout'>(</span><span class='hs-conid'>ExtendedResponse</span> <span class='hs-varid'>res</span> <span class='hs-layout'>(</span><span class='hs-varid'>fmap</span> <span class='hs-conid'>LdapOid</span> <span class='hs-varid'>name</span><span class='hs-layout'>)</span> <span class='hs-varid'>value</span><span class='hs-layout'>)</span>
|
||||
<a name="line-317"></a> <span class='hs-keyglyph'>]</span>
|
||||
<a name="line-318"></a> <span class='hs-keyword'>where</span>
|
||||
<a name="line-319"></a> <span class='hs-varid'>app</span> <span class='hs-varid'>l</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-320"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Start</span> <span class='hs-layout'>(</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Container</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Application</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-321"></a> <span class='hs-varid'>guard</span> <span class='hs-layout'>(</span><span class='hs-varid'>x</span> <span class='hs-varop'>==</span> <span class='hs-varid'>l</span><span class='hs-layout'>)</span>
|
||||
<a name="line-322"></a> <span class='hs-varid'>res</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>fromAsn1</span>
|
||||
<a name="line-323"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>End</span> <span class='hs-layout'>(</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Container</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Application</span> <span class='hs-varid'>y</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-324"></a> <span class='hs-varid'>guard</span> <span class='hs-layout'>(</span><span class='hs-varid'>y</span> <span class='hs-varop'>==</span> <span class='hs-varid'>l</span><span class='hs-layout'>)</span>
|
||||
<a name="line-325"></a> <span class='hs-varid'>return</span> <span class='hs-varid'>res</span>
|
||||
<a name="line-326"></a>
|
||||
<a name="line-327"></a><a name="instance%20FromAsn1%20PartialAttributeList"></a><span class='hs-comment'>{- |
|
||||
<a name="line-328"></a>@
|
||||
<a name="line-329"></a>PartialAttributeList ::= SEQUENCE OF partialAttribute PartialAttribute
|
||||
<a name="line-330"></a>@
|
||||
<a name="line-331"></a>-}</span>
|
||||
<a name="line-332"></a><a name="instance%20FromAsn1%20PartialAttributeList"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>FromAsn1</span> <span class='hs-conid'>PartialAttributeList</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-333"></a> <span class='hs-varid'>fromAsn1</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-334"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Start</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Sequence</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-335"></a> <span class='hs-varid'>xs</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>many</span> <span class='hs-varid'>fromAsn1</span>
|
||||
<a name="line-336"></a> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>End</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Sequence</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>next</span>
|
||||
<a name="line-337"></a> <span class='hs-varid'>return</span> <span class='hs-layout'>(</span><span class='hs-conid'>PartialAttributeList</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span>
|
||||
<a name="line-338"></a>
|
||||
<a name="line-339"></a><a name="instance%20FromAsn1%20(a,%20b)"></a><span class='hs-keyword'>instance</span> <span class='hs-layout'>(</span><span class='hs-conid'>FromAsn1</span> <span class='hs-varid'>a</span><span class='hs-layout'>,</span> <span class='hs-conid'>FromAsn1</span> <span class='hs-varid'>b</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=></span> <span class='hs-conid'>FromAsn1</span> <span class='hs-layout'>(</span><span class='hs-varid'>a</span><span class='hs-layout'>,</span> <span class='hs-varid'>b</span><span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-340"></a> <span class='hs-varid'>fromAsn1</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftA2</span> <span class='hs-conid'>(,)</span> <span class='hs-varid'>fromAsn1</span> <span class='hs-varid'>fromAsn1</span>
|
||||
<a name="line-341"></a>
|
||||
<a name="line-342"></a>
|
||||
<a name="line-343"></a><a name="Parser"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>Parser</span> <span class='hs-varid'>s</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Parser</span> <span class='hs-layout'>{</span> <span class='hs-varid'>unParser</span> <span class='hs-keyglyph'>::</span> <span class='hs-varid'>s</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Maybe</span> <span class='hs-layout'>(</span><span class='hs-varid'>s</span><span class='hs-layout'>,</span> <span class='hs-varid'>a</span><span class='hs-layout'>)</span> <span class='hs-layout'>}</span>
|
||||
<a name="line-344"></a>
|
||||
<a name="line-345"></a><a name="instance%20Functor%20(Parser%20s)"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>Functor</span> <span class='hs-layout'>(</span><span class='hs-conid'>Parser</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-346"></a> <span class='hs-varid'>fmap</span> <span class='hs-varid'>f</span> <span class='hs-layout'>(</span><span class='hs-conid'>Parser</span> <span class='hs-varid'>g</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Parser</span> <span class='hs-layout'>(</span><span class='hs-varid'>fmap</span> <span class='hs-layout'>(</span><span class='hs-varid'>fmap</span> <span class='hs-varid'>f</span><span class='hs-layout'>)</span> <span class='hs-varop'>.</span> <span class='hs-varid'>g</span><span class='hs-layout'>)</span>
|
||||
<a name="line-347"></a>
|
||||
<a name="line-348"></a><a name="instance%20Applicative%20(Parser%20s)"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>Applicative</span> <span class='hs-layout'>(</span><span class='hs-conid'>Parser</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-349"></a> <span class='hs-varid'>pure</span> <span class='hs-varid'>x</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Parser</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>s</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>pure</span> <span class='hs-layout'>(</span><span class='hs-varid'>s</span><span class='hs-layout'>,</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-350"></a> <span class='hs-conid'>Parser</span> <span class='hs-varid'>mf</span> <span class='hs-varop'><*></span> <span class='hs-conid'>Parser</span> <span class='hs-varid'>mx</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Parser</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>s</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-351"></a> <span class='hs-layout'>(</span><span class='hs-varid'>s'</span><span class='hs-layout'>,</span> <span class='hs-varid'>f</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>mf</span> <span class='hs-varid'>s</span>
|
||||
<a name="line-352"></a> <span class='hs-layout'>(</span><span class='hs-varid'>s''</span><span class='hs-layout'>,</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>mx</span> <span class='hs-varid'>s'</span>
|
||||
<a name="line-353"></a> <span class='hs-varid'>pure</span> <span class='hs-layout'>(</span><span class='hs-varid'>s''</span><span class='hs-layout'>,</span> <span class='hs-varid'>f</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span>
|
||||
<a name="line-354"></a>
|
||||
<a name="line-355"></a><a name="instance%20Alternative%20(Parser%20s)"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>Alternative</span> <span class='hs-layout'>(</span><span class='hs-conid'>Parser</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-356"></a> <span class='hs-varid'>empty</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Parser</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-keyword'>_</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>empty</span><span class='hs-layout'>)</span>
|
||||
<a name="line-357"></a> <span class='hs-conid'>Parser</span> <span class='hs-varid'>ma</span> <span class='hs-varop'><|></span> <span class='hs-conid'>Parser</span> <span class='hs-varid'>mb</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-358"></a> <span class='hs-conid'>Parser</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>s</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>ma</span> <span class='hs-varid'>s</span> <span class='hs-varop'><|></span> <span class='hs-varid'>mb</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span>
|
||||
<a name="line-359"></a>
|
||||
<a name="line-360"></a><a name="instance%20Monad%20(Parser%20s)"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>Monad</span> <span class='hs-layout'>(</span><span class='hs-conid'>Parser</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-361"></a> <span class='hs-varid'>return</span> <span class='hs-varid'>x</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Parser</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>s</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>return</span> <span class='hs-layout'>(</span><span class='hs-varid'>s</span><span class='hs-layout'>,</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-362"></a> <span class='hs-conid'>Parser</span> <span class='hs-varid'>mx</span> <span class='hs-varop'>>>=</span> <span class='hs-varid'>k</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-363"></a> <span class='hs-conid'>Parser</span> <span class='hs-layout'>(</span><span class='hs-varid'>mx</span> <span class='hs-varop'>>=></span> <span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-varid'>s'</span><span class='hs-layout'>,</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>unParser</span> <span class='hs-layout'>(</span><span class='hs-varid'>k</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span> <span class='hs-varid'>s'</span><span class='hs-layout'>)</span>
|
||||
<a name="line-364"></a> <span class='hs-varid'>fail</span> <span class='hs-keyword'>_</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>empty</span>
|
||||
<a name="line-365"></a>
|
||||
<a name="line-366"></a><a name="instance%20MonadPlus%20(Parser%20s)"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>MonadPlus</span> <span class='hs-layout'>(</span><span class='hs-conid'>Parser</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-367"></a> <span class='hs-varid'>mzero</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Parser</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-keyword'>_</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>mzero</span><span class='hs-layout'>)</span>
|
||||
<a name="line-368"></a> <span class='hs-conid'>Parser</span> <span class='hs-varid'>ma</span> <span class='hs-varop'>`mplus`</span> <span class='hs-conid'>Parser</span> <span class='hs-varid'>mb</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-369"></a> <span class='hs-conid'>Parser</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>s</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>ma</span> <span class='hs-varid'>s</span> <span class='hs-varop'>`mplus`</span> <span class='hs-varid'>mb</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span>
|
||||
<a name="line-370"></a>
|
||||
<a name="line-371"></a><a name="parseAsn1"></a><span class='hs-definition'>parseAsn1</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>FromAsn1</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>=></span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>ASN1</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Maybe</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>[</span><span class='hs-conid'>ASN1</span><span class='hs-keyglyph'>]</span><span class='hs-layout'>,</span> <span class='hs-varid'>a</span><span class='hs-layout'>)</span>
|
||||
<a name="line-372"></a><span class='hs-definition'>parseAsn1</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>parse</span> <span class='hs-varid'>fromAsn1</span>
|
||||
<a name="line-373"></a>
|
||||
<a name="line-374"></a><a name="parse"></a><span class='hs-definition'>parse</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Parser</span> <span class='hs-varid'>s</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>s</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Maybe</span> <span class='hs-layout'>(</span><span class='hs-varid'>s</span><span class='hs-layout'>,</span> <span class='hs-varid'>a</span><span class='hs-layout'>)</span>
|
||||
<a name="line-375"></a><span class='hs-definition'>parse</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>unParser</span>
|
||||
<a name="line-376"></a>
|
||||
<a name="line-377"></a><a name="next"></a><span class='hs-definition'>next</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Parser</span> <span class='hs-keyglyph'>[</span><span class='hs-varid'>s</span><span class='hs-keyglyph'>]</span> <span class='hs-varid'>s</span>
|
||||
<a name="line-378"></a><span class='hs-definition'>next</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Parser</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>s</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyword'>case</span> <span class='hs-varid'>s</span> <span class='hs-keyword'>of</span> <span class='hs-conid'>[]</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Nothing</span><span class='hs-layout'>;</span> <span class='hs-varid'>x</span> <span class='hs-conop'>:</span> <span class='hs-varid'>xs</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Just</span> <span class='hs-layout'>(</span><span class='hs-varid'>xs</span><span class='hs-layout'>,</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
</pre></body>
|
||||
</html>
|
||||
432
src/Ldap-Asn1-ToAsn1.html
Normal file
432
src/Ldap-Asn1-ToAsn1.html
Normal file
@ -0,0 +1,432 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<!-- Generated by HsColour, http://code.haskell.org/~malcolm/hscolour/ -->
|
||||
<title>src/Ldap/Asn1/ToAsn1.hs</title>
|
||||
<link type='text/css' rel='stylesheet' href='hscolour.css' />
|
||||
</head>
|
||||
<body>
|
||||
<pre><a name="line-1"></a><span class='hs-keyword'>module</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>ToAsn1</span>
|
||||
<a name="line-2"></a> <span class='hs-layout'>(</span> <span class='hs-conid'>ToAsn1</span><span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span><span class='hs-layout'>)</span>
|
||||
<a name="line-3"></a> <span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-4"></a>
|
||||
<a name="line-5"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>ASN1</span><span class='hs-varop'>.</span><span class='hs-conid'>Types</span> <span class='hs-layout'>(</span><span class='hs-conid'>ASN1</span><span class='hs-layout'>,</span> <span class='hs-conid'>ASN1Class</span><span class='hs-layout'>,</span> <span class='hs-conid'>ASN1Tag</span><span class='hs-layout'>,</span> <span class='hs-conid'>ASN1ConstructionType</span><span class='hs-layout'>)</span>
|
||||
<a name="line-6"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>ASN1</span><span class='hs-varop'>.</span><span class='hs-conid'>Types</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>Asn1</span>
|
||||
<a name="line-7"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>ByteString</span> <span class='hs-layout'>(</span><span class='hs-conid'>ByteString</span><span class='hs-layout'>)</span>
|
||||
<a name="line-8"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Foldable</span> <span class='hs-layout'>(</span><span class='hs-varid'>fold</span><span class='hs-layout'>,</span> <span class='hs-varid'>foldMap</span><span class='hs-layout'>)</span>
|
||||
<a name="line-9"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>List</span><span class='hs-varop'>.</span><span class='hs-conid'>NonEmpty</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span><span class='hs-layout'>)</span>
|
||||
<a name="line-10"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Maybe</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span><span class='hs-layout'>,</span> <span class='hs-varid'>maybe</span><span class='hs-layout'>)</span>
|
||||
<a name="line-11"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Monoid</span> <span class='hs-layout'>(</span><span class='hs-conid'>Endo</span><span class='hs-layout'>(</span><span class='hs-conid'>Endo</span><span class='hs-layout'>)</span><span class='hs-layout'>,</span> <span class='hs-layout'>(</span><span class='hs-varop'><></span><span class='hs-layout'>)</span><span class='hs-layout'>,</span> <span class='hs-varid'>mempty</span><span class='hs-layout'>)</span>
|
||||
<a name="line-12"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Text</span><span class='hs-varop'>.</span><span class='hs-conid'>Encoding</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>Text</span>
|
||||
<a name="line-13"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Prelude</span> <span class='hs-layout'>(</span><span class='hs-conid'>Integer</span><span class='hs-layout'>,</span> <span class='hs-layout'>(</span><span class='hs-varop'>.</span><span class='hs-layout'>)</span><span class='hs-layout'>,</span> <span class='hs-varid'>fromIntegral</span><span class='hs-layout'>)</span>
|
||||
<a name="line-14"></a>
|
||||
<a name="line-15"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Type</span>
|
||||
<a name="line-16"></a>
|
||||
<a name="line-17"></a>
|
||||
<a name="line-18"></a><a name="ToAsn1"></a><span class='hs-keyword'>class</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-varid'>a</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-19"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-keyglyph'>::</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Endo</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>ASN1</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-20"></a>
|
||||
<a name="line-21"></a><a name="instance%20ToAsn1%20(LdapMessage%20op)"></a><span class='hs-comment'>{- |
|
||||
<a name="line-22"></a>@
|
||||
<a name="line-23"></a>LDAPMessage ::= SEQUENCE {
|
||||
<a name="line-24"></a> messageID MessageID,
|
||||
<a name="line-25"></a> protocolOp CHOICE {
|
||||
<a name="line-26"></a> bindRequest BindRequest,
|
||||
<a name="line-27"></a> bindResponse BindResponse,
|
||||
<a name="line-28"></a> unbindRequest UnbindRequest,
|
||||
<a name="line-29"></a> searchRequest SearchRequest,
|
||||
<a name="line-30"></a> searchResEntry SearchResultEntry,
|
||||
<a name="line-31"></a> searchResDone SearchResultDone,
|
||||
<a name="line-32"></a> searchResRef SearchResultReference,
|
||||
<a name="line-33"></a> addRequest AddRequest,
|
||||
<a name="line-34"></a> addResponse AddResponse,
|
||||
<a name="line-35"></a> ... },
|
||||
<a name="line-36"></a> controls [0] Controls OPTIONAL }
|
||||
<a name="line-37"></a>@
|
||||
<a name="line-38"></a>-}</span>
|
||||
<a name="line-39"></a><a name="instance%20ToAsn1%20(LdapMessage%20op)"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-varid'>op</span> <span class='hs-keyglyph'>=></span> <span class='hs-conid'>ToAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>LdapMessage</span> <span class='hs-varid'>op</span><span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-40"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>LdapMessage</span> <span class='hs-varid'>i</span> <span class='hs-varid'>op</span> <span class='hs-varid'>mc</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-41"></a> <span class='hs-varid'>sequence</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>i</span> <span class='hs-varop'><></span> <span class='hs-varid'>toAsn1</span> <span class='hs-varid'>op</span> <span class='hs-varop'><></span> <span class='hs-varid'>maybe</span> <span class='hs-varid'>mempty</span> <span class='hs-layout'>(</span><span class='hs-varid'>context</span> <span class='hs-num'>0</span> <span class='hs-varop'>.</span> <span class='hs-varid'>toAsn1</span><span class='hs-layout'>)</span> <span class='hs-varid'>mc</span><span class='hs-layout'>)</span>
|
||||
<a name="line-42"></a>
|
||||
<a name="line-43"></a><a name="instance%20ToAsn1%20Id"></a><span class='hs-comment'>{- |
|
||||
<a name="line-44"></a>@
|
||||
<a name="line-45"></a>MessageID ::= INTEGER (0 .. maxInt)
|
||||
<a name="line-46"></a>@
|
||||
<a name="line-47"></a>-}</span>
|
||||
<a name="line-48"></a><a name="instance%20ToAsn1%20Id"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>Id</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-49"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>Id</span> <span class='hs-varid'>i</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>single</span> <span class='hs-layout'>(</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>IntVal</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>i</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-50"></a>
|
||||
<a name="line-51"></a><a name="instance%20ToAsn1%20LdapString"></a><span class='hs-comment'>{- |
|
||||
<a name="line-52"></a>@
|
||||
<a name="line-53"></a>LDAPString ::= OCTET STRING -- UTF-8 encoded
|
||||
<a name="line-54"></a>@
|
||||
<a name="line-55"></a>-}</span>
|
||||
<a name="line-56"></a><a name="instance%20ToAsn1%20LdapString"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>LdapString</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-57"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>single</span> <span class='hs-layout'>(</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>OctetString</span> <span class='hs-layout'>(</span><span class='hs-conid'>Text</span><span class='hs-varop'>.</span><span class='hs-varid'>encodeUtf8</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-58"></a>
|
||||
<a name="line-59"></a><a name="instance%20ToAsn1%20LdapOid"></a><span class='hs-comment'>{- |
|
||||
<a name="line-60"></a>@
|
||||
<a name="line-61"></a>LDAPOID ::= OCTET STRING -- Constrained to \<numericoid\>
|
||||
<a name="line-62"></a>@
|
||||
<a name="line-63"></a>-}</span>
|
||||
<a name="line-64"></a><a name="instance%20ToAsn1%20LdapOid"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>LdapOid</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-65"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>LdapOid</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>single</span> <span class='hs-layout'>(</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>OctetString</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span>
|
||||
<a name="line-66"></a>
|
||||
<a name="line-67"></a><a name="instance%20ToAsn1%20LdapDn"></a><span class='hs-comment'>{- |
|
||||
<a name="line-68"></a>@
|
||||
<a name="line-69"></a>LDAPDN ::= LDAPString -- Constrained to \<distinguishedName\>
|
||||
<a name="line-70"></a>@
|
||||
<a name="line-71"></a>-}</span>
|
||||
<a name="line-72"></a><a name="instance%20ToAsn1%20LdapDn"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>LdapDn</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-73"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>LdapDn</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>toAsn1</span> <span class='hs-varid'>s</span>
|
||||
<a name="line-74"></a>
|
||||
<a name="line-75"></a><a name="instance%20ToAsn1%20RelativeLdapDn"></a><span class='hs-comment'>{- |
|
||||
<a name="line-76"></a>@
|
||||
<a name="line-77"></a>RelativeLDAPDN ::= LDAPString -- Constrained to \<name-component\>
|
||||
<a name="line-78"></a>@
|
||||
<a name="line-79"></a>-}</span>
|
||||
<a name="line-80"></a><a name="instance%20ToAsn1%20RelativeLdapDn"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>RelativeLdapDn</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-81"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>RelativeLdapDn</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>toAsn1</span> <span class='hs-varid'>s</span>
|
||||
<a name="line-82"></a>
|
||||
<a name="line-83"></a><a name="instance%20ToAsn1%20AttributeDescription"></a><span class='hs-comment'>{- |
|
||||
<a name="line-84"></a>@
|
||||
<a name="line-85"></a>AttributeDescription ::= LDAPString
|
||||
<a name="line-86"></a>@
|
||||
<a name="line-87"></a>-}</span>
|
||||
<a name="line-88"></a><a name="instance%20ToAsn1%20AttributeDescription"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>AttributeDescription</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-89"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>AttributeDescription</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>toAsn1</span> <span class='hs-varid'>s</span>
|
||||
<a name="line-90"></a>
|
||||
<a name="line-91"></a><a name="instance%20ToAsn1%20AttributeValue"></a><span class='hs-comment'>{- |
|
||||
<a name="line-92"></a>@
|
||||
<a name="line-93"></a>AttributeValue ::= OCTET STRING
|
||||
<a name="line-94"></a>@
|
||||
<a name="line-95"></a>-}</span>
|
||||
<a name="line-96"></a><a name="instance%20ToAsn1%20AttributeValue"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>AttributeValue</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-97"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>AttributeValue</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>single</span> <span class='hs-layout'>(</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>OctetString</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span>
|
||||
<a name="line-98"></a>
|
||||
<a name="line-99"></a><a name="instance%20ToAsn1%20AttributeValueAssertion"></a><span class='hs-comment'>{- |
|
||||
<a name="line-100"></a>@
|
||||
<a name="line-101"></a>AttributeValueAssertion ::= SEQUENCE {
|
||||
<a name="line-102"></a> attributeDesc AttributeDescription,
|
||||
<a name="line-103"></a> assertionValue AssertionValue }
|
||||
<a name="line-104"></a>@
|
||||
<a name="line-105"></a>-}</span>
|
||||
<a name="line-106"></a><a name="instance%20ToAsn1%20AttributeValueAssertion"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>AttributeValueAssertion</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-107"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>AttributeValueAssertion</span> <span class='hs-varid'>d</span> <span class='hs-varid'>v</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>toAsn1</span> <span class='hs-varid'>d</span> <span class='hs-varop'><></span> <span class='hs-varid'>toAsn1</span> <span class='hs-varid'>v</span>
|
||||
<a name="line-108"></a>
|
||||
<a name="line-109"></a><a name="instance%20ToAsn1%20AssertionValue"></a><span class='hs-comment'>{- |
|
||||
<a name="line-110"></a>@
|
||||
<a name="line-111"></a>AssertionValue ::= OCTET STRING
|
||||
<a name="line-112"></a>@
|
||||
<a name="line-113"></a>-}</span>
|
||||
<a name="line-114"></a><a name="instance%20ToAsn1%20AssertionValue"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>AssertionValue</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-115"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>AssertionValue</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>single</span> <span class='hs-layout'>(</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>OctetString</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span>
|
||||
<a name="line-116"></a>
|
||||
<a name="line-117"></a>
|
||||
<a name="line-118"></a><a name="instance%20ToAsn1%20PartialAttribute"></a><span class='hs-comment'>{- |
|
||||
<a name="line-119"></a>@
|
||||
<a name="line-120"></a>PartialAttribute ::= SEQUENCE {
|
||||
<a name="line-121"></a> type AttributeDescription,
|
||||
<a name="line-122"></a> vals SET OF value AttributeValue }
|
||||
<a name="line-123"></a>@
|
||||
<a name="line-124"></a>-}</span>
|
||||
<a name="line-125"></a><a name="instance%20ToAsn1%20PartialAttribute"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>PartialAttribute</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-126"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>PartialAttribute</span> <span class='hs-varid'>d</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>sequence</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>d</span> <span class='hs-varop'><></span> <span class='hs-varid'>set</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-127"></a>
|
||||
<a name="line-128"></a><a name="instance%20ToAsn1%20Attribute"></a><span class='hs-comment'>{- |
|
||||
<a name="line-129"></a>@
|
||||
<a name="line-130"></a>Attribute ::= PartialAttribute(WITH COMPONENTS {
|
||||
<a name="line-131"></a> ...,
|
||||
<a name="line-132"></a> vals (SIZE(1..MAX))})
|
||||
<a name="line-133"></a>@
|
||||
<a name="line-134"></a>-}</span>
|
||||
<a name="line-135"></a><a name="instance%20ToAsn1%20Attribute"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>Attribute</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-136"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>Attribute</span> <span class='hs-varid'>d</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>sequence</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>d</span> <span class='hs-varop'><></span> <span class='hs-varid'>set</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-137"></a>
|
||||
<a name="line-138"></a><a name="instance%20ToAsn1%20MatchingRuleId"></a><span class='hs-comment'>{- |
|
||||
<a name="line-139"></a>@
|
||||
<a name="line-140"></a>MatchingRuleId ::= LDAPString
|
||||
<a name="line-141"></a>@
|
||||
<a name="line-142"></a>-}</span>
|
||||
<a name="line-143"></a><a name="instance%20ToAsn1%20MatchingRuleId"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>MatchingRuleId</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-144"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>MatchingRuleId</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>toAsn1</span> <span class='hs-varid'>s</span>
|
||||
<a name="line-145"></a>
|
||||
<a name="line-146"></a><a name="instance%20ToAsn1%20Controls"></a><span class='hs-comment'>{- |
|
||||
<a name="line-147"></a>@
|
||||
<a name="line-148"></a>Controls ::= SEQUENCE OF control Control
|
||||
<a name="line-149"></a>@
|
||||
<a name="line-150"></a>-}</span>
|
||||
<a name="line-151"></a><a name="instance%20ToAsn1%20Controls"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>Controls</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-152"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>Controls</span> <span class='hs-varid'>cs</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>sequence</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>cs</span><span class='hs-layout'>)</span>
|
||||
<a name="line-153"></a>
|
||||
<a name="line-154"></a><a name="instance%20ToAsn1%20Control"></a><span class='hs-comment'>{- |
|
||||
<a name="line-155"></a>@
|
||||
<a name="line-156"></a>Control ::= SEQUENCE {
|
||||
<a name="line-157"></a> controlType LDAPOID,
|
||||
<a name="line-158"></a> criticality BOOLEAN DEFAULT FALSE,
|
||||
<a name="line-159"></a> controlValue OCTET STRING OPTIONAL }
|
||||
<a name="line-160"></a>@
|
||||
<a name="line-161"></a>-}</span>
|
||||
<a name="line-162"></a><a name="instance%20ToAsn1%20Control"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>Control</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-163"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>Control</span> <span class='hs-varid'>t</span> <span class='hs-varid'>c</span> <span class='hs-varid'>v</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-164"></a> <span class='hs-varid'>sequence</span> <span class='hs-layout'>(</span><span class='hs-varid'>fold</span>
|
||||
<a name="line-165"></a> <span class='hs-keyglyph'>[</span> <span class='hs-varid'>toAsn1</span> <span class='hs-varid'>t</span>
|
||||
<a name="line-166"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>single</span> <span class='hs-layout'>(</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Boolean</span> <span class='hs-varid'>c</span><span class='hs-layout'>)</span>
|
||||
<a name="line-167"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>maybe</span> <span class='hs-varid'>mempty</span> <span class='hs-layout'>(</span><span class='hs-varid'>single</span> <span class='hs-varop'>.</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>OctetString</span><span class='hs-layout'>)</span> <span class='hs-varid'>v</span>
|
||||
<a name="line-168"></a> <span class='hs-keyglyph'>]</span><span class='hs-layout'>)</span>
|
||||
<a name="line-169"></a>
|
||||
<a name="line-170"></a><a name="instance%20ToAsn1%20ProtocolClientOp"></a><span class='hs-comment'>{- |
|
||||
<a name="line-171"></a>@
|
||||
<a name="line-172"></a>BindRequest ::= [APPLICATION 0] SEQUENCE {
|
||||
<a name="line-173"></a> version INTEGER (1 .. 127),
|
||||
<a name="line-174"></a> name LDAPDN,
|
||||
<a name="line-175"></a> authentication AuthenticationChoice }
|
||||
<a name="line-176"></a>@
|
||||
<a name="line-177"></a>
|
||||
<a name="line-178"></a>@
|
||||
<a name="line-179"></a>UnbindRequest ::= [APPLICATION 2] NULL
|
||||
<a name="line-180"></a>@
|
||||
<a name="line-181"></a>
|
||||
<a name="line-182"></a>@
|
||||
<a name="line-183"></a>SearchRequest ::= [APPLICATION 3] SEQUENCE {
|
||||
<a name="line-184"></a> baseObject LDAPDN,
|
||||
<a name="line-185"></a> scope ENUMERATED {
|
||||
<a name="line-186"></a> baseObject (0),
|
||||
<a name="line-187"></a> singleLevel (1),
|
||||
<a name="line-188"></a> wholeSubtree (2),
|
||||
<a name="line-189"></a> ... },
|
||||
<a name="line-190"></a> derefAliases ENUMERATED {
|
||||
<a name="line-191"></a> neverDerefAliases (0),
|
||||
<a name="line-192"></a> derefInSearching (1),
|
||||
<a name="line-193"></a> derefFindingBaseObj (2),
|
||||
<a name="line-194"></a> derefAlways (3) },
|
||||
<a name="line-195"></a> sizeLimit INTEGER (0 .. maxInt),
|
||||
<a name="line-196"></a> timeLimit INTEGER (0 .. maxInt),
|
||||
<a name="line-197"></a> typesOnly BOOLEAN,
|
||||
<a name="line-198"></a> filter Filter,
|
||||
<a name="line-199"></a> attributes AttributeSelection }
|
||||
<a name="line-200"></a>@
|
||||
<a name="line-201"></a>
|
||||
<a name="line-202"></a>@
|
||||
<a name="line-203"></a>ModifyRequest ::= [APPLICATION 6] SEQUENCE {
|
||||
<a name="line-204"></a> object LDAPDN,
|
||||
<a name="line-205"></a> changes SEQUENCE OF change SEQUENCE {
|
||||
<a name="line-206"></a> operation ENUMERATED {
|
||||
<a name="line-207"></a> add (0),
|
||||
<a name="line-208"></a> delete (1),
|
||||
<a name="line-209"></a> replace (2),
|
||||
<a name="line-210"></a> ... },
|
||||
<a name="line-211"></a> modification PartialAttribute } }
|
||||
<a name="line-212"></a>@
|
||||
<a name="line-213"></a>
|
||||
<a name="line-214"></a>@
|
||||
<a name="line-215"></a>AddRequest ::= [APPLICATION 8] SEQUENCE {
|
||||
<a name="line-216"></a> entry LDAPDN,
|
||||
<a name="line-217"></a> attributes AttributeList }
|
||||
<a name="line-218"></a>@
|
||||
<a name="line-219"></a>
|
||||
<a name="line-220"></a>@
|
||||
<a name="line-221"></a>DelRequest ::= [APPLICATION 10] LDAPDN
|
||||
<a name="line-222"></a>@
|
||||
<a name="line-223"></a>
|
||||
<a name="line-224"></a>@
|
||||
<a name="line-225"></a>ModifyDNRequest ::= [APPLICATION 12] SEQUENCE {
|
||||
<a name="line-226"></a> entry LDAPDN,
|
||||
<a name="line-227"></a> newrdn RelativeLDAPDN,
|
||||
<a name="line-228"></a> deleteoldrdn BOOLEAN,
|
||||
<a name="line-229"></a> newSuperior [0] LDAPDN OPTIONAL }
|
||||
<a name="line-230"></a>@
|
||||
<a name="line-231"></a>
|
||||
<a name="line-232"></a>@
|
||||
<a name="line-233"></a>CompareRequest ::= [APPLICATION 14] SEQUENCE {
|
||||
<a name="line-234"></a> entry LDAPDN,
|
||||
<a name="line-235"></a> ava AttributeValueAssertion }
|
||||
<a name="line-236"></a>@
|
||||
<a name="line-237"></a>
|
||||
<a name="line-238"></a>@
|
||||
<a name="line-239"></a>ExtendedRequest ::= [APPLICATION 23] SEQUENCE {
|
||||
<a name="line-240"></a> requestName [0] LDAPOID,
|
||||
<a name="line-241"></a> requestValue [1] OCTET STRING OPTIONAL }
|
||||
<a name="line-242"></a>@
|
||||
<a name="line-243"></a>-}</span>
|
||||
<a name="line-244"></a><a name="instance%20ToAsn1%20ProtocolClientOp"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>ProtocolClientOp</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-245"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>BindRequest</span> <span class='hs-varid'>v</span> <span class='hs-varid'>n</span> <span class='hs-varid'>a</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-246"></a> <span class='hs-varid'>application</span> <span class='hs-num'>0</span> <span class='hs-layout'>(</span><span class='hs-varid'>single</span> <span class='hs-layout'>(</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>IntVal</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>v</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-varop'><></span> <span class='hs-varid'>toAsn1</span> <span class='hs-varid'>n</span> <span class='hs-varop'><></span> <span class='hs-varid'>toAsn1</span> <span class='hs-varid'>a</span><span class='hs-layout'>)</span>
|
||||
<a name="line-247"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-conid'>UnbindRequest</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-248"></a> <span class='hs-varid'>other</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Application</span> <span class='hs-num'>2</span> <span class='hs-varid'>mempty</span>
|
||||
<a name="line-249"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>SearchRequest</span> <span class='hs-varid'>bo</span> <span class='hs-varid'>s</span> <span class='hs-varid'>da</span> <span class='hs-varid'>sl</span> <span class='hs-varid'>tl</span> <span class='hs-varid'>to</span> <span class='hs-varid'>f</span> <span class='hs-varid'>a</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-250"></a> <span class='hs-varid'>application</span> <span class='hs-num'>3</span> <span class='hs-layout'>(</span><span class='hs-varid'>fold</span>
|
||||
<a name="line-251"></a> <span class='hs-keyglyph'>[</span> <span class='hs-varid'>toAsn1</span> <span class='hs-varid'>bo</span>
|
||||
<a name="line-252"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>enum</span> <span class='hs-varid'>s'</span>
|
||||
<a name="line-253"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>enum</span> <span class='hs-varid'>da'</span>
|
||||
<a name="line-254"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>single</span> <span class='hs-layout'>(</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>IntVal</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>sl</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-255"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>single</span> <span class='hs-layout'>(</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>IntVal</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>tl</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-256"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>single</span> <span class='hs-layout'>(</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Boolean</span> <span class='hs-varid'>to</span><span class='hs-layout'>)</span>
|
||||
<a name="line-257"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>toAsn1</span> <span class='hs-varid'>f</span>
|
||||
<a name="line-258"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>toAsn1</span> <span class='hs-varid'>a</span>
|
||||
<a name="line-259"></a> <span class='hs-keyglyph'>]</span><span class='hs-layout'>)</span>
|
||||
<a name="line-260"></a> <span class='hs-keyword'>where</span>
|
||||
<a name="line-261"></a> <span class='hs-varid'>s'</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>case</span> <span class='hs-varid'>s</span> <span class='hs-keyword'>of</span>
|
||||
<a name="line-262"></a> <span class='hs-conid'>BaseObject</span> <span class='hs-keyglyph'>-></span> <span class='hs-num'>0</span>
|
||||
<a name="line-263"></a> <span class='hs-conid'>SingleLevel</span> <span class='hs-keyglyph'>-></span> <span class='hs-num'>1</span>
|
||||
<a name="line-264"></a> <span class='hs-conid'>WholeSubtree</span> <span class='hs-keyglyph'>-></span> <span class='hs-num'>2</span>
|
||||
<a name="line-265"></a> <span class='hs-varid'>da'</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>case</span> <span class='hs-varid'>da</span> <span class='hs-keyword'>of</span>
|
||||
<a name="line-266"></a> <span class='hs-conid'>NeverDerefAliases</span> <span class='hs-keyglyph'>-></span> <span class='hs-num'>0</span>
|
||||
<a name="line-267"></a> <span class='hs-conid'>DerefInSearching</span> <span class='hs-keyglyph'>-></span> <span class='hs-num'>1</span>
|
||||
<a name="line-268"></a> <span class='hs-conid'>DerefFindingBaseObject</span> <span class='hs-keyglyph'>-></span> <span class='hs-num'>2</span>
|
||||
<a name="line-269"></a> <span class='hs-conid'>DerefAlways</span> <span class='hs-keyglyph'>-></span> <span class='hs-num'>3</span>
|
||||
<a name="line-270"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>ModifyRequest</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-271"></a> <span class='hs-varid'>application</span> <span class='hs-num'>6</span> <span class='hs-layout'>(</span><span class='hs-varid'>fold</span>
|
||||
<a name="line-272"></a> <span class='hs-keyglyph'>[</span> <span class='hs-varid'>toAsn1</span> <span class='hs-varid'>dn</span>
|
||||
<a name="line-273"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>sequence</span> <span class='hs-layout'>(</span><span class='hs-varid'>foldMap</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-varid'>op</span><span class='hs-layout'>,</span> <span class='hs-varid'>pa</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>sequence</span> <span class='hs-layout'>(</span><span class='hs-varid'>enum</span> <span class='hs-layout'>(</span><span class='hs-keyword'>case</span> <span class='hs-varid'>op</span> <span class='hs-keyword'>of</span>
|
||||
<a name="line-274"></a> <span class='hs-conid'>Add</span> <span class='hs-keyglyph'>-></span> <span class='hs-num'>0</span>
|
||||
<a name="line-275"></a> <span class='hs-conid'>Delete</span> <span class='hs-keyglyph'>-></span> <span class='hs-num'>1</span>
|
||||
<a name="line-276"></a> <span class='hs-conid'>Replace</span> <span class='hs-keyglyph'>-></span> <span class='hs-num'>2</span><span class='hs-layout'>)</span> <span class='hs-varop'><></span> <span class='hs-varid'>toAsn1</span> <span class='hs-varid'>pa</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span>
|
||||
<a name="line-277"></a> <span class='hs-keyglyph'>]</span><span class='hs-layout'>)</span>
|
||||
<a name="line-278"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>AddRequest</span> <span class='hs-varid'>dn</span> <span class='hs-keyword'>as</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-279"></a> <span class='hs-varid'>application</span> <span class='hs-num'>8</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>dn</span> <span class='hs-varop'><></span> <span class='hs-varid'>toAsn1</span> <span class='hs-keyword'>as</span><span class='hs-layout'>)</span>
|
||||
<a name="line-280"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>DeleteRequest</span> <span class='hs-layout'>(</span><span class='hs-conid'>LdapDn</span> <span class='hs-layout'>(</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-281"></a> <span class='hs-varid'>other</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Application</span> <span class='hs-num'>10</span> <span class='hs-layout'>(</span><span class='hs-conid'>Text</span><span class='hs-varop'>.</span><span class='hs-varid'>encodeUtf8</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span>
|
||||
<a name="line-282"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>ModifyDnRequest</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>rdn</span> <span class='hs-varid'>del</span> <span class='hs-varid'>new</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-283"></a> <span class='hs-varid'>application</span> <span class='hs-num'>12</span> <span class='hs-layout'>(</span><span class='hs-varid'>fold</span>
|
||||
<a name="line-284"></a> <span class='hs-keyglyph'>[</span> <span class='hs-varid'>toAsn1</span> <span class='hs-varid'>dn</span>
|
||||
<a name="line-285"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>toAsn1</span> <span class='hs-varid'>rdn</span>
|
||||
<a name="line-286"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>single</span> <span class='hs-layout'>(</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Boolean</span> <span class='hs-varid'>del</span><span class='hs-layout'>)</span>
|
||||
<a name="line-287"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>maybe</span> <span class='hs-varid'>mempty</span>
|
||||
<a name="line-288"></a> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>LdapDn</span> <span class='hs-layout'>(</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>dn'</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>other</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Context</span> <span class='hs-num'>0</span> <span class='hs-layout'>(</span><span class='hs-conid'>Text</span><span class='hs-varop'>.</span><span class='hs-varid'>encodeUtf8</span> <span class='hs-varid'>dn'</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-289"></a> <span class='hs-varid'>new</span>
|
||||
<a name="line-290"></a> <span class='hs-keyglyph'>]</span><span class='hs-layout'>)</span>
|
||||
<a name="line-291"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>CompareRequest</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>av</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-292"></a> <span class='hs-varid'>application</span> <span class='hs-num'>14</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>dn</span> <span class='hs-varop'><></span> <span class='hs-varid'>sequence</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>av</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-293"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>ExtendedRequest</span> <span class='hs-layout'>(</span><span class='hs-conid'>LdapOid</span> <span class='hs-varid'>oid</span><span class='hs-layout'>)</span> <span class='hs-varid'>mv</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-294"></a> <span class='hs-varid'>application</span> <span class='hs-num'>23</span> <span class='hs-layout'>(</span><span class='hs-varid'>fold</span>
|
||||
<a name="line-295"></a> <span class='hs-keyglyph'>[</span> <span class='hs-varid'>other</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Context</span> <span class='hs-num'>0</span> <span class='hs-varid'>oid</span>
|
||||
<a name="line-296"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>maybe</span> <span class='hs-varid'>mempty</span> <span class='hs-layout'>(</span><span class='hs-varid'>other</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Context</span> <span class='hs-num'>1</span><span class='hs-layout'>)</span> <span class='hs-varid'>mv</span>
|
||||
<a name="line-297"></a> <span class='hs-keyglyph'>]</span><span class='hs-layout'>)</span>
|
||||
<a name="line-298"></a>
|
||||
<a name="line-299"></a><a name="instance%20ToAsn1%20AuthenticationChoice"></a><span class='hs-comment'>{- |
|
||||
<a name="line-300"></a>@
|
||||
<a name="line-301"></a>AuthenticationChoice ::= CHOICE {
|
||||
<a name="line-302"></a> simple [0] OCTET STRING,
|
||||
<a name="line-303"></a> ... }
|
||||
<a name="line-304"></a>@
|
||||
<a name="line-305"></a>-}</span>
|
||||
<a name="line-306"></a><a name="instance%20ToAsn1%20AuthenticationChoice"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>AuthenticationChoice</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-307"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>Simple</span> <span class='hs-varid'>s</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>other</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Context</span> <span class='hs-num'>0</span> <span class='hs-varid'>s</span>
|
||||
<a name="line-308"></a>
|
||||
<a name="line-309"></a><a name="instance%20ToAsn1%20AttributeSelection"></a><span class='hs-comment'>{- |
|
||||
<a name="line-310"></a>@
|
||||
<a name="line-311"></a>AttributeSelection ::= SEQUENCE OF selector LDAPString
|
||||
<a name="line-312"></a>@
|
||||
<a name="line-313"></a>-}</span>
|
||||
<a name="line-314"></a><a name="instance%20ToAsn1%20AttributeSelection"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>AttributeSelection</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-315"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>AttributeSelection</span> <span class='hs-keyword'>as</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>sequence</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-keyword'>as</span><span class='hs-layout'>)</span>
|
||||
<a name="line-316"></a>
|
||||
<a name="line-317"></a><a name="instance%20ToAsn1%20Filter"></a><span class='hs-comment'>{- |
|
||||
<a name="line-318"></a>@
|
||||
<a name="line-319"></a>Filter ::= CHOICE {
|
||||
<a name="line-320"></a> and [0] SET SIZE (1..MAX) OF filter Filter,
|
||||
<a name="line-321"></a> or [1] SET SIZE (1..MAX) OF filter Filter,
|
||||
<a name="line-322"></a> not [2] Filter,
|
||||
<a name="line-323"></a> equalityMatch [3] AttributeValueAssertion,
|
||||
<a name="line-324"></a> substrings [4] SubstringFilter,
|
||||
<a name="line-325"></a> greaterOrEqual [5] AttributeValueAssertion,
|
||||
<a name="line-326"></a> lessOrEqual [6] AttributeValueAssertion,
|
||||
<a name="line-327"></a> present [7] AttributeDescription,
|
||||
<a name="line-328"></a> approxMatch [8] AttributeValueAssertion,
|
||||
<a name="line-329"></a> extensibleMatch [9] MatchingRuleAssertion,
|
||||
<a name="line-330"></a> ... }
|
||||
<a name="line-331"></a>@
|
||||
<a name="line-332"></a>-}</span>
|
||||
<a name="line-333"></a><a name="instance%20ToAsn1%20Filter"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>Filter</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-334"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-varid'>f</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>case</span> <span class='hs-varid'>f</span> <span class='hs-keyword'>of</span>
|
||||
<a name="line-335"></a> <span class='hs-conid'>And</span> <span class='hs-varid'>xs</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>context</span> <span class='hs-num'>0</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span>
|
||||
<a name="line-336"></a> <span class='hs-conid'>Or</span> <span class='hs-varid'>xs</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>context</span> <span class='hs-num'>1</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span>
|
||||
<a name="line-337"></a> <span class='hs-conid'>Not</span> <span class='hs-varid'>x</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>context</span> <span class='hs-num'>2</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span>
|
||||
<a name="line-338"></a> <span class='hs-conid'>EqualityMatch</span> <span class='hs-varid'>x</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>context</span> <span class='hs-num'>3</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span>
|
||||
<a name="line-339"></a> <span class='hs-conid'>Substrings</span> <span class='hs-varid'>x</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>context</span> <span class='hs-num'>4</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span>
|
||||
<a name="line-340"></a> <span class='hs-conid'>GreaterOrEqual</span> <span class='hs-varid'>x</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>context</span> <span class='hs-num'>5</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span>
|
||||
<a name="line-341"></a> <span class='hs-conid'>LessOrEqual</span> <span class='hs-varid'>x</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>context</span> <span class='hs-num'>6</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span>
|
||||
<a name="line-342"></a> <span class='hs-conid'>Present</span> <span class='hs-layout'>(</span><span class='hs-conid'>AttributeDescription</span> <span class='hs-layout'>(</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-343"></a> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>other</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Context</span> <span class='hs-num'>7</span> <span class='hs-layout'>(</span><span class='hs-conid'>Text</span><span class='hs-varop'>.</span><span class='hs-varid'>encodeUtf8</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span>
|
||||
<a name="line-344"></a> <span class='hs-conid'>ApproxMatch</span> <span class='hs-varid'>x</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>context</span> <span class='hs-num'>8</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span>
|
||||
<a name="line-345"></a> <span class='hs-conid'>ExtensibleMatch</span> <span class='hs-varid'>x</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>context</span> <span class='hs-num'>9</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span>
|
||||
<a name="line-346"></a>
|
||||
<a name="line-347"></a><a name="instance%20ToAsn1%20SubstringFilter"></a><span class='hs-comment'>{- |
|
||||
<a name="line-348"></a>@
|
||||
<a name="line-349"></a>SubstringFilter ::= SEQUENCE {
|
||||
<a name="line-350"></a> type AttributeDescription,
|
||||
<a name="line-351"></a> substrings SEQUENCE SIZE (1..MAX) OF substring CHOICE {
|
||||
<a name="line-352"></a> initial [0] AssertionValue, -- can occur at most once
|
||||
<a name="line-353"></a> any [1] AssertionValue,
|
||||
<a name="line-354"></a> final [2] AssertionValue } -- can occur at most once
|
||||
<a name="line-355"></a> }
|
||||
<a name="line-356"></a>@
|
||||
<a name="line-357"></a>-}</span>
|
||||
<a name="line-358"></a><a name="instance%20ToAsn1%20SubstringFilter"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>SubstringFilter</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-359"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>SubstringFilter</span> <span class='hs-varid'>ad</span> <span class='hs-varid'>ss</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-360"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-varid'>ad</span> <span class='hs-varop'><></span> <span class='hs-varid'>sequence</span> <span class='hs-layout'>(</span><span class='hs-varid'>foldMap</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>s</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyword'>case</span> <span class='hs-varid'>s</span> <span class='hs-keyword'>of</span>
|
||||
<a name="line-361"></a> <span class='hs-conid'>Initial</span> <span class='hs-layout'>(</span><span class='hs-conid'>AssertionValue</span> <span class='hs-varid'>v</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>other</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Context</span> <span class='hs-num'>0</span> <span class='hs-varid'>v</span>
|
||||
<a name="line-362"></a> <span class='hs-conid'>Any</span> <span class='hs-layout'>(</span><span class='hs-conid'>AssertionValue</span> <span class='hs-varid'>v</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>other</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Context</span> <span class='hs-num'>1</span> <span class='hs-varid'>v</span>
|
||||
<a name="line-363"></a> <span class='hs-conid'>Final</span> <span class='hs-layout'>(</span><span class='hs-conid'>AssertionValue</span> <span class='hs-varid'>v</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>other</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Context</span> <span class='hs-num'>2</span> <span class='hs-varid'>v</span><span class='hs-layout'>)</span> <span class='hs-varid'>ss</span><span class='hs-layout'>)</span>
|
||||
<a name="line-364"></a>
|
||||
<a name="line-365"></a><a name="instance%20ToAsn1%20MatchingRuleAssertion"></a><span class='hs-comment'>{- |
|
||||
<a name="line-366"></a>@
|
||||
<a name="line-367"></a>MatchingRuleAssertion ::= SEQUENCE {
|
||||
<a name="line-368"></a> matchingRule [1] MatchingRuleId OPTIONAL,
|
||||
<a name="line-369"></a> type [2] AttributeDescription OPTIONAL,
|
||||
<a name="line-370"></a> matchValue [3] AssertionValue,
|
||||
<a name="line-371"></a> dnAttributes [4] BOOLEAN DEFAULT FALSE }
|
||||
<a name="line-372"></a>@
|
||||
<a name="line-373"></a>-}</span>
|
||||
<a name="line-374"></a><a name="instance%20ToAsn1%20MatchingRuleAssertion"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>MatchingRuleAssertion</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-375"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>MatchingRuleAssertion</span> <span class='hs-varid'>mmr</span> <span class='hs-varid'>mad</span> <span class='hs-varid'>av</span> <span class='hs-varid'>b</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>sequence</span> <span class='hs-layout'>(</span><span class='hs-varid'>fold</span>
|
||||
<a name="line-376"></a> <span class='hs-keyglyph'>[</span> <span class='hs-varid'>context</span> <span class='hs-num'>1</span> <span class='hs-layout'>(</span><span class='hs-varid'>optional</span> <span class='hs-varid'>mmr</span><span class='hs-layout'>)</span>
|
||||
<a name="line-377"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>context</span> <span class='hs-num'>2</span> <span class='hs-layout'>(</span><span class='hs-varid'>optional</span> <span class='hs-varid'>mad</span><span class='hs-layout'>)</span>
|
||||
<a name="line-378"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>context</span> <span class='hs-num'>3</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>av</span><span class='hs-layout'>)</span>
|
||||
<a name="line-379"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>context</span> <span class='hs-num'>4</span> <span class='hs-layout'>(</span><span class='hs-varid'>single</span> <span class='hs-layout'>(</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Boolean</span> <span class='hs-varid'>b</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-380"></a> <span class='hs-keyglyph'>]</span><span class='hs-layout'>)</span>
|
||||
<a name="line-381"></a>
|
||||
<a name="line-382"></a><a name="instance%20ToAsn1%20AttributeList"></a><span class='hs-comment'>{- |
|
||||
<a name="line-383"></a>@
|
||||
<a name="line-384"></a>AttributeList ::= SEQUENCE OF attribute Attribute
|
||||
<a name="line-385"></a>@
|
||||
<a name="line-386"></a>-}</span>
|
||||
<a name="line-387"></a><a name="instance%20ToAsn1%20AttributeList"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-conid'>AttributeList</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-388"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>AttributeList</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>sequence</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span>
|
||||
<a name="line-389"></a>
|
||||
<a name="line-390"></a><a name="instance%20ToAsn1%20%5ba%5d"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>=></span> <span class='hs-conid'>ToAsn1</span> <span class='hs-keyglyph'>[</span><span class='hs-varid'>a</span><span class='hs-keyglyph'>]</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-391"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>foldMap</span> <span class='hs-varid'>toAsn1</span>
|
||||
<a name="line-392"></a>
|
||||
<a name="line-393"></a><a name="instance%20ToAsn1%20(NonEmpty%20a)"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>=></span> <span class='hs-conid'>ToAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span> <span class='hs-varid'>a</span><span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-394"></a> <span class='hs-varid'>toAsn1</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>foldMap</span> <span class='hs-varid'>toAsn1</span>
|
||||
<a name="line-395"></a>
|
||||
<a name="line-396"></a><a name="sequence"></a><span class='hs-definition'>sequence</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Endo</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>ASN1</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Endo</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>ASN1</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-397"></a><span class='hs-definition'>sequence</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>construction</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Sequence</span>
|
||||
<a name="line-398"></a>
|
||||
<a name="line-399"></a><a name="set"></a><span class='hs-definition'>set</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Endo</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>ASN1</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Endo</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>ASN1</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-400"></a><span class='hs-definition'>set</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>construction</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Set</span>
|
||||
<a name="line-401"></a>
|
||||
<a name="line-402"></a><a name="application"></a><span class='hs-definition'>application</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>ASN1Tag</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Endo</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>ASN1</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Endo</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>ASN1</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-403"></a><span class='hs-definition'>application</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>construction</span> <span class='hs-varop'>.</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Container</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Application</span>
|
||||
<a name="line-404"></a>
|
||||
<a name="line-405"></a><a name="context"></a><span class='hs-definition'>context</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>ASN1Tag</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Endo</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>ASN1</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Endo</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>ASN1</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-406"></a><span class='hs-definition'>context</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>construction</span> <span class='hs-varop'>.</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Container</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Context</span>
|
||||
<a name="line-407"></a>
|
||||
<a name="line-408"></a><a name="construction"></a><span class='hs-definition'>construction</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>ASN1ConstructionType</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Endo</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>ASN1</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Endo</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>ASN1</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-409"></a><span class='hs-definition'>construction</span> <span class='hs-varid'>t</span> <span class='hs-varid'>x</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>single</span> <span class='hs-layout'>(</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Start</span> <span class='hs-varid'>t</span><span class='hs-layout'>)</span> <span class='hs-varop'><></span> <span class='hs-varid'>x</span> <span class='hs-varop'><></span> <span class='hs-varid'>single</span> <span class='hs-layout'>(</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>End</span> <span class='hs-varid'>t</span><span class='hs-layout'>)</span>
|
||||
<a name="line-410"></a>
|
||||
<a name="line-411"></a><a name="other"></a><span class='hs-definition'>other</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>ASN1Class</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>ASN1Tag</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>ByteString</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Endo</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>ASN1</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-412"></a><span class='hs-definition'>other</span> <span class='hs-varid'>c</span> <span class='hs-varid'>t</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>single</span> <span class='hs-varop'>.</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Other</span> <span class='hs-varid'>c</span> <span class='hs-varid'>t</span>
|
||||
<a name="line-413"></a>
|
||||
<a name="line-414"></a><a name="optional"></a><span class='hs-definition'>optional</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>=></span> <span class='hs-conid'>Maybe</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Endo</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>ASN1</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-415"></a><span class='hs-definition'>optional</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>maybe</span> <span class='hs-varid'>mempty</span> <span class='hs-varid'>toAsn1</span>
|
||||
<a name="line-416"></a>
|
||||
<a name="line-417"></a><a name="enum"></a><span class='hs-definition'>enum</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Integer</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Endo</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>ASN1</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-418"></a><span class='hs-definition'>enum</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>single</span> <span class='hs-varop'>.</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Enumerated</span>
|
||||
<a name="line-419"></a>
|
||||
<a name="line-420"></a><a name="single"></a><span class='hs-definition'>single</span> <span class='hs-keyglyph'>::</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Endo</span> <span class='hs-keyglyph'>[</span><span class='hs-varid'>a</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-421"></a><span class='hs-definition'>single</span> <span class='hs-varid'>x</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Endo</span> <span class='hs-layout'>(</span><span class='hs-varid'>x</span> <span class='hs-conop'>:</span><span class='hs-layout'>)</span>
|
||||
</pre></body>
|
||||
</html>
|
||||
202
src/Ldap-Asn1-Type.html
Normal file
202
src/Ldap-Asn1-Type.html
Normal file
@ -0,0 +1,202 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<!-- Generated by HsColour, http://code.haskell.org/~malcolm/hscolour/ -->
|
||||
<title>src/Ldap/Asn1/Type.hs</title>
|
||||
<link type='text/css' rel='stylesheet' href='hscolour.css' />
|
||||
</head>
|
||||
<body>
|
||||
<pre><a name="line-1"></a><span class='hs-keyword'>module</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Type</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-2"></a>
|
||||
<a name="line-3"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>ByteString</span> <span class='hs-layout'>(</span><span class='hs-conid'>ByteString</span><span class='hs-layout'>)</span>
|
||||
<a name="line-4"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Int</span> <span class='hs-layout'>(</span><span class='hs-conid'>Int8</span><span class='hs-layout'>,</span> <span class='hs-conid'>Int32</span><span class='hs-layout'>)</span>
|
||||
<a name="line-5"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>List</span><span class='hs-varop'>.</span><span class='hs-conid'>NonEmpty</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span><span class='hs-layout'>)</span>
|
||||
<a name="line-6"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Text</span> <span class='hs-layout'>(</span><span class='hs-conid'>Text</span><span class='hs-layout'>)</span>
|
||||
<a name="line-7"></a>
|
||||
<a name="line-8"></a>
|
||||
<a name="line-9"></a><a name="LdapMessage"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>LdapMessage</span> <span class='hs-varid'>op</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>LdapMessage</span>
|
||||
<a name="line-10"></a> <span class='hs-layout'>{</span> <span class='hs-varid'>ldapMessageId</span> <span class='hs-keyglyph'>::</span> <span class='hs-varop'>!</span><span class='hs-conid'>Id</span>
|
||||
<a name="line-11"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>ldapMessageOp</span> <span class='hs-keyglyph'>::</span> <span class='hs-varop'>!</span><span class='hs-varid'>op</span>
|
||||
<a name="line-12"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>ldapMessageControls</span> <span class='hs-keyglyph'>::</span> <span class='hs-varop'>!</span><span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>Controls</span><span class='hs-layout'>)</span>
|
||||
<a name="line-13"></a> <span class='hs-layout'>}</span> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-14"></a>
|
||||
<a name="line-15"></a><a name="Id"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>Id</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Id</span> <span class='hs-layout'>{</span> <span class='hs-varid'>unId</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Int32</span> <span class='hs-layout'>}</span>
|
||||
<a name="line-16"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-17"></a>
|
||||
<a name="line-18"></a><a name="ProtocolClientOp"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>ProtocolClientOp</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-19"></a> <span class='hs-conid'>BindRequest</span> <span class='hs-conid'>Int8</span> <span class='hs-conid'>LdapDn</span> <span class='hs-conid'>AuthenticationChoice</span>
|
||||
<a name="line-20"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>UnbindRequest</span>
|
||||
<a name="line-21"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>SearchRequest</span> <span class='hs-conid'>LdapDn</span> <span class='hs-conid'>Scope</span> <span class='hs-conid'>DerefAliases</span> <span class='hs-conid'>Int32</span> <span class='hs-conid'>Int32</span> <span class='hs-conid'>Bool</span> <span class='hs-conid'>Filter</span> <span class='hs-conid'>AttributeSelection</span>
|
||||
<a name="line-22"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>ModifyRequest</span> <span class='hs-conid'>LdapDn</span> <span class='hs-keyglyph'>[</span><span class='hs-layout'>(</span><span class='hs-conid'>Operation</span><span class='hs-layout'>,</span> <span class='hs-conid'>PartialAttribute</span><span class='hs-layout'>)</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-23"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>AddRequest</span> <span class='hs-conid'>LdapDn</span> <span class='hs-conid'>AttributeList</span>
|
||||
<a name="line-24"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>DeleteRequest</span> <span class='hs-conid'>LdapDn</span>
|
||||
<a name="line-25"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>ModifyDnRequest</span> <span class='hs-conid'>LdapDn</span> <span class='hs-conid'>RelativeLdapDn</span> <span class='hs-conid'>Bool</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>LdapDn</span><span class='hs-layout'>)</span>
|
||||
<a name="line-26"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>CompareRequest</span> <span class='hs-conid'>LdapDn</span> <span class='hs-conid'>AttributeValueAssertion</span>
|
||||
<a name="line-27"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>ExtendedRequest</span> <span class='hs-conid'>LdapOid</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>ByteString</span><span class='hs-layout'>)</span>
|
||||
<a name="line-28"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-29"></a>
|
||||
<a name="line-30"></a><a name="ProtocolServerOp"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>ProtocolServerOp</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-31"></a> <span class='hs-conid'>BindResponse</span> <span class='hs-conid'>LdapResult</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>ByteString</span><span class='hs-layout'>)</span>
|
||||
<a name="line-32"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>SearchResultEntry</span> <span class='hs-conid'>LdapDn</span> <span class='hs-conid'>PartialAttributeList</span>
|
||||
<a name="line-33"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>SearchResultReference</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span> <span class='hs-conid'>Uri</span><span class='hs-layout'>)</span>
|
||||
<a name="line-34"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>SearchResultDone</span> <span class='hs-layout'>(</span><span class='hs-conid'>LdapResult</span><span class='hs-layout'>)</span>
|
||||
<a name="line-35"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>ModifyResponse</span> <span class='hs-conid'>LdapResult</span>
|
||||
<a name="line-36"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>AddResponse</span> <span class='hs-conid'>LdapResult</span>
|
||||
<a name="line-37"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>DeleteResponse</span> <span class='hs-conid'>LdapResult</span>
|
||||
<a name="line-38"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>ModifyDnResponse</span> <span class='hs-conid'>LdapResult</span>
|
||||
<a name="line-39"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>CompareResponse</span> <span class='hs-conid'>LdapResult</span>
|
||||
<a name="line-40"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>ExtendedResponse</span> <span class='hs-conid'>LdapResult</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>LdapOid</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>ByteString</span><span class='hs-layout'>)</span>
|
||||
<a name="line-41"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-42"></a>
|
||||
<a name="line-43"></a><a name="AuthenticationChoice"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>AuthenticationChoice</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Simple</span> <span class='hs-conid'>ByteString</span>
|
||||
<a name="line-44"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-45"></a>
|
||||
<a name="line-46"></a><a name="Scope"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>Scope</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-47"></a> <span class='hs-conid'>BaseObject</span>
|
||||
<a name="line-48"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>SingleLevel</span>
|
||||
<a name="line-49"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>WholeSubtree</span>
|
||||
<a name="line-50"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-51"></a>
|
||||
<a name="line-52"></a><a name="DerefAliases"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>DerefAliases</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-53"></a> <span class='hs-conid'>NeverDerefAliases</span>
|
||||
<a name="line-54"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>DerefInSearching</span>
|
||||
<a name="line-55"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>DerefFindingBaseObject</span>
|
||||
<a name="line-56"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>DerefAlways</span>
|
||||
<a name="line-57"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-58"></a>
|
||||
<a name="line-59"></a><a name="Filter"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>Filter</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-60"></a> <span class='hs-conid'>And</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span> <span class='hs-conid'>Filter</span><span class='hs-layout'>)</span>
|
||||
<a name="line-61"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Or</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span> <span class='hs-conid'>Filter</span><span class='hs-layout'>)</span>
|
||||
<a name="line-62"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Not</span> <span class='hs-conid'>Filter</span>
|
||||
<a name="line-63"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>EqualityMatch</span> <span class='hs-conid'>AttributeValueAssertion</span>
|
||||
<a name="line-64"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Substrings</span> <span class='hs-conid'>SubstringFilter</span>
|
||||
<a name="line-65"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>GreaterOrEqual</span> <span class='hs-conid'>AttributeValueAssertion</span>
|
||||
<a name="line-66"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>LessOrEqual</span> <span class='hs-conid'>AttributeValueAssertion</span>
|
||||
<a name="line-67"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Present</span> <span class='hs-conid'>AttributeDescription</span>
|
||||
<a name="line-68"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>ApproxMatch</span> <span class='hs-conid'>AttributeValueAssertion</span>
|
||||
<a name="line-69"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>ExtensibleMatch</span> <span class='hs-conid'>MatchingRuleAssertion</span>
|
||||
<a name="line-70"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-71"></a>
|
||||
<a name="line-72"></a><a name="SubstringFilter"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>SubstringFilter</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>SubstringFilter</span> <span class='hs-conid'>AttributeDescription</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span> <span class='hs-conid'>Substring</span><span class='hs-layout'>)</span>
|
||||
<a name="line-73"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-74"></a>
|
||||
<a name="line-75"></a><a name="Substring"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>Substring</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-76"></a> <span class='hs-conid'>Initial</span> <span class='hs-conid'>AssertionValue</span>
|
||||
<a name="line-77"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Any</span> <span class='hs-conid'>AssertionValue</span>
|
||||
<a name="line-78"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Final</span> <span class='hs-conid'>AssertionValue</span>
|
||||
<a name="line-79"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-80"></a>
|
||||
<a name="line-81"></a><a name="MatchingRuleAssertion"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>MatchingRuleAssertion</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>MatchingRuleAssertion</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>MatchingRuleId</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>AttributeDescription</span><span class='hs-layout'>)</span> <span class='hs-conid'>AssertionValue</span> <span class='hs-conid'>Bool</span>
|
||||
<a name="line-82"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-83"></a>
|
||||
<a name="line-84"></a><a name="MatchingRuleId"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>MatchingRuleId</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>MatchingRuleId</span> <span class='hs-conid'>LdapString</span>
|
||||
<a name="line-85"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-86"></a>
|
||||
<a name="line-87"></a><a name="AttributeSelection"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>AttributeSelection</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>AttributeSelection</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>LdapString</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-88"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-89"></a>
|
||||
<a name="line-90"></a><a name="AttributeList"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>AttributeList</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>AttributeList</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>Attribute</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-91"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-92"></a>
|
||||
<a name="line-93"></a><a name="PartialAttributeList"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>PartialAttributeList</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>PartialAttributeList</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>PartialAttribute</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-94"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-95"></a>
|
||||
<a name="line-96"></a><a name="Controls"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>Controls</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Controls</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>Control</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-97"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-98"></a>
|
||||
<a name="line-99"></a><a name="Control"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>Control</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Control</span> <span class='hs-conid'>LdapOid</span> <span class='hs-conid'>Bool</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>ByteString</span><span class='hs-layout'>)</span>
|
||||
<a name="line-100"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-101"></a>
|
||||
<a name="line-102"></a><a name="LdapResult"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>LdapResult</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>LdapResult</span> <span class='hs-conid'>ResultCode</span> <span class='hs-conid'>LdapDn</span> <span class='hs-conid'>LdapString</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>ReferralUris</span><span class='hs-layout'>)</span>
|
||||
<a name="line-103"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-104"></a>
|
||||
<a name="line-105"></a><a name="ResultCode"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>ResultCode</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-106"></a> <span class='hs-conid'>Success</span>
|
||||
<a name="line-107"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>OperationError</span>
|
||||
<a name="line-108"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>ProtocolError</span>
|
||||
<a name="line-109"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>TimeLimitExceeded</span>
|
||||
<a name="line-110"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>SizeLimitExceeded</span>
|
||||
<a name="line-111"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>CompareFalse</span>
|
||||
<a name="line-112"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>CompareTrue</span>
|
||||
<a name="line-113"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>AuthMethodNotSupported</span>
|
||||
<a name="line-114"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>StrongerAuthRequired</span>
|
||||
<a name="line-115"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Referral</span>
|
||||
<a name="line-116"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>AdminLimitExceeded</span>
|
||||
<a name="line-117"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>UnavailableCriticalExtension</span>
|
||||
<a name="line-118"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>ConfidentialityRequired</span>
|
||||
<a name="line-119"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>SaslBindInProgress</span>
|
||||
<a name="line-120"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>NoSuchAttribute</span>
|
||||
<a name="line-121"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>UndefinedAttributeType</span>
|
||||
<a name="line-122"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>InappropriateMatching</span>
|
||||
<a name="line-123"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>ConstraintViolation</span>
|
||||
<a name="line-124"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>AttributeOrValueExists</span>
|
||||
<a name="line-125"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>InvalidAttributeSyntax</span>
|
||||
<a name="line-126"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>NoSuchObject</span>
|
||||
<a name="line-127"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>AliasProblem</span>
|
||||
<a name="line-128"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>InvalidDNSyntax</span>
|
||||
<a name="line-129"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>AliasDereferencingProblem</span>
|
||||
<a name="line-130"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>InappropriateAuthentication</span>
|
||||
<a name="line-131"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>InvalidCredentials</span>
|
||||
<a name="line-132"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>InsufficientAccessRights</span>
|
||||
<a name="line-133"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Busy</span>
|
||||
<a name="line-134"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Unavailable</span>
|
||||
<a name="line-135"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>UnwillingToPerform</span>
|
||||
<a name="line-136"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>LoopDetect</span>
|
||||
<a name="line-137"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>NamingViolation</span>
|
||||
<a name="line-138"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>ObjectClassViolation</span>
|
||||
<a name="line-139"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>NotAllowedOnNonLeaf</span>
|
||||
<a name="line-140"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>NotAllowedOnRDN</span>
|
||||
<a name="line-141"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>EntryAlreadyExists</span>
|
||||
<a name="line-142"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>ObjectClassModsProhibited</span>
|
||||
<a name="line-143"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>AffectsMultipleDSAs</span>
|
||||
<a name="line-144"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Other</span>
|
||||
<a name="line-145"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-146"></a>
|
||||
<a name="line-147"></a><a name="AttributeDescription"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>AttributeDescription</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>AttributeDescription</span> <span class='hs-conid'>LdapString</span>
|
||||
<a name="line-148"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-149"></a>
|
||||
<a name="line-150"></a><a name="AttributeValue"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>AttributeValue</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>AttributeValue</span> <span class='hs-conid'>ByteString</span>
|
||||
<a name="line-151"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-152"></a>
|
||||
<a name="line-153"></a><a name="AttributeValueAssertion"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>AttributeValueAssertion</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>AttributeValueAssertion</span> <span class='hs-conid'>AttributeDescription</span> <span class='hs-conid'>AssertionValue</span>
|
||||
<a name="line-154"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-155"></a>
|
||||
<a name="line-156"></a><a name="AssertionValue"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>AssertionValue</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>AssertionValue</span> <span class='hs-conid'>ByteString</span>
|
||||
<a name="line-157"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-158"></a>
|
||||
<a name="line-159"></a><a name="Attribute"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>Attribute</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Attribute</span> <span class='hs-conid'>AttributeDescription</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span> <span class='hs-conid'>AttributeValue</span><span class='hs-layout'>)</span>
|
||||
<a name="line-160"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-161"></a>
|
||||
<a name="line-162"></a><a name="PartialAttribute"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>PartialAttribute</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>PartialAttribute</span> <span class='hs-conid'>AttributeDescription</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>AttributeValue</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-163"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-164"></a>
|
||||
<a name="line-165"></a><a name="LdapDn"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>LdapDn</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>LdapDn</span> <span class='hs-conid'>LdapString</span>
|
||||
<a name="line-166"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-167"></a>
|
||||
<a name="line-168"></a><a name="RelativeLdapDn"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>RelativeLdapDn</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>RelativeLdapDn</span> <span class='hs-conid'>LdapString</span>
|
||||
<a name="line-169"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-170"></a>
|
||||
<a name="line-171"></a><a name="ReferralUris"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>ReferralUris</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>ReferralUris</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span> <span class='hs-conid'>Uri</span><span class='hs-layout'>)</span>
|
||||
<a name="line-172"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-173"></a>
|
||||
<a name="line-174"></a><a name="Uri"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>Uri</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Uri</span> <span class='hs-conid'>LdapString</span>
|
||||
<a name="line-175"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-176"></a>
|
||||
<a name="line-177"></a><a name="Operation"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>Operation</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-178"></a> <span class='hs-conid'>Add</span>
|
||||
<a name="line-179"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Delete</span>
|
||||
<a name="line-180"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Replace</span>
|
||||
<a name="line-181"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-182"></a>
|
||||
<a name="line-183"></a><a name="LdapString"></a><span class='hs-comment'>-- | The LDAPString is a notational convenience to indicate that, although</span>
|
||||
<a name="line-184"></a><a name="LdapString"></a><span class='hs-comment'>-- strings of LDAPString type encode as ASN.1 OCTET STRING types, the</span>
|
||||
<a name="line-185"></a><a name="LdapString"></a><span class='hs-comment'>-- [ISO10646] character set (a superset of [Unicode]) is used, encoded</span>
|
||||
<a name="line-186"></a><a name="LdapString"></a><span class='hs-comment'>-- following the UTF-8 [RFC3629] algorithm.</span>
|
||||
<a name="line-187"></a><a name="LdapString"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>LdapString</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>LdapString</span> <span class='hs-conid'>Text</span>
|
||||
<a name="line-188"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-189"></a>
|
||||
<a name="line-190"></a><a name="LdapOid"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>LdapOid</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>LdapOid</span> <span class='hs-conid'>ByteString</span>
|
||||
<a name="line-191"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
</pre></body>
|
||||
</html>
|
||||
55
src/Ldap-Client-Add.html
Normal file
55
src/Ldap-Client-Add.html
Normal file
@ -0,0 +1,55 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<!-- Generated by HsColour, http://code.haskell.org/~malcolm/hscolour/ -->
|
||||
<title>src/Ldap/Client/Add.hs</title>
|
||||
<link type='text/css' rel='stylesheet' href='hscolour.css' />
|
||||
</head>
|
||||
<body>
|
||||
<pre><a name="line-1"></a><span class='hs-keyword'>module</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Add</span>
|
||||
<a name="line-2"></a> <span class='hs-layout'>(</span> <span class='hs-varid'>add</span>
|
||||
<a name="line-3"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>addEither</span>
|
||||
<a name="line-4"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>addAsync</span>
|
||||
<a name="line-5"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>addAsyncSTM</span>
|
||||
<a name="line-6"></a> <span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-7"></a>
|
||||
<a name="line-8"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Monad</span><span class='hs-varop'>.</span><span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-conid'>STM</span><span class='hs-layout'>,</span> <span class='hs-varid'>atomically</span><span class='hs-layout'>)</span>
|
||||
<a name="line-9"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>List</span><span class='hs-varop'>.</span><span class='hs-conid'>NonEmpty</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span><span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conop'>:|</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-10"></a>
|
||||
<a name="line-11"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Type</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>Type</span>
|
||||
<a name="line-12"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Internal</span>
|
||||
<a name="line-13"></a>
|
||||
<a name="line-14"></a>
|
||||
<a name="line-15"></a><a name="add"></a><span class='hs-definition'>add</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>AttrList</span> <span class='hs-conid'>NonEmpty</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-16"></a><span class='hs-definition'>add</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-keyword'>as</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-17"></a> <span class='hs-varid'>raise</span> <span class='hs-varop'>=<<</span> <span class='hs-varid'>addEither</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-keyword'>as</span>
|
||||
<a name="line-18"></a>
|
||||
<a name="line-19"></a><a name="addEither"></a><span class='hs-definition'>addEither</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>AttrList</span> <span class='hs-conid'>NonEmpty</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-20"></a><span class='hs-definition'>addEither</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-keyword'>as</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-21"></a> <span class='hs-varid'>wait</span> <span class='hs-varop'>=<<</span> <span class='hs-varid'>addAsync</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-keyword'>as</span>
|
||||
<a name="line-22"></a>
|
||||
<a name="line-23"></a><a name="addAsync"></a><span class='hs-definition'>addAsync</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>AttrList</span> <span class='hs-conid'>NonEmpty</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-24"></a><span class='hs-definition'>addAsync</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-keyword'>as</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-25"></a> <span class='hs-varid'>atomically</span> <span class='hs-layout'>(</span><span class='hs-varid'>addAsyncSTM</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-keyword'>as</span><span class='hs-layout'>)</span>
|
||||
<a name="line-26"></a>
|
||||
<a name="line-27"></a><a name="addAsyncSTM"></a><span class='hs-definition'>addAsyncSTM</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>AttrList</span> <span class='hs-conid'>NonEmpty</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-28"></a><span class='hs-definition'>addAsyncSTM</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-keyword'>as</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-29"></a> <span class='hs-keyword'>let</span> <span class='hs-varid'>req</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>addRequest</span> <span class='hs-varid'>dn</span> <span class='hs-keyword'>as</span> <span class='hs-keyword'>in</span> <span class='hs-varid'>sendRequest</span> <span class='hs-varid'>l</span> <span class='hs-layout'>(</span><span class='hs-varid'>addResult</span> <span class='hs-varid'>req</span><span class='hs-layout'>)</span> <span class='hs-varid'>req</span>
|
||||
<a name="line-30"></a>
|
||||
<a name="line-31"></a><a name="addRequest"></a><span class='hs-definition'>addRequest</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>AttrList</span> <span class='hs-conid'>NonEmpty</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Request</span>
|
||||
<a name="line-32"></a><span class='hs-definition'>addRequest</span> <span class='hs-layout'>(</span><span class='hs-conid'>Dn</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span> <span class='hs-keyword'>as</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-33"></a> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AddRequest</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapDn</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-34"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeList</span> <span class='hs-layout'>(</span><span class='hs-varid'>map</span> <span class='hs-varid'>f</span> <span class='hs-keyword'>as</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-35"></a> <span class='hs-keyword'>where</span>
|
||||
<a name="line-36"></a> <span class='hs-varid'>f</span> <span class='hs-layout'>(</span><span class='hs-conid'>Attr</span> <span class='hs-varid'>x</span><span class='hs-layout'>,</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Attribute</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeDescription</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-37"></a> <span class='hs-layout'>(</span><span class='hs-varid'>fmap</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeValue</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span>
|
||||
<a name="line-38"></a>
|
||||
<a name="line-39"></a><a name="addResult"></a><span class='hs-definition'>addResult</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Request</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Response</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-40"></a><span class='hs-definition'>addResult</span> <span class='hs-varid'>req</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AddResponse</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapResult</span> <span class='hs-varid'>code</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapDn</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-41"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>msg</span><span class='hs-layout'>)</span> <span class='hs-keyword'>_</span><span class='hs-layout'>)</span> <span class='hs-conop'>:|</span> <span class='hs-conid'>[]</span><span class='hs-layout'>)</span>
|
||||
<a name="line-42"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Success</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>code</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Right</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-43"></a> <span class='hs-keyglyph'>|</span> <span class='hs-varid'>otherwise</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Left</span> <span class='hs-layout'>(</span><span class='hs-conid'>ResponseErrorCode</span> <span class='hs-varid'>req</span> <span class='hs-varid'>code</span> <span class='hs-layout'>(</span><span class='hs-conid'>Dn</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span> <span class='hs-varid'>msg</span><span class='hs-layout'>)</span>
|
||||
<a name="line-44"></a><span class='hs-definition'>addResult</span> <span class='hs-varid'>req</span> <span class='hs-varid'>res</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Left</span> <span class='hs-layout'>(</span><span class='hs-conid'>ResponseInvalid</span> <span class='hs-varid'>req</span> <span class='hs-varid'>res</span><span class='hs-layout'>)</span>
|
||||
</pre></body>
|
||||
</html>
|
||||
77
src/Ldap-Client-Bind.html
Normal file
77
src/Ldap-Client-Bind.html
Normal file
@ -0,0 +1,77 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<!-- Generated by HsColour, http://code.haskell.org/~malcolm/hscolour/ -->
|
||||
<title>src/Ldap/Client/Bind.hs</title>
|
||||
<link type='text/css' rel='stylesheet' href='hscolour.css' />
|
||||
</head>
|
||||
<body>
|
||||
<pre><a name="line-1"></a><span class='hs-keyword'>module</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Bind</span>
|
||||
<a name="line-2"></a> <span class='hs-layout'>(</span> <span class='hs-varid'>bind</span>
|
||||
<a name="line-3"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>bindEither</span>
|
||||
<a name="line-4"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>bindAsync</span>
|
||||
<a name="line-5"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>bindAsyncSTM</span>
|
||||
<a name="line-6"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>unbindAsync</span>
|
||||
<a name="line-7"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>unbindAsyncSTM</span>
|
||||
<a name="line-8"></a> <span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-9"></a>
|
||||
<a name="line-10"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Monad</span> <span class='hs-layout'>(</span><span class='hs-varid'>void</span><span class='hs-layout'>)</span>
|
||||
<a name="line-11"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Monad</span><span class='hs-varop'>.</span><span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-conid'>STM</span><span class='hs-layout'>,</span> <span class='hs-varid'>atomically</span><span class='hs-layout'>)</span>
|
||||
<a name="line-12"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>List</span><span class='hs-varop'>.</span><span class='hs-conid'>NonEmpty</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span><span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conop'>:|</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-13"></a>
|
||||
<a name="line-14"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Type</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>Type</span>
|
||||
<a name="line-15"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Internal</span>
|
||||
<a name="line-16"></a>
|
||||
<a name="line-17"></a>
|
||||
<a name="line-18"></a><a name="bind"></a><span class='hs-definition'>bind</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Password</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-19"></a><span class='hs-definition'>bind</span> <span class='hs-varid'>l</span> <span class='hs-varid'>username</span> <span class='hs-varid'>password</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-20"></a> <span class='hs-varid'>raise</span> <span class='hs-varop'>=<<</span> <span class='hs-varid'>bindEither</span> <span class='hs-varid'>l</span> <span class='hs-varid'>username</span> <span class='hs-varid'>password</span>
|
||||
<a name="line-21"></a>
|
||||
<a name="line-22"></a><a name="bindEither"></a><span class='hs-definition'>bindEither</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Password</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-23"></a><span class='hs-definition'>bindEither</span> <span class='hs-varid'>l</span> <span class='hs-varid'>username</span> <span class='hs-varid'>password</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-24"></a> <span class='hs-varid'>wait</span> <span class='hs-varop'>=<<</span> <span class='hs-varid'>bindAsync</span> <span class='hs-varid'>l</span> <span class='hs-varid'>username</span> <span class='hs-varid'>password</span>
|
||||
<a name="line-25"></a>
|
||||
<a name="line-26"></a><a name="bindAsync"></a><span class='hs-definition'>bindAsync</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Password</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-27"></a><span class='hs-definition'>bindAsync</span> <span class='hs-varid'>l</span> <span class='hs-varid'>username</span> <span class='hs-varid'>password</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-28"></a> <span class='hs-varid'>atomically</span> <span class='hs-layout'>(</span><span class='hs-varid'>bindAsyncSTM</span> <span class='hs-varid'>l</span> <span class='hs-varid'>username</span> <span class='hs-varid'>password</span><span class='hs-layout'>)</span>
|
||||
<a name="line-29"></a>
|
||||
<a name="line-30"></a><a name="bindAsyncSTM"></a><span class='hs-definition'>bindAsyncSTM</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Password</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-31"></a><span class='hs-definition'>bindAsyncSTM</span> <span class='hs-varid'>l</span> <span class='hs-varid'>username</span> <span class='hs-varid'>password</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-32"></a> <span class='hs-keyword'>let</span> <span class='hs-varid'>req</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>bindRequest</span> <span class='hs-varid'>username</span> <span class='hs-varid'>password</span> <span class='hs-keyword'>in</span> <span class='hs-varid'>sendRequest</span> <span class='hs-varid'>l</span> <span class='hs-layout'>(</span><span class='hs-varid'>bindResult</span> <span class='hs-varid'>req</span><span class='hs-layout'>)</span> <span class='hs-varid'>req</span>
|
||||
<a name="line-33"></a>
|
||||
<a name="line-34"></a><a name="bindRequest"></a><span class='hs-definition'>bindRequest</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Password</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Request</span>
|
||||
<a name="line-35"></a><span class='hs-definition'>bindRequest</span> <span class='hs-layout'>(</span><span class='hs-conid'>Dn</span> <span class='hs-varid'>username</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>Password</span> <span class='hs-varid'>password</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-36"></a> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>BindRequest</span> <span class='hs-varid'>ldapVersion</span>
|
||||
<a name="line-37"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapDn</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>username</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-38"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Simple</span> <span class='hs-varid'>password</span><span class='hs-layout'>)</span>
|
||||
<a name="line-39"></a> <span class='hs-keyword'>where</span>
|
||||
<a name="line-40"></a> <span class='hs-varid'>ldapVersion</span> <span class='hs-keyglyph'>=</span> <span class='hs-num'>3</span>
|
||||
<a name="line-41"></a>
|
||||
<a name="line-42"></a><a name="bindResult"></a><span class='hs-definition'>bindResult</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Request</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Response</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-43"></a><span class='hs-definition'>bindResult</span> <span class='hs-varid'>req</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>BindResponse</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapResult</span> <span class='hs-varid'>code</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapDn</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-44"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>msg</span><span class='hs-layout'>)</span> <span class='hs-keyword'>_</span><span class='hs-layout'>)</span> <span class='hs-keyword'>_</span> <span class='hs-conop'>:|</span> <span class='hs-conid'>[]</span><span class='hs-layout'>)</span>
|
||||
<a name="line-45"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Success</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>code</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Right</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-46"></a> <span class='hs-keyglyph'>|</span> <span class='hs-varid'>otherwise</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Left</span> <span class='hs-layout'>(</span><span class='hs-conid'>ResponseErrorCode</span> <span class='hs-varid'>req</span> <span class='hs-varid'>code</span> <span class='hs-layout'>(</span><span class='hs-conid'>Dn</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span> <span class='hs-varid'>msg</span><span class='hs-layout'>)</span>
|
||||
<a name="line-47"></a><span class='hs-definition'>bindResult</span> <span class='hs-varid'>req</span> <span class='hs-varid'>res</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Left</span> <span class='hs-layout'>(</span><span class='hs-conid'>ResponseInvalid</span> <span class='hs-varid'>req</span> <span class='hs-varid'>res</span><span class='hs-layout'>)</span>
|
||||
<a name="line-48"></a>
|
||||
<a name="line-49"></a>
|
||||
<a name="line-50"></a><a name="unbindAsync"></a><span class='hs-comment'>-- | Note that 'unbindAsync' does not return an 'Async',</span>
|
||||
<a name="line-51"></a><span class='hs-comment'>-- because LDAP server never responds to @UnbindRequest@s, hence</span>
|
||||
<a name="line-52"></a><span class='hs-comment'>-- a call to 'wait' on a hypothetical 'Async' would have resulted</span>
|
||||
<a name="line-53"></a><span class='hs-comment'>-- in an exception anyway.</span>
|
||||
<a name="line-54"></a><span class='hs-definition'>unbindAsync</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-55"></a><span class='hs-definition'>unbindAsync</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-56"></a> <span class='hs-varid'>atomically</span> <span class='hs-varop'>.</span> <span class='hs-varid'>unbindAsyncSTM</span>
|
||||
<a name="line-57"></a>
|
||||
<a name="line-58"></a><a name="unbindAsyncSTM"></a><span class='hs-comment'>-- | Note that 'unbindAsyncSTM' does not return an 'Async',</span>
|
||||
<a name="line-59"></a><span class='hs-comment'>-- because LDAP server never responds to @UnbindRequest@s, hence</span>
|
||||
<a name="line-60"></a><span class='hs-comment'>-- a call to 'wait' on a hypothetical 'Async' would have resulted</span>
|
||||
<a name="line-61"></a><span class='hs-comment'>-- in an exception anyway.</span>
|
||||
<a name="line-62"></a><span class='hs-definition'>unbindAsyncSTM</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>STM</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-63"></a><span class='hs-definition'>unbindAsyncSTM</span> <span class='hs-varid'>l</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-64"></a> <span class='hs-varid'>void</span> <span class='hs-layout'>(</span><span class='hs-varid'>sendRequest</span> <span class='hs-varid'>l</span> <span class='hs-varid'>die</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>UnbindRequest</span><span class='hs-layout'>)</span>
|
||||
<a name="line-65"></a> <span class='hs-keyword'>where</span>
|
||||
<a name="line-66"></a> <span class='hs-varid'>die</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>error</span> <span class='hs-str'>"Ldap.Client: do not wait for the response to UnbindRequest"</span>
|
||||
</pre></body>
|
||||
</html>
|
||||
57
src/Ldap-Client-Compare.html
Normal file
57
src/Ldap-Client-Compare.html
Normal file
@ -0,0 +1,57 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<!-- Generated by HsColour, http://code.haskell.org/~malcolm/hscolour/ -->
|
||||
<title>src/Ldap/Client/Compare.hs</title>
|
||||
<link type='text/css' rel='stylesheet' href='hscolour.css' />
|
||||
</head>
|
||||
<body>
|
||||
<pre><a name="line-1"></a><span class='hs-keyword'>module</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Compare</span>
|
||||
<a name="line-2"></a> <span class='hs-layout'>(</span> <span class='hs-varid'>compare</span>
|
||||
<a name="line-3"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>compareEither</span>
|
||||
<a name="line-4"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>compareAsync</span>
|
||||
<a name="line-5"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>compareAsyncSTM</span>
|
||||
<a name="line-6"></a> <span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-7"></a>
|
||||
<a name="line-8"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Monad</span><span class='hs-varop'>.</span><span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-conid'>STM</span><span class='hs-layout'>,</span> <span class='hs-varid'>atomically</span><span class='hs-layout'>)</span>
|
||||
<a name="line-9"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>ByteString</span> <span class='hs-layout'>(</span><span class='hs-conid'>ByteString</span><span class='hs-layout'>)</span>
|
||||
<a name="line-10"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>List</span><span class='hs-varop'>.</span><span class='hs-conid'>NonEmpty</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span><span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conop'>:|</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-11"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Prelude</span> <span class='hs-varid'>hiding</span> <span class='hs-layout'>(</span><span class='hs-varid'>compare</span><span class='hs-layout'>)</span>
|
||||
<a name="line-12"></a>
|
||||
<a name="line-13"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Internal</span>
|
||||
<a name="line-14"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Type</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>Type</span>
|
||||
<a name="line-15"></a>
|
||||
<a name="line-16"></a>
|
||||
<a name="line-17"></a><a name="compare"></a><span class='hs-definition'>compare</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Attr</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>ByteString</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
|
||||
<a name="line-18"></a><span class='hs-definition'>compare</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>k</span> <span class='hs-varid'>v</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-19"></a> <span class='hs-varid'>raise</span> <span class='hs-varop'>=<<</span> <span class='hs-varid'>compareEither</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>k</span> <span class='hs-varid'>v</span>
|
||||
<a name="line-20"></a>
|
||||
<a name="line-21"></a><a name="compareEither"></a><span class='hs-definition'>compareEither</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Attr</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>ByteString</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-conid'>Bool</span><span class='hs-layout'>)</span>
|
||||
<a name="line-22"></a><span class='hs-definition'>compareEither</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>k</span> <span class='hs-varid'>v</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-23"></a> <span class='hs-varid'>wait</span> <span class='hs-varop'>=<<</span> <span class='hs-varid'>compareAsync</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>k</span> <span class='hs-varid'>v</span>
|
||||
<a name="line-24"></a>
|
||||
<a name="line-25"></a><a name="compareAsync"></a><span class='hs-definition'>compareAsync</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Attr</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>ByteString</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-conid'>Bool</span><span class='hs-layout'>)</span>
|
||||
<a name="line-26"></a><span class='hs-definition'>compareAsync</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>k</span> <span class='hs-varid'>v</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-27"></a> <span class='hs-varid'>atomically</span> <span class='hs-layout'>(</span><span class='hs-varid'>compareAsyncSTM</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>k</span> <span class='hs-varid'>v</span><span class='hs-layout'>)</span>
|
||||
<a name="line-28"></a>
|
||||
<a name="line-29"></a><a name="compareAsyncSTM"></a><span class='hs-definition'>compareAsyncSTM</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Attr</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>ByteString</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-conid'>Bool</span><span class='hs-layout'>)</span>
|
||||
<a name="line-30"></a><span class='hs-definition'>compareAsyncSTM</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>k</span> <span class='hs-varid'>v</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-31"></a> <span class='hs-keyword'>let</span> <span class='hs-varid'>req</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>compareRequest</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>k</span> <span class='hs-varid'>v</span> <span class='hs-keyword'>in</span> <span class='hs-varid'>sendRequest</span> <span class='hs-varid'>l</span> <span class='hs-layout'>(</span><span class='hs-varid'>compareResult</span> <span class='hs-varid'>req</span><span class='hs-layout'>)</span> <span class='hs-varid'>req</span>
|
||||
<a name="line-32"></a>
|
||||
<a name="line-33"></a><a name="compareRequest"></a><span class='hs-definition'>compareRequest</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Attr</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>ByteString</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Request</span>
|
||||
<a name="line-34"></a><span class='hs-definition'>compareRequest</span> <span class='hs-layout'>(</span><span class='hs-conid'>Dn</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>Attr</span> <span class='hs-varid'>k</span><span class='hs-layout'>)</span> <span class='hs-varid'>v</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-35"></a> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>CompareRequest</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapDn</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-36"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeValueAssertion</span>
|
||||
<a name="line-37"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeDescription</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>k</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-38"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AssertionValue</span> <span class='hs-varid'>v</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-39"></a>
|
||||
<a name="line-40"></a><a name="compareResult"></a><span class='hs-definition'>compareResult</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Request</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Response</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-conid'>Bool</span>
|
||||
<a name="line-41"></a><span class='hs-definition'>compareResult</span> <span class='hs-varid'>req</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>CompareResponse</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapResult</span> <span class='hs-varid'>code</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapDn</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-42"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>msg</span><span class='hs-layout'>)</span> <span class='hs-keyword'>_</span><span class='hs-layout'>)</span> <span class='hs-conop'>:|</span> <span class='hs-conid'>[]</span><span class='hs-layout'>)</span>
|
||||
<a name="line-43"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>CompareTrue</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>code</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Right</span> <span class='hs-conid'>True</span>
|
||||
<a name="line-44"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>CompareFalse</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>code</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Right</span> <span class='hs-conid'>False</span>
|
||||
<a name="line-45"></a> <span class='hs-keyglyph'>|</span> <span class='hs-varid'>otherwise</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Left</span> <span class='hs-layout'>(</span><span class='hs-conid'>ResponseErrorCode</span> <span class='hs-varid'>req</span> <span class='hs-varid'>code</span> <span class='hs-layout'>(</span><span class='hs-conid'>Dn</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span> <span class='hs-varid'>msg</span><span class='hs-layout'>)</span>
|
||||
<a name="line-46"></a><span class='hs-definition'>compareResult</span> <span class='hs-varid'>req</span> <span class='hs-varid'>res</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Left</span> <span class='hs-layout'>(</span><span class='hs-conid'>ResponseInvalid</span> <span class='hs-varid'>req</span> <span class='hs-varid'>res</span><span class='hs-layout'>)</span>
|
||||
</pre></body>
|
||||
</html>
|
||||
51
src/Ldap-Client-Delete.html
Normal file
51
src/Ldap-Client-Delete.html
Normal file
@ -0,0 +1,51 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<!-- Generated by HsColour, http://code.haskell.org/~malcolm/hscolour/ -->
|
||||
<title>src/Ldap/Client/Delete.hs</title>
|
||||
<link type='text/css' rel='stylesheet' href='hscolour.css' />
|
||||
</head>
|
||||
<body>
|
||||
<pre><a name="line-1"></a><span class='hs-keyword'>module</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Delete</span>
|
||||
<a name="line-2"></a> <span class='hs-layout'>(</span> <span class='hs-varid'>delete</span>
|
||||
<a name="line-3"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>deleteEither</span>
|
||||
<a name="line-4"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>deleteAsync</span>
|
||||
<a name="line-5"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>deleteAsyncSTM</span>
|
||||
<a name="line-6"></a> <span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-7"></a>
|
||||
<a name="line-8"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Concurrent</span><span class='hs-varop'>.</span><span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-conid'>STM</span><span class='hs-layout'>,</span> <span class='hs-varid'>atomically</span><span class='hs-layout'>)</span>
|
||||
<a name="line-9"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>List</span><span class='hs-varop'>.</span><span class='hs-conid'>NonEmpty</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span><span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conop'>:|</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-10"></a>
|
||||
<a name="line-11"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Type</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>Type</span>
|
||||
<a name="line-12"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Internal</span>
|
||||
<a name="line-13"></a>
|
||||
<a name="line-14"></a>
|
||||
<a name="line-15"></a><a name="delete"></a><span class='hs-definition'>delete</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-16"></a><span class='hs-definition'>delete</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-17"></a> <span class='hs-varid'>raise</span> <span class='hs-varop'>=<<</span> <span class='hs-varid'>deleteEither</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span>
|
||||
<a name="line-18"></a>
|
||||
<a name="line-19"></a><a name="deleteEither"></a><span class='hs-definition'>deleteEither</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-20"></a><span class='hs-definition'>deleteEither</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-21"></a> <span class='hs-varid'>wait</span> <span class='hs-varop'>=<<</span> <span class='hs-varid'>deleteAsync</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span>
|
||||
<a name="line-22"></a>
|
||||
<a name="line-23"></a><a name="deleteAsync"></a><span class='hs-definition'>deleteAsync</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-24"></a><span class='hs-definition'>deleteAsync</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-25"></a> <span class='hs-varid'>atomically</span> <span class='hs-layout'>(</span><span class='hs-varid'>deleteAsyncSTM</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span>
|
||||
<a name="line-26"></a>
|
||||
<a name="line-27"></a><a name="deleteAsyncSTM"></a><span class='hs-definition'>deleteAsyncSTM</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-28"></a><span class='hs-definition'>deleteAsyncSTM</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-29"></a> <span class='hs-keyword'>let</span> <span class='hs-varid'>req</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>deleteRequest</span> <span class='hs-varid'>dn</span> <span class='hs-keyword'>in</span> <span class='hs-varid'>sendRequest</span> <span class='hs-varid'>l</span> <span class='hs-layout'>(</span><span class='hs-varid'>deleteResult</span> <span class='hs-varid'>req</span><span class='hs-layout'>)</span> <span class='hs-varid'>req</span>
|
||||
<a name="line-30"></a>
|
||||
<a name="line-31"></a><a name="deleteRequest"></a><span class='hs-definition'>deleteRequest</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Request</span>
|
||||
<a name="line-32"></a><span class='hs-definition'>deleteRequest</span> <span class='hs-layout'>(</span><span class='hs-conid'>Dn</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-33"></a> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>DeleteRequest</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapDn</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-34"></a>
|
||||
<a name="line-35"></a><a name="deleteResult"></a><span class='hs-definition'>deleteResult</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Request</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Response</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-36"></a><span class='hs-definition'>deleteResult</span> <span class='hs-varid'>req</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>DeleteResponse</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapResult</span> <span class='hs-varid'>code</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapDn</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-37"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>msg</span><span class='hs-layout'>)</span> <span class='hs-keyword'>_</span><span class='hs-layout'>)</span> <span class='hs-conop'>:|</span> <span class='hs-conid'>[]</span><span class='hs-layout'>)</span>
|
||||
<a name="line-38"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Success</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>code</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Right</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-39"></a> <span class='hs-keyglyph'>|</span> <span class='hs-varid'>otherwise</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Left</span> <span class='hs-layout'>(</span><span class='hs-conid'>ResponseErrorCode</span> <span class='hs-varid'>req</span> <span class='hs-varid'>code</span> <span class='hs-layout'>(</span><span class='hs-conid'>Dn</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span> <span class='hs-varid'>msg</span><span class='hs-layout'>)</span>
|
||||
<a name="line-40"></a><span class='hs-definition'>deleteResult</span> <span class='hs-varid'>req</span> <span class='hs-varid'>res</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Left</span> <span class='hs-layout'>(</span><span class='hs-conid'>ResponseInvalid</span> <span class='hs-varid'>req</span> <span class='hs-varid'>res</span><span class='hs-layout'>)</span>
|
||||
</pre></body>
|
||||
</html>
|
||||
75
src/Ldap-Client-Extended.html
Normal file
75
src/Ldap-Client-Extended.html
Normal file
@ -0,0 +1,75 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<!-- Generated by HsColour, http://code.haskell.org/~malcolm/hscolour/ -->
|
||||
<title>src/Ldap/Client/Extended.hs</title>
|
||||
<link type='text/css' rel='stylesheet' href='hscolour.css' />
|
||||
</head>
|
||||
<body>
|
||||
<pre><a name="line-1"></a><span class='hs-comment'>{-# LANGUAGE OverloadedStrings #-}</span>
|
||||
<a name="line-2"></a><span class='hs-keyword'>module</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Extended</span>
|
||||
<a name="line-3"></a> <span class='hs-layout'>(</span> <span class='hs-varid'>extended</span>
|
||||
<a name="line-4"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>extendedEither</span>
|
||||
<a name="line-5"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>extendedAsync</span>
|
||||
<a name="line-6"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>extendedAsyncSTM</span>
|
||||
<a name="line-7"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>startTls</span>
|
||||
<a name="line-8"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>startTlsEither</span>
|
||||
<a name="line-9"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>startTlsAsync</span>
|
||||
<a name="line-10"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>startTlsAsyncSTM</span>
|
||||
<a name="line-11"></a> <span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-12"></a>
|
||||
<a name="line-13"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Monad</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-varop'><=<</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-14"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Monad</span><span class='hs-varop'>.</span><span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-conid'>STM</span><span class='hs-layout'>,</span> <span class='hs-varid'>atomically</span><span class='hs-layout'>)</span>
|
||||
<a name="line-15"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>ByteString</span> <span class='hs-layout'>(</span><span class='hs-conid'>ByteString</span><span class='hs-layout'>)</span>
|
||||
<a name="line-16"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>List</span><span class='hs-varop'>.</span><span class='hs-conid'>NonEmpty</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span><span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conop'>:|</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-17"></a>
|
||||
<a name="line-18"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Type</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>Type</span>
|
||||
<a name="line-19"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Internal</span>
|
||||
<a name="line-20"></a>
|
||||
<a name="line-21"></a>
|
||||
<a name="line-22"></a><a name="extended"></a><span class='hs-definition'>extended</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Oid</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>ByteString</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-23"></a><span class='hs-definition'>extended</span> <span class='hs-varid'>l</span> <span class='hs-varid'>oid</span> <span class='hs-varid'>mv</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-24"></a> <span class='hs-varid'>raise</span> <span class='hs-varop'>=<<</span> <span class='hs-varid'>extendedEither</span> <span class='hs-varid'>l</span> <span class='hs-varid'>oid</span> <span class='hs-varid'>mv</span>
|
||||
<a name="line-25"></a>
|
||||
<a name="line-26"></a><a name="extendedEither"></a><span class='hs-definition'>extendedEither</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Oid</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>ByteString</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-27"></a><span class='hs-definition'>extendedEither</span> <span class='hs-varid'>l</span> <span class='hs-varid'>oid</span> <span class='hs-varid'>mv</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-28"></a> <span class='hs-varid'>wait</span> <span class='hs-varop'>=<<</span> <span class='hs-varid'>extendedAsync</span> <span class='hs-varid'>l</span> <span class='hs-varid'>oid</span> <span class='hs-varid'>mv</span>
|
||||
<a name="line-29"></a>
|
||||
<a name="line-30"></a><a name="extendedAsync"></a><span class='hs-definition'>extendedAsync</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Oid</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>ByteString</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-31"></a><span class='hs-definition'>extendedAsync</span> <span class='hs-varid'>l</span> <span class='hs-varid'>oid</span> <span class='hs-varid'>mv</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-32"></a> <span class='hs-varid'>atomically</span> <span class='hs-layout'>(</span><span class='hs-varid'>extendedAsyncSTM</span> <span class='hs-varid'>l</span> <span class='hs-varid'>oid</span> <span class='hs-varid'>mv</span><span class='hs-layout'>)</span>
|
||||
<a name="line-33"></a>
|
||||
<a name="line-34"></a><a name="extendedAsyncSTM"></a><span class='hs-definition'>extendedAsyncSTM</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Oid</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>ByteString</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-35"></a><span class='hs-definition'>extendedAsyncSTM</span> <span class='hs-varid'>l</span> <span class='hs-varid'>oid</span> <span class='hs-varid'>mv</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-36"></a> <span class='hs-keyword'>let</span> <span class='hs-varid'>req</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>extendedRequest</span> <span class='hs-varid'>oid</span> <span class='hs-varid'>mv</span> <span class='hs-keyword'>in</span> <span class='hs-varid'>sendRequest</span> <span class='hs-varid'>l</span> <span class='hs-layout'>(</span><span class='hs-varid'>extendedResult</span> <span class='hs-varid'>req</span><span class='hs-layout'>)</span> <span class='hs-varid'>req</span>
|
||||
<a name="line-37"></a>
|
||||
<a name="line-38"></a><a name="extendedRequest"></a><span class='hs-definition'>extendedRequest</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Oid</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>ByteString</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Request</span>
|
||||
<a name="line-39"></a><span class='hs-definition'>extendedRequest</span> <span class='hs-layout'>(</span><span class='hs-conid'>Oid</span> <span class='hs-varid'>oid</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-40"></a> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>ExtendedRequest</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapOid</span> <span class='hs-varid'>oid</span><span class='hs-layout'>)</span>
|
||||
<a name="line-41"></a>
|
||||
<a name="line-42"></a><a name="extendedResult"></a><span class='hs-definition'>extendedResult</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Request</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Response</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-43"></a><span class='hs-definition'>extendedResult</span> <span class='hs-varid'>req</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>ExtendedResponse</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapResult</span> <span class='hs-varid'>code</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapDn</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-44"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>msg</span><span class='hs-layout'>)</span> <span class='hs-keyword'>_</span><span class='hs-layout'>)</span> <span class='hs-keyword'>_</span> <span class='hs-keyword'>_</span> <span class='hs-conop'>:|</span> <span class='hs-conid'>[]</span><span class='hs-layout'>)</span>
|
||||
<a name="line-45"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Success</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>code</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Right</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-46"></a> <span class='hs-keyglyph'>|</span> <span class='hs-varid'>otherwise</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Left</span> <span class='hs-layout'>(</span><span class='hs-conid'>ResponseErrorCode</span> <span class='hs-varid'>req</span> <span class='hs-varid'>code</span> <span class='hs-layout'>(</span><span class='hs-conid'>Dn</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span> <span class='hs-varid'>msg</span><span class='hs-layout'>)</span>
|
||||
<a name="line-47"></a><span class='hs-definition'>extendedResult</span> <span class='hs-varid'>req</span> <span class='hs-varid'>res</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Left</span> <span class='hs-layout'>(</span><span class='hs-conid'>ResponseInvalid</span> <span class='hs-varid'>req</span> <span class='hs-varid'>res</span><span class='hs-layout'>)</span>
|
||||
<a name="line-48"></a>
|
||||
<a name="line-49"></a>
|
||||
<a name="line-50"></a><a name="startTls"></a><span class='hs-definition'>startTls</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-51"></a><span class='hs-definition'>startTls</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-52"></a> <span class='hs-varid'>raise</span> <span class='hs-varop'><=<</span> <span class='hs-varid'>startTlsEither</span>
|
||||
<a name="line-53"></a>
|
||||
<a name="line-54"></a><a name="startTlsEither"></a><span class='hs-definition'>startTlsEither</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-55"></a><span class='hs-definition'>startTlsEither</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-56"></a> <span class='hs-varid'>wait</span> <span class='hs-varop'><=<</span> <span class='hs-varid'>startTlsAsync</span>
|
||||
<a name="line-57"></a>
|
||||
<a name="line-58"></a><a name="startTlsAsync"></a><span class='hs-definition'>startTlsAsync</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-59"></a><span class='hs-definition'>startTlsAsync</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-60"></a> <span class='hs-varid'>atomically</span> <span class='hs-varop'>.</span> <span class='hs-varid'>startTlsAsyncSTM</span>
|
||||
<a name="line-61"></a>
|
||||
<a name="line-62"></a><a name="startTlsAsyncSTM"></a><span class='hs-definition'>startTlsAsyncSTM</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-63"></a><span class='hs-definition'>startTlsAsyncSTM</span> <span class='hs-varid'>l</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-64"></a> <span class='hs-varid'>extendedAsyncSTM</span> <span class='hs-varid'>l</span> <span class='hs-layout'>(</span><span class='hs-conid'>Oid</span> <span class='hs-str'>"1.3.6.1.4.1.1466.20037"</span><span class='hs-layout'>)</span> <span class='hs-conid'>Nothing</span>
|
||||
</pre></body>
|
||||
</html>
|
||||
123
src/Ldap-Client-Internal.html
Normal file
123
src/Ldap-Client-Internal.html
Normal file
@ -0,0 +1,123 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<!-- Generated by HsColour, http://code.haskell.org/~malcolm/hscolour/ -->
|
||||
<title>src/Ldap/Client/Internal.hs</title>
|
||||
<link type='text/css' rel='stylesheet' href='hscolour.css' />
|
||||
</head>
|
||||
<body>
|
||||
<pre><a name="line-1"></a><span class='hs-comment'>{-# LANGUAGE DeriveDataTypeable #-}</span>
|
||||
<a name="line-2"></a><span class='hs-comment'>{-# LANGUAGE NamedFieldPuns #-}</span>
|
||||
<a name="line-3"></a><span class='hs-keyword'>module</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Internal</span>
|
||||
<a name="line-4"></a> <span class='hs-layout'>(</span> <span class='hs-conid'>Host</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-5"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>PortNumber</span>
|
||||
<a name="line-6"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Ldap</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-7"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>ClientMessage</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-8"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>ResultCode</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-9"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Async</span>
|
||||
<a name="line-10"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Oid</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-11"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>AttrList</span>
|
||||
<a name="line-12"></a> <span class='hs-comment'>-- * Waiting for Request Completion</span>
|
||||
<a name="line-13"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>wait</span>
|
||||
<a name="line-14"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>waitSTM</span>
|
||||
<a name="line-15"></a> <span class='hs-comment'>-- * Misc</span>
|
||||
<a name="line-16"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Response</span>
|
||||
<a name="line-17"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>ResponseError</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-18"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Request</span>
|
||||
<a name="line-19"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>raise</span>
|
||||
<a name="line-20"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>sendRequest</span>
|
||||
<a name="line-21"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Dn</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-22"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>RelativeDn</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-23"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Password</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-24"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Attr</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-25"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>unAttr</span>
|
||||
<a name="line-26"></a> <span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-27"></a>
|
||||
<a name="line-28"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Concurrent</span><span class='hs-varop'>.</span><span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-conid'>STM</span><span class='hs-layout'>,</span> <span class='hs-varid'>atomically</span><span class='hs-layout'>)</span>
|
||||
<a name="line-29"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Concurrent</span><span class='hs-varop'>.</span><span class='hs-conid'>STM</span><span class='hs-varop'>.</span><span class='hs-conid'>TMVar</span> <span class='hs-layout'>(</span><span class='hs-conid'>TMVar</span><span class='hs-layout'>,</span> <span class='hs-varid'>newEmptyTMVar</span><span class='hs-layout'>,</span> <span class='hs-varid'>readTMVar</span><span class='hs-layout'>)</span>
|
||||
<a name="line-30"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Concurrent</span><span class='hs-varop'>.</span><span class='hs-conid'>STM</span><span class='hs-varop'>.</span><span class='hs-conid'>TQueue</span> <span class='hs-layout'>(</span><span class='hs-conid'>TQueue</span><span class='hs-layout'>,</span> <span class='hs-varid'>writeTQueue</span><span class='hs-layout'>)</span>
|
||||
<a name="line-31"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Exception</span> <span class='hs-layout'>(</span><span class='hs-conid'>Exception</span><span class='hs-layout'>,</span> <span class='hs-varid'>throwIO</span><span class='hs-layout'>)</span>
|
||||
<a name="line-32"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>ByteString</span> <span class='hs-layout'>(</span><span class='hs-conid'>ByteString</span><span class='hs-layout'>)</span>
|
||||
<a name="line-33"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>List</span><span class='hs-varop'>.</span><span class='hs-conid'>NonEmpty</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span><span class='hs-layout'>)</span>
|
||||
<a name="line-34"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Text</span> <span class='hs-layout'>(</span><span class='hs-conid'>Text</span><span class='hs-layout'>)</span>
|
||||
<a name="line-35"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Typeable</span> <span class='hs-layout'>(</span><span class='hs-conid'>Typeable</span><span class='hs-layout'>)</span>
|
||||
<a name="line-36"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Network</span> <span class='hs-layout'>(</span><span class='hs-conid'>PortNumber</span><span class='hs-layout'>)</span>
|
||||
<a name="line-37"></a>
|
||||
<a name="line-38"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Type</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>Type</span>
|
||||
<a name="line-39"></a>
|
||||
<a name="line-40"></a>
|
||||
<a name="line-41"></a><a name="Host"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>Host</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-42"></a> <span class='hs-conid'>Plain</span> <span class='hs-conid'>String</span>
|
||||
<a name="line-43"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Secure</span> <span class='hs-conid'>String</span>
|
||||
<a name="line-44"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Insecure</span> <span class='hs-conid'>String</span>
|
||||
<a name="line-45"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Ord</span><span class='hs-layout'>)</span>
|
||||
<a name="line-46"></a>
|
||||
<a name="line-47"></a><a name="Ldap"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Ldap</span>
|
||||
<a name="line-48"></a> <span class='hs-layout'>{</span> <span class='hs-varid'>client</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TQueue</span> <span class='hs-conid'>ClientMessage</span>
|
||||
<a name="line-49"></a> <span class='hs-layout'>}</span> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Eq</span><span class='hs-layout'>)</span>
|
||||
<a name="line-50"></a>
|
||||
<a name="line-51"></a><a name="ClientMessage"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>ClientMessage</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>New</span> <span class='hs-conid'>Request</span> <span class='hs-layout'>(</span><span class='hs-conid'>TMVar</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>ProtocolServerOp</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-52"></a><a name="Request"></a><span class='hs-keyword'>type</span> <span class='hs-conid'>Request</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>ProtocolClientOp</span>
|
||||
<a name="line-53"></a><a name="InMessage"></a><span class='hs-keyword'>type</span> <span class='hs-conid'>InMessage</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>ProtocolServerOp</span>
|
||||
<a name="line-54"></a><a name="Response"></a><span class='hs-keyword'>type</span> <span class='hs-conid'>Response</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>NonEmpty</span> <span class='hs-conid'>InMessage</span>
|
||||
<a name="line-55"></a>
|
||||
<a name="line-56"></a><a name="Async"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>Async</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Async</span> <span class='hs-layout'>(</span><span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-varid'>a</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-57"></a>
|
||||
<a name="line-58"></a><a name="instance%20Functor%20Async"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>Functor</span> <span class='hs-conid'>Async</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-59"></a> <span class='hs-varid'>fmap</span> <span class='hs-varid'>f</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-varid'>stm</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Async</span> <span class='hs-layout'>(</span><span class='hs-varid'>fmap</span> <span class='hs-layout'>(</span><span class='hs-varid'>fmap</span> <span class='hs-varid'>f</span><span class='hs-layout'>)</span> <span class='hs-varid'>stm</span><span class='hs-layout'>)</span>
|
||||
<a name="line-60"></a>
|
||||
<a name="line-61"></a>
|
||||
<a name="line-62"></a><a name="Dn"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Dn</span> <span class='hs-conid'>Text</span>
|
||||
<a name="line-63"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>)</span>
|
||||
<a name="line-64"></a>
|
||||
<a name="line-65"></a><a name="RelativeDn"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>RelativeDn</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>RelativeDn</span> <span class='hs-conid'>Text</span>
|
||||
<a name="line-66"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>)</span>
|
||||
<a name="line-67"></a>
|
||||
<a name="line-68"></a><a name="Oid"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>Oid</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Oid</span> <span class='hs-conid'>ByteString</span>
|
||||
<a name="line-69"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>)</span>
|
||||
<a name="line-70"></a>
|
||||
<a name="line-71"></a><a name="Password"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>Password</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Password</span> <span class='hs-conid'>ByteString</span>
|
||||
<a name="line-72"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>)</span>
|
||||
<a name="line-73"></a>
|
||||
<a name="line-74"></a>
|
||||
<a name="line-75"></a><a name="ResponseError"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>ResponseError</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-76"></a> <span class='hs-conid'>ResponseInvalid</span> <span class='hs-conid'>Request</span> <span class='hs-conid'>Response</span>
|
||||
<a name="line-77"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>ResponseErrorCode</span> <span class='hs-conid'>Request</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>ResultCode</span> <span class='hs-conid'>Dn</span> <span class='hs-conid'>Text</span>
|
||||
<a name="line-78"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>,</span> <span class='hs-conid'>Typeable</span><span class='hs-layout'>)</span>
|
||||
<a name="line-79"></a>
|
||||
<a name="line-80"></a><a name="instance%20Either%20e%20a%20-%3e%20IO%20a%20raise%20=%20either%20throwIO%20return"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>Exception</span> <span class='hs-conid'>ResponseError</span>
|
||||
<a name="line-81"></a>
|
||||
<a name="line-82"></a>
|
||||
<a name="line-83"></a>
|
||||
<a name="line-84"></a><a name="Attr"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>Attr</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Attr</span> <span class='hs-conid'>Text</span>
|
||||
<a name="line-85"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>)</span>
|
||||
<a name="line-86"></a>
|
||||
<a name="line-87"></a><a name="AttrList"></a><span class='hs-keyword'>type</span> <span class='hs-conid'>AttrList</span> <span class='hs-varid'>f</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyglyph'>[</span><span class='hs-layout'>(</span><span class='hs-conid'>Attr</span><span class='hs-layout'>,</span> <span class='hs-varid'>f</span> <span class='hs-conid'>ByteString</span><span class='hs-layout'>)</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-88"></a>
|
||||
<a name="line-89"></a><a name="unAttr"></a><span class='hs-comment'>-- 'Attr' unwrapper. This is a separate function not to turn 'Attr''s</span>
|
||||
<a name="line-90"></a><span class='hs-comment'>-- 'Show' instance into complete and utter shit.</span>
|
||||
<a name="line-91"></a><span class='hs-definition'>unAttr</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Attr</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Text</span>
|
||||
<a name="line-92"></a><span class='hs-definition'>unAttr</span> <span class='hs-layout'>(</span><span class='hs-conid'>Attr</span> <span class='hs-varid'>a</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>a</span>
|
||||
<a name="line-93"></a>
|
||||
<a name="line-94"></a>
|
||||
<a name="line-95"></a><a name="wait"></a><span class='hs-definition'>wait</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Async</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-varid'>a</span><span class='hs-layout'>)</span>
|
||||
<a name="line-96"></a><span class='hs-definition'>wait</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>atomically</span> <span class='hs-varop'>.</span> <span class='hs-varid'>waitSTM</span>
|
||||
<a name="line-97"></a>
|
||||
<a name="line-98"></a><a name="waitSTM"></a><span class='hs-definition'>waitSTM</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Async</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-varid'>a</span><span class='hs-layout'>)</span>
|
||||
<a name="line-99"></a><span class='hs-definition'>waitSTM</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-varid'>stm</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>stm</span>
|
||||
<a name="line-100"></a>
|
||||
<a name="line-101"></a>
|
||||
<a name="line-102"></a><a name="sendRequest"></a><span class='hs-definition'>sendRequest</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-layout'>(</span><span class='hs-conid'>Response</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-varid'>a</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Request</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-varid'>a</span><span class='hs-layout'>)</span>
|
||||
<a name="line-103"></a><span class='hs-definition'>sendRequest</span> <span class='hs-varid'>l</span> <span class='hs-varid'>p</span> <span class='hs-varid'>msg</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-104"></a> <span class='hs-keyword'>do</span> <span class='hs-varid'>var</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>newEmptyTMVar</span>
|
||||
<a name="line-105"></a> <span class='hs-varid'>writeRequest</span> <span class='hs-varid'>l</span> <span class='hs-varid'>var</span> <span class='hs-varid'>msg</span>
|
||||
<a name="line-106"></a> <span class='hs-varid'>return</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-layout'>(</span><span class='hs-varid'>fmap</span> <span class='hs-varid'>p</span> <span class='hs-layout'>(</span><span class='hs-varid'>readTMVar</span> <span class='hs-varid'>var</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-107"></a>
|
||||
<a name="line-108"></a><a name="writeRequest"></a><span class='hs-definition'>writeRequest</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>TMVar</span> <span class='hs-conid'>Response</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Request</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>STM</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-109"></a><span class='hs-definition'>writeRequest</span> <span class='hs-conid'>Ldap</span> <span class='hs-layout'>{</span> <span class='hs-varid'>client</span> <span class='hs-layout'>}</span> <span class='hs-varid'>var</span> <span class='hs-varid'>msg</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>writeTQueue</span> <span class='hs-varid'>client</span> <span class='hs-layout'>(</span><span class='hs-conid'>New</span> <span class='hs-varid'>msg</span> <span class='hs-varid'>var</span><span class='hs-layout'>)</span>
|
||||
<a name="line-110"></a>
|
||||
<a name="line-111"></a><a name="raise"></a><span class='hs-definition'>raise</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Exception</span> <span class='hs-varid'>e</span> <span class='hs-keyglyph'>=></span> <span class='hs-conid'>Either</span> <span class='hs-varid'>e</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-varid'>a</span>
|
||||
<a name="line-112"></a><span class='hs-definition'>raise</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>either</span> <span class='hs-varid'>throwIO</span> <span class='hs-varid'>return</span>
|
||||
</pre></body>
|
||||
</html>
|
||||
102
src/Ldap-Client-Modify.html
Normal file
102
src/Ldap-Client-Modify.html
Normal file
@ -0,0 +1,102 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<!-- Generated by HsColour, http://code.haskell.org/~malcolm/hscolour/ -->
|
||||
<title>src/Ldap/Client/Modify.hs</title>
|
||||
<link type='text/css' rel='stylesheet' href='hscolour.css' />
|
||||
</head>
|
||||
<body>
|
||||
<pre><a name="line-1"></a><span class='hs-keyword'>module</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Modify</span>
|
||||
<a name="line-2"></a> <span class='hs-layout'>(</span> <span class='hs-conid'>Operation</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-3"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>modify</span>
|
||||
<a name="line-4"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>modifyEither</span>
|
||||
<a name="line-5"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>modifyAsync</span>
|
||||
<a name="line-6"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>modifyAsyncSTM</span>
|
||||
<a name="line-7"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>modifyDn</span>
|
||||
<a name="line-8"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>modifyDnEither</span>
|
||||
<a name="line-9"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>modifyDnAsync</span>
|
||||
<a name="line-10"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>modifyDnAsyncSTM</span>
|
||||
<a name="line-11"></a> <span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-12"></a>
|
||||
<a name="line-13"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Monad</span><span class='hs-varop'>.</span><span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-conid'>STM</span><span class='hs-layout'>,</span> <span class='hs-varid'>atomically</span><span class='hs-layout'>)</span>
|
||||
<a name="line-14"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>ByteString</span> <span class='hs-layout'>(</span><span class='hs-conid'>ByteString</span><span class='hs-layout'>)</span>
|
||||
<a name="line-15"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>List</span><span class='hs-varop'>.</span><span class='hs-conid'>NonEmpty</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span><span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conop'>:|</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-16"></a>
|
||||
<a name="line-17"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Type</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>Type</span>
|
||||
<a name="line-18"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Internal</span>
|
||||
<a name="line-19"></a>
|
||||
<a name="line-20"></a>
|
||||
<a name="line-21"></a><a name="Operation"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>Operation</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-22"></a> <span class='hs-conid'>Delete</span> <span class='hs-conid'>Attr</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>ByteString</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-23"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Add</span> <span class='hs-conid'>Attr</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>ByteString</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-24"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Replace</span> <span class='hs-conid'>Attr</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>ByteString</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-25"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>)</span>
|
||||
<a name="line-26"></a>
|
||||
<a name="line-27"></a><a name="modify"></a><span class='hs-definition'>modify</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>Operation</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-28"></a><span class='hs-definition'>modify</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-keyword'>as</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-29"></a> <span class='hs-varid'>raise</span> <span class='hs-varop'>=<<</span> <span class='hs-varid'>modifyEither</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-keyword'>as</span>
|
||||
<a name="line-30"></a>
|
||||
<a name="line-31"></a><a name="modifyEither"></a><span class='hs-definition'>modifyEither</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>Operation</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-32"></a><span class='hs-definition'>modifyEither</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-keyword'>as</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-33"></a> <span class='hs-varid'>wait</span> <span class='hs-varop'>=<<</span> <span class='hs-varid'>modifyAsync</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-keyword'>as</span>
|
||||
<a name="line-34"></a>
|
||||
<a name="line-35"></a><a name="modifyAsync"></a><span class='hs-definition'>modifyAsync</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>Operation</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-36"></a><span class='hs-definition'>modifyAsync</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-keyword'>as</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-37"></a> <span class='hs-varid'>atomically</span> <span class='hs-layout'>(</span><span class='hs-varid'>modifyAsyncSTM</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-keyword'>as</span><span class='hs-layout'>)</span>
|
||||
<a name="line-38"></a>
|
||||
<a name="line-39"></a><a name="modifyAsyncSTM"></a><span class='hs-definition'>modifyAsyncSTM</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>Operation</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-40"></a><span class='hs-definition'>modifyAsyncSTM</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>xs</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-41"></a> <span class='hs-keyword'>let</span> <span class='hs-varid'>req</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>modifyRequest</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>xs</span> <span class='hs-keyword'>in</span> <span class='hs-varid'>sendRequest</span> <span class='hs-varid'>l</span> <span class='hs-layout'>(</span><span class='hs-varid'>modifyResult</span> <span class='hs-varid'>req</span><span class='hs-layout'>)</span> <span class='hs-varid'>req</span>
|
||||
<a name="line-42"></a>
|
||||
<a name="line-43"></a><a name="modifyRequest"></a><span class='hs-definition'>modifyRequest</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>Operation</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Request</span>
|
||||
<a name="line-44"></a><span class='hs-definition'>modifyRequest</span> <span class='hs-layout'>(</span><span class='hs-conid'>Dn</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span> <span class='hs-varid'>xs</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-45"></a> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>ModifyRequest</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapDn</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-varid'>map</span> <span class='hs-varid'>f</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span>
|
||||
<a name="line-46"></a> <span class='hs-keyword'>where</span>
|
||||
<a name="line-47"></a> <span class='hs-varid'>f</span> <span class='hs-layout'>(</span><span class='hs-conid'>Delete</span> <span class='hs-layout'>(</span><span class='hs-conid'>Attr</span> <span class='hs-varid'>k</span><span class='hs-layout'>)</span> <span class='hs-varid'>vs</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-48"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Delete</span><span class='hs-layout'>,</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>PartialAttribute</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeDescription</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>k</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-49"></a> <span class='hs-layout'>(</span><span class='hs-varid'>map</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeValue</span> <span class='hs-varid'>vs</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-50"></a> <span class='hs-varid'>f</span> <span class='hs-layout'>(</span><span class='hs-conid'>Add</span> <span class='hs-layout'>(</span><span class='hs-conid'>Attr</span> <span class='hs-varid'>k</span><span class='hs-layout'>)</span> <span class='hs-varid'>vs</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-51"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Add</span><span class='hs-layout'>,</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>PartialAttribute</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeDescription</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>k</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-52"></a> <span class='hs-layout'>(</span><span class='hs-varid'>map</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeValue</span> <span class='hs-varid'>vs</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-53"></a> <span class='hs-varid'>f</span> <span class='hs-layout'>(</span><span class='hs-conid'>Replace</span> <span class='hs-layout'>(</span><span class='hs-conid'>Attr</span> <span class='hs-varid'>k</span><span class='hs-layout'>)</span> <span class='hs-varid'>vs</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-54"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Replace</span><span class='hs-layout'>,</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>PartialAttribute</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeDescription</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>k</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-55"></a> <span class='hs-layout'>(</span><span class='hs-varid'>map</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeValue</span> <span class='hs-varid'>vs</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-56"></a>
|
||||
<a name="line-57"></a><a name="modifyResult"></a><span class='hs-definition'>modifyResult</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Request</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Response</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-58"></a><span class='hs-definition'>modifyResult</span> <span class='hs-varid'>req</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>ModifyResponse</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapResult</span> <span class='hs-varid'>code</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapDn</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>msg</span><span class='hs-layout'>)</span> <span class='hs-keyword'>_</span><span class='hs-layout'>)</span> <span class='hs-conop'>:|</span> <span class='hs-conid'>[]</span><span class='hs-layout'>)</span>
|
||||
<a name="line-59"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Success</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>code</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Right</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-60"></a> <span class='hs-keyglyph'>|</span> <span class='hs-varid'>otherwise</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Left</span> <span class='hs-layout'>(</span><span class='hs-conid'>ResponseErrorCode</span> <span class='hs-varid'>req</span> <span class='hs-varid'>code</span> <span class='hs-layout'>(</span><span class='hs-conid'>Dn</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span> <span class='hs-varid'>msg</span><span class='hs-layout'>)</span>
|
||||
<a name="line-61"></a><span class='hs-definition'>modifyResult</span> <span class='hs-varid'>req</span> <span class='hs-varid'>res</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Left</span> <span class='hs-layout'>(</span><span class='hs-conid'>ResponseInvalid</span> <span class='hs-varid'>req</span> <span class='hs-varid'>res</span><span class='hs-layout'>)</span>
|
||||
<a name="line-62"></a>
|
||||
<a name="line-63"></a>
|
||||
<a name="line-64"></a><a name="modifyDn"></a><span class='hs-definition'>modifyDn</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>RelativeDn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Bool</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-65"></a><span class='hs-definition'>modifyDn</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>rdn</span> <span class='hs-varid'>del</span> <span class='hs-varid'>new</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-66"></a> <span class='hs-varid'>raise</span> <span class='hs-varop'>=<<</span> <span class='hs-varid'>modifyDnEither</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>rdn</span> <span class='hs-varid'>del</span> <span class='hs-varid'>new</span>
|
||||
<a name="line-67"></a>
|
||||
<a name="line-68"></a><a name="modifyDnEither"></a><span class='hs-definition'>modifyDnEither</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>RelativeDn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Bool</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-69"></a><span class='hs-definition'>modifyDnEither</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>rdn</span> <span class='hs-varid'>del</span> <span class='hs-varid'>new</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-70"></a> <span class='hs-varid'>wait</span> <span class='hs-varop'>=<<</span> <span class='hs-varid'>modifyDnAsync</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>rdn</span> <span class='hs-varid'>del</span> <span class='hs-varid'>new</span>
|
||||
<a name="line-71"></a>
|
||||
<a name="line-72"></a><a name="modifyDnAsync"></a><span class='hs-definition'>modifyDnAsync</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>RelativeDn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Bool</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-73"></a><span class='hs-definition'>modifyDnAsync</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>rdn</span> <span class='hs-varid'>del</span> <span class='hs-varid'>new</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-74"></a> <span class='hs-varid'>atomically</span> <span class='hs-layout'>(</span><span class='hs-varid'>modifyDnAsyncSTM</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>rdn</span> <span class='hs-varid'>del</span> <span class='hs-varid'>new</span><span class='hs-layout'>)</span>
|
||||
<a name="line-75"></a>
|
||||
<a name="line-76"></a><a name="modifyDnAsyncSTM"></a><span class='hs-definition'>modifyDnAsyncSTM</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>RelativeDn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Bool</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span>
|
||||
<a name="line-77"></a><span class='hs-definition'>modifyDnAsyncSTM</span> <span class='hs-varid'>l</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>rdn</span> <span class='hs-varid'>del</span> <span class='hs-varid'>new</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-78"></a> <span class='hs-keyword'>let</span> <span class='hs-varid'>req</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>modifyDnRequest</span> <span class='hs-varid'>dn</span> <span class='hs-varid'>rdn</span> <span class='hs-varid'>del</span> <span class='hs-varid'>new</span> <span class='hs-keyword'>in</span> <span class='hs-varid'>sendRequest</span> <span class='hs-varid'>l</span> <span class='hs-layout'>(</span><span class='hs-varid'>modifyDnResult</span> <span class='hs-varid'>req</span><span class='hs-layout'>)</span> <span class='hs-varid'>req</span>
|
||||
<a name="line-79"></a>
|
||||
<a name="line-80"></a><a name="modifyDnRequest"></a><span class='hs-definition'>modifyDnRequest</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>RelativeDn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Bool</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Request</span>
|
||||
<a name="line-81"></a><span class='hs-definition'>modifyDnRequest</span> <span class='hs-layout'>(</span><span class='hs-conid'>Dn</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>RelativeDn</span> <span class='hs-varid'>rdn</span><span class='hs-layout'>)</span> <span class='hs-varid'>del</span> <span class='hs-varid'>new</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-82"></a> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>ModifyDnRequest</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapDn</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-83"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>RelativeLdapDn</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>rdn</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-84"></a> <span class='hs-varid'>del</span>
|
||||
<a name="line-85"></a> <span class='hs-layout'>(</span><span class='hs-varid'>fmap</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>Dn</span> <span class='hs-varid'>dn'</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapDn</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>dn'</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-varid'>new</span><span class='hs-layout'>)</span>
|
||||
<a name="line-86"></a>
|
||||
<a name="line-87"></a><a name="modifyDnResult"></a><span class='hs-definition'>modifyDnResult</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Request</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Response</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-88"></a><span class='hs-definition'>modifyDnResult</span> <span class='hs-varid'>req</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>ModifyDnResponse</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapResult</span> <span class='hs-varid'>code</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapDn</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>msg</span><span class='hs-layout'>)</span> <span class='hs-keyword'>_</span><span class='hs-layout'>)</span> <span class='hs-conop'>:|</span> <span class='hs-conid'>[]</span><span class='hs-layout'>)</span>
|
||||
<a name="line-89"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Success</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>code</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Right</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-90"></a> <span class='hs-keyglyph'>|</span> <span class='hs-varid'>otherwise</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Left</span> <span class='hs-layout'>(</span><span class='hs-conid'>ResponseErrorCode</span> <span class='hs-varid'>req</span> <span class='hs-varid'>code</span> <span class='hs-layout'>(</span><span class='hs-conid'>Dn</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span> <span class='hs-varid'>msg</span><span class='hs-layout'>)</span>
|
||||
<a name="line-91"></a><span class='hs-definition'>modifyDnResult</span> <span class='hs-varid'>req</span> <span class='hs-varid'>res</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Left</span> <span class='hs-layout'>(</span><span class='hs-conid'>ResponseInvalid</span> <span class='hs-varid'>req</span> <span class='hs-varid'>res</span><span class='hs-layout'>)</span>
|
||||
</pre></body>
|
||||
</html>
|
||||
189
src/Ldap-Client-Search.html
Normal file
189
src/Ldap-Client-Search.html
Normal file
@ -0,0 +1,189 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<!-- Generated by HsColour, http://code.haskell.org/~malcolm/hscolour/ -->
|
||||
<title>src/Ldap/Client/Search.hs</title>
|
||||
<link type='text/css' rel='stylesheet' href='hscolour.css' />
|
||||
</head>
|
||||
<body>
|
||||
<pre><a name="line-1"></a><span class='hs-comment'>{-# LANGUAGE CPP #-}</span>
|
||||
<a name="line-2"></a><span class='hs-comment'>{-# LANGUAGE NamedFieldPuns #-}</span>
|
||||
<a name="line-3"></a><span class='hs-keyword'>module</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Search</span>
|
||||
<a name="line-4"></a> <span class='hs-layout'>(</span> <span class='hs-varid'>search</span>
|
||||
<a name="line-5"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>searchEither</span>
|
||||
<a name="line-6"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>searchAsync</span>
|
||||
<a name="line-7"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>searchAsyncSTM</span>
|
||||
<a name="line-8"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Search</span>
|
||||
<a name="line-9"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Mod</span>
|
||||
<a name="line-10"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Scope</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-11"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>scope</span>
|
||||
<a name="line-12"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>size</span>
|
||||
<a name="line-13"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>time</span>
|
||||
<a name="line-14"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>typesOnly</span>
|
||||
<a name="line-15"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>derefAliases</span>
|
||||
<a name="line-16"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Filter</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-17"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>SearchEntry</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-18"></a> <span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-19"></a>
|
||||
<a name="line-20"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Monad</span><span class='hs-varop'>.</span><span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-conid'>STM</span><span class='hs-layout'>,</span> <span class='hs-varid'>atomically</span><span class='hs-layout'>)</span>
|
||||
<a name="line-21"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>ByteString</span> <span class='hs-layout'>(</span><span class='hs-conid'>ByteString</span><span class='hs-layout'>)</span>
|
||||
<a name="line-22"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Int</span> <span class='hs-layout'>(</span><span class='hs-conid'>Int32</span><span class='hs-layout'>)</span>
|
||||
<a name="line-23"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>List</span><span class='hs-varop'>.</span><span class='hs-conid'>NonEmpty</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span><span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conop'>:|</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-24"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>List</span><span class='hs-varop'>.</span><span class='hs-conid'>NonEmpty</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>NonEmpty</span>
|
||||
<a name="line-25"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Maybe</span> <span class='hs-layout'>(</span><span class='hs-varid'>mapMaybe</span><span class='hs-layout'>)</span>
|
||||
<a name="line-26"></a><span class='hs-cpp'>#if __GLASGOW_HASKELL__ >= 710</span>
|
||||
<a name="line-27"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Semigroup</span> <span class='hs-layout'>(</span><span class='hs-conid'>Semigroup</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-28"></a><span class='hs-cpp'>#else</span>
|
||||
<a name="line-29"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Semigroup</span> <span class='hs-layout'>(</span><span class='hs-conid'>Semigroup</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span><span class='hs-layout'>,</span> <span class='hs-conid'>Monoid</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-30"></a><span class='hs-cpp'>#endif</span>
|
||||
<a name="line-31"></a>
|
||||
<a name="line-32"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Type</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>Type</span>
|
||||
<a name="line-33"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Internal</span>
|
||||
<a name="line-34"></a>
|
||||
<a name="line-35"></a>
|
||||
<a name="line-36"></a><a name="search"></a><span class='hs-definition'>search</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Mod</span> <span class='hs-conid'>Search</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Filter</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>Attr</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>SearchEntry</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-37"></a><span class='hs-definition'>search</span> <span class='hs-varid'>l</span> <span class='hs-varid'>base</span> <span class='hs-varid'>opts</span> <span class='hs-varid'>flt</span> <span class='hs-varid'>attributes</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-38"></a> <span class='hs-varid'>raise</span> <span class='hs-varop'>=<<</span> <span class='hs-varid'>searchEither</span> <span class='hs-varid'>l</span> <span class='hs-varid'>base</span> <span class='hs-varid'>opts</span> <span class='hs-varid'>flt</span> <span class='hs-varid'>attributes</span>
|
||||
<a name="line-39"></a>
|
||||
<a name="line-40"></a><a name="searchEither"></a><span class='hs-definition'>searchEither</span>
|
||||
<a name="line-41"></a> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span>
|
||||
<a name="line-42"></a> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span>
|
||||
<a name="line-43"></a> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Mod</span> <span class='hs-conid'>Search</span>
|
||||
<a name="line-44"></a> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Filter</span>
|
||||
<a name="line-45"></a> <span class='hs-keyglyph'>-></span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>Attr</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-46"></a> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>SearchEntry</span><span class='hs-keyglyph'>]</span><span class='hs-layout'>)</span>
|
||||
<a name="line-47"></a><span class='hs-definition'>searchEither</span> <span class='hs-varid'>l</span> <span class='hs-varid'>base</span> <span class='hs-varid'>opts</span> <span class='hs-varid'>flt</span> <span class='hs-varid'>attributes</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-48"></a> <span class='hs-varid'>wait</span> <span class='hs-varop'>=<<</span> <span class='hs-varid'>searchAsync</span> <span class='hs-varid'>l</span> <span class='hs-varid'>base</span> <span class='hs-varid'>opts</span> <span class='hs-varid'>flt</span> <span class='hs-varid'>attributes</span>
|
||||
<a name="line-49"></a>
|
||||
<a name="line-50"></a><a name="searchAsync"></a><span class='hs-definition'>searchAsync</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Mod</span> <span class='hs-conid'>Search</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Filter</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>Attr</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>SearchEntry</span><span class='hs-keyglyph'>]</span><span class='hs-layout'>)</span>
|
||||
<a name="line-51"></a><span class='hs-definition'>searchAsync</span> <span class='hs-varid'>l</span> <span class='hs-varid'>base</span> <span class='hs-varid'>opts</span> <span class='hs-varid'>flt</span> <span class='hs-varid'>attributes</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-52"></a> <span class='hs-varid'>atomically</span> <span class='hs-layout'>(</span><span class='hs-varid'>searchAsyncSTM</span> <span class='hs-varid'>l</span> <span class='hs-varid'>base</span> <span class='hs-varid'>opts</span> <span class='hs-varid'>flt</span> <span class='hs-varid'>attributes</span><span class='hs-layout'>)</span>
|
||||
<a name="line-53"></a>
|
||||
<a name="line-54"></a><a name="searchAsyncSTM"></a><span class='hs-definition'>searchAsyncSTM</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Mod</span> <span class='hs-conid'>Search</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Filter</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>Attr</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>SearchEntry</span><span class='hs-keyglyph'>]</span><span class='hs-layout'>)</span>
|
||||
<a name="line-55"></a><span class='hs-definition'>searchAsyncSTM</span> <span class='hs-varid'>l</span> <span class='hs-varid'>base</span> <span class='hs-varid'>opts</span> <span class='hs-varid'>flt</span> <span class='hs-varid'>attributes</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-56"></a> <span class='hs-keyword'>let</span> <span class='hs-varid'>req</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>searchRequest</span> <span class='hs-varid'>base</span> <span class='hs-varid'>opts</span> <span class='hs-varid'>flt</span> <span class='hs-varid'>attributes</span> <span class='hs-keyword'>in</span> <span class='hs-varid'>sendRequest</span> <span class='hs-varid'>l</span> <span class='hs-layout'>(</span><span class='hs-varid'>searchResult</span> <span class='hs-varid'>req</span><span class='hs-layout'>)</span> <span class='hs-varid'>req</span>
|
||||
<a name="line-57"></a>
|
||||
<a name="line-58"></a><a name="searchRequest"></a><span class='hs-definition'>searchRequest</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Dn</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Mod</span> <span class='hs-conid'>Search</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Filter</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>Attr</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Request</span>
|
||||
<a name="line-59"></a><span class='hs-definition'>searchRequest</span> <span class='hs-layout'>(</span><span class='hs-conid'>Dn</span> <span class='hs-varid'>base</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>Mod</span> <span class='hs-varid'>m</span><span class='hs-layout'>)</span> <span class='hs-varid'>flt</span> <span class='hs-varid'>attributes</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-60"></a> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>SearchRequest</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapDn</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>base</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-61"></a> <span class='hs-sel'>_scope</span>
|
||||
<a name="line-62"></a> <span class='hs-sel'>_derefAliases</span>
|
||||
<a name="line-63"></a> <span class='hs-sel'>_size</span>
|
||||
<a name="line-64"></a> <span class='hs-sel'>_time</span>
|
||||
<a name="line-65"></a> <span class='hs-sel'>_typesOnly</span>
|
||||
<a name="line-66"></a> <span class='hs-layout'>(</span><span class='hs-varid'>fromFilter</span> <span class='hs-varid'>flt</span><span class='hs-layout'>)</span>
|
||||
<a name="line-67"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeSelection</span> <span class='hs-layout'>(</span><span class='hs-varid'>map</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varop'>.</span> <span class='hs-varid'>unAttr</span><span class='hs-layout'>)</span> <span class='hs-varid'>attributes</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-68"></a> <span class='hs-keyword'>where</span>
|
||||
<a name="line-69"></a> <span class='hs-conid'>Search</span> <span class='hs-layout'>{</span> <span class='hs-sel'>_scope</span><span class='hs-layout'>,</span> <span class='hs-sel'>_derefAliases</span><span class='hs-layout'>,</span> <span class='hs-sel'>_size</span><span class='hs-layout'>,</span> <span class='hs-sel'>_time</span><span class='hs-layout'>,</span> <span class='hs-sel'>_typesOnly</span> <span class='hs-layout'>}</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-70"></a> <span class='hs-varid'>m</span> <span class='hs-varid'>defaultSearch</span>
|
||||
<a name="line-71"></a> <span class='hs-varid'>fromFilter</span> <span class='hs-layout'>(</span><span class='hs-conid'>Not</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Not</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromFilter</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span>
|
||||
<a name="line-72"></a> <span class='hs-varid'>fromFilter</span> <span class='hs-layout'>(</span><span class='hs-conid'>And</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>And</span> <span class='hs-layout'>(</span><span class='hs-varid'>fmap</span> <span class='hs-varid'>fromFilter</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span>
|
||||
<a name="line-73"></a> <span class='hs-varid'>fromFilter</span> <span class='hs-layout'>(</span><span class='hs-conid'>Or</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Or</span> <span class='hs-layout'>(</span><span class='hs-varid'>fmap</span> <span class='hs-varid'>fromFilter</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span>
|
||||
<a name="line-74"></a> <span class='hs-varid'>fromFilter</span> <span class='hs-layout'>(</span><span class='hs-conid'>Present</span> <span class='hs-layout'>(</span><span class='hs-conid'>Attr</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-75"></a> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Present</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeDescription</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-76"></a> <span class='hs-varid'>fromFilter</span> <span class='hs-layout'>(</span><span class='hs-conid'>Attr</span> <span class='hs-varid'>x</span> <span class='hs-conop'>:=</span> <span class='hs-varid'>y</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-77"></a> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>EqualityMatch</span>
|
||||
<a name="line-78"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeValueAssertion</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeDescription</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-79"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AssertionValue</span> <span class='hs-varid'>y</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-80"></a> <span class='hs-varid'>fromFilter</span> <span class='hs-layout'>(</span><span class='hs-conid'>Attr</span> <span class='hs-varid'>x</span> <span class='hs-conop'>:>=</span> <span class='hs-varid'>y</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-81"></a> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>GreaterOrEqual</span>
|
||||
<a name="line-82"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeValueAssertion</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeDescription</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-83"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AssertionValue</span> <span class='hs-varid'>y</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-84"></a> <span class='hs-varid'>fromFilter</span> <span class='hs-layout'>(</span><span class='hs-conid'>Attr</span> <span class='hs-varid'>x</span> <span class='hs-conop'>:<=</span> <span class='hs-varid'>y</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-85"></a> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LessOrEqual</span>
|
||||
<a name="line-86"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeValueAssertion</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeDescription</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-87"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AssertionValue</span> <span class='hs-varid'>y</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-88"></a> <span class='hs-varid'>fromFilter</span> <span class='hs-layout'>(</span><span class='hs-conid'>Attr</span> <span class='hs-varid'>x</span> <span class='hs-conop'>:~=</span> <span class='hs-varid'>y</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-89"></a> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>ApproxMatch</span>
|
||||
<a name="line-90"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeValueAssertion</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeDescription</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-91"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AssertionValue</span> <span class='hs-varid'>y</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-92"></a> <span class='hs-varid'>fromFilter</span> <span class='hs-layout'>(</span><span class='hs-conid'>Attr</span> <span class='hs-varid'>x</span> <span class='hs-conop'>:=*</span> <span class='hs-layout'>(</span><span class='hs-varid'>mi</span><span class='hs-layout'>,</span> <span class='hs-varid'>xs</span><span class='hs-layout'>,</span> <span class='hs-varid'>mf</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-93"></a> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Substrings</span>
|
||||
<a name="line-94"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>SubstringFilter</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeDescription</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-95"></a> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span><span class='hs-varop'>.</span><span class='hs-varid'>fromList</span> <span class='hs-layout'>(</span><span class='hs-varid'>concat</span>
|
||||
<a name="line-96"></a> <span class='hs-keyglyph'>[</span> <span class='hs-varid'>maybe</span> <span class='hs-conid'>[]</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>i</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Initial</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AssertionValue</span> <span class='hs-varid'>i</span><span class='hs-layout'>)</span><span class='hs-keyglyph'>]</span><span class='hs-layout'>)</span> <span class='hs-varid'>mi</span>
|
||||
<a name="line-97"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>fmap</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Any</span> <span class='hs-varop'>.</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AssertionValue</span><span class='hs-layout'>)</span> <span class='hs-varid'>xs</span>
|
||||
<a name="line-98"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>maybe</span> <span class='hs-conid'>[]</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>f</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Final</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AssertionValue</span> <span class='hs-varid'>f</span><span class='hs-layout'>)</span><span class='hs-keyglyph'>]</span><span class='hs-layout'>)</span> <span class='hs-varid'>mf</span>
|
||||
<a name="line-99"></a> <span class='hs-keyglyph'>]</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-100"></a> <span class='hs-varid'>fromFilter</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-varid'>mx</span><span class='hs-layout'>,</span> <span class='hs-varid'>mr</span><span class='hs-layout'>,</span> <span class='hs-varid'>b</span><span class='hs-layout'>)</span> <span class='hs-conop'>::=</span> <span class='hs-varid'>y</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-101"></a> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>ExtensibleMatch</span>
|
||||
<a name="line-102"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>MatchingRuleAssertion</span> <span class='hs-layout'>(</span><span class='hs-varid'>fmap</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>Attr</span> <span class='hs-varid'>r</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>MatchingRuleId</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>r</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-varid'>mr</span><span class='hs-layout'>)</span>
|
||||
<a name="line-103"></a> <span class='hs-layout'>(</span><span class='hs-varid'>fmap</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>Attr</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeDescription</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-varid'>mx</span><span class='hs-layout'>)</span>
|
||||
<a name="line-104"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AssertionValue</span> <span class='hs-varid'>y</span><span class='hs-layout'>)</span>
|
||||
<a name="line-105"></a> <span class='hs-varid'>b</span><span class='hs-layout'>)</span>
|
||||
<a name="line-106"></a>
|
||||
<a name="line-107"></a><a name="searchResult"></a><span class='hs-definition'>searchResult</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Request</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Response</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Either</span> <span class='hs-conid'>ResponseError</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>SearchEntry</span><span class='hs-keyglyph'>]</span>
|
||||
<a name="line-108"></a><span class='hs-definition'>searchResult</span> <span class='hs-varid'>req</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>SearchResultDone</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapResult</span> <span class='hs-varid'>code</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapDn</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>dn'</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-109"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>msg</span><span class='hs-layout'>)</span> <span class='hs-keyword'>_</span><span class='hs-layout'>)</span> <span class='hs-conop'>:|</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span>
|
||||
<a name="line-110"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Success</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>code</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Right</span> <span class='hs-layout'>(</span><span class='hs-varid'>mapMaybe</span> <span class='hs-varid'>g</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span>
|
||||
<a name="line-111"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AdminLimitExceeded</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>code</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Right</span> <span class='hs-layout'>(</span><span class='hs-varid'>mapMaybe</span> <span class='hs-varid'>g</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span>
|
||||
<a name="line-112"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>SizeLimitExceeded</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>code</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Right</span> <span class='hs-layout'>(</span><span class='hs-varid'>mapMaybe</span> <span class='hs-varid'>g</span> <span class='hs-varid'>xs</span><span class='hs-layout'>)</span>
|
||||
<a name="line-113"></a> <span class='hs-keyglyph'>|</span> <span class='hs-varid'>otherwise</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Left</span> <span class='hs-layout'>(</span><span class='hs-conid'>ResponseErrorCode</span> <span class='hs-varid'>req</span> <span class='hs-varid'>code</span> <span class='hs-layout'>(</span><span class='hs-conid'>Dn</span> <span class='hs-varid'>dn'</span><span class='hs-layout'>)</span> <span class='hs-varid'>msg</span><span class='hs-layout'>)</span>
|
||||
<a name="line-114"></a> <span class='hs-keyword'>where</span>
|
||||
<a name="line-115"></a> <span class='hs-varid'>g</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>SearchResultEntry</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapDn</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-116"></a> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>PartialAttributeList</span> <span class='hs-varid'>ys</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-117"></a> <span class='hs-conid'>Just</span> <span class='hs-layout'>(</span><span class='hs-conid'>SearchEntry</span> <span class='hs-layout'>(</span><span class='hs-conid'>Dn</span> <span class='hs-varid'>dn</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-varid'>map</span> <span class='hs-varid'>h</span> <span class='hs-varid'>ys</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-118"></a> <span class='hs-varid'>g</span> <span class='hs-keyword'>_</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Nothing</span>
|
||||
<a name="line-119"></a> <span class='hs-varid'>h</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>PartialAttribute</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeDescription</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapString</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-120"></a> <span class='hs-varid'>y</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-layout'>(</span><span class='hs-conid'>Attr</span> <span class='hs-varid'>x</span><span class='hs-layout'>,</span> <span class='hs-varid'>fmap</span> <span class='hs-varid'>j</span> <span class='hs-varid'>y</span><span class='hs-layout'>)</span>
|
||||
<a name="line-121"></a> <span class='hs-varid'>j</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>AttributeValue</span> <span class='hs-varid'>x</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>x</span>
|
||||
<a name="line-122"></a><span class='hs-definition'>searchResult</span> <span class='hs-varid'>req</span> <span class='hs-varid'>res</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Left</span> <span class='hs-layout'>(</span><span class='hs-conid'>ResponseInvalid</span> <span class='hs-varid'>req</span> <span class='hs-varid'>res</span><span class='hs-layout'>)</span>
|
||||
<a name="line-123"></a>
|
||||
<a name="line-124"></a><a name="Search"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>Search</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Search</span>
|
||||
<a name="line-125"></a> <span class='hs-layout'>{</span> <span class='hs-sel'>_scope</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Scope</span>
|
||||
<a name="line-126"></a> <span class='hs-layout'>,</span> <span class='hs-sel'>_derefAliases</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>DerefAliases</span>
|
||||
<a name="line-127"></a> <span class='hs-layout'>,</span> <span class='hs-sel'>_size</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Int32</span>
|
||||
<a name="line-128"></a> <span class='hs-layout'>,</span> <span class='hs-sel'>_time</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Int32</span>
|
||||
<a name="line-129"></a> <span class='hs-layout'>,</span> <span class='hs-sel'>_typesOnly</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Bool</span>
|
||||
<a name="line-130"></a> <span class='hs-layout'>}</span> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>)</span>
|
||||
<a name="line-131"></a>
|
||||
<a name="line-132"></a><a name="defaultSearch"></a><span class='hs-definition'>defaultSearch</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Search</span>
|
||||
<a name="line-133"></a><span class='hs-definition'>defaultSearch</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Search</span>
|
||||
<a name="line-134"></a> <span class='hs-layout'>{</span> <span class='hs-sel'>_scope</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>BaseObject</span>
|
||||
<a name="line-135"></a> <span class='hs-layout'>,</span> <span class='hs-sel'>_size</span> <span class='hs-keyglyph'>=</span> <span class='hs-num'>0</span>
|
||||
<a name="line-136"></a> <span class='hs-layout'>,</span> <span class='hs-sel'>_time</span> <span class='hs-keyglyph'>=</span> <span class='hs-num'>0</span>
|
||||
<a name="line-137"></a> <span class='hs-layout'>,</span> <span class='hs-sel'>_typesOnly</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>False</span>
|
||||
<a name="line-138"></a> <span class='hs-layout'>,</span> <span class='hs-sel'>_derefAliases</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>NeverDerefAliases</span>
|
||||
<a name="line-139"></a> <span class='hs-layout'>}</span>
|
||||
<a name="line-140"></a>
|
||||
<a name="line-141"></a><a name="scope"></a><span class='hs-definition'>scope</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Scope</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Mod</span> <span class='hs-conid'>Search</span>
|
||||
<a name="line-142"></a><span class='hs-definition'>scope</span> <span class='hs-varid'>x</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Mod</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>y</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>y</span> <span class='hs-layout'>{</span> <span class='hs-sel'>_scope</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>x</span> <span class='hs-layout'>}</span><span class='hs-layout'>)</span>
|
||||
<a name="line-143"></a>
|
||||
<a name="line-144"></a><a name="size"></a><span class='hs-definition'>size</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Int32</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Mod</span> <span class='hs-conid'>Search</span>
|
||||
<a name="line-145"></a><span class='hs-definition'>size</span> <span class='hs-varid'>x</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Mod</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>y</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>y</span> <span class='hs-layout'>{</span> <span class='hs-sel'>_size</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>x</span> <span class='hs-layout'>}</span><span class='hs-layout'>)</span>
|
||||
<a name="line-146"></a>
|
||||
<a name="line-147"></a><a name="time"></a><span class='hs-definition'>time</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Int32</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Mod</span> <span class='hs-conid'>Search</span>
|
||||
<a name="line-148"></a><span class='hs-definition'>time</span> <span class='hs-varid'>x</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Mod</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>y</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>y</span> <span class='hs-layout'>{</span> <span class='hs-sel'>_time</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>x</span> <span class='hs-layout'>}</span><span class='hs-layout'>)</span>
|
||||
<a name="line-149"></a>
|
||||
<a name="line-150"></a><a name="typesOnly"></a><span class='hs-definition'>typesOnly</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Bool</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Mod</span> <span class='hs-conid'>Search</span>
|
||||
<a name="line-151"></a><span class='hs-definition'>typesOnly</span> <span class='hs-varid'>x</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Mod</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>y</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>y</span> <span class='hs-layout'>{</span> <span class='hs-sel'>_typesOnly</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>x</span> <span class='hs-layout'>}</span><span class='hs-layout'>)</span>
|
||||
<a name="line-152"></a>
|
||||
<a name="line-153"></a><a name="derefAliases"></a><span class='hs-definition'>derefAliases</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>DerefAliases</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Mod</span> <span class='hs-conid'>Search</span>
|
||||
<a name="line-154"></a><span class='hs-definition'>derefAliases</span> <span class='hs-varid'>x</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Mod</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>y</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>y</span> <span class='hs-layout'>{</span> <span class='hs-sel'>_derefAliases</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>x</span> <span class='hs-layout'>}</span><span class='hs-layout'>)</span>
|
||||
<a name="line-155"></a>
|
||||
<a name="line-156"></a><a name="Mod"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>Mod</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Mod</span> <span class='hs-layout'>(</span><span class='hs-varid'>a</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>a</span><span class='hs-layout'>)</span>
|
||||
<a name="line-157"></a>
|
||||
<a name="line-158"></a><a name="instance%20Semigroup%20(Mod%20a)"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>Semigroup</span> <span class='hs-layout'>(</span><span class='hs-conid'>Mod</span> <span class='hs-varid'>a</span><span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-159"></a> <span class='hs-conid'>Mod</span> <span class='hs-varid'>f</span> <span class='hs-varop'><></span> <span class='hs-conid'>Mod</span> <span class='hs-varid'>g</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Mod</span> <span class='hs-layout'>(</span><span class='hs-varid'>g</span> <span class='hs-varop'>.</span> <span class='hs-varid'>f</span><span class='hs-layout'>)</span>
|
||||
<a name="line-160"></a>
|
||||
<a name="line-161"></a><a name="instance%20Monoid%20(Mod%20a)"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>Monoid</span> <span class='hs-layout'>(</span><span class='hs-conid'>Mod</span> <span class='hs-varid'>a</span><span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-162"></a> <span class='hs-varid'>mempty</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Mod</span> <span class='hs-varid'>id</span>
|
||||
<a name="line-163"></a> <span class='hs-varid'>mappend</span> <span class='hs-keyglyph'>=</span> <span class='hs-layout'>(</span><span class='hs-varop'><></span><span class='hs-layout'>)</span>
|
||||
<a name="line-164"></a>
|
||||
<a name="line-165"></a><a name="Filter"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>Filter</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-166"></a> <span class='hs-conid'>Not</span> <span class='hs-conid'>Filter</span>
|
||||
<a name="line-167"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>And</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span> <span class='hs-conid'>Filter</span><span class='hs-layout'>)</span>
|
||||
<a name="line-168"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Or</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span> <span class='hs-conid'>Filter</span><span class='hs-layout'>)</span>
|
||||
<a name="line-169"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Present</span> <span class='hs-conid'>Attr</span>
|
||||
<a name="line-170"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Attr</span> <span class='hs-conop'>:=</span> <span class='hs-conid'>ByteString</span>
|
||||
<a name="line-171"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Attr</span> <span class='hs-conop'>:>=</span> <span class='hs-conid'>ByteString</span>
|
||||
<a name="line-172"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Attr</span> <span class='hs-conop'>:<=</span> <span class='hs-conid'>ByteString</span>
|
||||
<a name="line-173"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Attr</span> <span class='hs-conop'>:~=</span> <span class='hs-conid'>ByteString</span>
|
||||
<a name="line-174"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>Attr</span> <span class='hs-conop'>:=*</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>ByteString</span><span class='hs-layout'>,</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>ByteString</span><span class='hs-keyglyph'>]</span><span class='hs-layout'>,</span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>ByteString</span><span class='hs-layout'>)</span>
|
||||
<a name="line-175"></a> <span class='hs-keyglyph'>|</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>Attr</span><span class='hs-layout'>,</span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>Attr</span><span class='hs-layout'>,</span> <span class='hs-conid'>Bool</span><span class='hs-layout'>)</span> <span class='hs-conop'>::=</span> <span class='hs-conid'>ByteString</span>
|
||||
<a name="line-176"></a>
|
||||
<a name="line-177"></a><a name="SearchEntry"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>SearchEntry</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>SearchEntry</span> <span class='hs-conid'>Dn</span> <span class='hs-layout'>(</span><span class='hs-conid'>AttrList</span> <span class='hs-conid'>[]</span><span class='hs-layout'>)</span>
|
||||
<a name="line-178"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>)</span>
|
||||
</pre></body>
|
||||
</html>
|
||||
216
src/Ldap-Client.html
Normal file
216
src/Ldap-Client.html
Normal file
@ -0,0 +1,216 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<!-- Generated by HsColour, http://code.haskell.org/~malcolm/hscolour/ -->
|
||||
<title>src/Ldap/Client.hs</title>
|
||||
<link type='text/css' rel='stylesheet' href='hscolour.css' />
|
||||
</head>
|
||||
<body>
|
||||
<pre><a name="line-1"></a><span class='hs-comment'>{-# LANGUAGE CPP #-}</span>
|
||||
<a name="line-2"></a><span class='hs-comment'>{-# LANGUAGE BangPatterns #-}</span>
|
||||
<a name="line-3"></a><span class='hs-comment'>{-# LANGUAGE NamedFieldPuns #-}</span>
|
||||
<a name="line-4"></a><span class='hs-keyword'>module</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span>
|
||||
<a name="line-5"></a> <span class='hs-layout'>(</span> <span class='hs-conid'>Host</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-6"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Ldap</span>
|
||||
<a name="line-7"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>LdapError</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-8"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>ResponseError</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-9"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>ResultCode</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-10"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Async</span>
|
||||
<a name="line-11"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>with</span>
|
||||
<a name="line-12"></a> <span class='hs-comment'>-- * Bind</span>
|
||||
<a name="line-13"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>bind</span>
|
||||
<a name="line-14"></a> <span class='hs-comment'>-- * Search</span>
|
||||
<a name="line-15"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>search</span>
|
||||
<a name="line-16"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>SearchEntry</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-17"></a> <span class='hs-comment'>-- ** Search modifiers</span>
|
||||
<a name="line-18"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Search</span>
|
||||
<a name="line-19"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Mod</span>
|
||||
<a name="line-20"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>scope</span>
|
||||
<a name="line-21"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Scope</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-22"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>size</span>
|
||||
<a name="line-23"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>time</span>
|
||||
<a name="line-24"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>typesOnly</span>
|
||||
<a name="line-25"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>derefAliases</span>
|
||||
<a name="line-26"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Filter</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-27"></a> <span class='hs-comment'>-- * Modify</span>
|
||||
<a name="line-28"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>modify</span>
|
||||
<a name="line-29"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Operation</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-30"></a> <span class='hs-comment'>-- * Add</span>
|
||||
<a name="line-31"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>add</span>
|
||||
<a name="line-32"></a> <span class='hs-comment'>-- * Delete</span>
|
||||
<a name="line-33"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>delete</span>
|
||||
<a name="line-34"></a> <span class='hs-comment'>-- * ModifyDn</span>
|
||||
<a name="line-35"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>modifyDn</span>
|
||||
<a name="line-36"></a> <span class='hs-comment'>-- * Compare</span>
|
||||
<a name="line-37"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>compare</span>
|
||||
<a name="line-38"></a> <span class='hs-comment'>-- * Extended</span>
|
||||
<a name="line-39"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>extended</span>
|
||||
<a name="line-40"></a> <span class='hs-comment'>-- * Waiting for completion</span>
|
||||
<a name="line-41"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>wait</span>
|
||||
<a name="line-42"></a> <span class='hs-comment'>-- * Miscellanous</span>
|
||||
<a name="line-43"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Dn</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-44"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>RelativeDn</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-45"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Oid</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-46"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Password</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-47"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>AttrList</span>
|
||||
<a name="line-48"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Attr</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-49"></a> <span class='hs-comment'>-- * Re-exports</span>
|
||||
<a name="line-50"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>NonEmpty</span>
|
||||
<a name="line-51"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>PortNumber</span>
|
||||
<a name="line-52"></a> <span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
|
||||
<a name="line-53"></a>
|
||||
<a name="line-54"></a><span class='hs-cpp'>#if __GLASGOW_HASKELL__ < 710</span>
|
||||
<a name="line-55"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Applicative</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-varop'><$></span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-56"></a><span class='hs-cpp'>#endif</span>
|
||||
<a name="line-57"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Concurrent</span><span class='hs-varop'>.</span><span class='hs-conid'>Async</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>Async</span>
|
||||
<a name="line-58"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Concurrent</span><span class='hs-varop'>.</span><span class='hs-conid'>STM</span> <span class='hs-layout'>(</span><span class='hs-varid'>atomically</span><span class='hs-layout'>)</span>
|
||||
<a name="line-59"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Concurrent</span><span class='hs-varop'>.</span><span class='hs-conid'>STM</span><span class='hs-varop'>.</span><span class='hs-conid'>TMVar</span> <span class='hs-layout'>(</span><span class='hs-varid'>putTMVar</span><span class='hs-layout'>)</span>
|
||||
<a name="line-60"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Concurrent</span><span class='hs-varop'>.</span><span class='hs-conid'>STM</span><span class='hs-varop'>.</span><span class='hs-conid'>TQueue</span> <span class='hs-layout'>(</span><span class='hs-conid'>TQueue</span><span class='hs-layout'>,</span> <span class='hs-varid'>newTQueueIO</span><span class='hs-layout'>,</span> <span class='hs-varid'>writeTQueue</span><span class='hs-layout'>,</span> <span class='hs-varid'>readTQueue</span><span class='hs-layout'>)</span>
|
||||
<a name="line-61"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Exception</span> <span class='hs-layout'>(</span><span class='hs-conid'>Handler</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span><span class='hs-layout'>,</span> <span class='hs-varid'>bracket</span><span class='hs-layout'>,</span> <span class='hs-varid'>throwIO</span><span class='hs-layout'>,</span> <span class='hs-varid'>catches</span><span class='hs-layout'>)</span>
|
||||
<a name="line-62"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Monad</span> <span class='hs-layout'>(</span><span class='hs-varid'>forever</span><span class='hs-layout'>)</span>
|
||||
<a name="line-63"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>ASN1</span><span class='hs-varop'>.</span><span class='hs-conid'>BinaryEncoding</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>Asn1</span>
|
||||
<a name="line-64"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>ASN1</span><span class='hs-varop'>.</span><span class='hs-conid'>Encoding</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>Asn1</span>
|
||||
<a name="line-65"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>ASN1</span><span class='hs-varop'>.</span><span class='hs-conid'>Error</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>Asn1</span>
|
||||
<a name="line-66"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>ByteString</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>ByteString</span>
|
||||
<a name="line-67"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>ByteString</span><span class='hs-varop'>.</span><span class='hs-conid'>Lazy</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>ByteString</span><span class='hs-varop'>.</span><span class='hs-conid'>Lazy</span>
|
||||
<a name="line-68"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Foldable</span> <span class='hs-layout'>(</span><span class='hs-varid'>traverse_</span><span class='hs-layout'>,</span> <span class='hs-varid'>asum</span><span class='hs-layout'>)</span>
|
||||
<a name="line-69"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Function</span> <span class='hs-layout'>(</span><span class='hs-varid'>fix</span><span class='hs-layout'>)</span>
|
||||
<a name="line-70"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>List</span><span class='hs-varop'>.</span><span class='hs-conid'>NonEmpty</span> <span class='hs-layout'>(</span><span class='hs-conid'>NonEmpty</span><span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conop'>:|</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-71"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Map</span><span class='hs-varop'>.</span><span class='hs-conid'>Strict</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>Map</span>
|
||||
<a name="line-72"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Monoid</span> <span class='hs-layout'>(</span><span class='hs-conid'>Endo</span><span class='hs-layout'>(</span><span class='hs-varid'>appEndo</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-73"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Network</span><span class='hs-varop'>.</span><span class='hs-conid'>Connection</span> <span class='hs-layout'>(</span><span class='hs-conid'>Connection</span><span class='hs-layout'>)</span>
|
||||
<a name="line-74"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Network</span><span class='hs-varop'>.</span><span class='hs-conid'>Connection</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>Conn</span>
|
||||
<a name="line-75"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>System</span><span class='hs-varop'>.</span><span class='hs-conid'>IO</span><span class='hs-varop'>.</span><span class='hs-conid'>Error</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>IO</span>
|
||||
<a name="line-76"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Prelude</span> <span class='hs-varid'>hiding</span> <span class='hs-layout'>(</span><span class='hs-varid'>compare</span><span class='hs-layout'>)</span>
|
||||
<a name="line-77"></a>
|
||||
<a name="line-78"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>ToAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>ToAsn1</span><span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-79"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>FromAsn1</span> <span class='hs-layout'>(</span><span class='hs-conid'>FromAsn1</span><span class='hs-layout'>,</span> <span class='hs-varid'>parseAsn1</span><span class='hs-layout'>)</span>
|
||||
<a name="line-80"></a><span class='hs-keyword'>import</span> <span class='hs-keyword'>qualified</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>Type</span> <span class='hs-keyword'>as</span> <span class='hs-conid'>Type</span>
|
||||
<a name="line-81"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Internal</span>
|
||||
<a name="line-82"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Bind</span> <span class='hs-layout'>(</span><span class='hs-varid'>bind</span><span class='hs-layout'>,</span> <span class='hs-varid'>unbindAsync</span><span class='hs-layout'>)</span>
|
||||
<a name="line-83"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Search</span>
|
||||
<a name="line-84"></a> <span class='hs-layout'>(</span> <span class='hs-varid'>search</span>
|
||||
<a name="line-85"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Search</span>
|
||||
<a name="line-86"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Mod</span>
|
||||
<a name="line-87"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>scope</span>
|
||||
<a name="line-88"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>size</span>
|
||||
<a name="line-89"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>time</span>
|
||||
<a name="line-90"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>typesOnly</span>
|
||||
<a name="line-91"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>derefAliases</span>
|
||||
<a name="line-92"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Filter</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-93"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>SearchEntry</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span>
|
||||
<a name="line-94"></a> <span class='hs-layout'>)</span>
|
||||
<a name="line-95"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Modify</span> <span class='hs-layout'>(</span><span class='hs-conid'>Operation</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span><span class='hs-layout'>,</span> <span class='hs-varid'>modify</span><span class='hs-layout'>,</span> <span class='hs-varid'>modifyDn</span><span class='hs-layout'>)</span>
|
||||
<a name="line-96"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Add</span> <span class='hs-layout'>(</span><span class='hs-varid'>add</span><span class='hs-layout'>)</span>
|
||||
<a name="line-97"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Delete</span> <span class='hs-layout'>(</span><span class='hs-varid'>delete</span><span class='hs-layout'>)</span>
|
||||
<a name="line-98"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Compare</span> <span class='hs-layout'>(</span><span class='hs-varid'>compare</span><span class='hs-layout'>)</span>
|
||||
<a name="line-99"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Ldap</span><span class='hs-varop'>.</span><span class='hs-conid'>Client</span><span class='hs-varop'>.</span><span class='hs-conid'>Extended</span> <span class='hs-layout'>(</span><span class='hs-varid'>extended</span><span class='hs-layout'>)</span>
|
||||
<a name="line-100"></a>
|
||||
<a name="line-101"></a>
|
||||
<a name="line-102"></a><a name="newLdap"></a><span class='hs-definition'>newLdap</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Ldap</span>
|
||||
<a name="line-103"></a><span class='hs-definition'>newLdap</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Ldap</span>
|
||||
<a name="line-104"></a> <span class='hs-varop'><$></span> <span class='hs-varid'>newTQueueIO</span>
|
||||
<a name="line-105"></a>
|
||||
<a name="line-106"></a><a name="LdapError"></a><span class='hs-keyword'>data</span> <span class='hs-conid'>LdapError</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-107"></a> <span class='hs-conid'>IOError</span> <span class='hs-conid'>IOError</span>
|
||||
<a name="line-108"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>ParseError</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>ASN1Error</span>
|
||||
<a name="line-109"></a> <span class='hs-keyglyph'>|</span> <span class='hs-conid'>ResponseError</span> <span class='hs-conid'>ResponseError</span>
|
||||
<a name="line-110"></a> <span class='hs-keyword'>deriving</span> <span class='hs-layout'>(</span><span class='hs-conid'>Show</span><span class='hs-layout'>,</span> <span class='hs-conid'>Eq</span><span class='hs-layout'>)</span>
|
||||
<a name="line-111"></a>
|
||||
<a name="line-112"></a><a name="with"></a><span class='hs-comment'>-- | The entrypoint into LDAP.</span>
|
||||
<a name="line-113"></a><span class='hs-definition'>with</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Host</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>PortNumber</span> <span class='hs-keyglyph'>-></span> <span class='hs-layout'>(</span><span class='hs-conid'>Ldap</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-varid'>a</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Either</span> <span class='hs-conid'>LdapError</span> <span class='hs-varid'>a</span><span class='hs-layout'>)</span>
|
||||
<a name="line-114"></a><span class='hs-definition'>with</span> <span class='hs-varid'>host</span> <span class='hs-varid'>port</span> <span class='hs-varid'>f</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-115"></a> <span class='hs-varid'>context</span> <span class='hs-keyglyph'><-</span> <span class='hs-conid'>Conn</span><span class='hs-varop'>.</span><span class='hs-varid'>initConnectionContext</span>
|
||||
<a name="line-116"></a> <span class='hs-varid'>bracket</span> <span class='hs-layout'>(</span><span class='hs-conid'>Conn</span><span class='hs-varop'>.</span><span class='hs-varid'>connectTo</span> <span class='hs-varid'>context</span> <span class='hs-varid'>params</span><span class='hs-layout'>)</span> <span class='hs-conid'>Conn</span><span class='hs-varop'>.</span><span class='hs-varid'>connectionClose</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>conn</span> <span class='hs-keyglyph'>-></span>
|
||||
<a name="line-117"></a> <span class='hs-varid'>bracket</span> <span class='hs-varid'>newLdap</span> <span class='hs-varid'>unbindAsync</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>l</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-118"></a> <span class='hs-varid'>inq</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>newTQueueIO</span>
|
||||
<a name="line-119"></a> <span class='hs-varid'>outq</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>newTQueueIO</span>
|
||||
<a name="line-120"></a> <span class='hs-conid'>Async</span><span class='hs-varop'>.</span><span class='hs-varid'>withAsync</span> <span class='hs-layout'>(</span><span class='hs-varid'>input</span> <span class='hs-varid'>inq</span> <span class='hs-varid'>conn</span><span class='hs-layout'>)</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>i</span> <span class='hs-keyglyph'>-></span>
|
||||
<a name="line-121"></a> <span class='hs-conid'>Async</span><span class='hs-varop'>.</span><span class='hs-varid'>withAsync</span> <span class='hs-layout'>(</span><span class='hs-varid'>output</span> <span class='hs-varid'>outq</span> <span class='hs-varid'>conn</span><span class='hs-layout'>)</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>o</span> <span class='hs-keyglyph'>-></span>
|
||||
<a name="line-122"></a> <span class='hs-conid'>Async</span><span class='hs-varop'>.</span><span class='hs-varid'>withAsync</span> <span class='hs-layout'>(</span><span class='hs-varid'>dispatch</span> <span class='hs-varid'>l</span> <span class='hs-varid'>inq</span> <span class='hs-varid'>outq</span><span class='hs-layout'>)</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>d</span> <span class='hs-keyglyph'>-></span>
|
||||
<a name="line-123"></a> <span class='hs-conid'>Async</span><span class='hs-varop'>.</span><span class='hs-varid'>withAsync</span> <span class='hs-layout'>(</span><span class='hs-varid'>f</span> <span class='hs-varid'>l</span><span class='hs-layout'>)</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>u</span> <span class='hs-keyglyph'>-></span>
|
||||
<a name="line-124"></a> <span class='hs-varid'>fmap</span> <span class='hs-layout'>(</span><span class='hs-conid'>Right</span> <span class='hs-varop'>.</span> <span class='hs-varid'>snd</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>Async</span><span class='hs-varop'>.</span><span class='hs-varid'>waitAnyCancel</span> <span class='hs-keyglyph'>[</span><span class='hs-varid'>i</span><span class='hs-layout'>,</span> <span class='hs-varid'>o</span><span class='hs-layout'>,</span> <span class='hs-varid'>d</span><span class='hs-layout'>,</span> <span class='hs-varid'>u</span><span class='hs-keyglyph'>]</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-125"></a> <span class='hs-varop'>`catches`</span>
|
||||
<a name="line-126"></a> <span class='hs-keyglyph'>[</span> <span class='hs-conid'>Handler</span> <span class='hs-layout'>(</span><span class='hs-varid'>return</span> <span class='hs-varop'>.</span> <span class='hs-conid'>Left</span> <span class='hs-varop'>.</span> <span class='hs-conid'>IOError</span><span class='hs-layout'>)</span>
|
||||
<a name="line-127"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Handler</span> <span class='hs-layout'>(</span><span class='hs-varid'>return</span> <span class='hs-varop'>.</span> <span class='hs-conid'>Left</span> <span class='hs-varop'>.</span> <span class='hs-conid'>ParseError</span><span class='hs-layout'>)</span>
|
||||
<a name="line-128"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Handler</span> <span class='hs-layout'>(</span><span class='hs-varid'>return</span> <span class='hs-varop'>.</span> <span class='hs-conid'>Left</span> <span class='hs-varop'>.</span> <span class='hs-conid'>ResponseError</span><span class='hs-layout'>)</span>
|
||||
<a name="line-129"></a> <span class='hs-keyglyph'>]</span>
|
||||
<a name="line-130"></a> <span class='hs-keyword'>where</span>
|
||||
<a name="line-131"></a> <span class='hs-varid'>params</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Conn</span><span class='hs-varop'>.</span><span class='hs-conid'>ConnectionParams</span>
|
||||
<a name="line-132"></a> <span class='hs-layout'>{</span> <span class='hs-conid'>Conn</span><span class='hs-varop'>.</span><span class='hs-varid'>connectionHostname</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-133"></a> <span class='hs-keyword'>case</span> <span class='hs-varid'>host</span> <span class='hs-keyword'>of</span>
|
||||
<a name="line-134"></a> <span class='hs-conid'>Plain</span> <span class='hs-varid'>h</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>h</span>
|
||||
<a name="line-135"></a> <span class='hs-conid'>Secure</span> <span class='hs-varid'>h</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>h</span>
|
||||
<a name="line-136"></a> <span class='hs-conid'>Insecure</span> <span class='hs-varid'>h</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>h</span>
|
||||
<a name="line-137"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Conn</span><span class='hs-varop'>.</span><span class='hs-varid'>connectionPort</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>port</span>
|
||||
<a name="line-138"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Conn</span><span class='hs-varop'>.</span><span class='hs-varid'>connectionUseSecure</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-139"></a> <span class='hs-keyword'>case</span> <span class='hs-varid'>host</span> <span class='hs-keyword'>of</span>
|
||||
<a name="line-140"></a> <span class='hs-conid'>Plain</span> <span class='hs-keyword'>_</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Nothing</span>
|
||||
<a name="line-141"></a> <span class='hs-conid'>Secure</span> <span class='hs-keyword'>_</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Just</span> <span class='hs-conid'>Conn</span><span class='hs-varop'>.</span><span class='hs-conid'>TLSSettingsSimple</span>
|
||||
<a name="line-142"></a> <span class='hs-layout'>{</span> <span class='hs-conid'>Conn</span><span class='hs-varop'>.</span><span class='hs-varid'>settingDisableCertificateValidation</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>False</span>
|
||||
<a name="line-143"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Conn</span><span class='hs-varop'>.</span><span class='hs-varid'>settingDisableSession</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>False</span>
|
||||
<a name="line-144"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Conn</span><span class='hs-varop'>.</span><span class='hs-varid'>settingUseServerName</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>False</span>
|
||||
<a name="line-145"></a> <span class='hs-layout'>}</span>
|
||||
<a name="line-146"></a> <span class='hs-conid'>Insecure</span> <span class='hs-keyword'>_</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Just</span> <span class='hs-conid'>Conn</span><span class='hs-varop'>.</span><span class='hs-conid'>TLSSettingsSimple</span>
|
||||
<a name="line-147"></a> <span class='hs-layout'>{</span> <span class='hs-conid'>Conn</span><span class='hs-varop'>.</span><span class='hs-varid'>settingDisableCertificateValidation</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>True</span>
|
||||
<a name="line-148"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Conn</span><span class='hs-varop'>.</span><span class='hs-varid'>settingDisableSession</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>False</span>
|
||||
<a name="line-149"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Conn</span><span class='hs-varop'>.</span><span class='hs-varid'>settingUseServerName</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>False</span>
|
||||
<a name="line-150"></a> <span class='hs-layout'>}</span>
|
||||
<a name="line-151"></a> <span class='hs-layout'>,</span> <span class='hs-conid'>Conn</span><span class='hs-varop'>.</span><span class='hs-varid'>connectionUseSocks</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Nothing</span>
|
||||
<a name="line-152"></a> <span class='hs-layout'>}</span>
|
||||
<a name="line-153"></a>
|
||||
<a name="line-154"></a><a name="input"></a><span class='hs-definition'>input</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>FromAsn1</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>=></span> <span class='hs-conid'>TQueue</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Connection</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-varid'>b</span>
|
||||
<a name="line-155"></a><span class='hs-definition'>input</span> <span class='hs-varid'>inq</span> <span class='hs-varid'>conn</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>flip</span> <span class='hs-varid'>fix</span> <span class='hs-conid'>[]</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>loop</span> <span class='hs-varid'>chunks</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-156"></a> <span class='hs-varid'>chunk</span> <span class='hs-keyglyph'><-</span> <span class='hs-conid'>Conn</span><span class='hs-varop'>.</span><span class='hs-varid'>connectionGet</span> <span class='hs-varid'>conn</span> <span class='hs-num'>8192</span>
|
||||
<a name="line-157"></a> <span class='hs-keyword'>case</span> <span class='hs-conid'>ByteString</span><span class='hs-varop'>.</span><span class='hs-varid'>length</span> <span class='hs-varid'>chunk</span> <span class='hs-keyword'>of</span>
|
||||
<a name="line-158"></a> <span class='hs-num'>0</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>throwIO</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span><span class='hs-varop'>.</span><span class='hs-varid'>mkIOError</span> <span class='hs-conid'>IO</span><span class='hs-varop'>.</span><span class='hs-varid'>eofErrorType</span> <span class='hs-str'>"Ldap.Client.input"</span> <span class='hs-conid'>Nothing</span> <span class='hs-conid'>Nothing</span><span class='hs-layout'>)</span>
|
||||
<a name="line-159"></a> <span class='hs-keyword'>_</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-160"></a> <span class='hs-keyword'>let</span> <span class='hs-varid'>chunks'</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>chunk</span> <span class='hs-conop'>:</span> <span class='hs-varid'>chunks</span>
|
||||
<a name="line-161"></a> <span class='hs-keyword'>case</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-varid'>decodeASN1</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>DER</span> <span class='hs-layout'>(</span><span class='hs-conid'>ByteString</span><span class='hs-varop'>.</span><span class='hs-conid'>Lazy</span><span class='hs-varop'>.</span><span class='hs-varid'>fromChunks</span> <span class='hs-layout'>(</span><span class='hs-varid'>reverse</span> <span class='hs-varid'>chunks'</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-keyword'>of</span>
|
||||
<a name="line-162"></a> <span class='hs-conid'>Left</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>ParsingPartial</span>
|
||||
<a name="line-163"></a> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>loop</span> <span class='hs-varid'>chunks'</span>
|
||||
<a name="line-164"></a> <span class='hs-conid'>Left</span> <span class='hs-varid'>e</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>throwIO</span> <span class='hs-varid'>e</span>
|
||||
<a name="line-165"></a> <span class='hs-conid'>Right</span> <span class='hs-varid'>asn1</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-166"></a> <span class='hs-varid'>flip</span> <span class='hs-varid'>fix</span> <span class='hs-varid'>asn1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>loop'</span> <span class='hs-varid'>asn1'</span> <span class='hs-keyglyph'>-></span>
|
||||
<a name="line-167"></a> <span class='hs-keyword'>case</span> <span class='hs-varid'>parseAsn1</span> <span class='hs-varid'>asn1'</span> <span class='hs-keyword'>of</span>
|
||||
<a name="line-168"></a> <span class='hs-conid'>Nothing</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>return</span> <span class='hs-conid'>()</span>
|
||||
<a name="line-169"></a> <span class='hs-conid'>Just</span> <span class='hs-layout'>(</span><span class='hs-varid'>asn1''</span><span class='hs-layout'>,</span> <span class='hs-varid'>a</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-170"></a> <span class='hs-varid'>atomically</span> <span class='hs-layout'>(</span><span class='hs-varid'>writeTQueue</span> <span class='hs-varid'>inq</span> <span class='hs-varid'>a</span><span class='hs-layout'>)</span>
|
||||
<a name="line-171"></a> <span class='hs-varid'>loop'</span> <span class='hs-varid'>asn1''</span>
|
||||
<a name="line-172"></a> <span class='hs-varid'>loop</span> <span class='hs-conid'>[]</span>
|
||||
<a name="line-173"></a>
|
||||
<a name="line-174"></a><a name="output"></a><span class='hs-definition'>output</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>ToAsn1</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>=></span> <span class='hs-conid'>TQueue</span> <span class='hs-varid'>a</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>Connection</span> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-varid'>b</span>
|
||||
<a name="line-175"></a><span class='hs-definition'>output</span> <span class='hs-varid'>out</span> <span class='hs-varid'>conn</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>forever</span> <span class='hs-varop'>$</span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-176"></a> <span class='hs-varid'>msg</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>atomically</span> <span class='hs-layout'>(</span><span class='hs-varid'>readTQueue</span> <span class='hs-varid'>out</span><span class='hs-layout'>)</span>
|
||||
<a name="line-177"></a> <span class='hs-conid'>Conn</span><span class='hs-varop'>.</span><span class='hs-varid'>connectionPut</span> <span class='hs-varid'>conn</span> <span class='hs-layout'>(</span><span class='hs-varid'>encode</span> <span class='hs-layout'>(</span><span class='hs-varid'>toAsn1</span> <span class='hs-varid'>msg</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
|
||||
<a name="line-178"></a> <span class='hs-keyword'>where</span>
|
||||
<a name="line-179"></a> <span class='hs-varid'>encode</span> <span class='hs-varid'>x</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-varid'>encodeASN1'</span> <span class='hs-conid'>Asn1</span><span class='hs-varop'>.</span><span class='hs-conid'>DER</span> <span class='hs-layout'>(</span><span class='hs-varid'>appEndo</span> <span class='hs-varid'>x</span> <span class='hs-conid'>[]</span><span class='hs-layout'>)</span>
|
||||
<a name="line-180"></a>
|
||||
<a name="line-181"></a><a name="dispatch"></a><span class='hs-definition'>dispatch</span>
|
||||
<a name="line-182"></a> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Ldap</span>
|
||||
<a name="line-183"></a> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>TQueue</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapMessage</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>ProtocolServerOp</span><span class='hs-layout'>)</span>
|
||||
<a name="line-184"></a> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>TQueue</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapMessage</span> <span class='hs-conid'>Request</span><span class='hs-layout'>)</span>
|
||||
<a name="line-185"></a> <span class='hs-keyglyph'>-></span> <span class='hs-conid'>IO</span> <span class='hs-varid'>a</span>
|
||||
<a name="line-186"></a><span class='hs-definition'>dispatch</span> <span class='hs-conid'>Ldap</span> <span class='hs-layout'>{</span> <span class='hs-varid'>client</span> <span class='hs-layout'>}</span> <span class='hs-varid'>inq</span> <span class='hs-varid'>outq</span> <span class='hs-keyglyph'>=</span>
|
||||
<a name="line-187"></a> <span class='hs-varid'>flip</span> <span class='hs-varid'>fix</span> <span class='hs-layout'>(</span><span class='hs-conid'>Map</span><span class='hs-varop'>.</span><span class='hs-varid'>empty</span><span class='hs-layout'>,</span> <span class='hs-conid'>Map</span><span class='hs-varop'>.</span><span class='hs-varid'>empty</span><span class='hs-layout'>,</span> <span class='hs-num'>1</span><span class='hs-layout'>)</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>loop</span> <span class='hs-layout'>(</span><span class='hs-varop'>!</span><span class='hs-varid'>got</span><span class='hs-layout'>,</span> <span class='hs-varop'>!</span><span class='hs-varid'>results</span><span class='hs-layout'>,</span> <span class='hs-varop'>!</span><span class='hs-varid'>counter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-></span>
|
||||
<a name="line-188"></a> <span class='hs-varid'>loop</span> <span class='hs-varop'>=<<</span> <span class='hs-varid'>atomically</span> <span class='hs-layout'>(</span><span class='hs-varid'>asum</span>
|
||||
<a name="line-189"></a> <span class='hs-keyglyph'>[</span> <span class='hs-keyword'>do</span> <span class='hs-conid'>New</span> <span class='hs-varid'>new</span> <span class='hs-varid'>var</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>readTQueue</span> <span class='hs-varid'>client</span>
|
||||
<a name="line-190"></a> <span class='hs-varid'>writeTQueue</span> <span class='hs-varid'>outq</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapMessage</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Id</span> <span class='hs-varid'>counter</span><span class='hs-layout'>)</span> <span class='hs-varid'>new</span> <span class='hs-conid'>Nothing</span><span class='hs-layout'>)</span>
|
||||
<a name="line-191"></a> <span class='hs-varid'>return</span> <span class='hs-layout'>(</span><span class='hs-varid'>got</span><span class='hs-layout'>,</span> <span class='hs-conid'>Map</span><span class='hs-varop'>.</span><span class='hs-varid'>insert</span> <span class='hs-layout'>(</span><span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>Id</span> <span class='hs-varid'>counter</span><span class='hs-layout'>)</span> <span class='hs-varid'>var</span> <span class='hs-varid'>results</span><span class='hs-layout'>,</span> <span class='hs-varid'>counter</span> <span class='hs-varop'>+</span> <span class='hs-num'>1</span><span class='hs-layout'>)</span>
|
||||
<a name="line-192"></a> <span class='hs-layout'>,</span> <span class='hs-keyword'>do</span> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>LdapMessage</span> <span class='hs-varid'>mid</span> <span class='hs-varid'>op</span> <span class='hs-keyword'>_</span> <span class='hs-keyglyph'><-</span> <span class='hs-varid'>readTQueue</span> <span class='hs-varid'>inq</span>
|
||||
<a name="line-193"></a> <span class='hs-keyword'>case</span> <span class='hs-varid'>op</span> <span class='hs-keyword'>of</span>
|
||||
<a name="line-194"></a> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>SearchResultEntry</span> <span class='hs-layout'>{</span><span class='hs-layout'>}</span> <span class='hs-keyglyph'>-></span>
|
||||
<a name="line-195"></a> <span class='hs-varid'>return</span> <span class='hs-layout'>(</span><span class='hs-conid'>Map</span><span class='hs-varop'>.</span><span class='hs-varid'>insertWith</span> <span class='hs-layout'>(</span><span class='hs-varop'>++</span><span class='hs-layout'>)</span> <span class='hs-varid'>mid</span> <span class='hs-keyglyph'>[</span><span class='hs-varid'>op</span><span class='hs-keyglyph'>]</span> <span class='hs-varid'>got</span><span class='hs-layout'>,</span> <span class='hs-varid'>results</span><span class='hs-layout'>,</span> <span class='hs-varid'>counter</span><span class='hs-layout'>)</span>
|
||||
<a name="line-196"></a> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>SearchResultReference</span> <span class='hs-layout'>{</span><span class='hs-layout'>}</span> <span class='hs-keyglyph'>-></span>
|
||||
<a name="line-197"></a> <span class='hs-varid'>return</span> <span class='hs-layout'>(</span><span class='hs-varid'>got</span><span class='hs-layout'>,</span> <span class='hs-varid'>results</span><span class='hs-layout'>,</span> <span class='hs-varid'>counter</span><span class='hs-layout'>)</span>
|
||||
<a name="line-198"></a> <span class='hs-conid'>Type</span><span class='hs-varop'>.</span><span class='hs-conid'>SearchResultDone</span> <span class='hs-layout'>{</span><span class='hs-layout'>}</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-199"></a> <span class='hs-keyword'>let</span> <span class='hs-varid'>stack</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Map</span><span class='hs-varop'>.</span><span class='hs-varid'>findWithDefault</span> <span class='hs-conid'>[]</span> <span class='hs-varid'>mid</span> <span class='hs-varid'>got</span>
|
||||
<a name="line-200"></a> <span class='hs-varid'>traverse_</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>var</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>putTMVar</span> <span class='hs-varid'>var</span> <span class='hs-layout'>(</span><span class='hs-varid'>op</span> <span class='hs-conop'>:|</span> <span class='hs-varid'>stack</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>Map</span><span class='hs-varop'>.</span><span class='hs-varid'>lookup</span> <span class='hs-varid'>mid</span> <span class='hs-varid'>results</span><span class='hs-layout'>)</span>
|
||||
<a name="line-201"></a> <span class='hs-varid'>return</span> <span class='hs-layout'>(</span><span class='hs-conid'>Map</span><span class='hs-varop'>.</span><span class='hs-varid'>delete</span> <span class='hs-varid'>mid</span> <span class='hs-varid'>got</span><span class='hs-layout'>,</span> <span class='hs-conid'>Map</span><span class='hs-varop'>.</span><span class='hs-varid'>delete</span> <span class='hs-varid'>mid</span> <span class='hs-varid'>results</span><span class='hs-layout'>,</span> <span class='hs-varid'>counter</span><span class='hs-layout'>)</span>
|
||||
<a name="line-202"></a> <span class='hs-keyword'>_</span> <span class='hs-keyglyph'>-></span> <span class='hs-keyword'>do</span>
|
||||
<a name="line-203"></a> <span class='hs-varid'>traverse_</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>var</span> <span class='hs-keyglyph'>-></span> <span class='hs-varid'>putTMVar</span> <span class='hs-varid'>var</span> <span class='hs-layout'>(</span><span class='hs-varid'>op</span> <span class='hs-conop'>:|</span> <span class='hs-conid'>[]</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>Map</span><span class='hs-varop'>.</span><span class='hs-varid'>lookup</span> <span class='hs-varid'>mid</span> <span class='hs-varid'>results</span><span class='hs-layout'>)</span>
|
||||
<a name="line-204"></a> <span class='hs-varid'>return</span> <span class='hs-layout'>(</span><span class='hs-conid'>Map</span><span class='hs-varop'>.</span><span class='hs-varid'>delete</span> <span class='hs-varid'>mid</span> <span class='hs-varid'>got</span><span class='hs-layout'>,</span> <span class='hs-conid'>Map</span><span class='hs-varop'>.</span><span class='hs-varid'>delete</span> <span class='hs-varid'>mid</span> <span class='hs-varid'>results</span><span class='hs-layout'>,</span> <span class='hs-varid'>counter</span><span class='hs-layout'>)</span>
|
||||
<a name="line-205"></a> <span class='hs-keyglyph'>]</span><span class='hs-layout'>)</span>
|
||||
</pre></body>
|
||||
</html>
|
||||
5
src/hscolour.css
Normal file
5
src/hscolour.css
Normal file
@ -0,0 +1,5 @@
|
||||
.hs-keyglyph, .hs-layout {color: red;}
|
||||
.hs-keyword {color: blue;}
|
||||
.hs-comment, .hs-comment a {color: green;}
|
||||
.hs-str, .hs-chr {color: teal;}
|
||||
.hs-keyword, .hs-conid, .hs-varid, .hs-conop, .hs-varop, .hs-num, .hs-cpp, .hs-sel, .hs-definition {}
|
||||
BIN
synopsis.png
Normal file
BIN
synopsis.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 11 KiB |
Loading…
Reference in New Issue
Block a user