Initial commit of OpenSPARC T2 architecture model.
[OpenSPARC-T2-SAM] / obp / obp / pkg / netinet / dhcp-h.fth
\ ========== Copyright Header Begin ==========================================
\
\ Hypervisor Software File: dhcp-h.fth
\
\ Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
\
\ - Do no alter or remove copyright notices
\
\ - Redistribution and use of this software in source and binary forms, with
\ or without modification, are permitted provided that the following
\ conditions are met:
\
\ - Redistribution of source code must retain the above copyright notice,
\ this list of conditions and the following disclaimer.
\
\ - Redistribution in binary form must reproduce the above copyright notice,
\ this list of conditions and the following disclaimer in the
\ documentation and/or other materials provided with the distribution.
\
\ Neither the name of Sun Microsystems, Inc. or the names of contributors
\ may be used to endorse or promote products derived from this software
\ without specific prior written permission.
\
\ This software is provided "AS IS," without a warranty of any kind.
\ ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES,
\ INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A
\ PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN
\ MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL NOT BE LIABLE FOR
\ ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
\ DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL SUN
\ OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR
\ FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE
\ DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY,
\ ARISING OUT OF THE USE OF OR INABILITY TO USE THIS SOFTWARE, EVEN IF
\ SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
\
\ You acknowledge that this software is not designed, licensed or
\ intended for use in the design, construction, operation or maintenance of
\ any nuclear facility.
\
\ ========== Copyright Header End ============================================
id: @(#)dhcp-h.fth 1.1 04/09/07
purpose:
copyright: Copyright 2004 Sun Microsystems, Inc. All Rights Reserved
copyright: Use is subject to license terms.
headerless
struct
/c field >dhcp-op \ Message opcode
/c field >dhcp-htype \ Hardware address type
/c field >dhcp-hlen \ Hardware address length
/c field >dhcp-hops \ Used by relay agents
/l field >dhcp-xid \ Transaction ID
/w field >dhcp-secs \ Time since boot began
/w field >dhcp-flags \ Flags
/ip-addr field >dhcp-ciaddr \ Client IP address
/ip-addr field >dhcp-yiaddr \ "Your" IP address (from server)
/ip-addr field >dhcp-siaddr \ Boot server IP address
/ip-addr field >dhcp-giaddr \ Relay agent IP address
d# 16 field >dhcp-chaddr \ Client hardware address
d# 64 field >dhcp-sname \ Boot server hostname
d# 128 field >dhcp-file \ Boot filename
d# 4 field >dhcp-cookie \ Magic cookie
0 field >dhcp-options \ Options, variable length
constant /dhcp-header
d# 300 constant DHCP_MIN_PKTLEN \ Minimum length of DHCP/BOOTP packet
\ Message opcode types
1 constant BOOTREQUEST \ BOOTP Request Opcode
2 constant BOOTREPLY \ BOOTP Reply Opcode
\ Magic cookie
h# 63.82.53.63 constant BOOTMAGIC \ RFC 1048 Magic Cookie
\ DHCP message types
1 constant DHCP_DISCOVER
2 constant DHCP_OFFER
3 constant DHCP_REQUEST
d# 4 constant DHCP_DECLINE
d# 5 constant DHCP_ACK
d# 6 constant DHCP_NAK
d# 7 constant DHCP_RELEASE
d# 8 constant DHCP_INFORM
\ Generic DHCP option structure
struct
1 field >dhcpopt-code
1 field >dhcpopt-len
0 field >dhcpopt-data
constant /dhcp-option
\ DHCP Option Codes
0 constant CD_PAD
1 constant CD_SUBNETMASK
3 constant CD_ROUTER
d# 12 constant CD_HOSTNAME
d# 43 constant CD_VENDOR_SPEC
d# 50 constant CD_REQ_IPADDR
d# 52 constant CD_OPTION_OVERLOAD
d# 53 constant CD_DHCP_TYPE
d# 54 constant CD_SERVER_ID
d# 55 constant CD_REQUEST_LIST
d# 57 constant CD_MAXMSG_SIZE
d# 60 constant CD_CLASSID
d# 61 constant CD_CLIENTID
d# 67 constant CD_BOOTFILE_NAME
d# 255 constant CD_END
\ Sun Vendor specific options
d# 16 constant VS_BOOT_URI \ Boot file URI
d# 17 constant VS_HTTP_PROXY \ HTTP Proxy URL for WAN boot
\ DHCP states
0 constant DHCPS_INIT
1 constant DHCPS_INFORM
2 constant DHCPS_SELECTING
3 constant DHCPS_REQUESTING
d# 4 constant DHCPS_VERIFYING
d# 5 constant DHCPS_BOUND
d# 6 constant DHCPS_CONFIGURED
headers