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
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
Réponses:
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.
:-)c'est très tentant. Mais je suis d'accord avec vous. Cela devrait-il être déplacé ailleurs?