Lines Matching full:span

15       <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
16 <li><a href="modules.html"><span>Modules</span></a></li>
17 <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
18 <li><a href="examples.html"><span>Examples</span></a></li>
24 <div class="fragment"><pre class="fragment"><span class="comment">/*</span>
25 <span class="comment"> * Copyright (c) 2006 - 2007 Kungliga Tekniska Högskolan</span>
26 <span class="comment"> * (Royal Institute of Technology, Stockholm, Sweden).</span>
27 <span class="comment"> * All rights reserved.</span>
28 <span class="comment"> *</span>
29 <span class="comment"> * Redistribution and use in source and binary forms, with or without</span>
30 <span class="comment"> * modification, are permitted provided that the following conditions</span>
31 <span class="comment"> * are met:</span>
32 <span class="comment"> *</span>
33 <span class="comment"> * 1. Redistributions of source code must retain the above copyright</span>
34 <span class="comment"> * notice, this list of conditions and the following disclaimer.</span>
35 <span class="comment"> *</span>
36 <span class="comment"> * 2. Redistributions in binary form must reproduce the above copyright</span>
37 <span class="comment"> * notice, this list of conditions and the following disclaimer in the</sp…
38 <span class="comment"> * documentation and/or other materials provided with the distribution.</s…
39 <span class="comment"> *</span>
40 <span class="comment"> * 3. Neither the name of KTH nor the names of its contributors may be</span>
41 <span class="comment"> * used to endorse or promote products derived from this software without<…
42 <span class="comment"> * specific prior written permission.</span>
43 <span class="comment"> *</span>
44 <span class="comment"> * THIS SOFTWARE IS PROVIDED BY KTH AND ITS CONTRIBUTORS ``AS IS'' AND ANY</s…
45 <span class="comment"> * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE</span>
46 <span class="comment"> * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR</span>
47 <span class="comment"> * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL KTH OR ITS CONTRIBUTORS BE</span>
48 <span class="comment"> * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR</span>
49 <span class="comment"> * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF</span>
50 <span class="comment"> * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR</span>
51 <span class="comment"> * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,</spa…
52 <span class="comment"> * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR</s…
53 <span class="comment"> * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF</sp…
54 <span class="comment"> * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
55 <span class="comment"> */</span>
57 <span class="preprocessor">#include "config.h"</span>
59 <span class="preprocessor">#include &lt;stdio.h&gt;</span>
60 <span class="preprocessor">#include &lt;err.h&gt;</span>
61 <span class="preprocessor">#include &lt;roken.h&gt;</span>
62 <span class="preprocessor">#include &lt;getarg.h&gt;</span>
64 <span class="preprocessor">#include &lt;krb5-types.h&gt;</span> <span class="comment">/* or &lt;int…
65 <span class="preprocessor">#include &lt;heimntlm.h&gt;</span>
67 <span class="keyword">static</span> <span class="keywordtype">int</span>
68 test_parse(<span class="keywordtype">void</span>)
70 …<span class="keyword">const</span> <span class="keywordtype">char</span> *user = <span class="stri…
71 *domain = <span class="stringliteral">"mydomain"</span>,
72 *password = <span class="stringliteral">"digestpassword"</span>,
73 *target = <span class="stringliteral">"DOMAIN"</span>;
74 …<span class="keyword">struct </span><a name="_a0"></a><a class="code" href="structntlm__type1.html…
75 …<span class="keyword">struct </span><a name="_a1"></a><a class="code" href="structntlm__type2.html…
76 …<span class="keyword">struct </span><a name="_a2"></a><a class="code" href="structntlm__type3.html…
77 …<span class="keyword">struct </span><a name="_a3"></a><a class="code" href="structntlm__buf.html">…
78 <span class="keywordtype">int</span> ret, flags;
80 memset(&amp;type1, 0, <span class="keyword">sizeof</span>(type1));
89 <span class="keywordflow">if</span> (ret)
90 errx(1, <span class="stringliteral">"heim_ntlm_encode_type1"</span>);
92 memset(&amp;type1, 0, <span class="keyword">sizeof</span>(type1));
96 <span class="keywordflow">if</span> (ret)
97 errx(1, <span class="stringliteral">"heim_ntlm_encode_type1"</span>);
101 <span class="comment">/*</span>
102 <span class="comment"> *</span>
103 <span class="comment"> */</span>
105 memset(&amp;type2, 0, <span class="keyword">sizeof</span>(type2));
110 …tml#12c5c7a960c60bbd54dbf49527856bab">challenge</a>, 0x7f, <span class="keyword">sizeof</span>(typ…
116 <span class="keywordflow">if</span> (ret)
117 errx(1, <span class="stringliteral">"heim_ntlm_encode_type2"</span>);
119 memset(&amp;type2, 0, <span class="keyword">sizeof</span>(type2));
123 <span class="keywordflow">if</span> (ret)
124 errx(1, <span class="stringliteral">"heim_ntlm_decode_type2"</span>);
128 <span class="comment">/*</span>
129 <span class="comment"> *</span>
130 <span class="comment"> */</span>
132 memset(&amp;type3, 0, <span class="keyword">sizeof</span>(type3));
137 …be974b5c93e47e2c8bf6f5a767c82d">ws</a> = rk_UNCONST(<span class="stringliteral">"workstation"</spa…
140 … <span class="keyword">struct </span><a class="code" href="structntlm__buf.html">ntlm_buf</a> key;
150 <span class="keywordflow">if</span> (ret)
151 errx(1, <span class="stringliteral">"heim_ntlm_encode_type3"</span>);
155 memset(&amp;type3, 0, <span class="keyword">sizeof</span>(type3));
159 <span class="keywordflow">if</span> (ret)
160 errx(1, <span class="stringliteral">"heim_ntlm_decode_type3"</span>);
162 …<span class="keywordflow">if</span> (strcmp(<span class="stringliteral">"workstation"</span>, type…
163 errx(1, <span class="stringliteral">"type3 ws wrong"</span>);
165 …<span class="keywordflow">if</span> (strcmp(target, type3.<a class="code" href="structntlm__type3.…
166 errx(1, <span class="stringliteral">"type3 targetname wrong"</span>);
168 …<span class="keywordflow">if</span> (strcmp(user, type3.<a class="code" href="structntlm__type3.ht…
169 errx(1, <span class="stringliteral">"type3 username wrong"</span>);
174 <span class="comment">/*</span>
175 <span class="comment"> * NTLMv2</span>
176 <span class="comment"> */</span>
178 memset(&amp;type2, 0, <span class="keyword">sizeof</span>(type2));
183 …tml#12c5c7a960c60bbd54dbf49527856bab">challenge</a>, 0x7f, <span class="keyword">sizeof</span>(typ…
185 …buf.html#0cb7caf04f8f80326491b45edcdd2687">data</a> = <span class="stringliteral">"\x00\x00"</span
189 <span class="keywordflow">if</span> (ret)
190 errx(1, <span class="stringliteral">"heim_ntlm_encode_type2"</span>);
192 memset(&amp;type2, 0, <span class="keyword">sizeof</span>(type2));
196 <span class="keywordflow">if</span> (ret)
197 errx(1, <span class="stringliteral">"heim_ntlm_decode_type2"</span>);
201 <span class="keywordflow">return</span> 0;
204 <span class="keyword">static</span> <span class="keywordtype">int</span>
205 test_keys(<span class="keywordtype">void</span>)
207 <span class="keyword">const</span> <span class="keywordtype">char</span>
208 *username = <span class="stringliteral">"test"</span>,
209 *password = <span class="stringliteral">"test1234"</span>,
210 *target = <span class="stringliteral">"TESTNT"</span>;
211 …<span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordt…
212 serverchallenge[8] = <span class="stringliteral">"\x67\x7f\x1c\x55\x7a\x5e\xe9\x6c"</span>;
213 …<span class="keyword">struct </span><a class="code" href="structntlm__buf.html">ntlm_buf</a> infot…
214 …<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> ntlmv2[16], ntlmv2…
215 <span class="keywordtype">int</span> ret;
219 …<span class="stringliteral">"\x02\x00\x0c\x00\x54\x00\x45\x00\x53\x00\x54\x00\x4e\x00\x54\x00"</sp…
220 …<span class="stringliteral">"\x01\x00\x0c\x00\x4d\x00\x45\x00\x4d\x00\x42\x00\x45\x00\x52\x00"</sp…
221 …<span class="stringliteral">"\x03\x00\x1e\x00\x6d\x00\x65\x00\x6d\x00\x62\x00\x65\x00\x72\x00"</sp…
222 … <span class="stringliteral">"\x2e\x00\x74\x00\x65\x00\x73\x00\x74\x00\x2e\x00\x63\x00\x6f"</span>
223 <span class="stringliteral">"\x00\x6d\x00"</span>
224 <span class="stringliteral">"\x00\x00\x00\x00"</span>;
239 <span class="keywordflow">if</span> (ret)
240 errx(1, <span class="stringliteral">"heim_ntlm_calculate_ntlm2"</span>);
251 <span class="keywordflow">if</span> (ret)
252 errx(1, <span class="stringliteral">"heim_ntlm_verify_ntlm2"</span>);
254 …<span class="keywordflow">if</span> (memcmp(ntlmv2, ntlmv2_1, <span class="keyword">sizeof</span>(…
255 errx(1, <span class="stringliteral">"ntlm master key not same"</span>);
257 <span class="keywordflow">if</span> (infotarget.length &gt; infotarget2.length)
258 errx(1, <span class="stringliteral">"infotarget length"</span>);
260 …<span class="keywordflow">if</span> (memcmp(infotarget.data, infotarget2.data, infotarget.length) …
261 errx(1, <span class="stringliteral">"infotarget not the same"</span>);
267 <span class="keywordflow">return</span> 0;
270 <span class="keyword">static</span> <span class="keywordtype">int</span>
271 test_ntlm2_session_resp(<span class="keywordtype">void</span>)
273 <span class="keywordtype">int</span> ret;
274 …<span class="keyword">struct </span><a class="code" href="structntlm__buf.html">ntlm_buf</a> lm, n…
276 …<span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordt…
277 <span class="stringliteral">"\xff\xff\xff\x00\x11\x22\x33\x44"</span>
278 <span class="stringliteral">"\x00\x00\x00\x00\x00\x00\x00\x00"</span>
279 <span class="stringliteral">"\x00\x00\x00\x00\x00\x00\x00\x00"</span>;
280 …<span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordt…
281 <span class="stringliteral">"\x10\xd5\x50\x83\x2d\x12\xb2\xcc"</span>
282 <span class="stringliteral">"\xb7\x9d\x5a\xd1\xf4\xee\xd3\xdf"</span>
283 <span class="stringliteral">"\x82\xac\xa4\xc3\x68\x1d\xd4\x55"</span>;
285 …<span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordt…
286 <span class="stringliteral">"\xff\xff\xff\x00\x11\x22\x33\x44"</span>;
287 …<span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordt…
288 <span class="stringliteral">"\x01\x23\x45\x67\x89\xab\xcd\xef"</span>;
290 …<span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordt…
291 <span class="stringliteral">"\xcd\x06\xca\x7c\x7e\x10\xc9\x9b"</span>
292 <span class="stringliteral">"\x1d\x33\xb7\x48\x5a\x2e\xd8\x08"</span>;
299 <span class="keywordflow">if</span> (ret)
300 errx(1, <span class="stringliteral">"heim_ntlm_calculate_ntlm2_sess_resp"</span>);
302 <span class="keywordflow">if</span> (lm.length != 24 || memcmp(lm.data, lm_resp, 24) != 0)
303 errx(1, <span class="stringliteral">"lm_resp wrong"</span>);
304 …<span class="keywordflow">if</span> (ntlm.length != 24 || memcmp(ntlm.data, ntlm2_sess_resp, 24) !…
305 errx(1, <span class="stringliteral">"ntlm2_sess_resp wrong"</span>);
311 <span class="keywordflow">return</span> 0;
314 <span class="keyword">static</span> <span class="keywordtype">int</span>
315 test_targetinfo(<span class="keywordtype">void</span>)
317 <span class="keyword">struct </span>ntlm_targetinfo ti;
318 … <span class="keyword">struct </span><a class="code" href="structntlm__buf.html">ntlm_buf</a> buf;
319 …<span class="keyword">const</span> <span class="keywordtype">char</span> *dnsservername = <span cl…
320 <span class="keywordtype">int</span> ret;
322 memset(&amp;ti, 0, <span class="keyword">sizeof</span>(ti));
327 <span class="keywordflow">if</span> (ret)
328 <span class="keywordflow">return</span> ret;
330 memset(&amp;ti, 0, <span class="keyword">sizeof</span>(ti));
333 <span class="keywordflow">if</span> (ret)
334 <span class="keywordflow">return</span> ret;
336 <span class="keywordflow">if</span> (ti.dnsservername == NULL ||
338 errx(1, <span class="stringliteral">"ti.dnshostname != %s"</span>, dnsservername);
339 <span class="keywordflow">if</span> (ti.avflags != 1)
340 errx(1, <span class="stringliteral">"ti.avflags != 1"</span>);
344 <span class="keywordflow">return</span> 0;
347 <span class="keyword">static</span> <span class="keywordtype">int</span> verbose_flag = 0;
348 <span class="keyword">static</span> <span class="keywordtype">int</span> version_flag = 0;
349 <span class="keyword">static</span> <span class="keywordtype">int</span> help_flag = 0;
351 <span class="keyword">static</span> <span class="keyword">struct </span>getargs args[] = {
352 …{<span class="stringliteral">"verbose"</span>, 0, arg_flag, &amp;verbose_flag, <span cl…
353 …{<span class="stringliteral">"version"</span>, 0, arg_flag, &amp;version_flag, <span cl…
354 …{<span class="stringliteral">"help"</span>, 0, arg_flag, &amp;help_flag, NULL, NULL…
357 <span class="keyword">static</span> <span class="keywordtype">void</span>
358 usage (<span class="keywordtype">int</span> ret)
360 …arg_printusage (args, <span class="keyword">sizeof</span>(args)/<span class="keyword">sizeof</span
361 NULL, <span class="stringliteral">""</span>);
365 <span class="keywordtype">int</span>
366 main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)
368 <span class="keywordtype">int</span> ret = 0, optind = 0;
372 …<span class="keywordflow">if</span>(getarg(args, <span class="keyword">sizeof</span>(args) / <span
375 <span class="keywordflow">if</span> (help_flag)
378 <span class="keywordflow">if</span>(version_flag){
386 <span class="keywordflow">if</span> (verbose_flag)
387 printf(<span class="stringliteral">"test_parse\n"</span>);
390 <span class="keywordflow">if</span> (verbose_flag)
391 printf(<span class="stringliteral">"test_keys\n"</span>);
394 <span class="keywordflow">if</span> (verbose_flag)
395 printf(<span class="stringliteral">"test_ntlm2_session_resp\n"</span>);
398 <span class="keywordflow">if</span> (verbose_flag)
399 printf(<span class="stringliteral">"test_targetinfo\n"</span>);
402 <span class="keywordflow">return</span> ret;