summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/netinet
diff options
context:
space:
mode:
authorcarlsonj <none@none>2006-08-14 14:10:48 -0700
committercarlsonj <none@none>2006-08-14 14:10:48 -0700
commit69bb4bb45c98da60d21839c4dc3c01ea1be60585 (patch)
tree81b0b1f2cca24e6379bc7933ea584bda2861f39f /usr/src/uts/common/netinet
parent0173c38a73f34277e0c97a19fedfd25d81ba8380 (diff)
downloadillumos-joyent-69bb4bb45c98da60d21839c4dc3c01ea1be60585.tar.gz
PSARC 2005/314 IP Duplicate Address Detection
PSARC 2006/017 Arp Single Entry Display 1248254 NDD doesn't have explicit range checking for ARP NDD variables. 1253974 Please make a "permanent contents" option for arp vs. static 4069191 ace_t::ace_query_count field is not used anywhere. 4157198 ARP cache inconsistency between arp and ip modules. 4396195 ar_rput: ar_cmd_dispatch not necessary for every packet? 4705220 No IPv6 DAD performed during boot 4728609 IPv4 Duplicate Address Detection (DAD) is broken 4971789 Need unsolicited neighbor advertisements when interface comes up 4978063 SO_DONTROUTE option causes ARP traffic for every frame. 4997903 /usr/sbin/arp accepts invalid modifier keywords 6266155 flag on the play: ndp gets its bits confused 6272993 in.ndpd could be free of lint 6273003 arp shouldn't export status via ndd 6360928 ipif_arp_down debug message wrongly expects DLPI 6363393 6281236 causes generation of bogus NS 6454158 need a temporary work-around for 6451644's IPv6 impact 6456379 need ffs(3C)-like function in modapi --HG-- rename : usr/src/cmd/cmd-inet/sbin/dhcpagent/arp_check.c => deleted_files/usr/src/cmd/cmd-inet/sbin/dhcpagent/arp_check.c rename : usr/src/cmd/cmd-inet/sbin/dhcpagent/arp_check.h => deleted_files/usr/src/cmd/cmd-inet/sbin/dhcpagent/arp_check.h rename : usr/src/cmd/cmd-inet/usr.lib/in.ndpd/dupl_addr.c => deleted_files/usr/src/cmd/cmd-inet/usr.lib/in.ndpd/dupl_addr.c rename : usr/src/cmd/cmd-inet/usr.sbin/ifconfig/dupl_addr.c => deleted_files/usr/src/cmd/cmd-inet/usr.sbin/ifconfig/dupl_addr.c rename : usr/src/lib/libc/port/gen/ffs.c => deleted_files/usr/src/lib/libc/port/gen/ffs.c rename : usr/src/lib/libinetcfg/common/inetcfg_dad.c => deleted_files/usr/src/lib/libinetcfg/common/inetcfg_dad.c rename : usr/src/lib/libinetcfg/common/inetcfg_dad.h => deleted_files/usr/src/lib/libinetcfg/common/inetcfg_dad.h
Diffstat (limited to 'usr/src/uts/common/netinet')
-rw-r--r--usr/src/uts/common/netinet/arp.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/usr/src/uts/common/netinet/arp.h b/usr/src/uts/common/netinet/arp.h
index 523f111c00..a3bf0e7761 100644
--- a/usr/src/uts/common/netinet/arp.h
+++ b/usr/src/uts/common/netinet/arp.h
@@ -1,5 +1,5 @@
/*
- * Copyright 1986-2003 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
@@ -14,6 +14,10 @@
#pragma ident "%Z%%M% %I% %E% SMI"
+#include <sys/types.h>
+#include <sys/ethernet.h>
+#include <sys/socket.h>
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -31,6 +35,7 @@ extern "C" {
struct arphdr {
ushort_t ar_hrd; /* format of hardware address */
#define ARPHRD_ETHER 1 /* ethernet hardware address */
+#define ARPHRD_IEEE802 6 /* IEEE 802 hardware address */
#define ARPHRD_IB 32 /* IPoIB hardware address */
ushort_t ar_pro; /* format of protocol address */
uchar_t ar_hln; /* length of hardware address */
@@ -54,6 +59,9 @@ struct arphdr {
#endif /* notdef */
};
+/* Maximum hardware and protocol address length */
+#define ARP_MAX_ADDR_LEN 255
+
/*
* Ethernet Address Resolution Protocol.
*
@@ -82,12 +90,13 @@ struct arpreq {
struct sockaddr arp_ha; /* hardware address */
int arp_flags; /* flags */
};
-/* arp_flags and at_flags field values */
+/* arp_flags field values */
#define ATF_INUSE 0x01 /* entry in use */
#define ATF_COM 0x02 /* completed entry (enaddr valid) */
#define ATF_PERM 0x04 /* permanent entry */
#define ATF_PUBL 0x08 /* publish entry (respond for other host) */
#define ATF_USETRAILERS 0x10 /* has requested trailers */
+#define ATF_AUTHORITY 0x20 /* hardware address is authoritative */
#ifdef __cplusplus
}