[pso] struct sk_buff

Traian Patrascu patrascut at yahoo.com
Sun May 11 14:13:22 EEST 2008


Merge skb_transport_header(skb). Defapt headerul se poate optine prin
udp_header = (struct udphdr *)(skb->data + (ip_header->ihl *4));
sau
udp_header = (struct udphdr*)skb_transport_header(skb); 
Idem si pentru tcp sau alt protocol :)




>Interesant. Chiar i-au schimbat. Am aruncat o privire si se pare ca au
>aparut si niste functii care encapsuleaza operatiile de calculat diversii
>offset-i din structura. In principiu, daca headerul de retea a fost setat,
>se poate folosi skb_network_header(skb) pt. a-l obtine. Pt transport, exista
>skb_transport_header(skb) (atentie! pointer-ul catre header-ul tcp/udp nu
>este setat decat atunci cand pachetul trece prin nivelul respectiv din
>stiva). Daca faceti un netfilter hook nu va fi setat pt. ca netfilter
>lucreaza la nivelul 3, inainte de transport.

>In alta ordine de idei, imi pare rau pt. laboratoul de retele, nu s-a lucrat
>inca la el, eu ar trebui sa ma ocup si o s-o fac de indata ce am niste timp
>liber.

>Cosmin.

>2008/3/29 Codrin Alexandru Grajdeanu <grcodal at gmail.com>:

>> In vers de kernel 2.6.22 s-a modificat struct sk_buff si laboratorul
>> de networking nu mai este actual.
>> Acum aveam in sk_buff urmatorii pointeri:
>>         sk_buff_data_t          transport_header;
>>         sk_buff_data_t          network_header;
>> Inainte in struct sk_buff aveam niste pointeri de tipul struct iphdr,
>> tcphdr si udphdr in nh->iph, h->th, h->uh.
>> Cum extrag struct iphdr, tcphdr si udphdr din transport_header si
>> network_headr sau ip, port sursa-dest de aici :D ?
>>
>> Multumesc,
>> Codrin Grajdeanu

       
---------------------------------
Be a better friend, newshound, and know-it-all with Yahoo! Mobile.  Try it now.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://cursuri.cs.pub.ro/pipermail/pso/attachments/20080511/438e95b4/attachment.htm 


More information about the pso mailing list