diff options
Diffstat (limited to 'usr.sbin/bootpd/bootp.h')
-rw-r--r-- | usr.sbin/bootpd/bootp.h | 147 |
1 files changed, 0 insertions, 147 deletions
diff --git a/usr.sbin/bootpd/bootp.h b/usr.sbin/bootpd/bootp.h deleted file mode 100644 index 990bf58..0000000 --- a/usr.sbin/bootpd/bootp.h +++ /dev/null @@ -1,147 +0,0 @@ -/************************************************************************ - Copyright 1988, 1991 by Carnegie Mellon University - - All Rights Reserved - -Permission to use, copy, modify, and distribute this software and its -documentation for any purpose and without fee is hereby granted, provided -that the above copyright notice appear in all copies and that both that -copyright notice and this permission notice appear in supporting -documentation, and that the name of Carnegie Mellon University not be used -in advertising or publicity pertaining to distribution of the software -without specific, written prior permission. - -CARNEGIE MELLON UNIVERSITY DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS -SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. -IN NO EVENT SHALL CMU BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL -DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR -PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS -ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -SOFTWARE. -************************************************************************/ - -/* - * Bootstrap Protocol (BOOTP). RFC951 and RFC1395. - * - * $Id: bootp.h,v 1.2 1994/08/22 22:14:40 gwr Exp $ - * - * - * This file specifies the "implementation-independent" BOOTP protocol - * information which is common to both client and server. - * - */ - -#include "bptypes.h" /* for int32, u_int32 */ - -#define BP_CHADDR_LEN 16 -#define BP_SNAME_LEN 64 -#define BP_FILE_LEN 128 -#define BP_VEND_LEN 64 -#define BP_MINPKTSZ 300 /* to check sizeof(struct bootp) */ - -struct bootp { - unsigned char bp_op; /* packet opcode type */ - unsigned char bp_htype; /* hardware addr type */ - unsigned char bp_hlen; /* hardware addr length */ - unsigned char bp_hops; /* gateway hops */ - unsigned int32 bp_xid; /* transaction ID */ - unsigned short bp_secs; /* seconds since boot began */ - unsigned short bp_flags; /* RFC1532 broadcast, etc. */ - struct in_addr bp_ciaddr; /* client IP address */ - struct in_addr bp_yiaddr; /* 'your' IP address */ - struct in_addr bp_siaddr; /* server IP address */ - struct in_addr bp_giaddr; /* gateway IP address */ - unsigned char bp_chaddr[BP_CHADDR_LEN]; /* client hardware address */ - char bp_sname[BP_SNAME_LEN]; /* server host name */ - char bp_file[BP_FILE_LEN]; /* boot file name */ - unsigned char bp_vend[BP_VEND_LEN]; /* vendor-specific area */ - /* note that bp_vend can be longer, extending to end of packet. */ -}; - -/* - * UDP port numbers, server and client. - */ -#define IPPORT_BOOTPS 67 -#define IPPORT_BOOTPC 68 - -#define BOOTREPLY 2 -#define BOOTREQUEST 1 - -/* - * Hardware types from Assigned Numbers RFC. - */ -#define HTYPE_ETHERNET 1 -#define HTYPE_EXP_ETHERNET 2 -#define HTYPE_AX25 3 -#define HTYPE_PRONET 4 -#define HTYPE_CHAOS 5 -#define HTYPE_IEEE802 6 -#define HTYPE_ARCNET 7 - -/* - * Vendor magic cookie (v_magic) for CMU - */ -#define VM_CMU "CMU" - -/* - * Vendor magic cookie (v_magic) for RFC1048 - */ -#define VM_RFC1048 { 99, 130, 83, 99 } - - - -/* - * Tag values used to specify what information is being supplied in - * the vendor (options) data area of the packet. - */ -/* RFC 1048 */ -#define TAG_END ((unsigned char) 255) -#define TAG_PAD ((unsigned char) 0) -#define TAG_SUBNET_MASK ((unsigned char) 1) -#define TAG_TIME_OFFSET ((unsigned char) 2) -#define TAG_GATEWAY ((unsigned char) 3) -#define TAG_TIME_SERVER ((unsigned char) 4) -#define TAG_NAME_SERVER ((unsigned char) 5) -#define TAG_DOMAIN_SERVER ((unsigned char) 6) -#define TAG_LOG_SERVER ((unsigned char) 7) -#define TAG_COOKIE_SERVER ((unsigned char) 8) -#define TAG_LPR_SERVER ((unsigned char) 9) -#define TAG_IMPRESS_SERVER ((unsigned char) 10) -#define TAG_RLP_SERVER ((unsigned char) 11) -#define TAG_HOST_NAME ((unsigned char) 12) -#define TAG_BOOT_SIZE ((unsigned char) 13) -/* RFC 1395 */ -#define TAG_DUMP_FILE ((unsigned char) 14) -#define TAG_DOMAIN_NAME ((unsigned char) 15) -#define TAG_SWAP_SERVER ((unsigned char) 16) -#define TAG_ROOT_PATH ((unsigned char) 17) -/* RFC 1497 */ -#define TAG_EXTEN_FILE ((unsigned char) 18) -/* RFC 1533 */ -#define TAG_NIS_DOMAIN ((unsigned char) 40) -#define TAG_NIS_SERVER ((unsigned char) 41) -#define TAG_NTP_SERVER ((unsigned char) 42) -/* DHCP maximum message size. */ -#define TAG_MAX_MSGSZ ((unsigned char) 57) - -/* XXX - Add new tags here */ - - -/* - * "vendor" data permitted for CMU bootp clients. - */ - -struct cmu_vend { - char v_magic[4]; /* magic number */ - unsigned int32 v_flags; /* flags/opcodes, etc. */ - struct in_addr v_smask; /* Subnet mask */ - struct in_addr v_dgate; /* Default gateway */ - struct in_addr v_dns1, v_dns2; /* Domain name servers */ - struct in_addr v_ins1, v_ins2; /* IEN-116 name servers */ - struct in_addr v_ts1, v_ts2; /* Time servers */ - int32 v_unused[6]; /* currently unused */ -}; - - -/* v_flags values */ -#define VF_SMASK 1 /* Subnet mask field contains valid data */ |