head	1.13;
access;
symbols
	perseant-exfatfs-base-20250801:1.13
	perseant-exfatfs-base-20240630:1.13
	perseant-exfatfs:1.13.0.12
	perseant-exfatfs-base:1.13
	cjep_sun2x:1.13.0.10
	cjep_sun2x-base:1.13
	cjep_staticlib_x-base1:1.13
	cjep_staticlib_x:1.13.0.8
	cjep_staticlib_x-base:1.13
	phil-wifi-20200421:1.13
	phil-wifi-20200411:1.13
	phil-wifi-20200406:1.13
	pgoyette-compat-merge-20190127:1.13
	pgoyette-compat-20190127:1.13
	pgoyette-compat-20190118:1.13
	pgoyette-compat-1226:1.13
	pgoyette-compat-1126:1.13
	pgoyette-compat-1020:1.13
	pgoyette-compat-0930:1.13
	pgoyette-compat-0906:1.13
	netbsd-7-2-RELEASE:1.1.1.5.2.3
	pgoyette-compat-0728:1.13
	pgoyette-compat-0625:1.13
	pgoyette-compat-0521:1.13
	pgoyette-compat-0502:1.13
	pgoyette-compat-0422:1.13
	pgoyette-compat-0415:1.13
	pgoyette-compat-0407:1.13
	pgoyette-compat-0330:1.13
	pgoyette-compat-0322:1.13
	pgoyette-compat-0315:1.13
	netbsd-7-1-2-RELEASE:1.1.1.5.2.2
	pgoyette-compat:1.13.0.6
	pgoyette-compat-base:1.13
	netbsd-7-1-1-RELEASE:1.1.1.5.2.2
	perseant-stdc-iso10646:1.13.0.4
	perseant-stdc-iso10646-base:1.13
	prg-localcount2-base3:1.13
	prg-localcount2-base2:1.13
	prg-localcount2-base1:1.13
	prg-localcount2:1.13.0.2
	prg-localcount2-base:1.13
	pgoyette-localcount-20170426:1.13
	bouyer-socketcan-base1:1.13
	pgoyette-localcount-20170320:1.12
	netbsd-7-1:1.1.1.5.2.2.0.6
	netbsd-7-1-RELEASE:1.1.1.5.2.2
	netbsd-7-1-RC2:1.1.1.5.2.2
	netbsd-7-nhusb-base-20170116:1.1.1.5.2.2
	bouyer-socketcan:1.12.0.4
	bouyer-socketcan-base:1.12
	pgoyette-localcount-20170107:1.12
	netbsd-7-1-RC1:1.1.1.5.2.2
	pgoyette-localcount-20161104:1.12
	netbsd-7-0-2-RELEASE:1.1.1.5.2.2
	dhcpcd-6-11-4-reimport:1.1.1.13
	dhcpcd-6-11-4:1.1.1.13
	localcount-20160914:1.12
	netbsd-7-nhusb:1.1.1.5.2.2.0.4
	netbsd-7-nhusb-base:1.1.1.5.2.2
	dhcpcd-6-11-3:1.1.1.13
	pgoyette-localcount-20160806:1.12
	dhcpcd-6-11-2:1.1.1.13
	pgoyette-localcount-20160726:1.12
	pgoyette-localcount:1.12.0.2
	pgoyette-localcount-base:1.12
	dhcpcd-6-11-1:1.1.1.13
	netbsd-7-0-1-RELEASE:1.1.1.5.2.2
	dhcpcd-6-11-0:1.1.1.13
	dhcpcd-6-10-3:1.1.1.13
	dhcpcd-6-10-2:1.1.1.12
	dhcpcd-6-10-1:1.1.1.12
	dhcpcd-6-10-0:1.1.1.12
	dhcpcd-6-9-4:1.1.1.11
	netbsd-7-0:1.1.1.5.2.2.0.2
	netbsd-7-0-RELEASE:1.1.1.5.2.2
	dhcpcd-6-9-3:1.1.1.10
	dhcpcd-6-9-2:1.1.1.10
	netbsd-7-0-RC3:1.1.1.5.2.2
	netbsd-7-0-RC2:1.1.1.5.2.2
	dhcpcd-6-9-1:1.1.1.10
	netbsd-7-0-RC1:1.1.1.5.2.2
	dhcpcd-6-9-0:1.1.1.9
	dhcpcd-6-8-2:1.1.1.8
	dhcpcd-6-8-1:1.1.1.8
	dhcpcd-6-8-0:1.1.1.8
	dhcpcd-6-7-1:1.1.1.8
	dhcpcd-6-7-0:1.1.1.8
	dhcpcd-6-6-7:1.1.1.7
	dhcpcd-6-6-6:1.1.1.7
	dhcpcd-6-6-5:1.1.1.7
	dhcpcd-6-6-4:1.1.1.7
	dhcpcd-6-6-3:1.1.1.7
	dhcpcd-6-6-2:1.1.1.7
	dhcpcd-6-6-1-nb1:1.1.1.7
	dhcpcd-6-6-1:1.1.1.7
	dhcpcd-6-6-0:1.1.1.6
	dhcpcd-6-5-1:1.1.1.6
	dhcpcd-6-5-0:1.1.1.6
	dhcpcd-6-4-7:1.1.1.5
	dhcpcd-6-4-6:1.1.1.5
	dhcpcd-6-4-5:1.1.1.5
	dhcpcd-6-4-4:1.1.1.5
	tls-maxphys-base:1.1.1.5
	tls-maxphys:1.1.1.5.0.4
	netbsd-7:1.1.1.5.0.2
	netbsd-7-base:1.1.1.5
	dhcpcd-6-4-3:1.1.1.5
	dhcpcd-6-4-2:1.1.1.4
	dhcpcd-6-4-1:1.1.1.4
	dhcpcd-6-4-0:1.1.1.3
	yamt-pagecache:1.1.1.3.0.4
	yamt-pagecache-base9:1.1.1.3
	tls-earlyentropy:1.1.1.3.0.2
	tls-earlyentropy-base:1.1.1.5
	riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.1.1.3
	riastradh-drm2-base3:1.1.1.3
	dhcpcd-6-3-2:1.1.1.3
	dhcpcd-6-3-1:1.1.1.3
	dhcpcd-6-3-0:1.1.1.3
	dhcpcd-6-2-1:1.1.1.2
	dhcpcd-6-2-0:1.1.1.1
	roy:1.1.1;
locks; strict;
comment	@# @;


1.13
date	2017.03.31.20.53.55;	author roy;	state dead;
branches;
next	1.12;
commitid	dLxJqjjcfoFGgKLz;

1.12
date	2016.04.20.08.53.01;	author roy;	state Exp;
branches
	1.12.2.1
	1.12.4.1;
next	1.11;
commitid	ly8EpjcaFC3Rml3z;

1.11
date	2016.01.07.20.09.43;	author roy;	state Exp;
branches;
next	1.10;
commitid	Yu2DkcnWKbafs2Qy;

1.10
date	2015.11.30.16.33.00;	author roy;	state Exp;
branches;
next	1.9;
commitid	r6sgSE1PawCBt8Ly;

1.9
date	2015.07.09.10.15.34;	author roy;	state Exp;
branches;
next	1.8;
commitid	GIQWpaIgzho51Bsy;

1.8
date	2015.05.16.23.31.32;	author roy;	state Exp;
branches;
next	1.7;
commitid	YXlJTXZYY8RM9Jly;

1.7
date	2015.01.30.09.47.05;	author roy;	state Exp;
branches;
next	1.6;
commitid	N71sOlMf3T0h028y;

1.6
date	2014.11.07.20.51.02;	author roy;	state Exp;
branches;
next	1.5;
commitid	75oEB7w8hHnrniXx;

1.5
date	2014.11.07.20.32.05;	author roy;	state Exp;
branches;
next	1.4;
commitid	SjGER4FFqwIXgiXx;

1.4
date	2014.10.29.01.08.31;	author roy;	state Exp;
branches;
next	1.3;
commitid	pxqc4rDIPN7J72Wx;

1.3
date	2014.10.17.23.42.24;	author roy;	state Exp;
branches;
next	1.2;
commitid	9G64jKP8UtP60CUx;

1.2
date	2014.10.06.18.22.29;	author roy;	state Exp;
branches;
next	1.1;
commitid	brDOONtoZlOhAaTx;

1.1
date	2014.01.03.22.10.43;	author roy;	state Exp;
branches
	1.1.1.1;
next	;
commitid	0INAS2yPnkFaIIjx;

1.12.2.1
date	2017.04.26.02.52.22;	author pgoyette;	state dead;
branches;
next	;
commitid	ojV02aOSdzvBqZOz;

1.12.4.1
date	2017.04.21.16.51.22;	author bouyer;	state dead;
branches;
next	;
commitid	dUG7nkTKALCadqOz;

1.1.1.1
date	2014.01.03.22.10.43;	author roy;	state Exp;
branches;
next	1.1.1.2;
commitid	0INAS2yPnkFaIIjx;

1.1.1.2
date	2014.01.15.20.36.32;	author roy;	state Exp;
branches;
next	1.1.1.3;
commitid	6b9uRotzezj4Oflx;

1.1.1.3
date	2014.02.25.13.14.30;	author roy;	state Exp;
branches
	1.1.1.3.2.1
	1.1.1.3.4.1;
next	1.1.1.4;
commitid	ic8VDg7Vv5gD2uqx;

1.1.1.4
date	2014.07.14.11.45.04;	author roy;	state Exp;
branches;
next	1.1.1.5;
commitid	Mi8tFV9mGmDF4lIx;

1.1.1.5
date	2014.07.30.15.44.11;	author roy;	state Exp;
branches
	1.1.1.5.2.1
	1.1.1.5.4.1;
next	1.1.1.6;
commitid	6Rf7knjuLf38TpKx;

1.1.1.6
date	2014.10.06.18.20.19;	author roy;	state Exp;
branches;
next	1.1.1.7;
commitid	z8uiNxyedywczaTx;

1.1.1.7
date	2014.11.07.20.24.03;	author roy;	state Exp;
branches;
next	1.1.1.8;
commitid	r3g7iXT9fDtAdiXx;

1.1.1.8
date	2015.01.30.09.40.24;	author roy;	state Exp;
branches;
next	1.1.1.9;
commitid	AfM6JIvoCH9zX18y;

1.1.1.9
date	2015.05.16.23.25.41;	author roy;	state Exp;
branches;
next	1.1.1.10;
commitid	4GxdCMxWBIXk7Jly;

1.1.1.10
date	2015.07.09.10.08.28;	author roy;	state Exp;
branches;
next	1.1.1.11;
commitid	CYMdWdX7xdC9YAsy;

1.1.1.11
date	2015.11.30.16.25.06;	author roy;	state Exp;
branches;
next	1.1.1.12;
commitid	8WRzU4UTI5mEq8Ly;

1.1.1.12
date	2016.01.07.20.04.07;	author roy;	state Exp;
branches;
next	1.1.1.13;
commitid	59X94VnrVWdsp2Qy;

1.1.1.13
date	2016.04.20.08.48.09;	author roy;	state Exp;
branches;
next	;
commitid	KG5kiKDxrOmPkl3z;

1.1.1.3.2.1
date	2014.08.10.07.06.59;	author tls;	state Exp;
branches;
next	;
commitid	6GtpeveLcuaaGMLx;

1.1.1.3.4.1
date	2014.02.25.13.14.30;	author yamt;	state dead;
branches;
next	1.1.1.3.4.2;
commitid	bCgsIAYejpvb7yBx;

1.1.1.3.4.2
date	2014.05.22.15.44.40;	author yamt;	state Exp;
branches;
next	;
commitid	bCgsIAYejpvb7yBx;

1.1.1.5.2.1
date	2014.12.29.16.18.04;	author martin;	state Exp;
branches;
next	1.1.1.5.2.2;
commitid	rwbq7QmIjmQl9X3y;

1.1.1.5.2.2
date	2015.02.05.15.13.12;	author martin;	state Exp;
branches;
next	1.1.1.5.2.3;
commitid	pegsZpCsYzXKBP8y;

1.1.1.5.2.3
date	2018.07.27.10.43.19;	author martin;	state dead;
branches;
next	;
commitid	HmTKhyRj9OTCmLLA;

1.1.1.5.4.1
date	2014.07.30.15.44.11;	author tls;	state dead;
branches;
next	1.1.1.5.4.2;
commitid	jTnpym9Qu0o4R1Nx;

1.1.1.5.4.2
date	2014.08.19.23.46.43;	author tls;	state Exp;
branches;
next	;
commitid	jTnpym9Qu0o4R1Nx;


desc
@@


1.13
log
@Sync
@
text
@# $NetBSD: dhcpcd-definitions.conf,v 1.12 2016/04/20 08:53:01 roy Exp $

# Copyright (c) 2006-2016 Roy Marples
# All rights reserved

# DHCP option definitions for dhcpcd(8)
# These are used to translate DHCP options into shell variables
# for use in dhcpcd-run-hooks(8)
# See dhcpcd.conf(5) for details

##############################################################################
# DHCP RFC2132 options unless otheriwse stated
define 1	request ipaddress	subnet_mask
# RFC3442 states that the CSR has to come before all other routes
# For completeness we also specify static routes then routers
define 121	rfc3442			classless_static_routes
# Option 249 is an IANA assigned private number used by Windows DHCP servers
# to provide the exact same information as option 121, classless static routes
define 249	rfc3442			ms_classless_static_routes
define 33	request array ipaddress	static_routes
define 3	request array ipaddress	routers
define 2	uint32			time_offset
define 4	array ipaddress		time_servers
define 5	array ipaddress		ien116_name_servers
define 6	array ipaddress		domain_name_servers
define 7	array ipaddress		log_servers
define 8	array ipaddress		cookie_servers
define 9	array ipaddress		lpr_servers
define 10	array ipaddress		impress_servers
define 11	array ipaddress		resource_location_servers
define 12	dname			host_name
define 13	uint16			boot_size
define 14	string			merit_dump
# Technically domain_name is not an array, but many servers expect clients
# to treat it as one.
define 15	array dname		domain_name
define 16	ipaddress		swap_server
define 17	string			root_path
define 18	string			extensions_path
define 19	byte			ip_forwarding
define 20	byte			non_local_source_routing
define 21	array ipaddress		policy_filter
define 22	uint16			max_dgram_reassembly
define 23	byte			default_ip_ttl
define 24	uint32			path_mtu_aging_timeout
define 25	array uint16		path_mtu_plateau_table
define 26	uint16			interface_mtu
define 27	byte			all_subnets_local
define 28	request ipaddress	broadcast_address
define 29	byte			perform_mask_discovery
define 30	byte			mask_supplier
define 31	byte			router_discovery
define 32	ipaddress		router_solicitation_address
define 34	byte			trailer_encapsulation
define 35	uint32			arp_cache_timeout
define 36	uint16			ieee802_3_encapsulation
define 37	byte			default_tcp_ttl
define 38	uint32			tcp_keepalive_interval
define 39	byte			tcp_keepalive_garbage
define 40	string			nis_domain
define 41	array ipaddress		nis_servers
define 42	array ipaddress		ntp_servers
define 43	binhex			vendor_encapsulated_options
define 44	array ipaddress		netbios_name_servers
define 45	ipaddress		netbios_dd_server
define 46	byte			netbios_node_type
define 47	string			netbios_scope
define 48	array ipaddress		font_servers
define 49	array ipaddress		x_display_manager
define 50	ipaddress		dhcp_requested_address
define 51	request uint32		dhcp_lease_time
define 52	byte			dhcp_option_overload
define 53	byte			dhcp_message_type
define 54	ipaddress		dhcp_server_identifier
define 55	array byte		dhcp_parameter_request_list
define 56	string			dhcp_message
define 57	uint16			dhcp_max_message_size
define 58	request uint32		dhcp_renewal_time
define 59	request uint32		dhcp_rebinding_time
define 60	string			vendor_class_identifier
define 61	binhex			dhcp_client_identifier
define 64	string			nisplus_domain
define 65	array ipaddress		nisplus_servers
define 66	dname			tftp_server_name
define 67	string			bootfile_name
define 68	array ipaddress		mobile_ip_home_agent
define 69	array ipaddress		smtp_server
define 70	array ipaddress		pop_server
define 71	array ipaddress		nntp_server
define 72	array ipaddress		www_server
define 73	array ipaddress		finger_server
define 74	array ipaddress		irc_server
define 75	array ipaddress		streettalk_server
define 76	array ipaddress		streettalk_directory_assistance_server

# DHCP User Class, RFC3004
define 77	binhex			user_class

# DHCP SLP Directory Agent, RFC2610
define 78	embed			slp_agent
embed		byte			mandatory
embed		array ipaddress		address
define 79	embed			slp_service
embed		byte			mandatory
embed		ascii			scope_list

# DHCP Rapid Commit, RFC4039
define 80	norequest flag		rapid_commit

# DHCP Fully Qualified Domain Name, RFC4702
define 81	embed			fqdn
embed		bitflags=0000NEOS	flags
embed		byte			rcode1
embed		byte			rcode2
# dhcpcd always sets the E bit which means the fqdn itself is always
# RFC1035 encoded.
# The server MUST use the encoding as specified by the client as noted
# in RFC4702 Section 2.1.
embed		optional domain		fqdn

# Option 82 is for Relay Agents and DHCP servers

# iSNS, RFC4174
define 83	embed			isns
embed		byte			reserved1
embed		bitflags=00000SAE	functions
embed		byte			reserved2
embed		bitflags=00fFsSCE	dd
embed		byte			reserved3
embed		bitflags=0000DMHE	admin
embed		uint16			reserved4
embed		byte			reserved5
embed		bitflags=0TXPAMSE	server_security
embed		array ipaddress		servers

# Option 84 are unused, RFC3679

# DHCP Novell Directory Services, RFC2241
define 85	array ipaddress		nds_servers
define 86	raw			nds_tree_name
define 87	raw			nds_context

# DHCP Broadcast and Multicast Control Server, RFC4280
define 88	array domain		bcms_controller_names
define 89	array ipaddress		bcms_controller_address

# DHCP Authentication, RFC3118
define 90	embed			auth
embed		byte			protocol
embed		byte			algorithm
embed		byte			rdm
embed		binhex:8		replay
embed		binhex			information

# DHCP Leasequery, RFC4388
define 91	uint32			client_last_transaction_time
define 92	array ipaddress		associated_ip

# DHCP Options for Intel Preboot eXecution Environent (PXE), RFC4578
# Options 93, 94 and 97 are used but of no use to dhcpcd

# Option 95 used by Apple but never published RFC3679
# Option 96 is unused, RFC3679

# DHCP The Open Group's User Authentication Protocol, RFC2485
define 98	string			uap_servers

# DHCP Civic Addresses Configuration Information, RFC4776
define 99	encap			geoconf_civic
embed		byte			what
embed		uint16			country_code
# The rest of this option is not supported

# DHCP Timezone, RFC4883
define 100	string			posix_timezone
define 101	string			tzdb_timezone

# Options 102-115 are unused, RFC3679

# DHCP Auto-Configuration, RFC2563
define 116	byte			auto_configure

# DHCP Name Service Search, RFC2937
define 117	array uint16		name_service_search

# DHCP Subnet Selection, RFC3011
define 118	ipaddress		subnet_selection

# DHCP Domain Search, RFC3397
define 119	array domain		domain_search

# DHCP Session Initiated Protocol Servers, RFC3361
define 120	rfc3361			sip_server

# Option 121 is defined at the top of this file

# DHCP CableLabs Client, RFC3495
define 122	encap			tsp
encap 1		ipaddress		dhcp_server
encap 2		ipaddress		dhcp_secondary_server
encap 3		rfc3361			provisioning_server
encap 4		embed			as_req_as_rep_backoff
embed		uint32			nominal
embed		uint32			maximum
embed		uint32			retry
encap 5		embed			ap_req_ap_rep_backoff
embed		uint32			nominal
embed		uint32			maximum
embed		uint32			retry
encap 6		domain			kerberos_realm
encap 7		byte			ticket_granting_server_utilization
encap 8		byte			provisioning_timer

# DHCP Coordinate LCI, RFC6225
# We have no means of expressing 6 bit lengths
define 123	binhex			geoconf

# DHCP Vendor-Identifying Vendor Options, RFC3925
define 124	binhex			vivco
define 125	embed			vivso
embed		uint32			enterprise_number
# Vendor options are shared between DHCP/DHCPv6
# Their code is matched to the enterprise number defined above
# see the end of this file for an example

# Options 126 and 127 are unused, RFC3679

# DHCP Options for Intel Preboot eXecution Environent (PXE), RFC4578
# Options 128-135 are used but of no use to dhcpcd

# DHCP PANA Authentication Agent, RFC5192
define 136	array ipaddress		pana_agent

# DHCP Lost Server, RFC5223
define 137	domain			lost_server

# DHCP CAPWAP, RFC5417
define 138	array ipaddress		capwap_ac

# DHCP Mobility Services, RFC5678
define 139	encap			mos_ip
encap 1		array ipaddress		is
encap 2		array ipaddress		cs
encap 3		array ipaddress		es
define 140	encap			mos_domain
encap 1		domain			is
encap 2		domain			cs
encap 3		domain			es

# DHCP SIP UA, RFC6011
define 141	array domain		sip_ua_cs_list

# DHCP ANDSF, RFC6153
define 142	array ipaddress		andsf
define 143	array ip6address	andsf6

# DHCP Coordinate LCI, RFC6225
# We have no means of expressing 6 bit lengths
define 144	binhex			geoloc

# DHCP FORCERENEW Nonce Capability, RFC6704
define 145	array byte		forcerenew_nonce_capable

# DHCP RDNSS Selection for MIF Nodes, RFC6731
define 146	embed			rdnss_selection
embed		byte			prf
embed		ipaddress		primary
embed		ipaddress		secondary
embed		array domain		domains

# Options 147, 148 and 149 are unused, RFC3942

# DHCP TFTP Server Address, RFC5859
define 150	array ipaddress		tftp_servers

# Options 151-157 are used for Lease Query, RFC6926 and not for dhcpcd
# Options 158-174 are unused, RFC3942
# Options 175-177 are tentativel assigned for Etherboot
# Options 178-207 are unused, RFC3942

# DHCP PXELINUX, RFC5071
define 208	binhex			pxelinux_magic
define 209	string			config_file
define 210	string			path_prefix
define 211	uint32			reboot_time

# DHCP IPv6 Rapid Deployment on IPv4 Infrastructures, RFC5969
define 212	embed			sixrd
embed		byte			mask_len
embed		byte			prefix_len
embed		ip6address		prefix
embed		array ipaddress		brip_address

# DHCP Access Network Domain Name, RFC5986
define 213	domain			access_domain

# Options 214-219 are unused, RFC3942

# DHCP Subnet Allocation, RFC6656
# Option 220 looks specific to Cisco hardware.

# DHCP Virtual Subnet Selection, RFC6607
define 221	encap			vss
encap 0		string			nvt
encap 1		binhex			vpn_id
encap 255	flag			global

# Options 222 and 223 are unused, RFC3942

# Options 224-254 are reserved for Private Use
# However, an expired RFC for Web Proxy Auto Discovery Protocol does define
# Option 252 which is commonly used by major browsers.
# Apparently the code was assigned by agreement of the DHC working group chair.
define 252	string			wpad_url

# Option 255 End

##############################################################################
# ND6 options, RFC4861
definend 1	binhex			source_address
definend 2	binhex			target_address

definend 3	index embed		prefix_information
embed		byte			length
embed		bitflags=LA		flags
embed		uint32			vltime
embed		uint32			pltime
embed		uint32			reserved
embed		array ip6address	prefix

# option 4 is only for Redirect messages

definend 5	embed			mtu
embed		uint16			reserved
embed		uint32			mtu

# ND6 options, RFC6101
definend 25	index embed		rdnss
embed		uint16			reserved
embed		uint32			lifetime
embed		array ip6address	servers

definend 31	index embed		dnssl
embed		uint16			reserved
embed		uint32			lifetime
embed		domain			search

##############################################################################
# DHCPv6 options, RFC3315
define6 1	binhex			client_id
define6 2	binhex			server_id

define6 3	norequest index embed	ia_na
embed		binhex:4		iaid
embed		uint32			t1
embed		uint32			t2
encap 5		option
encap 13	option

define6 4	norequest index embed	ia_ta
embed		uint32			iaid
encap 5		option
encap 13	option

define6 5	norequest index embed	ia_addr
embed		ip6address		ia_addr
embed		uint32			pltime
embed		uint32			vltime
encap 13	option

define6 6	array uint16		option_request
define6 7	byte			preference
define6 8	uint16			elased_time
define6 9	binhex			dhcp_relay_msg

# Option 10 is unused

define6 11	embed			auth
embed		byte			protocol
embed		byte			algorithm
embed		byte			rdm
embed		binhex:8		replay
embed		binhex			information

define6 12	ip6address		unicast

define6 13	norequest embed		status_code
embed		uint16			status_code
embed		string			message

define6 14	norequest flag		rapid_commit
define6 15	binhex			user_class

define6 16	binhex			vivco
define6 17	embed			vivso
embed		uint32			enterprise_number
# Vendor options are shared between DHCP/DHCPv6
# Their code is matched to the enterprise number defined above
# See the end of this file for an example

define6 18	binhex			interface_id
define6 19	byte			reconfigure_msg
define6 20	flag			reconfigure_accept

# DHCPv6 Session Initiation Protocol Options, RFC3319
define6 21	array domain		sip_servers_names
define6 22	array ip6address	sip_servers_addresses

# DHCPv6 DNS Configuration Options, RFC3646
define6 23	array ip6address	name_servers
define6 24	array domain		domain_search

# DHCPv6 Prefix Options, RFC6603
define6 25	norequest index embed	ia_pd
embed		binhex:4		iaid
embed		uint32			t1
embed		uint32			t2
encap 26	option
define6 26	index embed		prefix
embed		uint32			pltime
embed		uint32			vltime
embed		byte			length
embed		ip6address		prefix
encap 13	option
encap 67	option

# DHCPv6 Network Information Service Options, RFC3898
define6 27	array ip6address	nis_servers
define6 28	array ip6address	nisp_servers
define6 29	string			nis_domain_name
define6 30	string			nisp_domain_name

# DHCPv6 Simple Network Time Protocol Servers Option, RFC4075
define6 31	array ip6address	sntp_servers

# DHCPv6 Information Refresh Time, RFC4242
define6 32	uint32			info_refresh_time

# DHCPv6 Broadcast and Multicast Control Server, RFC4280
define6 33	array domain		bcms_server_d
define6 34	array ip6address	bcms_server_a

# DHCP Civic Addresses Configuration Information, RFC4776
define6 36	encap			geoconf_civic
embed		byte			what
embed		uint16			country_code
# The rest of this option is not supported

# DHCP Relay Agent Remote-ID, RFC4649
define6 37	embed			remote_id
embed		uint32			enterprise_number
embed		binhex			remote_id

# DHCP Relay Agent Subscriber-ID, RFC4580
define6 38	binhex			subscriber_id

# DHCPv6 Fully Qualified Domain Name, RFC4704
define6 39	embed			fqdn
embed		bitflags=00000NOS	flags
embed		optional domain		fqdn

# DHCPv6 PANA Authentication Agnet, RC5192
define6 40	array ip6address	pana_agent

# DHCPv6 Timezone options, RFC4883
define6 41	string			posix_timezone
define6 42	string			tzdb_timezone

# DHCPv6 Relay Agent Echo Request
define6 43	array uint16		ero

# Options 44-48 are used for Lease Query, RFC5007 and not for dhcpcd

# DHCPv6 Home Info Discovery in MIPv6, RFC6610
define6 49	domain			mip6_hnidf
define6 50	encap			mip6_vdinf
encap 71	option
encap 72	option
encap 73	option

# DHCPv6 Lost Server, RFC5223
define6 51	domain			lost_server

# DHCPv6 CAPWAP, RFC5417
define6 52	array ip6address	capwap_ac

# DHCPv6 Relay-ID, RFC5460
define6 53	binhex			relay_id

# DHCP Mobility Services, RFC5678
define6 54	encap			mos_ip
encap 1		array ip6address	is
encap 2		array ip6address	cs
encap 3		array ip6address	es
define6 55 	encap			mos_domain
encap 1		domain			is
encap 2		domain			cs
encap 3		domain			es

# DHCPv6 Network Time Protocol Server, RFC5908
define6 56	encap			ntp_server
encap 1		ip6address		addr
encap 2		ip6address		mcast_addr
encap 3		ip6address		fqdn

# DHCPv6 LIS Discovery, RFC5986
define6 57	domain			access_domain

# DHCPv6 SIP UA, RFC6011
define6 58	array domain		sip_ua_cs_list

# DHCPv6 Network Boot, RFC5970
define6 59	string			bootfile_url
# We presently cannot decode bootfile_param
define6 60	binhex			bootfile_param
define6 61	array uint16		architecture_types
define6 62	embed			nii
embed		byte			type
embed		byte			major
embed		byte			minor

# DHCPv6 Coordinate LCI, RFC6225
# We have no means of expressing 6 bit lengths
define6 63	binhex			geoloc

# DHCPv6 AFTR-Name, RFC6334
define6 64	domain			aftr_name

# DHCPv6 Prefix Exclude Option, RFC6603
define6 67	embed			pd_exclude
embed		byte			prefix_len
embed		binhex			subnetID

# DHCPv6 Home Info Discovery in MIPv6, RFC6610
define6 69	encap			mip6_idinf
encap 71	option
encap 72	option
encap 73	option
define6 70	encap			mip6_udinf
encap 71	option
encap 72	option
encap 73	option
define6	71	embed			mip6_hnp
embed		byte			prefix_len
embed		ip6address		prefix
define6 72	ip6address		mip6_haa
define6 73	domain			mip6_haf

# DHCPv6 RDNSS Selection for MIF Nodes, RFC6731
define6 74	embed			rdnss_selection
embed		ip6address		server
embed		byte			prf
embed		array domain		domains

# DHCPv6 Kerberos, RFC6784
define6 75	string			krb_principal_name
define6 76	string			krb_realm_name
define6 78	embed			krb_kdc
embed		uint16			priority
embed		uint16			weight
embed		byte			transport_type
embed		uint16			port
embed		ip6address		address
embed		string			realm_name

# DHCPv6 Client Link-Layer Address, RFC6939
# Section 7 states that clients MUST ignore the option 79

# DHCPv6 Relay-Triggered Reconfiguraion, RFC6977
define6 80	ip6address		link_address

# DHCPv6 Radius, RFC7037
# Section 7 states that clients MUST ignore the option 81

# DHCPv6 SOL_MAX_RT, RFC7083
define6 82	request uint32		sol_max_rt
define6	83	request uint32		inf_max_rt

# DHCPv6 Address Selection Policy
# Currently not supported

# Options 86-65535 are unasssinged

##############################################################################
# Vendor-Identifying Vendor Options
# An example:
#vendopt 12345	encap			frobozzco
#encap 1	string			maze_location
#encap 2	byte			grue_probability
@


1.12
log
@Sync
@
text
@d1 1
a1 1
# $NetBSD: dhcpcd-definitions.conf,v 1.11 2016/01/07 20:09:43 roy Exp $
@


1.12.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
# $NetBSD: dhcpcd-definitions.conf,v 1.12 2016/04/20 08:53:01 roy Exp $
@


1.12.4.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
# $NetBSD: dhcpcd-definitions.conf,v 1.12 2016/04/20 08:53:01 roy Exp $
@


1.11
log
@Sync
@
text
@d1 1
a1 1
# $NetBSD: dhcpcd-definitions.conf,v 1.10 2015/11/30 16:33:00 roy Exp $
d123 14
a136 1
# Options 83 ad 84 are unused, RFC3679
@


1.10
log
@Sync
@
text
@d1 1
a1 1
# $NetBSD: dhcpcd-definitions.conf,v 1.9 2015/07/09 10:15:34 roy Exp $
d3 1
a3 1
# Copyright (c) 2006-2015 Roy Marples
d43 2
a44 2
define 22	int16			max_dgram_reassembly
define 23	uint16			default_ip_ttl
d447 1
a447 1
embed		domain			fqdn
@


1.9
log
@Sync
@
text
@d1 1
a1 1
# $NetBSD: dhcpcd-definitions.conf,v 1.8 2015/05/16 23:31:32 roy Exp $
d119 1
a119 1
embed		domain			fqdn
d275 5
a279 1
define 212	rfc5969			sixrd
@


1.8
log
@Sync
@
text
@d1 1
a1 1
# $NetBSD: dhcpcd-definitions.conf,v 1.7 2015/01/30 09:47:05 roy Exp $
d80 1
a80 1
define 60	binhex			vendor_class_identifier
d115 4
d292 1
d294 5
@


1.7
log
@Sync
@
text
@d1 1
a1 1
# $NetBSD: dhcpcd-definitions.conf,v 1.6 2014/11/07 20:51:02 roy Exp $
d112 1
a112 1
embed		byte			flags
d292 30
d432 1
a432 1
embed		byte			flags
@


1.6
log
@Add RCSIDs
@
text
@d1 1
a1 1
# $NetBSD: $
d3 1
a3 1
# Copyright (c) 2006-2014 Roy Marples
@


1.5
log
@Sync
@
text
@d1 2
@


1.4
log
@Sync
@
text
@a0 2
# $NetBSD: $

@


1.3
log
@Sync
@
text
@@


1.2
log
@Sync
@
text
@@


1.1
log
@Initial revision
@
text
@d3 3
d31 1
a31 1
define 12	string			host_name
d34 3
a36 1
define 15	string			domain_name
d63 1
a63 1
define 43	string			vendor_encapsulated_options
d84 1
a84 1
define 66	string			tftp_server_name
d97 9
a105 1
define 77	string			user_class
d117 4
d123 2
a124 2
define 86	string			nds_tree_name
define 87	string			nds_context
d127 1
a127 1
define 88	domain			bcms_controller_names
d130 8
d142 6
d151 6
d161 8
d173 1
a173 1
define 119	domain			domain_search
d178 23
d209 61
d273 18
d319 2
d324 2
a325 1
embed		binhex:8		replay_detection
d349 1
a349 1
define6 21	domain			sip_servers_names
d354 1
a354 1
define6 24	domain			domain_search
a361 1

d365 1
d368 1
d373 2
a374 2
define6 29	domain			nis_domain_name
define6 30	domain			nisp_domain_name
d383 1
a383 1
define6 33	domain			bcms_server_d
d386 14
d405 3
d412 31
d449 78
@


1.1.1.1
log
@Import dhcpcd-6.2.0 with the following changes:

* Fix NAK backoff when a server NAKs a REQUEST after a DISCOVER.
* Fix IPv6 ICMP filtering on Android (RS/RA now works)
* Fix sending of DHCPv6 FQDN when only hostname specified
* Add support for RFC3925 Vendor-Identifying Vendor Options
* Remove hard coded DHCP/DHCPv6 options and embed dhcpcd-definitions.conf.
  This actually results in a slightly smaller binary than before and has the added advantage that the option definitions are now all held within one file.
* Change IAID to default from the last 4 bytes of the MAC address.
  Rationale in the commit, but in a nutshell it allows for a stable IAID between reboots without persistent storage and across different OS's who name or number it differently to each other.
* RFC4242, Information Refresh Time Option for DHCPv6.
* Fix processing of inet4 addr in vendor options and terminate correctly.
* Preserve vendor encapsulated options.
* Fix renewal of Prefix Delegation. Only spam the log if a lease has a new address or changes the vltime of an existing address.
* Add noipv4 and noipv6 options.
* Warn about missing interfaces which require prefix delegation.
* If we timeout, remove any waitip config so that we daemonise correctly.
* Remove the IPv6 forwarding router check as valid use cases exist where you would want IPv6 RS/RA on a router.
* Pass the correct run directory to dhcpcd-run-hooks
@
text
@@


1.1.1.2
log
@Import dhcpcd-6.2.1 with the folowing changes:

 * on BSD only flush RA routers and prefixes when trying to own them.
 * Mark some data locations as read only and fix a build issue.
 * Fix some possible NULL dereferences, CID 1153963.
 * Fix CID: 1153964 and 1153966
 * Add support for RFC3495 DHCP option for CableLabs Clients.
   Note that for the TSP suboption 3 we only support the FQDN encoding.
 * Init system detection moved to dhcpcd-run-hooks(8)
 * Fix compile errors and warnings with IPv6 disabled.
@
text
@a2 3
# Copyright (c) 2006-2014 Roy Marples
# All rights reserved

a132 25
# DHCP CableLabs Client, RFC3495
define 122	encap			tsp
encap 1		ipaddress		dhcp_server
encap 2		ipaddress		dhcp_secondary_server
encap 3		embed			provisioning_server
embed		byte			type
embed		domain			fqdn
#embed		ipaddress		address
# We only support FQDN in option 3 out of the box which is type 0.
# Type 1 is an ipaddress, but we currently have no logic to change embedded
# type based on the content of an option.
# To swap it out, just comment / uncomment the above two lines to your liking.
# However, ensure that only one is uncommented.
encap 4		embed			as_req_as_rep_backoff
embed		uint32			nominal
embed		uint32			maximum
embed		uint32			retry
encap 5		embed			ap_req_ap_rep_backoff
embed		uint32			nominal
embed		uint32			maximum
embed		uint32			retry
encap 6		domain			kerberos_realm
encap 7		byte			ticket_granting_server_utilization
encap 8		byte			provisioning_timer

@


1.1.1.3
log
@Import dhcpcd-6.3.0 with the following changes:

 * IAID must be inside an interface block.
 * Detect IPv6 address flags on Linux.
 * Check that we have ctrl_interface defined in wpa_supplicant.conf and pass this parameter to wpa_cli(8). If not set, warn about not interacting with wpa_supplicant(8).
 * Skip Virtual Interface Masters. Currently this only applies to FreeBSD VAP masters as dhcpcd should only work on wlandev created clones.
 * Fix handling of ARP failures, thanks to Sebastian Huber.
 * Implement RFC 1321 MD5 Message-Digest if not provided in libc.
 * Implement RFC 2104 HMAC Keyed Hashing.
 * Implement RFC 3118 Authentication for DHCP Messages and RFC 3315 Authentication options.
 * Add nodhcp and nodhcp6 directives. Thanks to Sebastian Huber for the initial patch and testing.
 * Implement support for RFC 3203, FORCERENEW message.
 * Implement Force Renew Nonce Capability option, RFC6704
 * Support RECONFIGURE DHCPv6 messages.
 * Add support for DHCP auto configuration, RFC 2563.
 * Add support for the following RFCs
   + DHCP SLP Directory Agent, RFC2610
   + DHCP Name Service Search, RFC2937
   + DHCP PANA Authentication Agent, RFC5192
   + DHCP Lost Server, RFC5223
   + DHCP CAPWAP, RFC5417
   + DHCP Mobility Services, RFC5678
   + DHCP SIP UA, RFC6011
   + DHCP ANDSF, RFC6153
   + DHCP RDNSS Selection for MIF Nodes, RFC6731
   + DHCP TFTP Server Address, RFC5859
   + DHCP PXELINUX, RFC5071
   + DHCP Access Network Domain Name, RFC5986
   + DHCP Virtual Subnet Selection, RFC6607
   + DHCP Relay Agent Remote-ID, RFC4649
   + DHCP Relay Agent Subscriber-ID, RFC4580
   + DHCPv6 Relay-ID, RFC5460
   + DHCPv6 LIS Discovery, RFC5986
   + DHCPv6 SIP UA, RFC6011
   + DHCPv6 Network Boot, RFC5970
   + DHCPv6 Home Info Discovery in MIPv6, RFC6610
   + DHCPv6 RDNSS Selection for MIF Nodes, RFC6731
   + DHCPv6 Kerberos, RFC6784
   + DHCPv6 Relay-Triggered Reconfiguration, RFC6977
   + DHCPv6 SOL_MAX_RT, RFC7083
 * Open UDP sockets for *.*.*.*:bootpc and $ip_address:bootpc to avoid kernel ICMP unreachable messages
 * Moved global variables into context variables so dhcpcd is entirely thread safe.
   dhcpcd doens't use threads, but it can now be used in a pure threads (ie no process) environment.
 * Remove DEBUG_MEMORY guard and always free memory and resources. Remove all atexit(3) and exit(3) calls, instead exiting via the eloop.
 * Replace get_line with sscanf where applicable.
 * Remove custom set_cloexec and set_nonblock functions. Instead pass O_CLOEXEC or SOCK_CLOEXEC to open, socket, etc.
 * Don't use PATH_MAX - we already know the maximum length from the initial directory and IF_NAMESIZE.
 * Add a USE_SIGNALS define. If we're not using signals then we also create a control socket in the non MASTER case. We then use this to communicate instead of signals.
 * Fix arping moving to the next test if we find the IP address but do not have a profile for it. Thanks to David McGurty for the analysis.
 * Respect initial commandline arguments when rebooting via a signal.
@
text
@a96 8
# DHCP SLP Directory Agent, RFC2610
define 78	embed			slp_agent
embed		byte			mandatory
embed		array ipaddress		address
define 79	embed			slp_service
embed		byte			mandatory
embed		string			scope_list

a106 4
# Option 82 is for Relay Agents and DHCP servers

# Options 83 ad 84 are unused, RFC3679

a115 8
# DHCP Authentication, RFC3118
define 90	embed			auth
embed		byte			protocol
embed		byte			algorithm
embed		byte			rdm
embed		binhex:8		replay
embed		binhex			information

a119 6
# DHCP Options for Intel Preboot eXecution Environent (PXE), RFC4578
# Options 93, 94 and 97 are used but of no use to dhcpcd

# Option 95 used by Apple but never published RFC3679
# Option 96 is unused, RFC3679

a122 6
# DHCP Civic Addresses Configuration Information, RFC4776
define 99	encap			geoconf_civic
embed		byte			what
embed		uint16			country_code
# The rest of this option is not supported

a126 8
# Options 102-115 are unused, RFC3679

# DHCP Auto-Configuration, RFC2563
define 116	byte			auto_configure

# DHCP Name Service Search, RFC2937
define 117	array uint16		name_service_search

a135 2
# Option 121 is defined at the top of this file

d140 9
a148 1
encap 3		rfc3361			provisioning_server
a160 4
# DHCP Coordinate LCI, RFC6225
# We have no means of expressing 6 bit lengths
define 123	binhex			geoconf

a168 61
# Options 126 and 127 are unused, RFC3679

# DHCP Options for Intel Preboot eXecution Environent (PXE), RFC4578
# Options 128-135 are used but of no use to dhcpcd

# DHCP PANA Authentication Agent, RFC5192
define 136	array ipaddress		pana_agent

# DHCP Lost Server, RFC5223
define 137	domain			lost_server

# DHCP CAPWAP, RFC5417
define 138	array ipaddress		capwap_ac

# DHCP Mobility Services, RFC5678
define 139	encap			mos_ip
encap 1		array ipaddress		is
encap 2		array ipaddress		cs
encap 3		array ipaddress		es
define 140	encap			mos_domain
encap 1		domain			is
encap 2		domain			cs
encap 3		domain			es

# DHCP SIP UA, RFC6011
define 141	domain			sip_ua_cs_list

# DHCP ANDSF, RFC6153
define 142	array ipaddress		andsf
define 143	array ip6address	andsf6

# DHCP Coordinate LCI, RFC6225
# We have no means of expressing 6 bit lengths
define 144	binhex			geoloc

# DHCP FORCERENEW Nonce Capability, RFC6704
define 145	array byte		forcerenew_nonce_capable

# DHCP RDNSS Selection for MIF Nodes, RFC6731
define 146	embed			rdnss_selection
embed		byte			prf
embed		ipaddress		primary
embed		ipaddress		secondary
embed		domain			domains

# Options 147, 148 and 149 are unused, RFC3942

# DHCP TFTP Server Address, RFC5859
define 150	array ipaddress		tftp_servers

# Options 151-157 are used for Lease Query, RFC6926 and not for dhcpcd
# Options 158-174 are unused, RFC3942
# Options 175-177 are tentativel assigned for Etherboot
# Options 178-207 are unused, RFC3942

# DHCP PXELINUX, RFC5071
define 208	binhex			pxelinux_magic
define 209	string			config_file
define 210	string			path_prefix
define 211	uint32			reboot_time

a171 18
# DHCP Access Network Domain Name, RFC5986
define 213	domain			access_domain

# Options 214-219 are unused, RFC3942

# DHCP Subnet Allocation, RFC6656
# Option 220 looks specific to Cisco hardware.

# DHCP Virtual Subnet Selection, RFC6607
define 221	encap			vss
encap 0		string			nvt
encap 1		binhex			vpn_id
encap 255	flag			global

# Options 222 and 223 are unused, RFC3942
# Options 224-254 are reserved for Private Use
# Option 255 End

a199 2
# Option 10 is unused

d203 1
a203 2
embed		byte			rdm
embed		binhex:8		replay
d240 1
a262 14
# DHCP Civic Addresses Configuration Information, RFC4776
define6 36	encap			geoconf_civic
embed		byte			what
embed		uint16			country_code
# The rest of this option is not supported

# DHCP Relay Agent Remote-ID, RFC4649
define6 37	embed			remote_id
embed		uint32			enterprise_number
embed		binhex			remote_id

# DHCP Relay Agent Subscriber-ID, RFC4580
define6 38	binhex			subscriber_id

a267 3
# DHCPv6 PANA Authentication Agnet, RC5192
define6 40	array ip6address	pana_agent

a271 31
# DHCPv6 Relay Agent Echo Request
define6 43	array uint16		ero

# Options 44-48 are used for Lease Query, RFC5007 and not for dhcpcd

# DHCPv6 Home Info Discovery in MIPv6, RFC6610
define6 49	domain			mip6_hnidf
define6 50	encap			mip6_vdinf
encap 71	option
encap 72	option
encap 73	option

# DHCPv6 Lost Server, RFC5223
define6 51	domain			lost_server

# DHCPv6 CAPWAP, RFC5417
define6 52	array ip6address	capwap_ac

# DHCPv6 Relay-ID, RFC5460
define6 53	binhex			relay_id

# DHCP Mobility Services, RFC5678
define6 54	encap			mos_ip
encap 1		array ip6address	is
encap 2		array ip6address	cs
encap 3		array ip6address	es
define6 55 	encap			mos_domain
encap 1		domain			is
encap 2		domain			cs
encap 3		domain			es

a277 73
# DHCPv6 LIS Discovery, RFC5986
define6 57	domain			access_domain

# DHCPv6 SIP UA, RFC6011
define6 58	domain			sip_ua_cs_list

# DHCPv6 Network Boot, RFC5970
define6 59	string			bootfile_url
# We presently cannot decode bootfile_param
define6 60	binhex			bootfile_param
define6 61	array uint16		architecture_types
define6 62	embed			nii
embed		byte			type
embed		byte			major
embed		byte			minor

# DHCPv6 Coordinate LCI, RFC6225
# We have no means of expressing 6 bit lengths
define6 63	binhex			geoloc

# DHCPv6 AFTR-Name, RFC6334
define6 64	domain			aftr_name

# DHCPv6 Home Info Discovery in MIPv6, RFC6610
define6 69	encap			mip6_idinf
encap 71	option
encap 72	option
encap 73	option
define6 70	encap			mip6_udinf
encap 71	option
encap 72	option
encap 73	option
define6	71	embed			mip6_hnp
embed		byte			prefix_len
embed		ip6address		prefix
define6 72	ip6address		mip6_haa
define6 73	domain			mip6_haf

# DHCPv6 RDNSS Selection for MIF Nodes, RFC6731
define6 74	embed			rdnss_selection
embed		ip6address		server
embed		byte			prf
embed		domain			domains

# DHCPv6 Kerberos, RFC6784
define6 75	domain			krb_principal_name
define6 76	domain			krb_realm_name
define6 78	embed			krb_kdc
embed		uint16			priority
embed		uint16			weight
embed		byte			transport_type
embed		uint16			port
embed		ip6address		address
embed		domain			realm_name

# DHCPv6 Client Link-Layer Address, RFC6939
# Section 7 states that clients MUST ignore the option 79

# DHCPv6 Relay-Triggered Reconfiguraion, RFC6977
define6 80	ip6address		link_address

# DHCPv6 Radius, RFC7037
# Section 7 states that clients MUST ignore the option 81

# DHCPv6 SOL_MAX_RT, RFC7083
define6 82	request uint32		sol_max_rt
define6	83	request uint32		inf_max_rt

# DHCPv6 Address Selection Policy
# Currently not supported

# Options 86-65535 are unasssinged

@


1.1.1.3.2.1
log
@Rebase.
@
text
@d1 1
a1 1
# $NetBSD: dhcpcd-definitions.conf,v 1.1.1.5 2014/07/30 15:44:11 roy Exp $
a362 1
embed		byte			length
a364 1
encap 67	option
a467 5
# DHCPv6 Prefix Exclude Option, RFC6603
define6 67	embed			pd_exclude
embed		byte			prefix_len
embed		binhex			subnetID

@


1.1.1.4
log
@Import dhcpcd-6.4.1 with the following changes:

  *  If just given a domain and no search list, make the search list the domain
  *  Skip arpping directives if we have a profile but not parsing one
  *  Allow the request of a DHCPv6 address or prefix, a prefix length must be
     specified
  *  Add the ability to dump DHCPv6 leases
  *  Improve startup with regards to carrier checking and adding a link-local
     IPv6 address
  *  Start the correct interface reference for added devices
  *  Support
     http://datatracker.ietf.org/doc/draft-ietf-dhc-dhcpv6-stateful-issues-06
     via the ia_pd_mix option
  *  Fix link handling where kernel reported flags in LINK_UP may not be
     valid when we actually process them
  *  Fix defining new options in dhcpcd.conf and requesting them
  *  Fix a potential segfault when reloading configurations
  *  Print user defined options via -V
  *  Add support for RFC6603, Prefix Exclude option
  *  When requesting a IA_PD and another IA type, create a psuedo interface
     to handle the IA_PD
  *  Handle truncated DHCPv6 saved leases
@
text
@a364 1
encap 67	option
a467 5
# DHCPv6 Prefix Exclude Option, RFC6603
define6 67	embed			pd_exclude
embed		byte			prefix_len
embed		binhex			subnetID

@


1.1.1.5
log
@Import dhcpcd-6.4.3 with the following changes:

  *  Correct DHCPv6 Prefix Delegation option decoding
  *  Poll interfaces on BSD for IFF_RUNNING if link state cannot be obtained
  *  Check for an IA to use in DHCPv6 lease validation
  *  Warn about exceeding IDGEN_RETRIES when a stable private address cannot
     be obtained
  *  Fix DHCP option overload handling, thanks to Tobias Stoeckmann
@
text
@a362 1
embed		byte			length
@


1.1.1.5.2.1
log
@Pullup the import of dhcpcd-6.6.7, requested by roy in #207
@
text
@d1 1
a1 1
# $NetBSD: dhcpcd-definitions.conf,v 1.6 2014/11/07 20:51:02 roy Exp $
d31 1
a31 1
define 12	dname			host_name
d34 1
a34 3
# Technically domain_name is not an array, but many servers expect clients
# to treat it as one.
define 15	array dname		domain_name
d61 1
a61 1
define 43	binhex			vendor_encapsulated_options
d82 1
a82 1
define 66	dname			tftp_server_name
d95 1
a95 1
define 77	binhex			user_class
d103 1
a103 1
embed		ascii			scope_list
d121 2
a122 2
define 86	raw			nds_tree_name
define 87	raw			nds_context
d125 1
a125 1
define 88	array domain		bcms_controller_names
d171 1
a171 1
define 119	array domain		domain_search
d232 1
a232 1
define 141	array domain		sip_ua_cs_list
d250 1
a250 1
embed		array domain		domains
d347 1
a347 1
define6 21	array domain		sip_servers_names
d352 1
a352 1
define6 24	array domain		domain_search
d371 2
a372 2
define6 29	string			nis_domain_name
define6 30	string			nisp_domain_name
d381 1
a381 1
define6 33	array domain		bcms_server_d
d451 1
a451 1
define6 58	array domain		sip_ua_cs_list
d494 1
a494 1
embed		array domain		domains
d497 2
a498 2
define6 75	string			krb_principal_name
define6 76	string			krb_realm_name
d505 1
a505 1
embed		string			realm_name
@


1.1.1.5.2.2
log
@Pull up the following, requested by pettai in ticket #495:

	external/bsd/dhcpcd/dist/arp.c                  up to 1.9
	external/bsd/dhcpcd/dist/arp.h                  up to 1.8
	external/bsd/dhcpcd/dist/auth.c                 up to 1.8
	external/bsd/dhcpcd/dist/auth.h                 up to 1.8
	external/bsd/dhcpcd/dist/common.c               up to 1.8
	external/bsd/dhcpcd/dist/common.h               up to 1.7
	external/bsd/dhcpcd/dist/control.c              up to 1.7
	external/bsd/dhcpcd/dist/control.h              up to 1.7
	external/bsd/dhcpcd/dist/defs.h                 up to 1.14
	external/bsd/dhcpcd/dist/dev.h                  up to 1.7
	external/bsd/dhcpcd/dist/dhcp-common.c          up to 1.7
	external/bsd/dhcpcd/dist/dhcp-common.h          up to 1.7
	external/bsd/dhcpcd/dist/dhcp.c                 up to 1.27
	external/bsd/dhcpcd/dist/dhcp.h                 up to 1.7
	external/bsd/dhcpcd/dist/dhcp6.c                up to 1.9
	external/bsd/dhcpcd/dist/dhcp6.h                up to 1.7
	external/bsd/dhcpcd/dist/dhcpcd-definitions.conf up to 1.7
	external/bsd/dhcpcd/dist/dhcpcd-embedded.c      up to 1.7
	external/bsd/dhcpcd/dist/dhcpcd-embedded.c.in   up to 1.1.1.2
	external/bsd/dhcpcd/dist/dhcpcd-embedded.h      up to 1.7
	external/bsd/dhcpcd/dist/dhcpcd-embedded.h.in   up to 1.1.1.3
	external/bsd/dhcpcd/dist/dhcpcd-run-hooks.8.in  up to 1.13
	external/bsd/dhcpcd/dist/dhcpcd.8.in            up to 1.40
	external/bsd/dhcpcd/dist/dhcpcd.c               up to 1.22
	external/bsd/dhcpcd/dist/dhcpcd.conf.5.in       up to 1.18
	external/bsd/dhcpcd/dist/dhcpcd.h               up to 1.9
	external/bsd/dhcpcd/dist/duid.c                 up to 1.7
	external/bsd/dhcpcd/dist/duid.h                 up to 1.7
	external/bsd/dhcpcd/dist/eloop.c                up to 1.8
	external/bsd/dhcpcd/dist/eloop.h                up to 1.7
	external/bsd/dhcpcd/dist/if-bsd.c               up to 1.17
	external/bsd/dhcpcd/dist/if-options.c           up to 1.20
	external/bsd/dhcpcd/dist/if-options.h           up to 1.8
	external/bsd/dhcpcd/dist/if.c                   up to 1.11
	external/bsd/dhcpcd/dist/if.h                   up to 1.8
	external/bsd/dhcpcd/dist/ipv4.c                 up to 1.11
	external/bsd/dhcpcd/dist/ipv4.h                 up to 1.8
	external/bsd/dhcpcd/dist/ipv4ll.c               up to 1.8
	external/bsd/dhcpcd/dist/ipv6.c                 up to 1.8
	external/bsd/dhcpcd/dist/ipv6.h                 up to 1.10
	external/bsd/dhcpcd/dist/ipv6nd.c               up to 1.20
	external/bsd/dhcpcd/dist/ipv6nd.h               up to 1.9
	external/bsd/dhcpcd/dist/script.c               up to 1.17
	external/bsd/dhcpcd/dist/crypt/crypt.h          up to 1.6
	external/bsd/dhcpcd/dist/crypt/hmac_md5.c       up to 1.6
	doc/3RDPARTY					1.1198

Import dhcpcd version 6.7.1.
@
text
@d1 1
a1 1
# $NetBSD: dhcpcd-definitions.conf,v 1.7 2015/01/30 09:47:05 roy Exp $
d3 1
a3 1
# Copyright (c) 2006-2015 Roy Marples
@


1.1.1.5.2.3
log
@Pull up following revision(s) (requested by roy in ticket #1621):

	external/bsd/dhcpcd/dist/compat/crypt/sha256.c  up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/crypt/md5.c     up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/crypt/md5.h     up to 1.1.1.2
	external/bsd/dhcpcd/dist/compat/crypt/sha256.h  up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/crypt/hmac.c    up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/crypt/hmac.h    up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/_strtoi.h       up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/arc4random.c    up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/arc4random.h    up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/arc4random_uniform.c up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/arc4random_uniform.h up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/bitops.h        up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/dprintf.c       up to 1.1.1.2
	external/bsd/dhcpcd/dist/compat/dprintf.h       up to 1.1.1.2
	external/bsd/dhcpcd/dist/compat/endian.h        up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/pidfile.c       up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/pidfile.h       up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/queue.h         up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/reallocarray.c  up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/reallocarray.h  up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/strtoi.c        up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/strtoi.h        up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/strtou.c        up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/strlcpy.c       up to 1.1.1.1
	external/bsd/dhcpcd/dist/compat/strlcpy.h       up to 1.1.1.1
	external/bsd/dhcpcd/dist/config-null.mk         up to 1.1.1.1
	external/bsd/dhcpcd/dist/configure              up to 1.1.1.8
	external/bsd/dhcpcd/dist/iconfig.mk             up to 1.1.1.1
	external/bsd/dhcpcd/dist/hooks/01-test          up to 1.1.1.2
	external/bsd/dhcpcd/dist/hooks/02-dump          up to 1.1.1.1
	external/bsd/dhcpcd/dist/hooks/10-wpa_supplicant up to 1.1.1.2
	external/bsd/dhcpcd/dist/hooks/15-timezone      up to 1.1.1.2
	external/bsd/dhcpcd/dist/hooks/20-resolv.conf   up to 1.1.1.2
	external/bsd/dhcpcd/dist/hooks/29-lookup-hostname up to 1.1.1.2
	external/bsd/dhcpcd/dist/hooks/30-hostname      up to 1.1.1.2
	external/bsd/dhcpcd/dist/hooks/50-dhcpcd-compat up to 1.1.1.1
	external/bsd/dhcpcd/dist/hooks/50-ntp.conf      up to 1.1.1.2
	external/bsd/dhcpcd/dist/hooks/50-yp.conf       up to 1.1.1.2
	external/bsd/dhcpcd/dist/hooks/50-ypbind.in     up to 1.1.1.2
	external/bsd/dhcpcd/dist/hooks/Makefile         up to 1.1.1.1
	external/bsd/dhcpcd/dist/hooks/dhcpcd-run-hooks.8.in up to 1.1.1.4
	external/bsd/dhcpcd/dist/hooks/dhcpcd-run-hooks.in up to 1.1.1.4
	external/bsd/dhcpcd/dist/src/GNUmakefile        up to 1.1.1.1
	external/bsd/dhcpcd/dist/src/Makefile           up to 1.1.1.4
	external/bsd/dhcpcd/dist/src/arp.c              up to 1.1.1.7
	external/bsd/dhcpcd/dist/src/arp.h              up to 1.1.1.4
	external/bsd/dhcpcd/dist/src/auth.c             up to 1.1.1.5
	external/bsd/dhcpcd/dist/src/auth.h             up to 1.1.1.3
	external/bsd/dhcpcd/dist/src/bpf.c              up to 1.7
	external/bsd/dhcpcd/dist/src/bpf.h              up to 1.1.1.4
	external/bsd/dhcpcd/dist/src/common.c           up to 1.1.1.5
	external/bsd/dhcpcd/dist/src/common.h           up to 1.1.1.4
	external/bsd/dhcpcd/dist/src/control.c          up to 1.1.1.3
	external/bsd/dhcpcd/dist/src/control.h          up to 1.1.1.2
	external/bsd/dhcpcd/dist/src/defs.h             up to 1.1.1.15
	external/bsd/dhcpcd/dist/src/dev.c              up to 1.1.1.3
	external/bsd/dhcpcd/dist/src/dev.h              up to 1.1.1.2
	external/bsd/dhcpcd/dist/src/dhcp-common.c      up to 1.1.1.4
	external/bsd/dhcpcd/dist/src/dhcp-common.h      up to 1.1.1.2
	external/bsd/dhcpcd/dist/src/dhcp.c             up to 1.11
	external/bsd/dhcpcd/dist/src/dhcp.h             up to 1.1.1.6
	external/bsd/dhcpcd/dist/src/dhcp6.c            up to 1.1.1.12
	external/bsd/dhcpcd/dist/src/dhcp6.h            up to 1.1.1.6
	external/bsd/dhcpcd/dist/src/dhcpcd-definitions-small.conf up to 1.1.1.2
	external/bsd/dhcpcd/dist/src/dhcpcd-definitions.conf up to 1.1.1.2
	external/bsd/dhcpcd/dist/src/dhcpcd-embedded.c.in up to 1.1.1.2
	external/bsd/dhcpcd/dist/src/dhcpcd-embedded.h.in up to 1.1.1.2
	external/bsd/dhcpcd/dist/src/dhcpcd.8.in        up to 1.1.1.10
	external/bsd/dhcpcd/dist/src/dhcpcd.c           up to 1.13
	external/bsd/dhcpcd/dist/src/dhcpcd.conf        up to 1.1.1.2
	external/bsd/dhcpcd/dist/src/dhcpcd.conf.5.in   up to 1.1.1.10
	external/bsd/dhcpcd/dist/src/dhcpcd.h           up to 1.1.1.5
	external/bsd/dhcpcd/dist/src/duid.c             up to 1.1.1.3
	external/bsd/dhcpcd/dist/src/duid.h             up to 1.1.1.1
	external/bsd/dhcpcd/dist/src/eloop.c            up to 1.1.1.5
	external/bsd/dhcpcd/dist/src/eloop.h            up to 1.1.1.3
	external/bsd/dhcpcd/dist/src/genembedc          up to 1.1.1.1
	external/bsd/dhcpcd/dist/src/genembedh          up to 1.1.1.1
	external/bsd/dhcpcd/dist/src/if-bsd.c           up to 1.1.1.8
	external/bsd/dhcpcd/dist/src/if-linux-wext.c    up to 1.1.1.2
	external/bsd/dhcpcd/dist/src/if-linux.c         up to 1.1.1.10
	external/bsd/dhcpcd/dist/src/if-options.c       up to 1.10
	external/bsd/dhcpcd/dist/src/if-options.h       up to 1.1.1.7
	external/bsd/dhcpcd/dist/src/if-sun.c           up to 1.1.1.4
	external/bsd/dhcpcd/dist/src/if.c               up to 1.1.1.8
	external/bsd/dhcpcd/dist/src/if.h               up to 1.1.1.5
	external/bsd/dhcpcd/dist/src/ipv4.c             up to 1.1.1.9
	external/bsd/dhcpcd/dist/src/ipv4.h             up to 1.1.1.4
	external/bsd/dhcpcd/dist/src/ipv4ll.c           up to 1.1.1.4
	external/bsd/dhcpcd/dist/src/ipv4ll.h           up to 1.1.1.4
	external/bsd/dhcpcd/dist/src/ipv6.c             up to 1.1.1.11
	external/bsd/dhcpcd/dist/src/ipv6.h             up to 1.1.1.7
	external/bsd/dhcpcd/dist/src/ipv6nd.c           up to 1.1.1.8
	external/bsd/dhcpcd/dist/src/ipv6nd.h           up to 1.1.1.6
	external/bsd/dhcpcd/dist/src/logerr.c           up to 1.1.1.2
	external/bsd/dhcpcd/dist/src/logerr.h           up to 1.1.1.3
	external/bsd/dhcpcd/dist/src/route.c            up to 1.1.1.8
	external/bsd/dhcpcd/dist/src/route.h            up to 1.1.1.4
	external/bsd/dhcpcd/dist/src/sa.c               up to 1.1.1.3
	external/bsd/dhcpcd/dist/src/sa.h               up to 1.1.1.2
	external/bsd/dhcpcd/dist/src/script.c           up to 1.1.1.4
	external/bsd/dhcpcd/dist/src/script.h           up to 1.1.1.2
	external/bsd/dhcpcd/dist/src/dev/Makefile       up to 1.1.1.1
	external/bsd/dhcpcd/dist/src/dev/udev.c         up to 1.1.1.2
	external/bsd/dhcpcd/dist/tests/crypt/.gitignore up to 1.1.1.1
	external/bsd/dhcpcd/dist/tests/crypt/GNUmakefile up to 1.1.1.1
	external/bsd/dhcpcd/dist/tests/crypt/Makefile   up to 1.1.1.2
	external/bsd/dhcpcd/dist/tests/crypt/README.md  up to 1.1.1.1
	external/bsd/dhcpcd/dist/tests/crypt/run-test.c up to 1.1.1.2
	external/bsd/dhcpcd/dist/tests/crypt/test.h     up to 1.1.1.2
	external/bsd/dhcpcd/dist/tests/crypt/test_hmac_md5.c up to 1.1.1.3
	external/bsd/dhcpcd/dist/tests/Makefile         up to 1.1.1.1
	external/bsd/dhcpcd/dist/tests/eloop-bench/.gitignore up to 1.1.1.1
	external/bsd/dhcpcd/dist/tests/eloop-bench/Makefile up to 1.1.1.2
	external/bsd/dhcpcd/dist/tests/eloop-bench/README.md up to 1.1.1.1
	external/bsd/dhcpcd/dist/tests/eloop-bench/eloop-bench.c up to 1.1.1.3
	external/bsd/dhcpcd/dist/.arcconfig             up to 1.1.1.1
	external/bsd/dhcpcd/dist/.gitignore             up to 1.4
	external/bsd/dhcpcd/dist/BUILDING.md            up to 1.1.1.2
	external/bsd/dhcpcd/dist/LICENSE                up to 1.1.1.2
	external/bsd/dhcpcd/dist/Makefile               up to 1.1.1.5
	external/bsd/dhcpcd/dist/Makefile.inc           up to 1.1.1.2
	external/bsd/dhcpcd/dist/README.md              up to 1.1.1.3
	external/bsd/dhcpcd/dist/bpf-filter.h           delete
	external/bsd/dhcpcd/dist/common.c               delete
	external/bsd/dhcpcd/dist/arp.c                  delete
	external/bsd/dhcpcd/dist/arp.h                  delete
	external/bsd/dhcpcd/dist/auth.c                 delete
	external/bsd/dhcpcd/dist/auth.h                 delete
	external/bsd/dhcpcd/dist/dhcpcd.c               delete
	external/bsd/dhcpcd/dist/control.c              delete
	external/bsd/dhcpcd/dist/common.h               delete
	external/bsd/dhcpcd/dist/config.h               delete
	external/bsd/dhcpcd/dist/dhcp-common.c          delete
	external/bsd/dhcpcd/dist/control.h              delete
	external/bsd/dhcpcd/dist/defs.h                 delete
	external/bsd/dhcpcd/dist/dev.h                  delete
	external/bsd/dhcpcd/dist/dhcpcd-definitions.conf delete
	external/bsd/dhcpcd/dist/dhcp-common.h          delete
	external/bsd/dhcpcd/dist/dhcp.c                 delete
	external/bsd/dhcpcd/dist/dhcp.h                 delete
	external/bsd/dhcpcd/dist/dhcp6.c                delete
	external/bsd/dhcpcd/dist/dhcp6.h                delete
	external/bsd/dhcpcd/dist/dhcpcd-run-hooks.8.in  delete
	external/bsd/dhcpcd/dist/dhcpcd-embedded.c      delete
	external/bsd/dhcpcd/dist/dhcpcd.8.in            delete
	external/bsd/dhcpcd/dist/dhcpcd-embedded.c.in   delete
	external/bsd/dhcpcd/dist/dhcpcd-embedded.h      delete
	external/bsd/dhcpcd/dist/dhcpcd-embedded.h.in   delete
	external/bsd/dhcpcd/dist/ipv4.c                 delete
	external/bsd/dhcpcd/dist/if.c                   delete
	external/bsd/dhcpcd/dist/dhcpcd-run-hooks.in    delete
	external/bsd/dhcpcd/dist/dhcpcd.h               delete
	external/bsd/dhcpcd/dist/dhcpcd.conf            delete
	external/bsd/dhcpcd/dist/dhcpcd.conf.5.in       delete
	external/bsd/dhcpcd/dist/duid.c                 delete
	external/bsd/dhcpcd/dist/duid.h                 delete
	external/bsd/dhcpcd/dist/eloop.c                delete
	external/bsd/dhcpcd/dist/eloop.h                delete
	external/bsd/dhcpcd/dist/if-bsd.c               delete
	external/bsd/dhcpcd/dist/if-options.c           delete
	external/bsd/dhcpcd/dist/if-options.h           delete
	external/bsd/dhcpcd/dist/if.h                   delete
	external/bsd/dhcpcd/dist/crypt/hmac_md5.c       delete
	external/bsd/dhcpcd/dist/crypt/crypt.h          delete
	external/bsd/dhcpcd/dist/ipv4.h                 delete
	external/bsd/dhcpcd/dist/ipv4ll.c               delete
	external/bsd/dhcpcd/dist/ipv6.c                 delete
	external/bsd/dhcpcd/dist/ipv4ll.h               delete
	external/bsd/dhcpcd/dist/ipv6.h                 delete
	external/bsd/dhcpcd/dist/ipv6nd.c               delete
	external/bsd/dhcpcd/dist/ipv6nd.h               delete
	external/bsd/dhcpcd/dist/script.c               delete
	external/bsd/dhcpcd/dist/script.h               delete
	external/bsd/dhcpcd/dist/dhcpcd-hooks/15-timezone delete
	external/bsd/dhcpcd/dist/dhcpcd-hooks/01-test   delete
	external/bsd/dhcpcd/dist/dhcpcd-hooks/02-dump   delete
	external/bsd/dhcpcd/dist/dhcpcd-hooks/10-mtu    delete
	external/bsd/dhcpcd/dist/dhcpcd-hooks/10-wpa_supplicant delete
	external/bsd/dhcpcd/dist/dhcpcd-hooks/20-resolv.conf delete
	external/bsd/dhcpcd/dist/dhcpcd-hooks/29-lookup-hostname delete
	external/bsd/dhcpcd/dist/dhcpcd-hooks/30-hostname delete
	external/bsd/dhcpcd/dist/dhcpcd-hooks/50-ntp.conf delete
	external/bsd/dhcpcd/dist/dhcpcd-hooks/50-ypbind delete
	usr.sbin/postinstall/postinstall: revision 1.211-1.213
	etc/rc.d/dhcpcd					upto 1.5
	doc/3RDPARTY					manual edit

Import dhcpcd-7.0.7.
Adjust postinstal and rc file.
@
text
@d1 1
a1 1
# $NetBSD: dhcpcd-definitions.conf,v 1.1.1.5.2.2 2015/02/05 15:13:12 martin Exp $
@


1.1.1.6
log
@Import dhcpcd-6.5.0 with the following changes:

  *  Fix an unaligned access error on BeagleBone Black with FreeBSD.
     Thanks to Guy Yur for the patch.
  *  Remove the fast loop trying to up an interface which does not
     report carrier.
  *  Remove vis based encoding - instead validate against option type and
     stop at invalid [1]
     This removes all shell escaped encoding - dhcpcd will assume that IF
     the --script option is a shell, it will quote variables correctly.
     The stock dhcpcd-run-hooks does.
  *  dhcpcd -V now prints how the variables will be decoded.
  *  Changed some options in dhcpcd-definitions.conf to more sensible defaults.
  *  Don't daemonise on delegated address dad.
  *  Don't drop delegated reject route when forking.
  *  Fix IPv6 handling of link-local addresses on KAME stacks.
  *  Work on OpenBSD-5.6 without any special interface setup needed.
  *  Callout to handlecarrier when we don't have real carrier support and
     rely on looking at IFF_UP and IFF_RUNNING.
     This allows our hooks to know that dhcpcd thinks we have a carrier or not.

[1] DHCP option encodings defined in dhcpcd-definitions.conf
  *  domain (RFC3397)/dname (string) is strict domain name allowance
     (ie, [alnum] with _- (but not at the start or end))
  *  string is now printable ascii (1-127) until invalid
  *  ascii is all ascii (1-127) until invalid
  *  raw is all chars (1-255) until NUL
  *  binhex is a hex representation of the option including embedded NULs
  *  ssid is still escpaed octal because it's expected to be human readable
     AND can technically be all NUL
  *  everything else has strict option -> value encoding
@
text
@d31 1
a31 1
define 12	dname			host_name
d34 1
a34 3
# Technically domain_name is not an array, but many servers expect clients
# to treat it as one.
define 15	array dname		domain_name
d61 1
a61 1
define 43	binhex			vendor_encapsulated_options
d82 1
a82 1
define 66	dname			tftp_server_name
d95 1
a95 1
define 77	binhex			user_class
d103 1
a103 1
embed		ascii			scope_list
d121 2
a122 2
define 86	raw			nds_tree_name
define 87	raw			nds_context
d125 1
a125 1
define 88	array domain		bcms_controller_names
d171 1
a171 1
define 119	array domain		domain_search
d232 1
a232 1
define 141	array domain		sip_ua_cs_list
d250 1
a250 1
embed		array domain		domains
d347 1
a347 1
define6 21	array domain		sip_servers_names
d352 1
a352 1
define6 24	array domain		domain_search
d371 2
a372 2
define6 29	string			nis_domain_name
define6 30	string			nisp_domain_name
d381 1
a381 1
define6 33	array domain		bcms_server_d
d451 1
a451 1
define6 58	array domain		sip_ua_cs_list
d494 1
a494 1
embed		array domain		domains
d497 2
a498 2
define6 75	string			krb_principal_name
define6 76	string			krb_realm_name
d505 1
a505 1
embed		string			realm_name
@


1.1.1.7
log
@Import dhcpcd-6.6.1 with the following changes:
  *  Improve handling of the IPv6LL address at startup
  *  Support old Linux kernels where IFLA_AF_SPEC may not exist
  *  When stopping interfaces, skip past pseudo interfaces instead
     of finding the master as only the masters are sorted correctly

RCSIDs have been removed from the import and will be added afterwards
as patches as technically they are not part of the dhcpcd project directly.
Hopefully this will be future imports less painful.
@
text
@d1 2
@


1.1.1.8
log
@Import dhcpcd-6.7.0 with the following changes:
  *  Only release the DHCPv6 lease when dropping it.
  *  Fix handling of ND6_IFF_OVERRIDE_RTADV on BSD.
  *  Include paths.h to get _PATH_BPF. Thanks to Joerg Sonnenberger.
  *  Report a better error of the kernel lacks a BPF equivalent filter.
  *  Implement RFC4941, Privacy Extensions for Stateless Address
     Autoconfiguration in IPv6 when dhcpcd is overriding the in-kernel
     RA support. For BSD, this is a full userland implementation.
  *  reject <option> will now reject any DHCP message that contains
     that option.
  *  Ignore RA's from ourself for very badly configured stations.
@
text
@d1 1
a1 1
# Copyright (c) 2006-2015 Roy Marples
@


1.1.1.9
log
@Import dhcpcd-6.9.0 with the following changes:

  *  Fix IPv6 prefix underflow when confirming deprecated but valid leases
  *  eloop.c and .h are now 100% portable outside of dhcpcd
     (provided the system supports recent POSIX and either you or
     the system provide working TAILQ macros)
  *  Allow waitip to work per interface.
  *  Handle ND options in the same way we handle DHCP and DHCPv6 options.
  *  Add new variable of type bitflags:flags where the flags ABCDEFGH,
     A is 10000000, B is 01000000, etc.
     Variables with the name reserved are no longer processed.
  *  Improve IN_IFF_TENTATIVE with ip sharing.
@
text
@d110 1
a110 1
embed		bitflags=0000NEOS	flags
a289 30
# ND6 options, RFC4861
definend 1	binhex			source_address
definend 2	binhex			target_address

definend 3	index embed		prefix_information
embed		byte			length
embed		bitflags=LA		flags
embed		uint32			vltime
embed		uint32			pltime
embed		uint32			reserved
embed		array ip6address	prefix

# option 4 is only for Redirect messages

definend 5	embed			mtu
embed		uint16			reserved
embed		uint32			mtu

# ND6 options, RFC6101
definend 25	index embed		rdnss
embed		uint16			reserved
embed		uint32			lifetime
embed		array ip6address	servers

definend 31	index embed		dnssl
embed		uint16			reserved
embed		uint32			lifetime
embed		domain			search

##############################################################################
d400 1
a400 1
embed		bitflags=00000NOS	flags
@


1.1.1.10
log
@Import dhcpcd-6.9.1 with the following changes:
  *  Fixed waitip
  *  For Prefix Delegation, servers must now support RFC7550
  *  Fixed detecting host routes in DHCP messages
  *  Fixed ARP checking that failed in some situations
  *  Fixed static address assignment in dhcpcd.conf
  *  Split IPv4LL state from DHCP and into it's own state
  *  Reject any NA/RA with a hop limit != 255
  *  Replace if_oneup with if_afwaited and af_waited for hook scripts
  *  Fix a potential buffer overrun if an embedded DHCP option is
     a zero length or fails to parse - thanks to Paul Stewart
  *  Check fclose for errors - thanks to Bob
  *  wpad_url has been added to dhcpcd-definitions.conf
  *  Fix a double free when failing to send a DHCPv6 RELEASE
     Thanks to Todd Blanchard.
  *  Correct IPv6 public address test, thanks to Micha? K?pie?
  *  Fix DHCPv6 starting if no public addresses found in the RA
     but the M or O bit was set
  *  Replaced custom uptime() with clock_gettime(2)
  *  Fix DHCPv6 elapsed time
@
text
@d78 1
a78 1
define 60	string			vendor_class_identifier
a112 4
# dhcpcd always sets the E bit which means the fqdn itself is always
# RFC1035 encoded.
# The server MUST use the encoding as specified by the client as noted
# in RFC4702 Section 2.1.
a285 1

a286 5
# However, an expired RFC for Web Proxy Auto Discovery Protocol does define
# Option 252 which is commonly used by major browsers.
# Apparently the code was assigned by agreement of the DHC working group chair.
define 252	string			wpad_url

@


1.1.1.11
log
@Import dhcpcd-6.9.4 with the following changes:
  *  dhcpcd will now configure chrony if installed and ntp isn't
  *  dhcpcd no longer attempts temporary address management on Linux
  *  replace the SixRD decode function with a generic definition
  *  try harder to ensure only 1 lladdr exists per interface on BSD
  *  change IPv6 routes on MTU change
  *  -p works with -x on an already running process started without -p
  *  fix TEST for IPv4LL
  *  Correct size allocation for prefix delegation, thanks to Jade
  *  Add an option to enable DHCPv6 Information Request without the
     need for dhcpcd to recieve an IPv6 Router Advertisement with the
     Other Configuration bit set.
  *  Introduce the optional option type, which allows embedded options
     to be optional
  *  Mark our logger function as sysloglike because we enjoy using %m
  *  Don't check link state if not instruted to before working out if
     we can fork early or not.
  *  Add a -N --renew option to renew any existing address early
  *  Obey the hostname_short option even for configured FQDN hostnames
  *  -U, --dumplease now works with standard input.
     It no longer works with a filename.
  *  If dumping leases, skip authentication and address expiry checks
  *  Fix adding static routes via a gateway on BSD
  *  Always send LOG_DEBUG to syslog(3) even if we are in quiet mode.
     It's upto syslog to filter it.
  *  If testing or dumping leases, don't send to syslog only
     stdout/stderr.
@
text
@d117 1
a117 1
embed		optional domain		fqdn
d273 1
a273 5
define 212	embed			sixrd
embed		byte			mask_len
embed		byte			prefix_len
embed		ip6address		prefix
embed		array ipaddress		brip_address
@


1.1.1.12
log
@Import dhcpcd-6.10.0 with the following changes:
  *  --noption requires an argument
  *  optimise the ARP BPF filter, thanks to Nate Karstens
  *  send gratuitous ARP each time we apply our IP address
  *  fix truncation of hostnames based on the short hostname option
  *  improve routing and address management by always loading all
     interfaces, routes and addresses even for interfaces we are
     not directly working on
  *  timezone, lookup-hostname, wpa_supplicant and YP hooks are no
     longer installed by default but are installed to an example
     directory
  *  improve error logging of packet parsing
  *  fix ignoring routing messages generated by dhcpcd just before
     forking
  *  fix handling of rapid commit messages (allow ACK after DISCOVER)
  *  add PROBE state so we can easily reject DHCP messages received
     during the ARP probe phase
  *  fix CVE-2016-1503
  *  fix CVE-2016-1504

An extra patch was added to the import from the official 6.10.0 release
to add -P, --printpidfile so the dhcpcd rc.d script can work out what
pidfile to use.
@
text
@d1 1
a1 1
# Copyright (c) 2006-2016 Roy Marples
d41 2
a42 2
define 22	uint16			max_dgram_reassembly
define 23	byte			default_ip_ttl
d445 1
a445 1
embed		optional domain		fqdn
@


1.1.1.13
log
@Import dhcpcd-6.10.3 with the following changes:
  *  Support iSNS, RFC4174
  *  Fix Prefix Delegation with SLA 0 and warn that it's not
     really RFC compliant
  *  On an IPv4LL defence, an ARP announcement is now sent in
     accordance with RFC 3927 Section 2.5
@
text
@d121 1
a121 14
# iSNS, RFC4174
define 83	embed			isns
embed		byte			reserved1
embed		bitflags=00000SAE	functions
embed		byte			reserved2
embed		bitflags=00fFsSCE	dd
embed		byte			reserved3
embed		bitflags=0000DMHE	admin
embed		uint16			reserved4
embed		byte			reserved5
embed		bitflags=0TXPAMSE	server_security
embed		array ipaddress		servers

# Option 84 are unused, RFC3679
@


1.1.1.5.4.1
log
@file dhcpcd-definitions.conf was added on branch tls-maxphys on 2014-08-19 23:46:43 +0000
@
text
@d1 530
@


1.1.1.5.4.2
log
@Rebase to HEAD as of a few days ago.
@
text
@a0 530
# $NetBSD$

# Copyright (c) 2006-2014 Roy Marples
# All rights reserved

# DHCP option definitions for dhcpcd(8)
# These are used to translate DHCP options into shell variables
# for use in dhcpcd-run-hooks(8)
# See dhcpcd.conf(5) for details

##############################################################################
# DHCP RFC2132 options unless otheriwse stated
define 1	request ipaddress	subnet_mask
# RFC3442 states that the CSR has to come before all other routes
# For completeness we also specify static routes then routers
define 121	rfc3442			classless_static_routes
# Option 249 is an IANA assigned private number used by Windows DHCP servers
# to provide the exact same information as option 121, classless static routes
define 249	rfc3442			ms_classless_static_routes
define 33	request array ipaddress	static_routes
define 3	request array ipaddress	routers
define 2	uint32			time_offset
define 4	array ipaddress		time_servers
define 5	array ipaddress		ien116_name_servers
define 6	array ipaddress		domain_name_servers
define 7	array ipaddress		log_servers
define 8	array ipaddress		cookie_servers
define 9	array ipaddress		lpr_servers
define 10	array ipaddress		impress_servers
define 11	array ipaddress		resource_location_servers
define 12	string			host_name
define 13	uint16			boot_size
define 14	string			merit_dump
define 15	string			domain_name
define 16	ipaddress		swap_server
define 17	string			root_path
define 18	string			extensions_path
define 19	byte			ip_forwarding
define 20	byte			non_local_source_routing
define 21	array ipaddress		policy_filter
define 22	int16			max_dgram_reassembly
define 23	uint16			default_ip_ttl
define 24	uint32			path_mtu_aging_timeout
define 25	array uint16		path_mtu_plateau_table
define 26	uint16			interface_mtu
define 27	byte			all_subnets_local
define 28	request ipaddress	broadcast_address
define 29	byte			perform_mask_discovery
define 30	byte			mask_supplier
define 31	byte			router_discovery
define 32	ipaddress		router_solicitation_address
define 34	byte			trailer_encapsulation
define 35	uint32			arp_cache_timeout
define 36	uint16			ieee802_3_encapsulation
define 37	byte			default_tcp_ttl
define 38	uint32			tcp_keepalive_interval
define 39	byte			tcp_keepalive_garbage
define 40	string			nis_domain
define 41	array ipaddress		nis_servers
define 42	array ipaddress		ntp_servers
define 43	string			vendor_encapsulated_options
define 44	array ipaddress		netbios_name_servers
define 45	ipaddress		netbios_dd_server
define 46	byte			netbios_node_type
define 47	string			netbios_scope
define 48	array ipaddress		font_servers
define 49	array ipaddress		x_display_manager
define 50	ipaddress		dhcp_requested_address
define 51	request uint32		dhcp_lease_time
define 52	byte			dhcp_option_overload
define 53	byte			dhcp_message_type
define 54	ipaddress		dhcp_server_identifier
define 55	array byte		dhcp_parameter_request_list
define 56	string			dhcp_message
define 57	uint16			dhcp_max_message_size
define 58	request uint32		dhcp_renewal_time
define 59	request uint32		dhcp_rebinding_time
define 60	binhex			vendor_class_identifier
define 61	binhex			dhcp_client_identifier
define 64	string			nisplus_domain
define 65	array ipaddress		nisplus_servers
define 66	string			tftp_server_name
define 67	string			bootfile_name
define 68	array ipaddress		mobile_ip_home_agent
define 69	array ipaddress		smtp_server
define 70	array ipaddress		pop_server
define 71	array ipaddress		nntp_server
define 72	array ipaddress		www_server
define 73	array ipaddress		finger_server
define 74	array ipaddress		irc_server
define 75	array ipaddress		streettalk_server
define 76	array ipaddress		streettalk_directory_assistance_server

# DHCP User Class, RFC3004
define 77	string			user_class

# DHCP SLP Directory Agent, RFC2610
define 78	embed			slp_agent
embed		byte			mandatory
embed		array ipaddress		address
define 79	embed			slp_service
embed		byte			mandatory
embed		string			scope_list

# DHCP Rapid Commit, RFC4039
define 80	norequest flag		rapid_commit

# DHCP Fully Qualified Domain Name, RFC4702
define 81	embed			fqdn
embed		byte			flags
embed		byte			rcode1
embed		byte			rcode2
embed		domain			fqdn

# Option 82 is for Relay Agents and DHCP servers

# Options 83 ad 84 are unused, RFC3679

# DHCP Novell Directory Services, RFC2241
define 85	array ipaddress		nds_servers
define 86	string			nds_tree_name
define 87	string			nds_context

# DHCP Broadcast and Multicast Control Server, RFC4280
define 88	domain			bcms_controller_names
define 89	array ipaddress		bcms_controller_address

# DHCP Authentication, RFC3118
define 90	embed			auth
embed		byte			protocol
embed		byte			algorithm
embed		byte			rdm
embed		binhex:8		replay
embed		binhex			information

# DHCP Leasequery, RFC4388
define 91	uint32			client_last_transaction_time
define 92	array ipaddress		associated_ip

# DHCP Options for Intel Preboot eXecution Environent (PXE), RFC4578
# Options 93, 94 and 97 are used but of no use to dhcpcd

# Option 95 used by Apple but never published RFC3679
# Option 96 is unused, RFC3679

# DHCP The Open Group's User Authentication Protocol, RFC2485
define 98	string			uap_servers

# DHCP Civic Addresses Configuration Information, RFC4776
define 99	encap			geoconf_civic
embed		byte			what
embed		uint16			country_code
# The rest of this option is not supported

# DHCP Timezone, RFC4883
define 100	string			posix_timezone
define 101	string			tzdb_timezone

# Options 102-115 are unused, RFC3679

# DHCP Auto-Configuration, RFC2563
define 116	byte			auto_configure

# DHCP Name Service Search, RFC2937
define 117	array uint16		name_service_search

# DHCP Subnet Selection, RFC3011
define 118	ipaddress		subnet_selection

# DHCP Domain Search, RFC3397
define 119	domain			domain_search

# DHCP Session Initiated Protocol Servers, RFC3361
define 120	rfc3361			sip_server

# Option 121 is defined at the top of this file

# DHCP CableLabs Client, RFC3495
define 122	encap			tsp
encap 1		ipaddress		dhcp_server
encap 2		ipaddress		dhcp_secondary_server
encap 3		rfc3361			provisioning_server
encap 4		embed			as_req_as_rep_backoff
embed		uint32			nominal
embed		uint32			maximum
embed		uint32			retry
encap 5		embed			ap_req_ap_rep_backoff
embed		uint32			nominal
embed		uint32			maximum
embed		uint32			retry
encap 6		domain			kerberos_realm
encap 7		byte			ticket_granting_server_utilization
encap 8		byte			provisioning_timer

# DHCP Coordinate LCI, RFC6225
# We have no means of expressing 6 bit lengths
define 123	binhex			geoconf

# DHCP Vendor-Identifying Vendor Options, RFC3925
define 124	binhex			vivco
define 125	embed			vivso
embed		uint32			enterprise_number
# Vendor options are shared between DHCP/DHCPv6
# Their code is matched to the enterprise number defined above
# see the end of this file for an example

# Options 126 and 127 are unused, RFC3679

# DHCP Options for Intel Preboot eXecution Environent (PXE), RFC4578
# Options 128-135 are used but of no use to dhcpcd

# DHCP PANA Authentication Agent, RFC5192
define 136	array ipaddress		pana_agent

# DHCP Lost Server, RFC5223
define 137	domain			lost_server

# DHCP CAPWAP, RFC5417
define 138	array ipaddress		capwap_ac

# DHCP Mobility Services, RFC5678
define 139	encap			mos_ip
encap 1		array ipaddress		is
encap 2		array ipaddress		cs
encap 3		array ipaddress		es
define 140	encap			mos_domain
encap 1		domain			is
encap 2		domain			cs
encap 3		domain			es

# DHCP SIP UA, RFC6011
define 141	domain			sip_ua_cs_list

# DHCP ANDSF, RFC6153
define 142	array ipaddress		andsf
define 143	array ip6address	andsf6

# DHCP Coordinate LCI, RFC6225
# We have no means of expressing 6 bit lengths
define 144	binhex			geoloc

# DHCP FORCERENEW Nonce Capability, RFC6704
define 145	array byte		forcerenew_nonce_capable

# DHCP RDNSS Selection for MIF Nodes, RFC6731
define 146	embed			rdnss_selection
embed		byte			prf
embed		ipaddress		primary
embed		ipaddress		secondary
embed		domain			domains

# Options 147, 148 and 149 are unused, RFC3942

# DHCP TFTP Server Address, RFC5859
define 150	array ipaddress		tftp_servers

# Options 151-157 are used for Lease Query, RFC6926 and not for dhcpcd
# Options 158-174 are unused, RFC3942
# Options 175-177 are tentativel assigned for Etherboot
# Options 178-207 are unused, RFC3942

# DHCP PXELINUX, RFC5071
define 208	binhex			pxelinux_magic
define 209	string			config_file
define 210	string			path_prefix
define 211	uint32			reboot_time

# DHCP IPv6 Rapid Deployment on IPv4 Infrastructures, RFC5969
define 212	rfc5969			sixrd

# DHCP Access Network Domain Name, RFC5986
define 213	domain			access_domain

# Options 214-219 are unused, RFC3942

# DHCP Subnet Allocation, RFC6656
# Option 220 looks specific to Cisco hardware.

# DHCP Virtual Subnet Selection, RFC6607
define 221	encap			vss
encap 0		string			nvt
encap 1		binhex			vpn_id
encap 255	flag			global

# Options 222 and 223 are unused, RFC3942
# Options 224-254 are reserved for Private Use
# Option 255 End

##############################################################################
# DHCPv6 options, RFC3315
define6 1	binhex			client_id
define6 2	binhex			server_id

define6 3	norequest index embed	ia_na
embed		binhex:4		iaid
embed		uint32			t1
embed		uint32			t2
encap 5		option
encap 13	option

define6 4	norequest index embed	ia_ta
embed		uint32			iaid
encap 5		option
encap 13	option

define6 5	norequest index embed	ia_addr
embed		ip6address		ia_addr
embed		uint32			pltime
embed		uint32			vltime
encap 13	option

define6 6	array uint16		option_request
define6 7	byte			preference
define6 8	uint16			elased_time
define6 9	binhex			dhcp_relay_msg

# Option 10 is unused

define6 11	embed			auth
embed		byte			protocol
embed		byte			algorithm
embed		byte			rdm
embed		binhex:8		replay
embed		binhex			information

define6 12	ip6address		unicast

define6 13	norequest embed		status_code
embed		uint16			status_code
embed		string			message

define6 14	norequest flag		rapid_commit
define6 15	binhex			user_class

define6 16	binhex			vivco
define6 17	embed			vivso
embed		uint32			enterprise_number
# Vendor options are shared between DHCP/DHCPv6
# Their code is matched to the enterprise number defined above
# See the end of this file for an example

define6 18	binhex			interface_id
define6 19	byte			reconfigure_msg
define6 20	flag			reconfigure_accept

# DHCPv6 Session Initiation Protocol Options, RFC3319
define6 21	domain			sip_servers_names
define6 22	array ip6address	sip_servers_addresses

# DHCPv6 DNS Configuration Options, RFC3646
define6 23	array ip6address	name_servers
define6 24	domain			domain_search

# DHCPv6 Prefix Options, RFC6603
define6 25	norequest index embed	ia_pd
embed		binhex:4		iaid
embed		uint32			t1
embed		uint32			t2
encap 26	option
define6 26	index embed		prefix
embed		uint32			pltime
embed		uint32			vltime
embed		byte			length
embed		ip6address		prefix
encap 13	option
encap 67	option

# DHCPv6 Network Information Service Options, RFC3898
define6 27	array ip6address	nis_servers
define6 28	array ip6address	nisp_servers
define6 29	domain			nis_domain_name
define6 30	domain			nisp_domain_name

# DHCPv6 Simple Network Time Protocol Servers Option, RFC4075
define6 31	array ip6address	sntp_servers

# DHCPv6 Information Refresh Time, RFC4242
define6 32	uint32			info_refresh_time

# DHCPv6 Broadcast and Multicast Control Server, RFC4280
define6 33	domain			bcms_server_d
define6 34	array ip6address	bcms_server_a

# DHCP Civic Addresses Configuration Information, RFC4776
define6 36	encap			geoconf_civic
embed		byte			what
embed		uint16			country_code
# The rest of this option is not supported

# DHCP Relay Agent Remote-ID, RFC4649
define6 37	embed			remote_id
embed		uint32			enterprise_number
embed		binhex			remote_id

# DHCP Relay Agent Subscriber-ID, RFC4580
define6 38	binhex			subscriber_id

# DHCPv6 Fully Qualified Domain Name, RFC4704
define6 39	embed			fqdn
embed		byte			flags
embed		domain			fqdn

# DHCPv6 PANA Authentication Agnet, RC5192
define6 40	array ip6address	pana_agent

# DHCPv6 Timezone options, RFC4883
define6 41	string			posix_timezone
define6 42	string			tzdb_timezone

# DHCPv6 Relay Agent Echo Request
define6 43	array uint16		ero

# Options 44-48 are used for Lease Query, RFC5007 and not for dhcpcd

# DHCPv6 Home Info Discovery in MIPv6, RFC6610
define6 49	domain			mip6_hnidf
define6 50	encap			mip6_vdinf
encap 71	option
encap 72	option
encap 73	option

# DHCPv6 Lost Server, RFC5223
define6 51	domain			lost_server

# DHCPv6 CAPWAP, RFC5417
define6 52	array ip6address	capwap_ac

# DHCPv6 Relay-ID, RFC5460
define6 53	binhex			relay_id

# DHCP Mobility Services, RFC5678
define6 54	encap			mos_ip
encap 1		array ip6address	is
encap 2		array ip6address	cs
encap 3		array ip6address	es
define6 55 	encap			mos_domain
encap 1		domain			is
encap 2		domain			cs
encap 3		domain			es

# DHCPv6 Network Time Protocol Server, RFC5908
define6 56	encap			ntp_server
encap 1		ip6address		addr
encap 2		ip6address		mcast_addr
encap 3		ip6address		fqdn

# DHCPv6 LIS Discovery, RFC5986
define6 57	domain			access_domain

# DHCPv6 SIP UA, RFC6011
define6 58	domain			sip_ua_cs_list

# DHCPv6 Network Boot, RFC5970
define6 59	string			bootfile_url
# We presently cannot decode bootfile_param
define6 60	binhex			bootfile_param
define6 61	array uint16		architecture_types
define6 62	embed			nii
embed		byte			type
embed		byte			major
embed		byte			minor

# DHCPv6 Coordinate LCI, RFC6225
# We have no means of expressing 6 bit lengths
define6 63	binhex			geoloc

# DHCPv6 AFTR-Name, RFC6334
define6 64	domain			aftr_name

# DHCPv6 Prefix Exclude Option, RFC6603
define6 67	embed			pd_exclude
embed		byte			prefix_len
embed		binhex			subnetID

# DHCPv6 Home Info Discovery in MIPv6, RFC6610
define6 69	encap			mip6_idinf
encap 71	option
encap 72	option
encap 73	option
define6 70	encap			mip6_udinf
encap 71	option
encap 72	option
encap 73	option
define6	71	embed			mip6_hnp
embed		byte			prefix_len
embed		ip6address		prefix
define6 72	ip6address		mip6_haa
define6 73	domain			mip6_haf

# DHCPv6 RDNSS Selection for MIF Nodes, RFC6731
define6 74	embed			rdnss_selection
embed		ip6address		server
embed		byte			prf
embed		domain			domains

# DHCPv6 Kerberos, RFC6784
define6 75	domain			krb_principal_name
define6 76	domain			krb_realm_name
define6 78	embed			krb_kdc
embed		uint16			priority
embed		uint16			weight
embed		byte			transport_type
embed		uint16			port
embed		ip6address		address
embed		domain			realm_name

# DHCPv6 Client Link-Layer Address, RFC6939
# Section 7 states that clients MUST ignore the option 79

# DHCPv6 Relay-Triggered Reconfiguraion, RFC6977
define6 80	ip6address		link_address

# DHCPv6 Radius, RFC7037
# Section 7 states that clients MUST ignore the option 81

# DHCPv6 SOL_MAX_RT, RFC7083
define6 82	request uint32		sol_max_rt
define6	83	request uint32		inf_max_rt

# DHCPv6 Address Selection Policy
# Currently not supported

# Options 86-65535 are unasssinged

##############################################################################
# Vendor-Identifying Vendor Options
# An example:
#vendopt 12345	encap			frobozzco
#encap 1	string			maze_location
#encap 2	byte			grue_probability
@


1.1.1.3.4.1
log
@file dhcpcd-definitions.conf was added on branch yamt-pagecache on 2014-05-22 15:44:40 +0000
@
text
@d1 523
@


1.1.1.3.4.2
log
@sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs.  ("Protocol error: too many arguments")
@
text
@a0 523
# $NetBSD$

# Copyright (c) 2006-2014 Roy Marples
# All rights reserved

# DHCP option definitions for dhcpcd(8)
# These are used to translate DHCP options into shell variables
# for use in dhcpcd-run-hooks(8)
# See dhcpcd.conf(5) for details

##############################################################################
# DHCP RFC2132 options unless otheriwse stated
define 1	request ipaddress	subnet_mask
# RFC3442 states that the CSR has to come before all other routes
# For completeness we also specify static routes then routers
define 121	rfc3442			classless_static_routes
# Option 249 is an IANA assigned private number used by Windows DHCP servers
# to provide the exact same information as option 121, classless static routes
define 249	rfc3442			ms_classless_static_routes
define 33	request array ipaddress	static_routes
define 3	request array ipaddress	routers
define 2	uint32			time_offset
define 4	array ipaddress		time_servers
define 5	array ipaddress		ien116_name_servers
define 6	array ipaddress		domain_name_servers
define 7	array ipaddress		log_servers
define 8	array ipaddress		cookie_servers
define 9	array ipaddress		lpr_servers
define 10	array ipaddress		impress_servers
define 11	array ipaddress		resource_location_servers
define 12	string			host_name
define 13	uint16			boot_size
define 14	string			merit_dump
define 15	string			domain_name
define 16	ipaddress		swap_server
define 17	string			root_path
define 18	string			extensions_path
define 19	byte			ip_forwarding
define 20	byte			non_local_source_routing
define 21	array ipaddress		policy_filter
define 22	int16			max_dgram_reassembly
define 23	uint16			default_ip_ttl
define 24	uint32			path_mtu_aging_timeout
define 25	array uint16		path_mtu_plateau_table
define 26	uint16			interface_mtu
define 27	byte			all_subnets_local
define 28	request ipaddress	broadcast_address
define 29	byte			perform_mask_discovery
define 30	byte			mask_supplier
define 31	byte			router_discovery
define 32	ipaddress		router_solicitation_address
define 34	byte			trailer_encapsulation
define 35	uint32			arp_cache_timeout
define 36	uint16			ieee802_3_encapsulation
define 37	byte			default_tcp_ttl
define 38	uint32			tcp_keepalive_interval
define 39	byte			tcp_keepalive_garbage
define 40	string			nis_domain
define 41	array ipaddress		nis_servers
define 42	array ipaddress		ntp_servers
define 43	string			vendor_encapsulated_options
define 44	array ipaddress		netbios_name_servers
define 45	ipaddress		netbios_dd_server
define 46	byte			netbios_node_type
define 47	string			netbios_scope
define 48	array ipaddress		font_servers
define 49	array ipaddress		x_display_manager
define 50	ipaddress		dhcp_requested_address
define 51	request uint32		dhcp_lease_time
define 52	byte			dhcp_option_overload
define 53	byte			dhcp_message_type
define 54	ipaddress		dhcp_server_identifier
define 55	array byte		dhcp_parameter_request_list
define 56	string			dhcp_message
define 57	uint16			dhcp_max_message_size
define 58	request uint32		dhcp_renewal_time
define 59	request uint32		dhcp_rebinding_time
define 60	binhex			vendor_class_identifier
define 61	binhex			dhcp_client_identifier
define 64	string			nisplus_domain
define 65	array ipaddress		nisplus_servers
define 66	string			tftp_server_name
define 67	string			bootfile_name
define 68	array ipaddress		mobile_ip_home_agent
define 69	array ipaddress		smtp_server
define 70	array ipaddress		pop_server
define 71	array ipaddress		nntp_server
define 72	array ipaddress		www_server
define 73	array ipaddress		finger_server
define 74	array ipaddress		irc_server
define 75	array ipaddress		streettalk_server
define 76	array ipaddress		streettalk_directory_assistance_server

# DHCP User Class, RFC3004
define 77	string			user_class

# DHCP SLP Directory Agent, RFC2610
define 78	embed			slp_agent
embed		byte			mandatory
embed		array ipaddress		address
define 79	embed			slp_service
embed		byte			mandatory
embed		string			scope_list

# DHCP Rapid Commit, RFC4039
define 80	norequest flag		rapid_commit

# DHCP Fully Qualified Domain Name, RFC4702
define 81	embed			fqdn
embed		byte			flags
embed		byte			rcode1
embed		byte			rcode2
embed		domain			fqdn

# Option 82 is for Relay Agents and DHCP servers

# Options 83 ad 84 are unused, RFC3679

# DHCP Novell Directory Services, RFC2241
define 85	array ipaddress		nds_servers
define 86	string			nds_tree_name
define 87	string			nds_context

# DHCP Broadcast and Multicast Control Server, RFC4280
define 88	domain			bcms_controller_names
define 89	array ipaddress		bcms_controller_address

# DHCP Authentication, RFC3118
define 90	embed			auth
embed		byte			protocol
embed		byte			algorithm
embed		byte			rdm
embed		binhex:8		replay
embed		binhex			information

# DHCP Leasequery, RFC4388
define 91	uint32			client_last_transaction_time
define 92	array ipaddress		associated_ip

# DHCP Options for Intel Preboot eXecution Environent (PXE), RFC4578
# Options 93, 94 and 97 are used but of no use to dhcpcd

# Option 95 used by Apple but never published RFC3679
# Option 96 is unused, RFC3679

# DHCP The Open Group's User Authentication Protocol, RFC2485
define 98	string			uap_servers

# DHCP Civic Addresses Configuration Information, RFC4776
define 99	encap			geoconf_civic
embed		byte			what
embed		uint16			country_code
# The rest of this option is not supported

# DHCP Timezone, RFC4883
define 100	string			posix_timezone
define 101	string			tzdb_timezone

# Options 102-115 are unused, RFC3679

# DHCP Auto-Configuration, RFC2563
define 116	byte			auto_configure

# DHCP Name Service Search, RFC2937
define 117	array uint16		name_service_search

# DHCP Subnet Selection, RFC3011
define 118	ipaddress		subnet_selection

# DHCP Domain Search, RFC3397
define 119	domain			domain_search

# DHCP Session Initiated Protocol Servers, RFC3361
define 120	rfc3361			sip_server

# Option 121 is defined at the top of this file

# DHCP CableLabs Client, RFC3495
define 122	encap			tsp
encap 1		ipaddress		dhcp_server
encap 2		ipaddress		dhcp_secondary_server
encap 3		rfc3361			provisioning_server
encap 4		embed			as_req_as_rep_backoff
embed		uint32			nominal
embed		uint32			maximum
embed		uint32			retry
encap 5		embed			ap_req_ap_rep_backoff
embed		uint32			nominal
embed		uint32			maximum
embed		uint32			retry
encap 6		domain			kerberos_realm
encap 7		byte			ticket_granting_server_utilization
encap 8		byte			provisioning_timer

# DHCP Coordinate LCI, RFC6225
# We have no means of expressing 6 bit lengths
define 123	binhex			geoconf

# DHCP Vendor-Identifying Vendor Options, RFC3925
define 124	binhex			vivco
define 125	embed			vivso
embed		uint32			enterprise_number
# Vendor options are shared between DHCP/DHCPv6
# Their code is matched to the enterprise number defined above
# see the end of this file for an example

# Options 126 and 127 are unused, RFC3679

# DHCP Options for Intel Preboot eXecution Environent (PXE), RFC4578
# Options 128-135 are used but of no use to dhcpcd

# DHCP PANA Authentication Agent, RFC5192
define 136	array ipaddress		pana_agent

# DHCP Lost Server, RFC5223
define 137	domain			lost_server

# DHCP CAPWAP, RFC5417
define 138	array ipaddress		capwap_ac

# DHCP Mobility Services, RFC5678
define 139	encap			mos_ip
encap 1		array ipaddress		is
encap 2		array ipaddress		cs
encap 3		array ipaddress		es
define 140	encap			mos_domain
encap 1		domain			is
encap 2		domain			cs
encap 3		domain			es

# DHCP SIP UA, RFC6011
define 141	domain			sip_ua_cs_list

# DHCP ANDSF, RFC6153
define 142	array ipaddress		andsf
define 143	array ip6address	andsf6

# DHCP Coordinate LCI, RFC6225
# We have no means of expressing 6 bit lengths
define 144	binhex			geoloc

# DHCP FORCERENEW Nonce Capability, RFC6704
define 145	array byte		forcerenew_nonce_capable

# DHCP RDNSS Selection for MIF Nodes, RFC6731
define 146	embed			rdnss_selection
embed		byte			prf
embed		ipaddress		primary
embed		ipaddress		secondary
embed		domain			domains

# Options 147, 148 and 149 are unused, RFC3942

# DHCP TFTP Server Address, RFC5859
define 150	array ipaddress		tftp_servers

# Options 151-157 are used for Lease Query, RFC6926 and not for dhcpcd
# Options 158-174 are unused, RFC3942
# Options 175-177 are tentativel assigned for Etherboot
# Options 178-207 are unused, RFC3942

# DHCP PXELINUX, RFC5071
define 208	binhex			pxelinux_magic
define 209	string			config_file
define 210	string			path_prefix
define 211	uint32			reboot_time

# DHCP IPv6 Rapid Deployment on IPv4 Infrastructures, RFC5969
define 212	rfc5969			sixrd

# DHCP Access Network Domain Name, RFC5986
define 213	domain			access_domain

# Options 214-219 are unused, RFC3942

# DHCP Subnet Allocation, RFC6656
# Option 220 looks specific to Cisco hardware.

# DHCP Virtual Subnet Selection, RFC6607
define 221	encap			vss
encap 0		string			nvt
encap 1		binhex			vpn_id
encap 255	flag			global

# Options 222 and 223 are unused, RFC3942
# Options 224-254 are reserved for Private Use
# Option 255 End

##############################################################################
# DHCPv6 options, RFC3315
define6 1	binhex			client_id
define6 2	binhex			server_id

define6 3	norequest index embed	ia_na
embed		binhex:4		iaid
embed		uint32			t1
embed		uint32			t2
encap 5		option
encap 13	option

define6 4	norequest index embed	ia_ta
embed		uint32			iaid
encap 5		option
encap 13	option

define6 5	norequest index embed	ia_addr
embed		ip6address		ia_addr
embed		uint32			pltime
embed		uint32			vltime
encap 13	option

define6 6	array uint16		option_request
define6 7	byte			preference
define6 8	uint16			elased_time
define6 9	binhex			dhcp_relay_msg

# Option 10 is unused

define6 11	embed			auth
embed		byte			protocol
embed		byte			algorithm
embed		byte			rdm
embed		binhex:8		replay
embed		binhex			information

define6 12	ip6address		unicast

define6 13	norequest embed		status_code
embed		uint16			status_code
embed		string			message

define6 14	norequest flag		rapid_commit
define6 15	binhex			user_class

define6 16	binhex			vivco
define6 17	embed			vivso
embed		uint32			enterprise_number
# Vendor options are shared between DHCP/DHCPv6
# Their code is matched to the enterprise number defined above
# See the end of this file for an example

define6 18	binhex			interface_id
define6 19	byte			reconfigure_msg
define6 20	flag			reconfigure_accept

# DHCPv6 Session Initiation Protocol Options, RFC3319
define6 21	domain			sip_servers_names
define6 22	array ip6address	sip_servers_addresses

# DHCPv6 DNS Configuration Options, RFC3646
define6 23	array ip6address	name_servers
define6 24	domain			domain_search

# DHCPv6 Prefix Options, RFC6603
define6 25	norequest index embed	ia_pd
embed		binhex:4		iaid
embed		uint32			t1
embed		uint32			t2
encap 26	option
define6 26	index embed		prefix
embed		uint32			pltime
embed		uint32			vltime
embed		ip6address		prefix
encap 13	option

# DHCPv6 Network Information Service Options, RFC3898
define6 27	array ip6address	nis_servers
define6 28	array ip6address	nisp_servers
define6 29	domain			nis_domain_name
define6 30	domain			nisp_domain_name

# DHCPv6 Simple Network Time Protocol Servers Option, RFC4075
define6 31	array ip6address	sntp_servers

# DHCPv6 Information Refresh Time, RFC4242
define6 32	uint32			info_refresh_time

# DHCPv6 Broadcast and Multicast Control Server, RFC4280
define6 33	domain			bcms_server_d
define6 34	array ip6address	bcms_server_a

# DHCP Civic Addresses Configuration Information, RFC4776
define6 36	encap			geoconf_civic
embed		byte			what
embed		uint16			country_code
# The rest of this option is not supported

# DHCP Relay Agent Remote-ID, RFC4649
define6 37	embed			remote_id
embed		uint32			enterprise_number
embed		binhex			remote_id

# DHCP Relay Agent Subscriber-ID, RFC4580
define6 38	binhex			subscriber_id

# DHCPv6 Fully Qualified Domain Name, RFC4704
define6 39	embed			fqdn
embed		byte			flags
embed		domain			fqdn

# DHCPv6 PANA Authentication Agnet, RC5192
define6 40	array ip6address	pana_agent

# DHCPv6 Timezone options, RFC4883
define6 41	string			posix_timezone
define6 42	string			tzdb_timezone

# DHCPv6 Relay Agent Echo Request
define6 43	array uint16		ero

# Options 44-48 are used for Lease Query, RFC5007 and not for dhcpcd

# DHCPv6 Home Info Discovery in MIPv6, RFC6610
define6 49	domain			mip6_hnidf
define6 50	encap			mip6_vdinf
encap 71	option
encap 72	option
encap 73	option

# DHCPv6 Lost Server, RFC5223
define6 51	domain			lost_server

# DHCPv6 CAPWAP, RFC5417
define6 52	array ip6address	capwap_ac

# DHCPv6 Relay-ID, RFC5460
define6 53	binhex			relay_id

# DHCP Mobility Services, RFC5678
define6 54	encap			mos_ip
encap 1		array ip6address	is
encap 2		array ip6address	cs
encap 3		array ip6address	es
define6 55 	encap			mos_domain
encap 1		domain			is
encap 2		domain			cs
encap 3		domain			es

# DHCPv6 Network Time Protocol Server, RFC5908
define6 56	encap			ntp_server
encap 1		ip6address		addr
encap 2		ip6address		mcast_addr
encap 3		ip6address		fqdn

# DHCPv6 LIS Discovery, RFC5986
define6 57	domain			access_domain

# DHCPv6 SIP UA, RFC6011
define6 58	domain			sip_ua_cs_list

# DHCPv6 Network Boot, RFC5970
define6 59	string			bootfile_url
# We presently cannot decode bootfile_param
define6 60	binhex			bootfile_param
define6 61	array uint16		architecture_types
define6 62	embed			nii
embed		byte			type
embed		byte			major
embed		byte			minor

# DHCPv6 Coordinate LCI, RFC6225
# We have no means of expressing 6 bit lengths
define6 63	binhex			geoloc

# DHCPv6 AFTR-Name, RFC6334
define6 64	domain			aftr_name

# DHCPv6 Home Info Discovery in MIPv6, RFC6610
define6 69	encap			mip6_idinf
encap 71	option
encap 72	option
encap 73	option
define6 70	encap			mip6_udinf
encap 71	option
encap 72	option
encap 73	option
define6	71	embed			mip6_hnp
embed		byte			prefix_len
embed		ip6address		prefix
define6 72	ip6address		mip6_haa
define6 73	domain			mip6_haf

# DHCPv6 RDNSS Selection for MIF Nodes, RFC6731
define6 74	embed			rdnss_selection
embed		ip6address		server
embed		byte			prf
embed		domain			domains

# DHCPv6 Kerberos, RFC6784
define6 75	domain			krb_principal_name
define6 76	domain			krb_realm_name
define6 78	embed			krb_kdc
embed		uint16			priority
embed		uint16			weight
embed		byte			transport_type
embed		uint16			port
embed		ip6address		address
embed		domain			realm_name

# DHCPv6 Client Link-Layer Address, RFC6939
# Section 7 states that clients MUST ignore the option 79

# DHCPv6 Relay-Triggered Reconfiguraion, RFC6977
define6 80	ip6address		link_address

# DHCPv6 Radius, RFC7037
# Section 7 states that clients MUST ignore the option 81

# DHCPv6 SOL_MAX_RT, RFC7083
define6 82	request uint32		sol_max_rt
define6	83	request uint32		inf_max_rt

# DHCPv6 Address Selection Policy
# Currently not supported

# Options 86-65535 are unasssinged

##############################################################################
# Vendor-Identifying Vendor Options
# An example:
#vendopt 12345	encap			frobozzco
#encap 1	string			maze_location
#encap 2	byte			grue_probability
@


