[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