Que signifie ce code? [fermé]

1

Je ne peux pas comprendre .type et .func dans ce code.

static struct packet_type ip_packet_type __read_mostly = {
.type = cpu_to_be16(ETH_P_IP),
.func = ip_rcv,};

Ceci est référencé dans:

net / ipv4 / af_inet.c ligne 1751

m-tech
la source

Réponses:

2

Ceci associe le gestionnaire de protocole IP ( ip_rcv) au type IP Ethernet ( ETH_P_IP== 0x0800).

Il est utilisé par la init_inetfonction juste en dessous de ce code où il appelle le dev_add_pack()à ajouter en ip_rcvtant que gestionnaire pour les paquets IP Ethernet.

nik
la source
3
eh La question est clairement hors sujet. Nous ne devrions pas les encourager en répondant à :(
Journeyman Geek
1
@JourneymanGeek :-)c'est très tentant. Mais je suis d'accord avec vous. Cela devrait-il être déplacé ailleurs?
Nik
@nik je veux changer ip_rcv avant de compiler mon linux mais je ne peux pas .linux ne peux pas le compiler.
m-tech
3
Je ne suis pas convaincu que cela convienne parfaitement à SO - il y a un manque flagrant de recherche, par exemple.
Journeyman Geek
1
Sois gentil et regarde les pages d'aide ...
Journeyman Geek