📄 if_arp.h
字号:
/* * @(#)if_arp.h 4.1 (ULTRIX) 7/2/90 */ /************************************************************************ * * * Copyright (c) 1984 by * * Digital Equipment Corporation, Maynard, MA * * All rights reserved. * * * * This software is furnished under a license and may be used and * * copied only in accordance with the terms of such license and * * with the inclusion of the above copyright notice. This * * software or any other copies thereof may not be provided or * * otherwise made available to any other person. No title to and * * ownership of the software is hereby transferred. * * * * This software is derived from software received from the * * University of California, Berkeley, and from Bell * * Laboratories. Use, duplication, or disclosure is subject to * * restrictions under license agreements with University of * * California and with AT&T. * * * * The information in this software is subject to change without * * notice and should not be construed as a commitment by Digital * * Equipment Corporation. * * * * Digital assumes no responsibility for the use or reliability * * of its software on equipment which is not supplied by Digital. * * * ************************************************************************//* * * 15-Jan-88 lp * Merge of final 43BSD changes. * */ /* * Copyright (c) 1986 Regents of the University of California. * All rights reserved. The Berkeley software License Agreement * specifies the terms and conditions for redistribution. * * if_arp.h 7.1 (Berkeley) 6/4/86 *//* * Address Resolution Protocol. * * See RFC 826 for protocol description. ARP packets are variable * in size; the arphdr structure defines the fixed-length portion. * Protocol type values are the same as those for 10 Mb/s Ethernet. * It is followed by the variable-sized fields ar_sha, arp_spa, * arp_tha and arp_tpa in that order, according to the lengths * specified. Field names used correspond to RFC 826. */struct arphdr { u_short ar_hrd; /* format of hardware address */#define ARPHRD_ETHER 1 /* ethernet hardware address */ u_short ar_pro; /* format of protocol address */ u_char ar_hln; /* length of hardware address */ u_char ar_pln; /* length of protocol address */ u_short ar_op; /* one of: */#define ARPOP_REQUEST 1 /* request to resolve address */#define ARPOP_REPLY 2 /* response to previous request */#define RARPOP_REQUEST 3 /* Reverse ARP request */#define RARPOP_REPLY 4 /* Reverse ARP reply *//* * The remaining fields are variable in size, * according to the sizes above. *//* u_char ar_sha[]; /* sender hardware address *//* u_char ar_spa[]; /* sender protocol address *//* u_char ar_tha[]; /* target hardware address *//* u_char ar_tpa[]; /* target protocol address */};/* * ARP ioctl request */struct arpreq { struct sockaddr arp_pa; /* protocol address */ struct sockaddr arp_ha; /* hardware address */ int arp_flags; /* flags */};/* arp_flags and at_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 BSD_TRAILERS 1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -