<div dir="ltr"><div><div><div>Hi Pranay Srivastava,<br><br></div>Thanks for your reply.  I just want to copy the payload into the buffer with out cloning<br>or copying of skb to reduce the delay as it has to do on every packet.<br>
</div><div>Is there any method in the linux kernel to get only the payload after stripping off the <br></div><div>TCP header.  <br><br></div><div>Thanks,<br></div><div>Ramana. <br></div></div></div><div class="gmail_extra">
<br><br><div class="gmail_quote">On Mon, May 26, 2014 at 2:17 PM, Pranay Srivastava <span dir="ltr">&lt;<a href="mailto:pranjas@gmail.com" target="_blank">pranjas@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="">On Mon, May 26, 2014 at 1:20 PM, Ramana Reddy &lt;<a href="mailto:gtvrreddy@gmail.com">gtvrreddy@gmail.com</a>&gt; wrote:<br>
&gt; Thanks for your reply. First thing is that I do not want to modify the<br>
&gt; existing cifs driver.<br>
&gt; I have my own virtual Ethernet driver, where the skb buffer is available to<br>
&gt; parse. Now,<br>
&gt; I want to extract the cifs header from this skb buffer, and based on the<br>
&gt; cifs header contents<br>
&gt; ( mainly I am looking for return status), I have to redirect the packet to<br>
&gt; different destination.<br>
<br>
</div>skb_clone in case you won&#39;t modify the packet. (Data isn&#39;t copied here).<br>
<br>
skb_copy if you or the intended recipient would modify the skb.(Data<br>
is copied here). Gives you a free pass to do anything.<br>
<br>
For UDP packets I guess you&#39;ll also need to take off the UDP header<br>
(last time I tried to read from skb of a UDP) but for TCP you&#39;ll have<br>
your data ready no need<br>
to strip off the TCP header. Just check in case the skb you&#39;ve<br>
contains fragments(For TCP connection) but since you only need CIFS<br>
header I don&#39;t think you&#39;ll have to bother about that, as CIFS header<br>
isn&#39;t that big.<br>
<div class=""><br>
&gt;<br>
&gt; Thanks,<br>
&gt; Ramana.<br>
&gt;<br>
&gt;<br>
&gt; On Mon, May 26, 2014 at 12:34 PM, &lt;<a href="mailto:Valdis.Kletnieks@vt.edu">Valdis.Kletnieks@vt.edu</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; On Mon, 26 May 2014 12:21:12 +0530, Ramana Reddy said:<br>
&gt;&gt;<br>
&gt;&gt; &gt; I would like to know how to extract the cifs protocol header from skb<br>
&gt;&gt; &gt; buffer in the linux<br>
&gt;&gt; &gt; kernel. I want to parse the cifs header and do some stuff based on the<br>
&gt;&gt; &gt; content of the header.<br>
&gt;&gt;<br>
&gt;&gt; Depending what you are trying to do, it may be best to add your code<br>
&gt;&gt; to the CIFS driver at the points where the driver is examining the<br>
&gt;&gt; header fields in question.<br>
&gt;&gt;<br>
&gt;&gt; What &quot;do some stuff&quot; are you trying to achieve?<br>
&gt;<br>
&gt;<br>
&gt;<br>
</div>&gt; _______________________________________________<br>
&gt; Kernelnewbies mailing list<br>
&gt; <a href="mailto:Kernelnewbies@kernelnewbies.org">Kernelnewbies@kernelnewbies.org</a><br>
&gt; <a href="http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies" target="_blank">http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies</a><br>
&gt;<br>
<span class="HOEnZb"><font color="#888888"><br>
<br>
<br>
--<br>
        ---P.K.S<br>
</font></span></blockquote></div><br></div>