[so2] [Tema 5] recvmsg in proto_ops si prot_hook_func

Dan Filimon dangeorge.filimon at gmail.com
Tue May 14 18:08:51 EEST 2013


În af_packet.c, există mai multe funcții care par să facă aproape același
lucru... să primească date.

Există packet_rcv și packet_recvmsg.

1. packet_rcv e pusă în câmpul prot_hook.func ca și handler.
2. Apoi, packet_recvmsg e funcția care e efectiv apelată la un receive.

Întrebările:

1. Au prototipuri diferite și par să facă lucruri diferite, dar la
implementările mele, handlerul, prot_hook.func (numit stp_rcv) nu pare să
fie apelat niciodată.

Din ce-am înțeles handlerul ar trebui apelat de kernel când primește un
pachet de acel tip.
Curios e că am adăugat hook-ul pentru ambii sockeți (am printat un mesaj
după instrucțiune) dar nu se apelează niciodată handler-ul. De ce?

2. La recvmsg, eroarea pe care o primesc de la skb_recv_datagram() este
-512, -ERESTARTSYS.
Deci, ar trebui re-apelată... cu alți parametri poate?

Mulțumesc!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/so2/attachments/20130514/e7c924bd/attachment-0001.html>


More information about the so2 mailing list