<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Generator" CONTENT="MS Exchange Server version 6.5.7653.38">
<TITLE>Adding NTLMv2 support for Cyrus SASL 2.1.23</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/plain format -->
<BR>

<P><FONT SIZE=2>Hi,<BR>
<BR>
<BR>
This is regarding NTLMv2 in Cyrus SASL 2.1.23.<BR>
I have modified the plugins/ntlm.c file so as to add NTLMv2 support.<BR>
If NTLMv2 is enabled, then the Type 3 message contains only LMv2 response.<BR>
<BR>
The reason being that the 'blob' structure is not being passed to the function V2()<BR>
which does NTLM hash,HMAC-MD5 ....<BR>
<BR>
<BR>
So in function ntlm_client_step_mech2(),I am passing the parameters to V2 () as<BR>
<BR>
V2(resp,password,oparams-&gt;authid,domain,serverin+NTLM_TYPE2_CHALLENGE_OFFSET,<BR>
&nbsp;&nbsp; blobbuf,bloblen,params-&gt;utils,&amp;text-&gt;out_buf,&amp;text-&gt;out_buf_len,&amp;result);<BR>
<BR>
where 'blobbuf' is the blob and 'bloblen' is the length of the blob.<BR>
Then I am assigning the 'resp' to 'nt_resp'.<BR>
Also, I have commented the part<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;/*if (sendv2 &amp;&amp;<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (*sendv2 == '1' || *sendv2 == 'y' ||<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (*sendv2 == 'o' &amp;&amp; *sendv2 == 'n') || *sendv2 == 't'))*/<BR>
<BR>
When I checked in ethereal, everything is fine and I am able to successfully<BR>
authenticate against Microsoft Active Directory server.<BR>
<BR>
Please let me know if I am doing anything wrong.<BR>
<BR>
<BR>
Thanks,<BR>
Dhruva<BR>
</FONT>
</P>

<pre>
</pre></BODY>
</HTML>