<div dir="ltr"><div><div><div><div>1)da, tap e in masina fizica<br></div>2)am setat macaddr programatic, insa incerc si varianta propusa de tine<br></div>3) testez varianta 3 sa vad ce obtin<br><br></div>Multumesc pentru ajutor,<br>
</div>Doru<br></div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-03-22 9:47 GMT-07:00 Daniel Baluta <span dir="ltr"><<a href="mailto:daniel.baluta@gmail.com" target="_blank">daniel.baluta@gmail.com</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">2014-03-22 18:23 GMT+02:00 Gucea Doru <<a href="mailto:gucea.doru@gmail.com">gucea.doru@gmail.com</a>>:<br>
> Salut,<br>
<div class=""><br>
Salut,<br>
<br>
><br>
> Am o mare problema cu trimiterea pachetelor. Testarea o fac trimitand<br>
> pachete pe tap0 de pe qemu. Driverul reuseste sa trimita pachete insa<br>
> continutul nu e cel asteptat. In tcpdump obtin urmatorul output:<br>
<br>
</div>Tap0 e in masina fizica, corect?<br>
<div class=""><br>
><br>
> 18:05:53.723495 00:00:00:00:00:00 (oui Ethernet) > 00:00:00:00:00:00 (oui<br>
> Ethernet) Null Information, send seq 0, rcv seq 0, Flags [Command], length<br>
> 2586<br>
<br>
</div>Aici MAC-urile nu arata bine. Ce MAC are interfata ixeth0? Cel mai probabil<br>
00:00:00:00:00:00.<br>
<br>
La pornirea qemu va trebui sa-i spunem MAC-ul device-ului.<br>
<br>
In Makefile va trebui sa ai ceva similar cu:<br>
<br>
-net nic,model=i82559er,macaddr=52:54:00:12:34:56<br>
<div class=""><br>
><br>
> In functia de din ndo_start_xmit primesc un struct sk_buff *skb pe care il<br>
> pun in TCB-ul meu astfel:<br>
> cb->tbd.tcb_byte_count = skb->len;<br>
> memcpy(cb->tbd.data, skb->data, skb->len);<br>
<br>
</div>Printeaza skb->data octet cu octet si vezi daca seamana cu ce trimiti.<br>
<div class="">><br>
><br>
> TCB-ul cred ca e citit corect intrucat daca pun 0 la byte_count nu se<br>
> transmite nimic deci problema e posibil sa fie de la acel memcpy, posibil sa<br>
> fie legat de endianessul sistemului?<br>
> De asemenea daca inlocuiesc memcpy cu memset(cb->tbd.data,1, skb->len) obtin<br>
> un output de genul: [1]<br>
</div>_______________________________________________<br>
<a href="http://ocw.cs.pub.ro/courses/so2/resurse/lista-discutii" target="_blank">http://ocw.cs.pub.ro/courses/so2/resurse/lista-discutii</a></blockquote></div><br></div>