1/* 2 * Copyright 2006, Haiku, Inc. All Rights Reserved. 3 * Distributed under the terms of the MIT License. 4 */ 5#ifndef ARP_CONTROL_H 6#define ARP_CONTROL_H 7 8 9#include <ethernet.h> 10 11#include <netinet/in.h> 12 13 14// ARP flags 15#define ARP_FLAG_LOCAL 0x01 16#define ARP_FLAG_REJECT 0x02 17#define ARP_FLAG_PERMANENT 0x04 18#define ARP_FLAG_PUBLISH 0x08 19#define ARP_FLAG_VALID 0x10 20 21 22// generic syscall interface 23#define ARP_SYSCALLS "network/arp" 24 25#define ARP_SET_ENTRY 1 26#define ARP_GET_ENTRY 2 27#define ARP_GET_ENTRIES 3 28#define ARP_DELETE_ENTRY 4 29#define ARP_FLUSH_ENTRIES 5 30#define ARP_IGNORE_REPLIES 6 31 32struct arp_control { 33 in_addr_t address; 34 uint8 ethernet_address[ETHER_ADDRESS_LENGTH]; 35 uint32 flags; 36 uint32 cookie; 37}; 38 39#endif // ARP_CONTROL_H 40