|
AquilaOS documentation
How it works, and its code
|
A packet (net/netbuf.c). More...
#include <netbuf.h>
Data Fields | |
| struct netbuf * | next |
| struct netif * | netif |
| uint8_t * | data |
| size_t | len |
| int | loopback |
| uint32_t | src_ip |
| uint16_t | src_port |
| uint32_t | seq |
| int | fin |
| paddr_t | page |
| struct netbuf * | free_prev |
A packet (net/netbuf.c).
It is one buffer of NETBUF_SIZE bytes: this header at its start, and the packet a window in the rest (data, len). Going up, each layer takes its header off the front; going down, it puts its header in the room before the data. Nothing is copied.
| uint8_t* netbuf::data |
Definition at line 19 of file netbuf.h.
Referenced by arp_input(), e1000_transmit(), icmp_input(), ipv4_input(), loopback_transmit(), netbuf_alloc(), netbuf_pull(), netbuf_push(), netbuf_put(), ooo_drain(), ooo_insert(), socket_inet_recv(), tcp_input(), and udp_input().
| int netbuf::fin |
Definition at line 31 of file netbuf.h.
Referenced by ooo_drain(), ooo_insert(), and segment_input().
| struct netbuf* netbuf::free_prev |
Definition at line 35 of file netbuf.h.
Referenced by free_push(), and free_remove().
| size_t netbuf::len |
Definition at line 20 of file netbuf.h.
Referenced by arp_input(), e1000_transmit(), icmp_input(), ipv4_input(), ipv4_output(), loopback_transmit(), netbuf_alloc(), netbuf_pull(), netbuf_push(), netbuf_put(), netif_input(), netif_loopback(), netif_output(), ooo_drain(), ooo_insert(), rx_poll(), segment(), socket_inet_can_read(), socket_inet_ioctl(), socket_inet_recv(), tcp_input(), tcp_reply_rst(), and udp_input().
| int netbuf::loopback |
Definition at line 22 of file netbuf.h.
Referenced by net_main(), netif_input(), and netif_loopback().
| struct netif* netbuf::netif |
Definition at line 18 of file netbuf.h.
Referenced by net_main(), netbuf_alloc(), netif_input(), and netif_loopback().
| struct netbuf* netbuf::next |
Definition at line 17 of file netbuf.h.
Referenced by free_push(), free_remove(), inet_sock_deliver(), net_main(), netbuf_alloc(), ooo_drain(), ooo_insert(), ooo_purge(), rx_queue(), socket_inet_recv(), socket_inet_shutdown(), and tcp_pcb_free().
| paddr_t netbuf::page |
Definition at line 34 of file netbuf.h.
Referenced by netbuf_alloc(), and netbuf_free().
| uint32_t netbuf::seq |
Definition at line 30 of file netbuf.h.
Referenced by ooo_drain(), and ooo_insert().
| uint32_t netbuf::src_ip |
Definition at line 25 of file netbuf.h.
Referenced by icmp_input(), socket_inet_recv(), and udp_input().
| uint16_t netbuf::src_port |
Definition at line 26 of file netbuf.h.
Referenced by icmp_input(), socket_inet_recv(), and udp_input().