diff options
Diffstat (limited to 'shared/n-dhcp4/src/util/packet.h')
| -rw-r--r-- | shared/n-dhcp4/src/util/packet.h | 61 |
1 files changed, 0 insertions, 61 deletions
diff --git a/shared/n-dhcp4/src/util/packet.h b/shared/n-dhcp4/src/util/packet.h deleted file mode 100644 index 98dabf7f..00000000 --- a/shared/n-dhcp4/src/util/packet.h +++ /dev/null @@ -1,61 +0,0 @@ -#pragma once - -/* - * Packet Sockets - */ - -#include <c-stdaux.h> -#include <inttypes.h> -#include <linux/if_packet.h> -#include <netinet/in.h> -#include <stdlib.h> -#include <unistd.h> - -/* - * `struct sockaddr_ll` is too small to fit the Infiniband hardware address. - * Introduce `struct packet_sockaddr_ll` which is the same as the original, - * except the `sl_addr` field is extended to fit all the supported hardware - * addresses. - */ -struct packet_sockaddr_ll { - unsigned short sll_family; - __be16 sll_protocol; - int sll_ifindex; - unsigned short sll_hatype; - unsigned char sll_pkttype; - unsigned char sll_halen; - unsigned char sll_addr[32]; /* MAX_ADDR_LEN */ -}; - -uint16_t packet_internet_checksum(const uint8_t *data, size_t len); -uint16_t packet_internet_checksum_udp(const struct in_addr *src_addr, - const struct in_addr *dst_addr, - uint16_t src_port, - uint16_t dst_port, - const uint8_t *data, - size_t size, - uint16_t checksum); - -int packet_sendto_udp(int sockfd, - const void *buf, - size_t n_buf, - size_t *n_transmittedp, - const struct sockaddr_in *src_paddr, - const struct packet_sockaddr_ll *dest_haddr, - const struct sockaddr_in *dest_paddr); -int packet_recvfrom_udp(int sockfd, - void *buf, - size_t n_buf, - size_t *n_transmittedp, - struct sockaddr_in *src); - -int packet_shutdown(int sockfd); - -/* inline helpers */ - -static inline int packet_recv_udp(int sockfd, - void *buf, - size_t n_buf, - size_t *n_transmittedp) { - return packet_recvfrom_udp(sockfd, buf, n_buf, n_transmittedp, NULL); -} |