X-MimeOLE: Produced By Microsoft Exchange V6.5
Received: by onstor-exch02.onstor.net 
	id <01C75150.F8632C23@onstor-exch02.onstor.net>; Thu, 15 Feb 2007 15:31:00 -0700
MIME-Version: 1.0
Content-Type: multipart/alternative;
	boundary="----_=_NextPart_001_01C75150.F8632C23"
Content-class: urn:content-classes:message
Subject: RE: using patch tool, with perforce ..  to move changes across different perforce code trees (for developers)
Date: Thu, 15 Feb 2007 15:31:00 -0700
Message-ID: <BB375AF679D4A34E9CA8DFA650E2B04E027C17F9@onstor-exch02.onstor.net>
In-Reply-To: <BB375AF679D4A34E9CA8DFA650E2B04E028FEF@onstor-exch02.onstor.net>
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
Thread-Topic: using patch tool, with perforce ..  to move changes across different perforce code trees (for developers)
Thread-Index: AcdRUC/GjlqmA3pHShS9ZkKwImbGOQAAGZ7Q
From: "Ken Renshaw" <ken.renshaw@onstor.com>
To: "Shamsudeen Jeseem" <jeseem@onstor.com>,
	"dl-Engineering" <dl-engineering@onstor.com>

This is a multi-part message in MIME format.

------_=_NextPart_001_01C75150.F8632C23
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Good one, thanks Jeseem.

I would add one caveat, and that is in the parenthesized case of 'move
changes across branches'. In general you should always use p4 integrate
to take changes from one branch into another as this preserves the file
histories. Applying one set of diffs to files in two branches would
result in Perforce not realizing the changes are identical ( until merge
time which the diff would be null ).

I agree this is a useful process in switching clients in midstream, even
if the new client is in a different branch.=20

Thanks Jeseem.

-Ken

_____________________________________________
From: Shamsudeen Jeseem=20
Sent: Thursday, February 15, 2007 2:25 PM
To: dl-Engineering
Subject: using patch tool, with perforce .. to move changes across
different perforce code trees (for developers)

Hi,
	Here's a simple way to move your changes from one p4 client to
another (or across branches), using patch utility

Steps=20

1.	Do a p4 diff on the first branch and redirect it into a file
(/tmp/xxx.diff) .
2.	modify the first line in the output file (/tmp/xxx.diff) to make
it compatible for use by patch utility
3.	checkout the file in new P4client
4.	apply the patch ( patch -p1 < /tmp/xxx.diff )

The patch utility is intelligent to minor changes in source files.=20
So it can workaround most of them.=20
If it cannot it will fail with .hunk files which show you what all
failed.=20

Example :

e.g. I am moving changes from my P4CLIENT=3Djes-r131 to =
P4CLIENT=3Djes-r133=20

Step 1 :
In P4CLIENT=3Djes-r131 ,=20

[jeseem@jeseem-linux nfx-tree]$ p4 diff -du code/sm-cifs/cifs-ntlmv2.c
> /tmp/cifs-ntlmv2.diff

If you cat the file /tmp/cifs-ntlmv2.diff

[jeseem@jeseem-linux nfx-tree]$ cat /tmp/cifs-ntlmv2.diff1
=3D=3D=3D=3D //depot/FB-DELOREAN/nfx-tree/code/sm-cifs/cifs-ntlmv2.c#1 -
/opt/code/FB-DELOREAN/nfx-tree/code/sm-cifs/cifs-ntlmv2.c =3D=3D=3D=3D
@@ -70,10 +70,10 @@
 *
 */

-NTSTATUS get_sec_blob(cifs_conn_t *conn,UCHAR *buffer, uint32 *len)
+NTSTATUS get_sec_blob(UCHAR *buffer, uint32 *len)
 {
-       memcpy((void
*)&(conn->cc_secblob),defSecBlob,sizeof(defSecBlob));
-        conn->cc_secBlobLen =3D sizeof(defSecBlob);
+/*     memcpy((void
*)&(conn->cc_secblob),defSecBlob,sizeof(defSecBlob));
+        conn->cc_secBlobLen =3D sizeof(defSecBlob); */
        memcpy((void *)(buffer),defSecBlob,sizeof(defSecBlob));

        *len =3D sizeof(defSecBlob);



Step 2 :

The only change you need to change is the first line using vi or any
editor, to make it a patch file (the changed portions are colored in
BLUE)

[jeseem@jeseem-linux nfx-tree]$ cat /tmp/cifs-ntlmv2.diff
--- nfx-tree/code/sm-cifs/cifs-ntlmv2.c#1
+++ nfx-tree/code/sm-cifs/cifs-ntlmv2.c =3D=3D=3D=3D
@@ -70,10 +70,10 @@
 *
 */

-NTSTATUS get_sec_blob(cifs_conn_t *conn,UCHAR *buffer, uint32 *len)
+NTSTATUS get_sec_blob(UCHAR *buffer, uint32 *len)
 {
-       memcpy((void
*)&(conn->cc_secblob),defSecBlob,sizeof(defSecBlob));
-        conn->cc_secBlobLen =3D sizeof(defSecBlob);
+/*     memcpy((void
*)&(conn->cc_secblob),defSecBlob,sizeof(defSecBlob));
+        conn->cc_secBlobLen =3D sizeof(defSecBlob); */
        memcpy((void *)(buffer),defSecBlob,sizeof(defSecBlob));

        *len =3D sizeof(defSecBlob);


Step 3 :

In the new P4CLIENT (P4CLIENT=3D jes-r133)
 Check out the source file=20

[jeseem@jeseem-linux nfx-tree]$p4 edit code/sm-cifs/cifs-ntlmv2.c

Step 4:

Apply the patch in the new P4CLIENT
[jeseem@jeseem-linux nfx-tree]$ patch -p1 < /tmp/cifs-ntlmv2.diff


------_=_NextPart_001_01C75150.F8632C23
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Dus-ascii">
<META NAME=3D"Generator" CONTENT=3D"MS Exchange Server version =
6.5.7652.24">
<TITLE>RE: using patch tool, with perforce ..  to move changes across =
different perforce code trees (for developers)</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/rtf format -->

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT COLOR=3D"#000080" SIZE=3D2 =
FACE=3D"Arial">Good one, thanks Jeseem.</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT COLOR=3D"#000080" SIZE=3D2 =
FACE=3D"Arial">I would add one caveat, and that is</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"> <FONT COLOR=3D"#000080" =
SIZE=3D2 FACE=3D"Arial">in the</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><FONT COLOR=3D"#000080" =
SIZE=3D2 FACE=3D"Arial"> parenthesized case of</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"> <FONT COLOR=3D"#000080" =
SIZE=3D2 FACE=3D"Arial">&#8216;</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><FONT COLOR=3D"#000080" =
SIZE=3D2 FACE=3D"Arial">move changes across branches</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><FONT COLOR=3D"#000080" =
SIZE=3D2 FACE=3D"Arial">&#8217;</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><FONT COLOR=3D"#000080" =
SIZE=3D2 FACE=3D"Arial">. In general you should al</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><FONT COLOR=3D"#000080" =
SIZE=3D2 FACE=3D"Arial">ways use p4 integrate to take changes from one =
branch into another as this preserves the file histories. Applying one =
set of diffs to files in two branches</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"> <FONT COLOR=3D"#000080" =
SIZE=3D2 FACE=3D"Arial">would</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><FONT COLOR=3D"#000080" =
SIZE=3D2 FACE=3D"Arial"> result in Perforce not realizing the changes =
are identical ( until merge time which the</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><FONT COLOR=3D"#000080" =
SIZE=3D2 FACE=3D"Arial"> diff would be null ).</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT COLOR=3D"#000080" SIZE=3D2 =
FACE=3D"Arial">I agree this is a useful process in switching clients in =
midstream, even if the new client is in a different branch. =
</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT COLOR=3D"#000080" SIZE=3D2 =
FACE=3D"Arial">Thanks Jeseem.</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT COLOR=3D"#000080" SIZE=3D2 =
FACE=3D"Arial">-Ken</FONT></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Tahoma">_____________________________________________<BR>
</FONT></SPAN><SPAN LANG=3D"en-us"><B></B></SPAN><SPAN =
LANG=3D"en-us"><B><FONT SIZE=3D2 =
FACE=3D"Tahoma">From:</FONT></B></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"><FONT SIZE=3D2 FACE=3D"Tahoma"> Shamsudeen Jeseem<BR>
</FONT></SPAN><SPAN LANG=3D"en-us"><B></B></SPAN><SPAN =
LANG=3D"en-us"><B><FONT SIZE=3D2 =
FACE=3D"Tahoma">Sent:</FONT></B></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"><FONT SIZE=3D2 FACE=3D"Tahoma"> Thursday, February 15, =
2007 2:25 PM<BR>
</FONT></SPAN><SPAN LANG=3D"en-us"><B></B></SPAN><SPAN =
LANG=3D"en-us"><B><FONT SIZE=3D2 =
FACE=3D"Tahoma">To:</FONT></B></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"><FONT SIZE=3D2 FACE=3D"Tahoma"> dl-Engineering<BR>
</FONT></SPAN><SPAN LANG=3D"en-us"><B></B></SPAN><SPAN =
LANG=3D"en-us"><B><FONT SIZE=3D2 =
FACE=3D"Tahoma">Subject:</FONT></B></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Tahoma"> using patch tool, with perforce .. to move changes =
across different perforce code trees (for developers)</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">Hi,</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN =
LANG=3D"en-us">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <FONT SIZE=3D2 =
FACE=3D"Arial">Here&#8217;s a simple way to move your changes from one =
p4 client to another (or across branches), using patch =
utility</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><B><U><FONT SIZE=3D2 =
FACE=3D"Arial">Steps </FONT></U></B></SPAN></P>

<P><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">1.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"> <FONT SIZE=3D2 =
FACE=3D"Arial">Do a p4 diff on the first branch and redirect it into a =
file (/tmp/xxx.diff) .</FONT></SPAN>

<BR><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">2.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</FONT> <FONT SIZE=3D2 =
FACE=3D"Arial">modify the first line in the output file (/tmp/xxx.diff) =
to make it compatible for use by patch utility</FONT></SPAN>

<BR><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">3.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</FONT> <FONT SIZE=3D2 =
FACE=3D"Arial">checkout the file in new P4client</FONT></SPAN>

<BR><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">4.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</FONT> <FONT SIZE=3D2 =
FACE=3D"Arial">apply the patch ( patch &#8211;p1 &lt; /tmp/xxx.diff =
)</FONT></SPAN>
</P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 FACE=3D"Arial">The =
patch utility is intelligent to minor changes in source files. =
</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 FACE=3D"Arial">So it =
can workaround most of them. </FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 FACE=3D"Arial">If it =
cannot it will fail with .hunk files which show you what all failed. =
</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><B><FONT SIZE=3D2 =
FACE=3D"Arial">Example :</FONT></B></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 FACE=3D"Arial">e.g. =
I am moving changes from my P4CLIENT=3Djes-r131 to P4CLIENT=3Djes-r133 =
</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><B><U><FONT SIZE=3D2 =
FACE=3D"Arial">Step 1 :</FONT></U></B></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 FACE=3D"Arial">In =
P4CLIENT=3Djes-r131 , </FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><B><I><FONT SIZE=3D2 =
FACE=3D"Arial">[jeseem@jeseem-linux nfx-tree]$ p4 diff &#8211;du =
code/sm-cifs/cifs-ntlmv2.c&nbsp; &gt; =
/tmp/cifs-ntlmv2.diff</FONT></I></B></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 FACE=3D"Arial">If =
you cat the file /tmp/cifs-ntlmv2.diff</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><B><I><FONT SIZE=3D2 =
FACE=3D"Arial">[jeseem@jeseem-linux nfx-tree]$ cat =
/tmp/cifs-ntlmv2.diff1</FONT></I></B></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><B><FONT COLOR=3D"#3366FF" SIZE=3D2 =
FACE=3D"Arial">=3D=3D=3D=3D =
//depot/FB-DELOREAN/nfx-tree/</FONT></B></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">code/sm-cifs/cifs-ntlmv2.c#1</FONT></SPAN><SPAN =
LANG=3D"en-us"><B></B></SPAN><SPAN LANG=3D"en-us"><B><FONT SIZE=3D2 =
FACE=3D"Arial"></FONT></B></SPAN><SPAN =
LANG=3D"en-us"><B></B></SPAN><SPAN LANG=3D"en-us"><B> <FONT =
COLOR=3D"#3366FF" SIZE=3D2 FACE=3D"Arial">- =
/opt/code/FB-DELOREAN/</FONT></B></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">nfx-tree/code/sm-cifs/cifs-ntlmv2.c =
=3D=3D=3D=3D</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 FACE=3D"Arial">@@ =
-70,10 +70,10 @@</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">&nbsp;*</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">&nbsp;*/</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">-NTSTATUS get_sec_blob(cifs_conn_t *conn,UCHAR *buffer, =
uint32 *len)</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">+NTSTATUS get_sec_blob(UCHAR *buffer, uint32 =
*len)</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">&nbsp;{</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; memcpy((void =
*)&amp;(conn-&gt;cc_secblob),defSecBlob,sizeof(defSecBlob));</FONT></SPAN=
></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
conn-&gt;cc_secBlobLen =3D sizeof(defSecBlob);</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">+/*&nbsp;&nbsp;&nbsp;&nbsp; memcpy((void =
*)&amp;(conn-&gt;cc_secblob),defSecBlob,sizeof(defSecBlob));</FONT></SPAN=
></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
conn-&gt;cc_secBlobLen =3D sizeof(defSecBlob); */</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; memcpy((void =
*)(buffer),defSecBlob,sizeof(defSecBlob));</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *len =3D =
sizeof(defSecBlob);</FONT></SPAN></P>
<BR>
<BR>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><B><U><FONT SIZE=3D2 =
FACE=3D"Arial">Step 2 :</FONT></U></B></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 FACE=3D"Arial">The =
only change you need to change is the first line using vi or any editor, =
to make it a patch file (the changed portions are colored =
in</FONT></SPAN><SPAN LANG=3D"en-us"><B></B></SPAN><SPAN =
LANG=3D"en-us"><B> <FONT COLOR=3D"#3366FF" SIZE=3D2 =
FACE=3D"Arial">BLUE</FONT></B></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"><FONT SIZE=3D2 FACE=3D"Arial">)</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><B><I><FONT SIZE=3D2 =
FACE=3D"Arial">[jeseem@jeseem-linux nfx-tree]$ cat =
/tmp/cifs-ntlmv2.diff</FONT></I></B></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><B><FONT COLOR=3D"#3366FF" SIZE=3D2 =
FACE=3D"Arial">---</FONT></B></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"> <FONT SIZE=3D2 =
FACE=3D"Arial">nfx-tree/code/sm-cifs/cifs-ntlmv2.c#1</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><B><FONT COLOR=3D"#3366FF" SIZE=3D2 =
FACE=3D"Arial">+++</FONT></B></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"> <FONT SIZE=3D2 =
FACE=3D"Arial">nfx-tree/code/sm-cifs/cifs-ntlmv2.c =
=3D=3D=3D=3D</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 FACE=3D"Arial">@@ =
-70,10 +70,10 @@</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">&nbsp;*</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">&nbsp;*/</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">-NTSTATUS get_sec_blob(cifs_conn_t *conn,UCHAR *buffer, =
uint32 *len)</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">+NTSTATUS get_sec_blob(UCHAR *buffer, uint32 =
*len)</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">&nbsp;{</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; memcpy((void =
*)&amp;(conn-&gt;cc_secblob),defSecBlob,sizeof(defSecBlob));</FONT></SPAN=
></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
conn-&gt;cc_secBlobLen =3D sizeof(defSecBlob);</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">+/*&nbsp;&nbsp;&nbsp;&nbsp; memcpy((void =
*)&amp;(conn-&gt;cc_secblob),defSecBlob,sizeof(defSecBlob));</FONT></SPAN=
></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
conn-&gt;cc_secBlobLen =3D sizeof(defSecBlob); */</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; memcpy((void =
*)(buffer),defSecBlob,sizeof(defSecBlob));</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *len =3D =
sizeof(defSecBlob);</FONT></SPAN></P>
<BR>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><B><U><FONT SIZE=3D2 =
FACE=3D"Arial">Step 3 :</FONT></U></B></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 FACE=3D"Arial">In =
the new P4CLIENT (P4CLIENT=3D jes-r133)</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">&nbsp;Check out the source file </FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><B><I><FONT SIZE=3D2 =
FACE=3D"Arial">[jeseem@jeseem-linux nfx-tree]$p4 edit =
code/sm-cifs/cifs-ntlmv2.c</FONT></I></B></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><B><U><FONT SIZE=3D2 =
FACE=3D"Arial">Step 4:</FONT></U></B></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 FACE=3D"Arial">Apply =
the patch in the new P4CLIENT</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><B><I><FONT SIZE=3D2 =
FACE=3D"Arial">[jeseem@jeseem-linux nfx-tree]$ patch &#8211;p1 &lt; =
/tmp/cifs-ntlmv2.diff</FONT></I></B></SPAN></P>

</BODY>
</HTML>
------_=_NextPart_001_01C75150.F8632C23--
