[so2] [Tema 5] Pasi pentru sendmsg

Dan Filimon dangeorge.filimon at gmail.com
Tue May 14 15:40:14 EEST 2013


Mesajul care se trimite din test e "You called down the thunder".
O să încerc funcțiile alea să văd cum arată pachetul.


2013/5/14 Vlad Dogaru <ddvlad at herebedragons.ro>

> On Tue, May 14, 2013 at 03:12:17PM +0300, Dan Filimon wrote:
> > 2013/5/14 Vlad Dogaru <ddvlad at herebedragons.ro>
> >
> > > On Tue, May 14, 2013 at 01:45:21PM +0300, Dan Filimon wrote:
> > > > Un ultim lucru, dimensiunea header-ului Ethernet o pun 14 octeți și
> ignor
> > > > strategic trailer-ul?
> > > > Sau, fac ca în af_packet și iau headerul cu LL_RESERVED_SPACE și
> > > trailerul
> > > > cu dev->needed_tailroom.
> > >
> > > Varianta a doua sună mai bine.  Tailroom-ul oricum nu e nevoie să îl
> iei
> > > în calcul decât la alocarea skb-ului.
> > >
> >
> > Am făcut așa și observ că LL_RESERVED_SPACE întoarce 16 octeți dar după
> ce
> > scriu efectiv offset-ul întors de dev_hard_header e 14 octeți.
> > N-ar fi asta o tragedie, dar acum, deși testul îmi trece, aș vrea să
> afișez
> > mesajul copiat. Am făcut:
> > printk(KERN_ALERT "%s\n", skb->data + ehlen + shlen);
> >
> > Unde ehlen e lungimea headerului Ethernet (14 octeți) și shlen e lungimea
> > header-ului STP (8 octeți). Dar, asta-mi afișează garbage.
>
> Cu riscul de a fi Captain Obvious:  poate se trimit octeți random, și nu
> text?  Sau ai greșit offsetul și apare întâi vreo bucată de header?
>
> > Doar nu poate fi o chestie de endianness, fiindcă ăștia sunt octeți.
>
> Corect, din ce îmi dau eu seama.
>
> Pentru printat buffere (și headere) eu folosesc funcțiile print_hex_dump
> și print_hex_dump_bytes.  Acesta din urmă e fratele mai politicos, cu
> mai puțini parametri).
>
> Vlad
> _______________________________________________
> http://ocw.cs.pub.ro/courses/so2/resurse/lista-discutii
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/so2/attachments/20130514/b2a74a74/attachment.html>


More information about the so2 mailing list