8
8
<link rel="up" href="ch05.html" title="libxntlm API reference">
9
9
<link rel="prev" href="ch05.html" title="libxntlm API reference">
10
10
<link rel="next" href="evolution-exchange-xntlm-des.html" title="xntlm-des">
11
<meta name="generator" content="GTK-Doc V1.18.1 (XML mode)">
11
<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
12
12
<link rel="stylesheet" href="style.css" type="text/css">
14
14
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
37
37
</tr></table></div>
38
38
<div class="refsynopsisdiv">
39
39
<a name="evolution-exchange-xntlm.synopsis"></a><h2>Synopsis</h2>
40
<pre class="synopsis"><span class="returnvalue">GByteArray</span> * <a class="link" href="evolution-exchange-xntlm.html#xntlm-negotiate" title="xntlm_negotiate ()">xntlm_negotiate</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
41
<span class="returnvalue">gboolean</span> <a class="link" href="evolution-exchange-xntlm.html#xntlm-parse-challenge" title="xntlm_parse_challenge ()">xntlm_parse_challenge</a> (<em class="parameter"><code><span class="type">gpointer</span> challenge</code></em>,
42
<em class="parameter"><code><span class="type">gint</span> len</code></em>,
43
<em class="parameter"><code><span class="type">gchar</span> **nonce</code></em>,
44
<em class="parameter"><code><span class="type">gchar</span> **nt_domain</code></em>,
45
<em class="parameter"><code><span class="type">gchar</span> **w2k_domain</code></em>);
46
<span class="returnvalue">GByteArray</span> * <a class="link" href="evolution-exchange-xntlm.html#xntlm-authenticate" title="xntlm_authenticate ()">xntlm_authenticate</a> (<em class="parameter"><code>const <span class="type">gchar</span> *nonce</code></em>,
47
<em class="parameter"><code>const <span class="type">gchar</span> *domain</code></em>,
48
<em class="parameter"><code>const <span class="type">gchar</span> *user</code></em>,
49
<em class="parameter"><code>const <span class="type">gchar</span> *password</code></em>,
50
<em class="parameter"><code>const <span class="type">gchar</span> *workstation</code></em>);
40
<pre class="synopsis"><a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="returnvalue">GByteArray</span></a> * <a class="link" href="evolution-exchange-xntlm.html#xntlm-negotiate" title="xntlm_negotiate ()">xntlm_negotiate</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
41
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="evolution-exchange-xntlm.html#xntlm-parse-challenge" title="xntlm_parse_challenge ()">xntlm_parse_challenge</a> (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> challenge</code></em>,
42
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> len</code></em>,
43
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **nonce</code></em>,
44
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **nt_domain</code></em>,
45
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **w2k_domain</code></em>);
46
<a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="returnvalue">GByteArray</span></a> * <a class="link" href="evolution-exchange-xntlm.html#xntlm-authenticate" title="xntlm_authenticate ()">xntlm_authenticate</a> (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *nonce</code></em>,
47
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *domain</code></em>,
48
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *user</code></em>,
49
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *password</code></em>,
50
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *workstation</code></em>);
53
53
<div class="refsect1">
60
60
<a name="evolution-exchange-xntlm.details"></a><h2>Details</h2>
61
61
<div class="refsect2">
62
62
<a name="xntlm-negotiate"></a><h3>xntlm_negotiate ()</h3>
63
<pre class="programlisting"><span class="returnvalue">GByteArray</span> * xntlm_negotiate (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
63
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="returnvalue">GByteArray</span></a> * xntlm_negotiate (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
65
65
Creates an NTLM Type 1 (Negotiate) message
76
76
<div class="refsect2">
77
77
<a name="xntlm-parse-challenge"></a><h3>xntlm_parse_challenge ()</h3>
78
<pre class="programlisting"><span class="returnvalue">gboolean</span> xntlm_parse_challenge (<em class="parameter"><code><span class="type">gpointer</span> challenge</code></em>,
79
<em class="parameter"><code><span class="type">gint</span> len</code></em>,
80
<em class="parameter"><code><span class="type">gchar</span> **nonce</code></em>,
81
<em class="parameter"><code><span class="type">gchar</span> **nt_domain</code></em>,
82
<em class="parameter"><code><span class="type">gchar</span> **w2k_domain</code></em>);</pre>
78
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> xntlm_parse_challenge (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> challenge</code></em>,
79
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> len</code></em>,
80
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **nonce</code></em>,
81
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **nt_domain</code></em>,
82
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **w2k_domain</code></em>);</pre>
84
84
Attempts to parse the challenge in <em class="parameter"><code>challenge</code></em>. If <em class="parameter"><code>nonce</code></em> is
85
non-<a href="/home/chen/opt34/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL--CAPS"><code class="literal">NULL</code></a>, the 8-byte nonce from <em class="parameter"><code>challenge</code></em> will be returned in it.
86
Likewise, if <em class="parameter"><code>nt_domain</code></em> and/or <em class="parameter"><code>w2k_domain</code></em> are non-<a href="/home/chen/opt34/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL--CAPS"><code class="literal">NULL</code></a>, the
85
non-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the 8-byte nonce from <em class="parameter"><code>challenge</code></em> will be returned in it.
86
Likewise, if <em class="parameter"><code>nt_domain</code></em> and/or <em class="parameter"><code>w2k_domain</code></em> are non-<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the
87
87
server's domain names will be returned in them. The strings
88
returned must be freed with <code class="function">g_free()</code>.
88
returned must be freed with <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>.
90
90
<div class="variablelist"><table border="0">
91
91
<col align="left" valign="top">
103
103
<td><p><span class="term"><em class="parameter"><code>nonce</code></em> :</span></p></td>
104
<td>return variable for the challenge nonce, or <a href="/home/chen/opt34/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL--CAPS"><code class="literal">NULL</code></a>
104
<td>return variable for the challenge nonce, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
108
108
<td><p><span class="term"><em class="parameter"><code>nt_domain</code></em> :</span></p></td>
109
<td>return variable for the server NT domain, or <a href="/home/chen/opt34/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL--CAPS"><code class="literal">NULL</code></a>
109
<td>return variable for the server NT domain, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
113
113
<td><p><span class="term"><em class="parameter"><code>w2k_domain</code></em> :</span></p></td>
114
<td>return variable for the server W2k domain, or <a href="/home/chen/opt34/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL--CAPS"><code class="literal">NULL</code></a>
114
<td>return variable for the server W2k domain, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
118
118
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
120
<code class="literal">TRUE</code> if the challenge could be parsed,
121
<code class="literal">FALSE</code> otherwise.</td>
120
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the challenge could be parsed,
121
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
127
127
<div class="refsect2">
128
128
<a name="xntlm-authenticate"></a><h3>xntlm_authenticate ()</h3>
129
<pre class="programlisting"><span class="returnvalue">GByteArray</span> * xntlm_authenticate (<em class="parameter"><code>const <span class="type">gchar</span> *nonce</code></em>,
130
<em class="parameter"><code>const <span class="type">gchar</span> *domain</code></em>,
131
<em class="parameter"><code>const <span class="type">gchar</span> *user</code></em>,
132
<em class="parameter"><code>const <span class="type">gchar</span> *password</code></em>,
133
<em class="parameter"><code>const <span class="type">gchar</span> *workstation</code></em>);</pre>
129
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="returnvalue">GByteArray</span></a> * xntlm_authenticate (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *nonce</code></em>,
130
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *domain</code></em>,
131
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *user</code></em>,
132
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *password</code></em>,
133
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *workstation</code></em>);</pre>
135
135
Generates an NTLM Type 3 (Authenticate) message from the given
136
136
data. <em class="parameter"><code>workstation</code></em> is provided for completeness, but can basically
137
always be left <a href="/home/chen/opt34/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL--CAPS"><code class="literal">NULL</code></a>.
137
always be left <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
139
139
<div class="variablelist"><table border="0">
140
140
<col align="left" valign="top">
161
161
<td><p><span class="term"><em class="parameter"><code>workstation</code></em> :</span></p></td>
162
162
<td>the name of the local workstation authenticated
163
against, or <a href="/home/chen/opt34/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL--CAPS"><code class="literal">NULL</code></a>.</td>
163
against, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</td>
166
166
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>