Porting the RTSP module to 2.6.22
Michael Guntsche
mike at it-loops.com
Mon Jul 30 17:52:57 CEST 2007
On Jul 29, 2007, at 22:21, Jan Engelhardt wrote:
>
>
> Use (void *)iph + ip_hdrlen(*skb)
>
>> *pptcpdata = (char*)tcph + tcph->doff*4;
>> *ptcpdatalen = ((char*)skb->h.raw + skb->len) - *pptcpdata;
>> }
>
> h.raw is now skb_transport_header(skb);
> Also, skb-> should be (*skb)->, since it is a double pointer (which
> you
> can also get rid of)
>
Thank you very very much Jan. With your tips and some poking in the
other modules I was able to get a compiling and more suprisingly
running version of the RTSP module.
The new and working function looks like this.
static void
get_skb_tcpdata(struct sk_buff* skb, char** pptcpdata, uint*
ptcpdatalen)
{
struct iphdr* iph = ip_hdr(skb);
struct tcphdr* tcph = (void *)iph + ip_hdrlen(skb);
*pptcpdata = (char*)tcph + tcph->doff*4;
*ptcpdatalen = ((char*)skb_transport_header(skb) + skb->len) -
*pptcpdata;
}
I am in the process of creating and updated patch against 2.6.22.1
and will put it up on my site this evening.
http://mike.it-loops.com/rtsp/
It is working for me right now, but maybe someone can give it a quick
check and tell me if there are any problems or bugs.
Kind regards,
Michael
More information about the netfilter-devel
mailing list