From b8724f78a6904c4b6f02ad5d52faf64102e86e6a Mon Sep 17 00:00:00 2001 From: Thomas Markwalder Date: Tue, 21 Jan 2020 12:40:28 -0500 Subject: [#80] Corrected unresolved symbol, dhcpv4o6() in relay_unittests under libtool Removed dummy func defs, reworked #defines to satisfy symbols. Changes to be committed: modified: relay/dhcrelay.c modified: relay/tests/relay_unittests.c --- relay/dhcrelay.c | 9 +++++---- relay/tests/relay_unittests.c | 26 -------------------------- 2 files changed, 5 insertions(+), 30 deletions(-) diff --git a/relay/dhcrelay.c b/relay/dhcrelay.c index d4ce5f27..883d5058 100644 --- a/relay/dhcrelay.c +++ b/relay/dhcrelay.c @@ -1433,9 +1433,8 @@ add_relay_agent_options(struct interface_info *ip, struct dhcp_packet *packet, return (length); } -#ifndef UNIT_TEST - #ifdef DHCPv6 +#ifndef UNIT_TEST /* * Parse a downstream argument: [address%]interface[#index]. */ @@ -2020,12 +2019,14 @@ process_down6(struct packet *packet) { if (if_id.data != NULL) data_string_forget(&if_id, MDL); } +#endif /* UNIT_TEST */ /* * Called by the dispatch packet handler with a decoded packet. */ void dhcpv6(struct packet *packet) { +#ifndef UNIT_TEST struct stream_list *dp; /* Try all relay-replies downwards. */ @@ -2048,8 +2049,9 @@ dhcpv6(struct packet *packet) { log_info("Can't process packet from interface '%s'.", packet->interface->name); +#endif /* UNIT_TEST */ } -#endif +#endif /* DHCPv6 */ /* Stub routines needed for linking with DHCP libraries. */ void @@ -2147,4 +2149,3 @@ void request_v4_interface(const char* name, int flags) { interface_snorf(tmp, (INTERFACE_REQUESTED | flags)); interface_dereference(&tmp, MDL); } -#endif /* UNIT_TEST */ diff --git a/relay/tests/relay_unittests.c b/relay/tests/relay_unittests.c index cba14bd5..b308393f 100644 --- a/relay/tests/relay_unittests.c +++ b/relay/tests/relay_unittests.c @@ -406,29 +406,3 @@ ATF_TP_ADD_TCS(tp) { return (atf_no_error()); } - -/* Below are dummy function definitions to satisfy "required" symbols */ -isc_result_t find_class (struct class **c, const char *s, - const char *file, int line) { - return 0; -} - -int check_collection (struct packet *packet, struct lease *lease, - struct collection *collection) { - return 0; -} - -void classify (struct packet *packet, struct class *class){} -void bootp(struct packet *packet){} -void dhcp(struct packet *packet){} -void dhcpv6(struct packet *packet){} - -int parse_allow_deny (struct option_cache **oc, struct parse *cfile, - int flag) { - return 0; -} - -isc_result_t dhcp_set_control_state (control_object_state_t oldstate, - control_object_state_t newstate) { - return (ISC_R_SUCCESS); -} -- cgit v1.2.1 From c2147767a52405de05f5bcb2b78965d94dd22584 Mon Sep 17 00:00:00 2001 From: Thomas Markwalder Date: Wed, 17 Jun 2020 11:18:15 -0400 Subject: [#113] Update bind9 branch name modified: util/bind.sh --- util/bind.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/util/bind.sh b/util/bind.sh index ce350cd8..260783b2 100644 --- a/util/bind.sh +++ b/util/bind.sh @@ -154,11 +154,11 @@ else # Get the bind release kit shell script if type wget then - wget https://$repo_host/$repo_path/raw/master/util/kit.sh || + wget https://$repo_host/$repo_path/raw/main/util/kit.sh || { echo "Fetch of kit.sh file failed" ; exit -1; } elif type fetch then - fetch https://$repo_host/$repo_path/raw/master/util/kit.sh || + fetch https://$repo_host/$repo_path/raw/main/util/kit.sh || { echo "Fetch of kit.sh failed" ; exit -1; } else echo "Fetch of kit.sh failed" -- cgit v1.2.1 From c666652e10e28558ed7b2b0025bf193478e98030 Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Fri, 3 Jul 2020 15:24:32 +0200 Subject: Fixed gcc10 build --- keama/ChangeLog.md | 6 ++++++ keama/keama.c | 3 +++ keama/keama.h | 8 +++++--- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/keama/ChangeLog.md b/keama/ChangeLog.md index fd386d9e..dc097e7f 100644 --- a/keama/ChangeLog.md +++ b/keama/ChangeLog.md @@ -1,3 +1,8 @@ +*4 [build] fdupont + + Fixed build by gcc10. + (Gitlab #116) + * 3 [doc] fdupont New documentation including this file. @@ -14,5 +19,6 @@ LEGEND * [bug] Bug fix. +* [build] Build change. * [doc] Update to documentation. * [func] New feature. diff --git a/keama/keama.c b/keama/keama.c index e2c41c32..d6573dbc 100644 --- a/keama/keama.c +++ b/keama/keama.c @@ -47,6 +47,9 @@ usage(const char *sfmt, const char *sarg) { exit(1); } +enum resolve resolve; +struct parses parses; + int local_family = 0; char *hook_library_path = NULL; char *input_file = NULL; diff --git a/keama/keama.h b/keama/keama.h index 8dbb7eb1..e09f4575 100644 --- a/keama/keama.h +++ b/keama/keama.h @@ -35,7 +35,9 @@ enum resolve { perform = 0, /* resolve */ fatal, /* raise a fatal error */ pass /* pass the string wth a warning */ -} resolve; +}; + +extern enum resolve resolve; /* From includes/dhcp.h */ @@ -58,8 +60,6 @@ extern int local_family; /* A parsing context. */ -TAILQ_HEAD(parses, parse) parses; - struct parse { int lexline; int lexchar; @@ -120,6 +120,8 @@ struct parse { }; +extern TAILQ_HEAD(parses, parse) parses; + #define PARAMETER 0 #define TOPLEVEL 1 #define ROOT_GROUP 2 -- cgit v1.2.1 From 26243975f0c0df85391d05a0c6b81cba56a656cd Mon Sep 17 00:00:00 2001 From: Thomas Markwalder Date: Fri, 7 Aug 2020 13:14:12 -0400 Subject: [#108] Corrected a typo in dhcpd.conf.5 --- server/dhcpd.conf.5 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/dhcpd.conf.5 b/server/dhcpd.conf.5 index d3b2ae86..9cc6b74c 100644 --- a/server/dhcpd.conf.5 +++ b/server/dhcpd.conf.5 @@ -322,7 +322,7 @@ Currently it is only allowed within a \fBsubnet6\fR declaration, and may not be included directly in a shared network declaration. In addition to the \fBrange6\fR statement it allows the \fBprefix6\fR statement to be included. You may include \fBrange6\fR statements -for both NA and TA and \fBprefixy6\fR statements in a single +for both NA and TA and \fBprefix6\fR statements in a single \fBpool6\fR statement. .SH DYNAMIC ADDRESS ALLOCATION Address allocation is actually only done when a client is in the INIT -- cgit v1.2.1 From 792db388fd7a50e718fd52ba2c1458783be7e6ec Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Wed, 30 Sep 2020 14:52:40 +0200 Subject: Added option definition --- common/tables.c | 3 +++ includes/dhcp.h | 1 + includes/site.h | 1 + keama/options.c | 1 + util/bind.sh | 4 ++-- 5 files changed, 8 insertions(+), 2 deletions(-) diff --git a/common/tables.c b/common/tables.c index 50d9cf10..0d735004 100644 --- a/common/tables.c +++ b/common/tables.c @@ -208,6 +208,9 @@ static struct option dhcp_options[] = { #if defined(RFC4833_OPTIONS) { "pcode", "t", &dhcp_universe, 100, 1 }, { "tcode", "t", &dhcp_universe, 101, 1 }, +#endif +#if defined(RFC8925_OPTIONS) + { "v6-only-preferred", "L", &dhcp_universe, 108, 1 }, #endif { "netinfo-server-address", "Ia", &dhcp_universe, 112, 1 }, { "netinfo-server-tag", "t", &dhcp_universe, 113, 1 }, diff --git a/includes/dhcp.h b/includes/dhcp.h index 0a74137e..84316924 100644 --- a/includes/dhcp.h +++ b/includes/dhcp.h @@ -156,6 +156,7 @@ struct dhcp_packet { #define DHO_AUTHENTICATE 90 /* RFC3118, was 210 */ #define DHO_CLIENT_LAST_TRANSACTION_TIME 91 #define DHO_ASSOCIATED_IP 92 +#define DHO_V6_ONLY_PREFERRED 108 /* RFC8925 */ #define DHO_SUBNET_SELECTION 118 /* RFC3011! */ #define DHO_DOMAIN_SEARCH 119 /* RFC3397 */ #define DHO_VIVCO_SUBOPTIONS 124 diff --git a/includes/site.h b/includes/site.h index 2ef69e41..533e762b 100644 --- a/includes/site.h +++ b/includes/site.h @@ -374,3 +374,4 @@ #define RFC7341_OPTIONS #define RFC7618_OPTIONS #define RFC7710_OPTIONS +#define RFC8925_OPTIONS diff --git a/keama/options.c b/keama/options.c index 3f714108..7d1e66ea 100644 --- a/keama/options.c +++ b/keama/options.c @@ -170,6 +170,7 @@ struct option_def options4[] = { { "geoconf-civic", "X", "dhcp", 99, 2}, { "pcode", "t", "dhcp", 100, 2}, { "tcode", "t", "dhcp", 101, 2}, + { "v6-only-preferred", "L", "dhcp", 108, 2}, { "netinfo-server-address", "Ia", "dhcp", 112, 2}, { "netinfo-server-tag", "t", "dhcp", 113, 2}, { "default-url", "t", "dhcp", 114, 2}, diff --git a/util/bind.sh b/util/bind.sh index 260783b2..ce350cd8 100644 --- a/util/bind.sh +++ b/util/bind.sh @@ -154,11 +154,11 @@ else # Get the bind release kit shell script if type wget then - wget https://$repo_host/$repo_path/raw/main/util/kit.sh || + wget https://$repo_host/$repo_path/raw/master/util/kit.sh || { echo "Fetch of kit.sh file failed" ; exit -1; } elif type fetch then - fetch https://$repo_host/$repo_path/raw/main/util/kit.sh || + fetch https://$repo_host/$repo_path/raw/master/util/kit.sh || { echo "Fetch of kit.sh failed" ; exit -1; } else echo "Fetch of kit.sh failed" -- cgit v1.2.1 From 812cd4a7f8032047a3daa18e4f505efb146c687e Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Wed, 30 Sep 2020 15:14:16 +0200 Subject: Revert last commit --- common/tables.c | 3 --- includes/dhcp.h | 1 - includes/site.h | 1 - keama/options.c | 1 - 4 files changed, 6 deletions(-) diff --git a/common/tables.c b/common/tables.c index 0d735004..50d9cf10 100644 --- a/common/tables.c +++ b/common/tables.c @@ -208,9 +208,6 @@ static struct option dhcp_options[] = { #if defined(RFC4833_OPTIONS) { "pcode", "t", &dhcp_universe, 100, 1 }, { "tcode", "t", &dhcp_universe, 101, 1 }, -#endif -#if defined(RFC8925_OPTIONS) - { "v6-only-preferred", "L", &dhcp_universe, 108, 1 }, #endif { "netinfo-server-address", "Ia", &dhcp_universe, 112, 1 }, { "netinfo-server-tag", "t", &dhcp_universe, 113, 1 }, diff --git a/includes/dhcp.h b/includes/dhcp.h index 84316924..0a74137e 100644 --- a/includes/dhcp.h +++ b/includes/dhcp.h @@ -156,7 +156,6 @@ struct dhcp_packet { #define DHO_AUTHENTICATE 90 /* RFC3118, was 210 */ #define DHO_CLIENT_LAST_TRANSACTION_TIME 91 #define DHO_ASSOCIATED_IP 92 -#define DHO_V6_ONLY_PREFERRED 108 /* RFC8925 */ #define DHO_SUBNET_SELECTION 118 /* RFC3011! */ #define DHO_DOMAIN_SEARCH 119 /* RFC3397 */ #define DHO_VIVCO_SUBOPTIONS 124 diff --git a/includes/site.h b/includes/site.h index 533e762b..2ef69e41 100644 --- a/includes/site.h +++ b/includes/site.h @@ -374,4 +374,3 @@ #define RFC7341_OPTIONS #define RFC7618_OPTIONS #define RFC7710_OPTIONS -#define RFC8925_OPTIONS diff --git a/keama/options.c b/keama/options.c index 7d1e66ea..3f714108 100644 --- a/keama/options.c +++ b/keama/options.c @@ -170,7 +170,6 @@ struct option_def options4[] = { { "geoconf-civic", "X", "dhcp", 99, 2}, { "pcode", "t", "dhcp", 100, 2}, { "tcode", "t", "dhcp", 101, 2}, - { "v6-only-preferred", "L", "dhcp", 108, 2}, { "netinfo-server-address", "Ia", "dhcp", 112, 2}, { "netinfo-server-tag", "t", "dhcp", 113, 2}, { "default-url", "t", "dhcp", 114, 2}, -- cgit v1.2.1 From 6c7e61578b1b449272dbb40dd8b98d03dad8a57a Mon Sep 17 00:00:00 2001 From: Thomas Markwalder Date: Thu, 30 Jul 2020 10:01:36 -0400 Subject: [#117] Fixed gcc 10 compilation issues client/dhclient.c relay/dhcrelay.c extern'ed local_port,remote_port common/discover.c init local_port,remote_port to 0 server/mdb.c extern'ed dhcp_type_host server/mdb6.c create_prefix6() - eliminated memcpy string overflow error --- RELNOTES | 5 +++++ client/dhclient.c | 5 +++-- common/discover.c | 4 ++-- relay/dhcrelay.c | 4 ++-- server/mdb.c | 2 +- server/mdb6.c | 2 +- 6 files changed, 14 insertions(+), 8 deletions(-) diff --git a/RELNOTES b/RELNOTES index 9d0a0414..6919dba7 100644 --- a/RELNOTES +++ b/RELNOTES @@ -103,6 +103,11 @@ ISC DHCP is open source software maintained by Internet Systems Consortium. This product includes cryptographic software written by Eric Young (eay@cryptsoft.com). + Changes since 4.4.2 (Bug Fixes) + +- Minor corrections to allow compilation under gcc 10. + [Gitlab #117] + Changes since 4.4.2b1 (Bug Fixes) - Added a clarification on DHCPINFORMs and server authority to diff --git a/client/dhclient.c b/client/dhclient.c index 189e5270..7a7837cb 100644 --- a/client/dhclient.c +++ b/client/dhclient.c @@ -83,8 +83,9 @@ static const char message [] = "Internet Systems Consortium DHCP Client"; static const char url [] = "For info, please visit https://www.isc.org/software/dhcp/"; #endif /* UNIT_TEST */ -u_int16_t local_port = 0; -u_int16_t remote_port = 0; +extern u_int16_t local_port; +extern u_int16_t remote_port; + #if defined(DHCPv6) && defined(DHCP4o6) int dhcp4o6_state = -1; /* -1 = stopped, 0 = polling, 1 = started */ #endif diff --git a/common/discover.c b/common/discover.c index ca4f4d55..22f09767 100644 --- a/common/discover.c +++ b/common/discover.c @@ -45,8 +45,8 @@ struct interface_info *fallback_interface = 0; int interfaces_invalidated; int quiet_interface_discovery; -u_int16_t local_port; -u_int16_t remote_port; +u_int16_t local_port = 0; +u_int16_t remote_port = 0; u_int16_t relay_port = 0; int dhcpv4_over_dhcpv6 = 0; int (*dhcp_interface_setup_hook) (struct interface_info *, struct iaddr *); diff --git a/relay/dhcrelay.c b/relay/dhcrelay.c index 883d5058..7211e3bb 100644 --- a/relay/dhcrelay.c +++ b/relay/dhcrelay.c @@ -95,8 +95,8 @@ enum { forward_and_append, /* Forward and append our own relay option. */ forward_untouched, /* Forward without changes. */ discard } agent_relay_mode = forward_and_replace; -u_int16_t local_port; -u_int16_t remote_port; +extern u_int16_t local_port; +extern u_int16_t remote_port; /* Relay agent server list. */ struct server_list { diff --git a/server/mdb.c b/server/mdb.c index ff8a707f..8266d764 100644 --- a/server/mdb.c +++ b/server/mdb.c @@ -67,7 +67,7 @@ static host_id_info_t *host_id_info = NULL; int numclasseswritten; -omapi_object_type_t *dhcp_type_host; +extern omapi_object_type_t *dhcp_type_host; isc_result_t enter_class(cd, dynamicp, commit) struct class *cd; diff --git a/server/mdb6.c b/server/mdb6.c index da7baf6e..ebe01e56 100644 --- a/server/mdb6.c +++ b/server/mdb6.c @@ -1945,7 +1945,7 @@ create_prefix6(struct ipv6_pool *pool, struct iasubopt **pref, } new_ds.data = new_ds.buffer->data; memcpy(new_ds.buffer->data, ds.data, ds.len); - memcpy(new_ds.buffer->data + ds.len, &tmp, sizeof(tmp)); + memcpy(&new_ds.buffer->data[0] + ds.len, &tmp, sizeof(tmp)); data_string_forget(&ds, MDL); data_string_copy(&ds, &new_ds, MDL); data_string_forget(&new_ds, MDL); -- cgit v1.2.1 From 25f124c820d692bbac0290a2114fe23ae1ad972b Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Mon, 12 Oct 2020 13:50:46 +0200 Subject: Added option definition --- common/tables.c | 3 +++ includes/dhcp.h | 1 + includes/site.h | 1 + keama/options.c | 1 + 4 files changed, 6 insertions(+) diff --git a/common/tables.c b/common/tables.c index 50d9cf10..0d735004 100644 --- a/common/tables.c +++ b/common/tables.c @@ -208,6 +208,9 @@ static struct option dhcp_options[] = { #if defined(RFC4833_OPTIONS) { "pcode", "t", &dhcp_universe, 100, 1 }, { "tcode", "t", &dhcp_universe, 101, 1 }, +#endif +#if defined(RFC8925_OPTIONS) + { "v6-only-preferred", "L", &dhcp_universe, 108, 1 }, #endif { "netinfo-server-address", "Ia", &dhcp_universe, 112, 1 }, { "netinfo-server-tag", "t", &dhcp_universe, 113, 1 }, diff --git a/includes/dhcp.h b/includes/dhcp.h index 0a74137e..84316924 100644 --- a/includes/dhcp.h +++ b/includes/dhcp.h @@ -156,6 +156,7 @@ struct dhcp_packet { #define DHO_AUTHENTICATE 90 /* RFC3118, was 210 */ #define DHO_CLIENT_LAST_TRANSACTION_TIME 91 #define DHO_ASSOCIATED_IP 92 +#define DHO_V6_ONLY_PREFERRED 108 /* RFC8925 */ #define DHO_SUBNET_SELECTION 118 /* RFC3011! */ #define DHO_DOMAIN_SEARCH 119 /* RFC3397 */ #define DHO_VIVCO_SUBOPTIONS 124 diff --git a/includes/site.h b/includes/site.h index 2ef69e41..533e762b 100644 --- a/includes/site.h +++ b/includes/site.h @@ -374,3 +374,4 @@ #define RFC7341_OPTIONS #define RFC7618_OPTIONS #define RFC7710_OPTIONS +#define RFC8925_OPTIONS diff --git a/keama/options.c b/keama/options.c index 3f714108..7d1e66ea 100644 --- a/keama/options.c +++ b/keama/options.c @@ -170,6 +170,7 @@ struct option_def options4[] = { { "geoconf-civic", "X", "dhcp", 99, 2}, { "pcode", "t", "dhcp", 100, 2}, { "tcode", "t", "dhcp", 101, 2}, + { "v6-only-preferred", "L", "dhcp", 108, 2}, { "netinfo-server-address", "Ia", "dhcp", 112, 2}, { "netinfo-server-tag", "t", "dhcp", 113, 2}, { "default-url", "t", "dhcp", 114, 2}, -- cgit v1.2.1 From 9d8d2fb788ba28d514e8e0d157062a7788ec9609 Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Mon, 12 Oct 2020 13:57:37 +0200 Subject: Added dhcp-options.5 entry --- common/dhcp-options.5 | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/common/dhcp-options.5 b/common/dhcp-options.5 index 6fae9805..b829e308 100644 --- a/common/dhcp-options.5 +++ b/common/dhcp-options.5 @@ -1243,6 +1243,14 @@ The domain name of the LoST server for the client to use. This option is included based on RFC 5223. .RE .PP +.B option \fBv6-only-preferred\fR \fIuint32\fR\fB;\fR +.RS 0.25i +.PP +The number of seconds the client should disable DHCPv4 for. +.PP +This option and its use by the client are specified in RFC 8925. +.RE +.PP .B option \fBvendor-class-identifier\fR \fIstring\fR\fB;\fR .RS 0.25i .PP -- cgit v1.2.1 From 933b80fa645924c9bc6bb0c32209ca0865d6a4b8 Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Mon, 12 Oct 2020 22:18:33 +0200 Subject: Checkpoint: added start/finish v6only --- client/dhclient.c | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++++ client/scripts/linux | 8 ++++++ includes/dhcpd.h | 10 +++++++- 3 files changed, 87 insertions(+), 1 deletion(-) diff --git a/client/dhclient.c b/client/dhclient.c index 7a7837cb..b989d1b7 100644 --- a/client/dhclient.c +++ b/client/dhclient.c @@ -1242,6 +1242,73 @@ void state_init (cpp) send_discover (client); } +/* v6only_timeout is called when the V6ONLY_WAIT timer expired. */ + +void finish_v6only(cpp) + void *cpp; +{ + struct client_state *client = cpp; + client->state = S_INIT; + state_init(cpp); +} + +/* + * state_v6only is called when a requested v6-only-preferred option was + * returned by the server. */ + +void start_v6only(packet, client) + struct packet *packet; + struct client_state *client; +{ + struct option_cache *oc; + struct data_string data; + uint32_t v6only_wait = 0; + struct timeval tv; + + /* Get the V6ONLY_WAIT timer. */ + oc = lookup_option(&dhcp_universe, packet->options, + DHO_V6_ONLY_PREFERRED); + if (!oc) { + /* Should not happen... */ + return; + } + + memset(&data, 0, sizeof(data)); + + if (evaluate_option_cache(&data, packet, (struct lease *)0, client, + packet->options, (struct option_state *)0, + &global_scope, oc, MDL)) { + if (data.len > 3) + v6only_wait = getULong(data.data); + data_string_forget(&data, MDL); + } + + if (v6only_wait < MIN_V6ONLY_WAIT) + v6only_wait = MIN_V6ONLY_WAIT; + + /* Enter V6ONLY state. */ + + client->state = S_V6ONLY; + + /* Run the client script. */ + script_init(client, "V6ONLY", NULL); + if (client->active) { + script_write_params(client, "old_", client->active); + destroy_client_lease(client->active); + client->active = NULL; + } + script_write_requested(client); + client_envadd(client, "", "v6-only-preferred", "%lu", + (long unsigned)v6only_wait); + script_go(client); + + /* Trigger finish_v6only after V6ONLY_WAIT seconds. */ + tv.tv_sec = cur_tv.tv_sec + v6only_wait; + tv.tv_usec = cur_tv.tv_usec; + + add_timeout(&tv, finish_v6only, client, 0, 0); +} + /* * state_selecting is called when one or more DHCPOFFER packets have been * received and a configurable period of time has passed. @@ -1650,6 +1717,7 @@ void state_stop (cpp) cancel_timeout(send_discover, client); cancel_timeout(send_request, client); cancel_timeout(state_bound, client); + cancel_timeout(finish_v6only, client); /* If we have an address, unconfigure it. */ if (client->active) { @@ -4623,6 +4691,7 @@ void client_location_changed () case S_REBINDING: case S_STOPPED: case S_DECLINING: + case S_V6ONLY: break; } client -> state = S_INIT; @@ -4701,6 +4770,7 @@ void do_release(client) cancel_timeout (state_init, client); cancel_timeout (send_request, client); cancel_timeout (state_reboot, client); + cancel_timeout (finish_v6only, client); client -> state = S_STOPPED; #if defined(DHCPv6) && defined(DHCP4o6) diff --git a/client/scripts/linux b/client/scripts/linux index 0c429697..63257bca 100755 --- a/client/scripts/linux +++ b/client/scripts/linux @@ -400,6 +400,14 @@ case "$reason" in ;; + V6ONLY) + if [ -n "$old_ip_address" ]; then + # flush leased IP + ${ip} -4 addr flush dev ${interface} label ${interface} + fi + + ;; + ### DHCPv6 Handlers # TODO handle prefix change: ?based on ${old_ip6_prefix} and ${new_ip6_prefix}? diff --git a/includes/dhcpd.h b/includes/dhcpd.h index b20dd240..caeeaeda 100644 --- a/includes/dhcpd.h +++ b/includes/dhcpd.h @@ -877,6 +877,10 @@ struct lease_state { # define DEFAULT_ABANDON_LEASE_TIME 86400 #endif +#if !defined (MIN_V6ONLY_WAIT) +# define MIN_V6ONLY_WAIT 300 +#endif + #define PLM_IGNORE 0 #define PLM_PREFER 1 #define PLM_EXACT 2 @@ -1204,7 +1208,8 @@ enum dhcp_state { S_RENEWING = 6, S_REBINDING = 7, S_DECLINING = 8, - S_STOPPED = 9 + S_STOPPED = 9, + S_V6ONLY = 10 }; /* Possible pending client operations. */ @@ -3003,6 +3008,9 @@ void state_bound (void *); void state_stop (void *); void state_panic (void *); +void start_v6only (struct packet *, struct client_state *); +void finish_v6only (void *); + void bind_lease (struct client_state *); void make_client_options (struct client_state *, -- cgit v1.2.1 From 3354013a47fe53f073c520c3c486ab9b7ff53601 Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Tue, 13 Oct 2020 10:15:00 +0200 Subject: Checkpoint: code done, need tests --- client/dhclient.c | 94 ++++++++++++++++++++++++++++++++++++++++++------------- includes/dhcpd.h | 3 +- 2 files changed, 74 insertions(+), 23 deletions(-) diff --git a/client/dhclient.c b/client/dhclient.c index b989d1b7..1a7ac85e 100644 --- a/client/dhclient.c +++ b/client/dhclient.c @@ -1242,49 +1242,79 @@ void state_init (cpp) send_discover (client); } -/* v6only_timeout is called when the V6ONLY_WAIT timer expired. */ +/* check_v6only is called by dhcpoffer and dhcpack. It checks if a + * requested v6-only-preferred option is present and returned the + * V6ONLY_WAIT delay to suspend DHCPv4. */ -void finish_v6only(cpp) - void *cpp; -{ - struct client_state *client = cpp; - client->state = S_INIT; - state_init(cpp); -} - -/* - * state_v6only is called when a requested v6-only-preferred option was - * returned by the server. */ - -void start_v6only(packet, client) +uint32_t check_v6only(packet, client) struct packet *packet; struct client_state *client; { + int i; + struct option **req; + isc_boolean_t found = ISC_FALSE; struct option_cache *oc; struct data_string data; uint32_t v6only_wait = 0; - struct timeval tv; + /* Check if the v6-only-preferred was requested. */ + req = client->config->requested_options; + + if (req == NULL) + return 0; + + for (i = 0 ; req[i] != NULL ; i++) { + if ((req[i]->universe == &dhcp_universe) && + (req[i]->code == DHO_V6_ONLY_PREFERRED)) { + found = ISC_TRUE; + break; + } + } + + if (found == ISC_FALSE) + return 0; + /* Get the V6ONLY_WAIT timer. */ oc = lookup_option(&dhcp_universe, packet->options, DHO_V6_ONLY_PREFERRED); - if (!oc) { - /* Should not happen... */ - return; - } + if (!oc) + return 0; memset(&data, 0, sizeof(data)); if (evaluate_option_cache(&data, packet, (struct lease *)0, client, packet->options, (struct option_state *)0, &global_scope, oc, MDL)) { - if (data.len > 3) + if (data.len > 3) { v6only_wait = getULong(data.data); + if (v6only_wait < MIN_V6ONLY_WAIT) + v6only_wait = MIN_V6ONLY_WAIT; + } data_string_forget(&data, MDL); } - if (v6only_wait < MIN_V6ONLY_WAIT) - v6only_wait = MIN_V6ONLY_WAIT; + return (v6only_wait); +} + +/* finish_v6only is called when the V6ONLY_WAIT timer expired. */ + +void finish_v6only(cpp) + void *cpp; +{ + struct client_state *client = cpp; + client->state = S_INIT; + state_init(cpp); +} + +/* + * start_v6only is called when a requested v6-only-preferred option was + * returned by the server. */ + +void start_v6only(client, v6only_wait) + struct client_state *client; + uint32_t v6only_wait; +{ + struct timeval tv; /* Enter V6ONLY state. */ @@ -1404,6 +1434,7 @@ void dhcpack (packet) { struct interface_info *ip = packet -> interface; struct client_state *client; + uint32_t v6only_wait; struct client_lease *lease; struct option_cache *oc; struct data_string ds; @@ -1439,6 +1470,15 @@ void dhcpack (packet) inet_ntoa(packet->raw->yiaddr), piaddr (packet->client_addr)); + /* Check v6only first. */ + v6only_wait = check_v6only(packet, client); + if (v6only_wait > 0) { + log_info("v6 only preferred for %lu.", + (long unsigned)v6only_wait); + start_v6only(client, v6only_wait); + return; + } + lease = packet_to_lease (packet, client); if (!lease) { log_info ("packet_to_lease failed."); @@ -2077,6 +2117,7 @@ void dhcpoffer (packet) { struct interface_info *ip = packet -> interface; struct client_state *client; + uint32_t v6only_wait; struct client_lease *lease, *lp; struct option **req; int i; @@ -2112,6 +2153,15 @@ void dhcpoffer (packet) inet_ntoa(packet->raw->yiaddr), piaddr(packet->client_addr)); + /* Check v6only first. */ + v6only_wait = check_v6only(packet, client); + if (v6only_wait > 0) { + log_info("%s: v6 only preferred for %lu.", obuf, + (long unsigned)v6only_wait); + start_v6only(client, v6only_wait); + return; + } + /* If this lease doesn't supply the minimum required DHCPv4 parameters, * ignore it. */ diff --git a/includes/dhcpd.h b/includes/dhcpd.h index caeeaeda..f9217ea8 100644 --- a/includes/dhcpd.h +++ b/includes/dhcpd.h @@ -3008,7 +3008,8 @@ void state_bound (void *); void state_stop (void *); void state_panic (void *); -void start_v6only (struct packet *, struct client_state *); +uint32_t check_v6only (struct packet *, struct client_state *); +void start_v6only (struct client_state *, uint32_t); void finish_v6only (void *); void bind_lease (struct client_state *); -- cgit v1.2.1 From 4b705d0d1dc37f3e2be97af99838efcb83b4496f Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Wed, 14 Oct 2020 16:16:16 +0200 Subject: Added cancel timeouts --- client/dhclient.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/client/dhclient.c b/client/dhclient.c index 1a7ac85e..42d098ab 100644 --- a/client/dhclient.c +++ b/client/dhclient.c @@ -1302,6 +1302,8 @@ void finish_v6only(cpp) void *cpp; { struct client_state *client = cpp; + + cancel_timeout(finish_v6only, client); client->state = S_INIT; state_init(cpp); } @@ -1475,6 +1477,7 @@ void dhcpack (packet) if (v6only_wait > 0) { log_info("v6 only preferred for %lu.", (long unsigned)v6only_wait); + cancel_timeout(send_request, client); start_v6only(client, v6only_wait); return; } @@ -2158,6 +2161,7 @@ void dhcpoffer (packet) if (v6only_wait > 0) { log_info("%s: v6 only preferred for %lu.", obuf, (long unsigned)v6only_wait); + cancel_timeout(send_discover, client); start_v6only(client, v6only_wait); return; } -- cgit v1.2.1 From 397b2947c62de324d60152409895052a3cf6d398 Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Wed, 14 Oct 2020 16:30:30 +0200 Subject: RELNOTES entry proposal --- RELNOTES | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/RELNOTES b/RELNOTES index 6919dba7..15867642 100644 --- a/RELNOTES +++ b/RELNOTES @@ -103,6 +103,13 @@ ISC DHCP is open source software maintained by Internet Systems Consortium. This product includes cryptographic software written by Eric Young (eay@cryptsoft.com). + Changes since 4.4.2 (New Features) + +- Added support of the new DHCPv4 option v6-only-preferred specified in +RFC 8925. A new reason V6ONLY was added to the client script and the +client Linux script sample was updated. + [Gitlab #132] + Changes since 4.4.2 (Bug Fixes) - Minor corrections to allow compilation under gcc 10. -- cgit v1.2.1 From ee3fe731fd90d64eb632284c0e237d1f3a64cd0e Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Wed, 14 Oct 2020 16:39:22 +0200 Subject: Added V6ONLY reason to the client script man --- client/dhclient-script.8 | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/client/dhclient-script.8 b/client/dhclient-script.8 index 3553afdc..1506a644 100644 --- a/client/dhclient-script.8 +++ b/client/dhclient-script.8 @@ -199,6 +199,12 @@ been passed in as with BOUND. The client configuration script should test these parameters and, if it has reason to believe they are valid, should exit with a value of zero. If not, it should exit with a nonzero value. +.SH V6ONLY +The DHCPv4 client has received a requested valid v6-only-preferred +option. The system should disable IPv4 on the interface. On its side +the dhclient waits for V6ONLY_WAIT seconds (the timer is carried by +the option with a minimum of MIN_V6ONLY_WAIT) before returning in +the INIT state. .PP The usual way to test a lease is to set up the network as with REBIND (since this may be called to test more than one lease) and then ping -- cgit v1.2.1 From 79110e525e0584d195327d31f4ee67e6a5e2fe7a Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Tue, 29 Dec 2020 16:48:04 +0100 Subject: Addressed comments --- RELNOTES | 6 +++--- client/dhclient.c | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/RELNOTES b/RELNOTES index 15867642..7ed1f37d 100644 --- a/RELNOTES +++ b/RELNOTES @@ -105,9 +105,9 @@ by Eric Young (eay@cryptsoft.com). Changes since 4.4.2 (New Features) -- Added support of the new DHCPv4 option v6-only-preferred specified in -RFC 8925. A new reason V6ONLY was added to the client script and the -client Linux script sample was updated. +- Added support of the new DHCPv4 option v6-only-preferred specified +in RFC 8925. A new reason code, V6ONLY, was added to the client script +and the client Linux script sample was updated. [Gitlab #132] Changes since 4.4.2 (Bug Fixes) diff --git a/client/dhclient.c b/client/dhclient.c index 42d098ab..0a4fa312 100644 --- a/client/dhclient.c +++ b/client/dhclient.c @@ -1285,7 +1285,7 @@ uint32_t check_v6only(packet, client) if (evaluate_option_cache(&data, packet, (struct lease *)0, client, packet->options, (struct option_state *)0, &global_scope, oc, MDL)) { - if (data.len > 3) { + if (data.len == 4) { v6only_wait = getULong(data.data); if (v6only_wait < MIN_V6ONLY_WAIT) v6only_wait = MIN_V6ONLY_WAIT; @@ -1475,7 +1475,7 @@ void dhcpack (packet) /* Check v6only first. */ v6only_wait = check_v6only(packet, client); if (v6only_wait > 0) { - log_info("v6 only preferred for %lu.", + log_info("v6 only preferred for %lu seconds.", (long unsigned)v6only_wait); cancel_timeout(send_request, client); start_v6only(client, v6only_wait); -- cgit v1.2.1 From 33e517615f8467a005de2ca2633f52bad323ec2b Mon Sep 17 00:00:00 2001 From: Thomas Markwalder Date: Mon, 3 Aug 2020 10:41:17 -0400 Subject: [#123] dhclient no longer declines on client script crashes modified: RELNOTES modified: client/dhclient.c --- RELNOTES | 4 ++++ client/dhclient.c | 19 ++++++++++++++----- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/RELNOTES b/RELNOTES index 7ed1f37d..bbf81570 100644 --- a/RELNOTES +++ b/RELNOTES @@ -115,6 +115,10 @@ and the client Linux script sample was updated. - Minor corrections to allow compilation under gcc 10. [Gitlab #117] +- Corrected logic in dhclient that causes it to decline DHCPv4 leases if the + client script exits abnormally (i.e. crashes). + [Gitlab #123] + Changes since 4.4.2b1 (Bug Fixes) - Added a clarification on DHCPINFORMs and server authority to diff --git a/client/dhclient.c b/client/dhclient.c index 0a4fa312..e445a52d 100644 --- a/client/dhclient.c +++ b/client/dhclient.c @@ -1635,9 +1635,12 @@ void bind_lease (client) script_write_params(client, "alias_", client->alias); /* If the BOUND/RENEW code detects another machine using the - offered address, it exits nonzero. We need to send a - DHCPDECLINE and toss the lease. */ - if (script_go(client)) { + offered address, then per our man page it should exit with + a non-zero status, to which we send a DHCPDECLINE and toss + the lease. A return value of less than zero indicates + the script crashed (e.g. segfault) which script_go will log + but we will ignore here. */ + if (script_go(client) > 0) { make_decline(client, client->new); send_decline(client); destroy_client_lease(client->new); @@ -4557,8 +4560,14 @@ int script_go(struct client_state *client) } dfree (envp, MDL); gettimeofday(&cur_tv, NULL); - return (WIFEXITED (wstatus) ? - WEXITSTATUS (wstatus) : -WTERMSIG (wstatus)); + + if (!WIFEXITED(wstatus)) { + int sigval = WTERMSIG(wstatus); + log_error ("script_go script: %s was terminated by signal %d", scriptName, sigval); + return (-sigval); + } + + return (WEXITSTATUS(wstatus)); } void client_envadd (struct client_state *client, -- cgit v1.2.1 From 2e914d00dd9db8d7c4d0a3dd42d8ce68bb030d3b Mon Sep 17 00:00:00 2001 From: Thomas Markwalder Date: Tue, 1 Sep 2020 13:46:43 -0400 Subject: [#92] Max startup lease size now only checked on 32-bit OSes modified: RELNOTES server/confpars.c --- RELNOTES | 4 ++++ server/confpars.c | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/RELNOTES b/RELNOTES index bbf81570..2a681989 100644 --- a/RELNOTES +++ b/RELNOTES @@ -119,6 +119,10 @@ and the client Linux script sample was updated. client script exits abnormally (i.e. crashes). [Gitlab #123] +- The limit on the size of lease file that can be loaded at start up + is now only enforced on 32-bit systems. + [Gitlab #64] + Changes since 4.4.2b1 (Bug Fixes) - Added a clarification on DHCPINFORMs and server authority to diff --git a/server/confpars.c b/server/confpars.c index 4f0b58ee..e2216685 100644 --- a/server/confpars.c +++ b/server/confpars.c @@ -3,7 +3,7 @@ Parser for dhcpd config file... */ /* - * Copyright (c) 2004-2019 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public @@ -142,7 +142,7 @@ isc_result_t read_conf_file (const char *filename, struct group *group, if (lseek (file, (off_t)0, SEEK_SET) < 0) goto boom; /* Can't handle files greater than 2^31-1. */ - if (flen > 0x7FFFFFFFUL) + if ((sizeof(void*) < 8) && flen > 0x7FFFFFFFUL) log_fatal ("%s: file is too long to buffer.", filename); ulen = flen; -- cgit v1.2.1 From 1cb76d2d23fe8dafaf937a4b3c1cf9cf814a83c6 Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Wed, 5 Jan 2022 15:16:47 +0100 Subject: Checkpoint before regen --- configure.ac-base | 6 +++--- includes/config.h.in | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/configure.ac-base b/configure.ac-base index a981afe0..8a9cfd8f 100644 --- a/configure.ac-base +++ b/configure.ac-base @@ -635,7 +635,7 @@ if test "$have_nanosleep" = "rt"; then LIBS="-lrt $LIBS" fi -# check for /dev/random (declares HAVE_DEV_RANDOM) +# check for /dev/random (declares ISC_PATH_RANDOMDEV) AC_MSG_CHECKING(for random device) AC_ARG_WITH(randomdev, AS_HELP_STRING([--with-randomdev=PATH],[Path for random device @@ -659,8 +659,8 @@ else else AC_MSG_RESULT($use_randomdev) AC_CHECK_FILE($use_randomdev, - AC_DEFINE([HAVE_DEV_RANDOM], [1], - [Define to 1 if you have the /dev/random or other configured file.]), + AC_DEFINE_UNQUOTED([ISC_PATH_RANDOMDEV], [$use_randomdev], + [Define if you have the /dev/random or other configured file.]), AC_MSG_ERROR(cannot find $use_randomdev)) fi BINDCONFIG="$BINDCONFIG --with-randomdev=$use_randomdev" diff --git a/includes/config.h.in b/includes/config.h.in index 1608f671..d559a338 100644 --- a/includes/config.h.in +++ b/includes/config.h.in @@ -46,9 +46,6 @@ /* Define to 1 to use the Berkeley Packet Filter interface code. */ #undef HAVE_BPF -/* Define to 1 if you have the /dev/random or other configured file. */ -#undef HAVE_DEV_RANDOM - /* Define to 1 to use DLPI interface code. */ #undef HAVE_DLPI @@ -121,6 +118,9 @@ /* Define to the string for a noreturn attribute. */ #undef ISC_DHCP_NORETURN +/* Define if you have the /dev/random or other configured file. */ +#undef ISC_PATH_RANDOMDEV + /* Define to 1 if the system has 'struct if_laddrconf'. */ #undef ISC_PLATFORM_HAVEIF_LADDRCONF -- cgit v1.2.1 From 54f832a821de88440da50bcf93e2e842da7abd31 Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Wed, 5 Jan 2022 18:59:12 +0000 Subject: [197] Regen configure --- configure | 6 ++++-- configure.ac | 6 +++--- configure.ac+lt | 6 +++--- configure.ac-lt | 6 +++--- 4 files changed, 13 insertions(+), 11 deletions(-) diff --git a/configure b/configure index bc005c4b..c15577b9 100755 --- a/configure +++ b/configure @@ -6762,7 +6762,7 @@ if test "$have_nanosleep" = "rt"; then LIBS="-lrt $LIBS" fi -# check for /dev/random (declares HAVE_DEV_RANDOM) +# check for /dev/random (declares ISC_PATH_RANDOMDEV) { $as_echo "$as_me:${as_lineno-$LINENO}: checking for random device" >&5 $as_echo_n "checking for random device... " >&6; } @@ -6813,7 +6813,9 @@ eval ac_res=\$$as_ac_File $as_echo "$ac_res" >&6; } if eval test \"x\$"$as_ac_File"\" = x"yes"; then : -$as_echo "#define HAVE_DEV_RANDOM 1" >>confdefs.h +cat >>confdefs.h <<_ACEOF +#define ISC_PATH_RANDOMDEV $use_randomdev +_ACEOF else as_fn_error $? "cannot find $use_randomdev" "$LINENO" 5 diff --git a/configure.ac b/configure.ac index 3a583a59..fe63e559 100644 --- a/configure.ac +++ b/configure.ac @@ -629,7 +629,7 @@ if test "$have_nanosleep" = "rt"; then LIBS="-lrt $LIBS" fi -# check for /dev/random (declares HAVE_DEV_RANDOM) +# check for /dev/random (declares ISC_PATH_RANDOMDEV) AC_MSG_CHECKING(for random device) AC_ARG_WITH(randomdev, AS_HELP_STRING([--with-randomdev=PATH],[Path for random device @@ -653,8 +653,8 @@ else else AC_MSG_RESULT($use_randomdev) AC_CHECK_FILE($use_randomdev, - AC_DEFINE([HAVE_DEV_RANDOM], [1], - [Define to 1 if you have the /dev/random or other configured file.]), + AC_DEFINE_UNQUOTED([ISC_PATH_RANDOMDEV], [$use_randomdev], + [Define if you have the /dev/random or other configured file.]), AC_MSG_ERROR(cannot find $use_randomdev)) fi BINDCONFIG="$BINDCONFIG --with-randomdev=$use_randomdev" diff --git a/configure.ac+lt b/configure.ac+lt index 6432927f..a0c2b38a 100644 --- a/configure.ac+lt +++ b/configure.ac+lt @@ -630,7 +630,7 @@ if test "$have_nanosleep" = "rt"; then LIBS="-lrt $LIBS" fi -# check for /dev/random (declares HAVE_DEV_RANDOM) +# check for /dev/random (declares ISC_PATH_RANDOMDEV) AC_MSG_CHECKING(for random device) AC_ARG_WITH(randomdev, AS_HELP_STRING([--with-randomdev=PATH],[Path for random device @@ -654,8 +654,8 @@ else else AC_MSG_RESULT($use_randomdev) AC_CHECK_FILE($use_randomdev, - AC_DEFINE([HAVE_DEV_RANDOM], [1], - [Define to 1 if you have the /dev/random or other configured file.]), + AC_DEFINE_UNQUOTED([ISC_PATH_RANDOMDEV], [$use_randomdev], + [Define if you have the /dev/random or other configured file.]), AC_MSG_ERROR(cannot find $use_randomdev)) fi BINDCONFIG="$BINDCONFIG --with-randomdev=$use_randomdev" diff --git a/configure.ac-lt b/configure.ac-lt index 3a583a59..fe63e559 100644 --- a/configure.ac-lt +++ b/configure.ac-lt @@ -629,7 +629,7 @@ if test "$have_nanosleep" = "rt"; then LIBS="-lrt $LIBS" fi -# check for /dev/random (declares HAVE_DEV_RANDOM) +# check for /dev/random (declares ISC_PATH_RANDOMDEV) AC_MSG_CHECKING(for random device) AC_ARG_WITH(randomdev, AS_HELP_STRING([--with-randomdev=PATH],[Path for random device @@ -653,8 +653,8 @@ else else AC_MSG_RESULT($use_randomdev) AC_CHECK_FILE($use_randomdev, - AC_DEFINE([HAVE_DEV_RANDOM], [1], - [Define to 1 if you have the /dev/random or other configured file.]), + AC_DEFINE_UNQUOTED([ISC_PATH_RANDOMDEV], [$use_randomdev], + [Define if you have the /dev/random or other configured file.]), AC_MSG_ERROR(cannot find $use_randomdev)) fi BINDCONFIG="$BINDCONFIG --with-randomdev=$use_randomdev" -- cgit v1.2.1 From d4fbfc55c748620e007f86006acc6b6195bdf775 Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Wed, 5 Jan 2022 20:03:52 +0100 Subject: Added quotes --- configure.ac-base | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.ac-base b/configure.ac-base index 8a9cfd8f..32f5e5df 100644 --- a/configure.ac-base +++ b/configure.ac-base @@ -659,7 +659,7 @@ else else AC_MSG_RESULT($use_randomdev) AC_CHECK_FILE($use_randomdev, - AC_DEFINE_UNQUOTED([ISC_PATH_RANDOMDEV], [$use_randomdev], + AC_DEFINE_UNQUOTED([ISC_PATH_RANDOMDEV], ["$use_randomdev"], [Define if you have the /dev/random or other configured file.]), AC_MSG_ERROR(cannot find $use_randomdev)) fi -- cgit v1.2.1 From eece3e17eb3b4a30d56f28cdf57e6fe63121e121 Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Wed, 5 Jan 2022 19:04:14 +0000 Subject: [197] Regen configure --- configure | 2 +- configure.ac | 2 +- configure.ac+lt | 2 +- configure.ac-lt | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/configure b/configure index c15577b9..8a7cae99 100755 --- a/configure +++ b/configure @@ -6814,7 +6814,7 @@ $as_echo "$ac_res" >&6; } if eval test \"x\$"$as_ac_File"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF -#define ISC_PATH_RANDOMDEV $use_randomdev +#define ISC_PATH_RANDOMDEV "$use_randomdev" _ACEOF else diff --git a/configure.ac b/configure.ac index fe63e559..c7ad1922 100644 --- a/configure.ac +++ b/configure.ac @@ -653,7 +653,7 @@ else else AC_MSG_RESULT($use_randomdev) AC_CHECK_FILE($use_randomdev, - AC_DEFINE_UNQUOTED([ISC_PATH_RANDOMDEV], [$use_randomdev], + AC_DEFINE_UNQUOTED([ISC_PATH_RANDOMDEV], ["$use_randomdev"], [Define if you have the /dev/random or other configured file.]), AC_MSG_ERROR(cannot find $use_randomdev)) fi diff --git a/configure.ac+lt b/configure.ac+lt index a0c2b38a..dd0517ae 100644 --- a/configure.ac+lt +++ b/configure.ac+lt @@ -654,7 +654,7 @@ else else AC_MSG_RESULT($use_randomdev) AC_CHECK_FILE($use_randomdev, - AC_DEFINE_UNQUOTED([ISC_PATH_RANDOMDEV], [$use_randomdev], + AC_DEFINE_UNQUOTED([ISC_PATH_RANDOMDEV], ["$use_randomdev"], [Define if you have the /dev/random or other configured file.]), AC_MSG_ERROR(cannot find $use_randomdev)) fi diff --git a/configure.ac-lt b/configure.ac-lt index fe63e559..c7ad1922 100644 --- a/configure.ac-lt +++ b/configure.ac-lt @@ -653,7 +653,7 @@ else else AC_MSG_RESULT($use_randomdev) AC_CHECK_FILE($use_randomdev, - AC_DEFINE_UNQUOTED([ISC_PATH_RANDOMDEV], [$use_randomdev], + AC_DEFINE_UNQUOTED([ISC_PATH_RANDOMDEV], ["$use_randomdev"], [Define if you have the /dev/random or other configured file.]), AC_MSG_ERROR(cannot find $use_randomdev)) fi -- cgit v1.2.1 From 46de3dfd990ab53e953aacda42d8085cc4c09322 Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Wed, 5 Jan 2022 20:21:43 +0100 Subject: Mixed with srandomdev() BSD code --- client/dhclient.c | 41 ++++++++++++++++++++++++++++------------- 1 file changed, 28 insertions(+), 13 deletions(-) diff --git a/client/dhclient.c b/client/dhclient.c index e445a52d..a0ff656b 100644 --- a/client/dhclient.c +++ b/client/dhclient.c @@ -3,7 +3,7 @@ DHCP Client. */ /* - * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (c) 2004-2022 by Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public @@ -829,21 +829,36 @@ main(int argc, char **argv) { ? DISCOVER_REQUESTED : DISCOVER_RUNNING); - /* Make up a seed for the random number generator from current - time plus the sum of the last four bytes of each - interface's hardware address interpreted as an integer. - Not much entropy, but we're booting, so we're not likely to - find anything better. */ + /* PLEASE PREFER the random device: not all systems use random + * process identifiers so the alternative can be predictable. */ seed = 0; - for (ip = interfaces; ip; ip = ip->next) { - int junk; - memcpy(&junk, - &ip->hw_address.hbuf[ip->hw_address.hlen - - sizeof seed], sizeof seed); - seed += junk; + size_t nrnd = 0; +#ifdef ISC_PATH_RANDOMDEV + FILE *frnd = fopen(ISC_PATH_RANDOMDEV, "r"); + if (frnd) { + nrnd = fread(&seed, sizeof(seed), 1, frnd); + fclose(frnd); } - srandom(seed + cur_time + (unsigned)getpid()); +#endif + /* Please leave the compiler to emit a warning about a constant + * condition in the if test. */ + if (!nrnd) { + /* Make up a seed for the random number generator from current + time plus the sum of the last four bytes of each + interface's hardware address interpreted as an integer. + Not much entropy, but we're booting, so we're not likely to + find anything better. */ + for (ip = interfaces; ip; ip = ip->next) { + int junk; + memcpy(&junk, + &ip->hw_address.hbuf[ip->hw_address.hlen - + sizeof seed], sizeof seed); + seed += junk; + } + seed += cur_time + (unsigned)getpid(); + } + srandom(seed); /* * Establish a default DUID. We always do so for v6 and -- cgit v1.2.1 From 629a45246486346a7d2dba6ae138697638ea6daa Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Fri, 7 Jan 2022 14:18:59 +0100 Subject: Added a RELNOTES entry --- RELNOTES | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/RELNOTES b/RELNOTES index 2a681989..81d724ad 100644 --- a/RELNOTES +++ b/RELNOTES @@ -123,6 +123,13 @@ and the client Linux script sample was updated. is now only enforced on 32-bit systems. [Gitlab #64] +- After a report about predictable seeding of transaction identifier + pseudo-random generation on systems where process identifiers are not + random the already existing --with-randomdev configure argument was + extended. Please remember its default is "/dev/random" which is not + convenient on all systems. + [Gitlab #197] + Changes since 4.4.2b1 (Bug Fixes) - Added a clarification on DHCPINFORMs and server authority to -- cgit v1.2.1 From 805ce64ff3a801ceae50044d5df504680af72cca Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Fri, 10 Jan 2020 22:47:52 +0100 Subject: [#77,!53] replace deprecated ifconfig with ip For linux scripts the deprected ifconfig has been replaced with ip. However there is one leftover, replace that as well. Closes #77 Signed-off-by: Christian Hesse --- client/scripts/linux | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/scripts/linux b/client/scripts/linux index 63257bca..c4e51f6d 100755 --- a/client/scripts/linux +++ b/client/scripts/linux @@ -419,7 +419,7 @@ case "$reason" in interface_up_wait_time=5 for i in $(seq 0 ${interface_up_wait_time}) do - ifconfig ${interface} | grep RUNNING >/dev/null 2>&1 + ${ip} link show dev ${interface} | grep -q LOWER_UP 2>&1 if [ $? -eq 0 ]; then break; fi -- cgit v1.2.1 From f853b9c8e53bc31b95b8ced12e492ab94a7ef2ce Mon Sep 17 00:00:00 2001 From: Thomas Markwalder Date: Wed, 12 Jan 2022 13:07:30 -0500 Subject: [master] Fixed RELNOTES issue number --- RELNOTES | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RELNOTES b/RELNOTES index 81d724ad..85a4515e 100644 --- a/RELNOTES +++ b/RELNOTES @@ -121,7 +121,7 @@ and the client Linux script sample was updated. - The limit on the size of lease file that can be loaded at start up is now only enforced on 32-bit systems. - [Gitlab #64] + [Gitlab #92] - After a report about predictable seeding of transaction identifier pseudo-random generation on systems where process identifiers are not -- cgit v1.2.1 From 0c03eaefbbd3f0e22dd5df600c4b707af294890c Mon Sep 17 00:00:00 2001 From: Razvan Becheriu Date: Thu, 13 Jan 2022 20:08:49 +0200 Subject: fixed compilation warning --- .gitignore | 2 ++ RELNOTES | 3 +++ client/dhclient.c | 10 +++++----- relay/dhcrelay.c | 4 ++-- server/dhcpd.c | 4 ++-- 5 files changed, 14 insertions(+), 9 deletions(-) diff --git a/.gitignore b/.gitignore index 59eb7dd9..60c67238 100644 --- a/.gitignore +++ b/.gitignore @@ -9,6 +9,7 @@ client/tests/duid_unittests client/tests/test-suite.log common/tests/alloc_unittest common/tests/dns_unittest +common/tests/domain_name_unittest common/tests/misc_unittest common/tests/ns_name_unittest common/tests/option_unittest @@ -24,6 +25,7 @@ libtool ltmain.sh omapip/svtest relay/dhcrelay +relay/tests/relay_unittests server/dhcpd server/tests/dhcpd_unittests server/tests/hash_unittests diff --git a/RELNOTES b/RELNOTES index 85a4515e..1dfff178 100644 --- a/RELNOTES +++ b/RELNOTES @@ -130,6 +130,9 @@ and the client Linux script sample was updated. convenient on all systems. [Gitlab #197] +- Minor dhclient code fix to remove compilation warnings. + [Gitlab #190] + Changes since 4.4.2b1 (Bug Fixes) - Added a clarification on DHCPINFORMs and server authority to diff --git a/client/dhclient.c b/client/dhclient.c index a0ff656b..d06efa55 100644 --- a/client/dhclient.c +++ b/client/dhclient.c @@ -137,10 +137,10 @@ static void dhclient_ddns_cb_free(dhcp_ddns_cb_t *ddns_cb, * the description of the command line. The arguments provide * a way for the caller to request more specific information about * the error be printed as well. Mostly this will be that some - * comamnd doesn't include its argument. + * command doesn't include its argument. * * \param sfmt - The basic string and format for the specific error - * \param sarg - Generally the offending argument from the comamnd line. + * \param sarg - Generally the offending argument from the command line. * * \return Nothing */ @@ -567,7 +567,7 @@ main(int argc, char **argv) { } else if (argv[i][0] == '-') { usage("Unknown command: %s", argv[i]); } else if (interfaces_requested < 0) { - usage("No interfaces comamnd -n and " + usage("No interfaces command -n and " " requested interface %s", argv[i]); } else { struct interface_info *tmp = NULL; @@ -3399,12 +3399,12 @@ make_client_options(struct client_state *client, struct client_lease *lease, hw_idx = 0; hw_len = client->interface->hw_address.hlen; } - memcpy(&client_identifier.buffer->data + 5 - hw_len, + memcpy(client_identifier.buffer->data + 5 - hw_len, client->interface->hw_address.hbuf + hw_idx, hw_len); /* Add the default duid */ - memcpy(&client_identifier.buffer->data+(1+4), + memcpy(client_identifier.buffer->data + (1 + 4), default_duid.data, default_duid.len); /* And save the option */ diff --git a/relay/dhcrelay.c b/relay/dhcrelay.c index 7211e3bb..72b2b1f9 100644 --- a/relay/dhcrelay.c +++ b/relay/dhcrelay.c @@ -235,10 +235,10 @@ char *progname; * the description of the command line. The arguments provide * a way for the caller to request more specific information about * the error be printed as well. Mostly this will be that some - * comamnd doesn't include its argument. + * command doesn't include its argument. * * \param sfmt - The basic string and format for the specific error - * \param sarg - Generally the offending argument from the comamnd line. + * \param sarg - Generally the offending argument from the command line. * * \return Nothing */ diff --git a/server/dhcpd.c b/server/dhcpd.c index 6c2ceedd..7b25d70d 100644 --- a/server/dhcpd.c +++ b/server/dhcpd.c @@ -195,10 +195,10 @@ static void omapi_listener_start (void *foo) * the description of the command line. The arguments provide * a way for the caller to request more specific information about * the error be printed as well. Mostly this will be that some - * comamnd doesn't include its argument. + * command doesn't include its argument. * * \param sfmt - The basic string and format for the specific error - * \param sarg - Generally the offending argument from the comamnd line. + * \param sarg - Generally the offending argument from the command line. * * \return Nothing */ -- cgit v1.2.1 From 002ed173d8d0f375d302eb2ed18283fa044ea023 Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Fri, 7 Jan 2022 16:46:26 +0100 Subject: [(no branch, rebasing 218-updated-bundled-bind9)] Moved to bind 9.11.36 with a fixed kit script --- bind/bind.tar.gz | Bin 8376949 -> 8464212 bytes bind/version.tmp | 2 +- util/bind-kit.sh | 214 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ util/bind.sh | 18 ++--- 4 files changed, 219 insertions(+), 15 deletions(-) create mode 100644 util/bind-kit.sh diff --git a/bind/bind.tar.gz b/bind/bind.tar.gz index e2b8203f..8137753a 100644 Binary files a/bind/bind.tar.gz and b/bind/bind.tar.gz differ diff --git a/bind/version.tmp b/bind/version.tmp index cf52f1b9..e74b8ba7 100644 --- a/bind/version.tmp +++ b/bind/version.tmp @@ -5,7 +5,7 @@ PRODUCT=BIND DESCRIPTION="(Extended Support Version)" MAJORVER=9 MINORVER=11 -PATCHVER=14 +PATCHVER=36 RELEASETYPE= RELEASEVER= EXTENSIONS= diff --git a/util/bind-kit.sh b/util/bind-kit.sh new file mode 100644 index 00000000..23e4abc0 --- /dev/null +++ b/util/bind-kit.sh @@ -0,0 +1,214 @@ +#!/bin/sh +# +# Copyright (C) Internet Systems Consortium, Inc. ("ISC") +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, you can obtain one at https://mozilla.org/MPL/2.0/. +# +# See the COPYRIGHT file distributed with this work for additional +# information regarding copyright ownership. + +# Make a release kit +# +# Usage: sh kit.sh tag tmpdir +# +# (e.g., sh kit.sh v9_0_0b5 /tmp/bindkit +# +# To build a snapshot release, use the pseudo-tag "snapshot". +# +# (e.g., sh kit.sh snapshot /tmp/bindkit +# + +remote=--remote=git@gitlab.isc.org:isc-projects/bind9.git + +case "${1:-}" in +--remote=*) + remote="${1}" + shift + ;; +esac + +repo=`expr "X${remote}X" : '^X--remote=\(.*\)X$'` + +case $# in + 3) + case "$1" in + snapshot) ;; + *) echo "usage: sh kit.sh [snapshot] gittag tmpdir" >&2 + exit 1 + ;; + esac + snapshot=true; + releasetag=$2 + tag=$2 + tmpdir=$3 + ;; + 2) + tag=$1 + tmpdir=$2 + case $tag in + snapshot) tag=master; snapshot=true ; releasetag="" ;; + *) snapshot=false ;; + esac + ;; + *) echo "usage: sh kit.sh [snapshot] gittag tmpdir" >&2 + exit 1 + ;; +esac + +# create tmpdir +test -d $tmpdir || +mkdir $tmpdir || { + echo "$0: could not create directory $tmpdir" >&2 + exit 1 +} + +cd $tmpdir || { + echo "$0: cd $tmpdir failed" + exit 1 +} + +hash=`git ls-remote $repo refs/heads/$tag | awk '{print $1}'` +if [ -z "$hash" ]; then + hash=`git ls-remote $repo refs/tags/$tag | awk '{print $1}'` +fi +if [ -z "$hash" ]; then + echo "Unable to determine hash for $tag, aborting." + exit 1 +fi +shorthash=`echo $hash | cut -c1-7` + +verdir=bind9-kit.$$ +mkdir $verdir || { + echo "$0: could not create directory $tmpdir/$verdir" >&2 + exit 1 +} +git archive --format=tar $remote $tag version | ( cd $verdir ;tar xf - ) +test -f $verdir/version || { + echo "$0: could not get 'version' file" >&2 + exit 1 +} +. $verdir/version + +rm $verdir/version +rmdir $verdir + +if $snapshot +then + RELEASETYPE=s + RELEASEVER=${shorthash} +fi + +version=${MAJORVER}.${MINORVER}${PATCHVER:+.}${PATCHVER}${RELEASETYPE}${RELEASEVER}${EXTENSIONS} + +echo "building release kit for BIND version $version, hold on..." + +topdir=bind-$version + +test ! -d $topdir || { + echo "$0: directory $tmpdir/$topdir already exists" >&2 + exit 1 +} + +mkdir $topdir || exit 1 + +git archive --format=tar $remote $tag | ( cd $topdir; tar xf -) + +cd $topdir || exit 1 + +if $snapshot +then + cat <version +MAJORVER=$MAJORVER +MINORVER=$MINORVER +PATCHVER=$PATCHVER +RELEASETYPE=$RELEASETYPE +RELEASEVER=$RELEASEVER +EXTENSIONS=$EXTENSIONS +EOF +fi + +# Omit some files and directories from the kit. +# +# Some of these directories (doc/html, doc/man...) no longer +# contain any files and should therefore be absent in the +# checked-out tree, but they did exist at some point and +# we still delete them from releases just in case something +# gets accidentally resurrected. + +rm -rf TODO EXCLUDED conftools doc/design doc/dev doc/draft doc/expired \ + doc/html doc/rfc doc/todo doc/private bin/lwresd doc/man doc/markdown \ + lib/lwres/man/resolver.5 contrib/zkt/doc/rfc5011.txt \ + bin/tests/system/relay lib/cfg + +# Remove everything but mksymtbl.pl, bindkeys.pl and check-make-install.in +# from util +find util -name bindkeys.pl -o -name mksymtbl.pl -o -name check-make-install.in -prune -o -type f -print | xargs rm -f +find util -depth -type d -print | xargs rmdir 2>/dev/null + +# Remove all .gitignore files +find . -name .gitignore -print | xargs rm + +# Remove branchsync.dat, if present +rm -f branchsync.dat + +# populate srcid file +echo "SRCID=$shorthash" > srcid + +# The following files should be executable. +chmod +x configure install-sh mkinstalldirs bin/tests/system/ifconfig.sh +# Fix up releases with libbind. +if test -f lib/bind/configure +then + chmod +x lib/bind/configure lib/bind/mkinstalldirs +fi + +# Fix files which should be using DOS style newlines +windirs=`find lib bin -type d -name win32` +windirs="$windirs win32utils" +winnames="-name *.mak -or -name *.dsp -or -name *.dsw -or -name *.txt -or -name *.bat" +for f in `find $windirs -type f \( $winnames \) -print` +do + awk '{sub("\r$", "", $0); printf("%s\r\n", $0);}' < $f > tmp + touch -r $f tmp + mv tmp $f +done + +# check that documentation has been updated properly; issue a warning +# if it hasn't +ok= +for f in doc/arm/*.html +do + if test "$f" -nt doc/arm/Bv9ARM-book.xml + then + ok=ok + fi +done + +if test "$ok" != ok +then + echo "WARNING: ARM source is newer than the html version." +fi + +if test doc/arm/Bv9ARM-book.xml -nt doc/arm/Bv9ARM.pdf +then + echo "WARNING: ARM source is newer than the PDF version." +fi + +for f in `find . -name "*.docbook" -print` +do + docbookfile=$f + htmlfile=${f%.docbook}.html + if test $docbookfile -nt $htmlfile + then + echo "WARNING: $docbookfile is newer than the html version." + fi +done + +# build the tarball +cd .. || exit 1 + +kit=$topdir.tar.gz +tar -c -f - $topdir | gzip > $kit +echo "done, kit is in `pwd`/$kit" diff --git a/util/bind.sh b/util/bind.sh index ce350cd8..2f25b6fe 100644 --- a/util/bind.sh +++ b/util/bind.sh @@ -1,6 +1,6 @@ #!/bin/sh # -# Copyright (C) 2009-2020 Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2009-2022 Internet Systems Consortium, Inc. ("ISC") # # This Source Code Form is subject to the terms of the Mozilla Public # License, v. 2.0. If a copy of the MPL was not distributed with this @@ -73,6 +73,7 @@ case $# in ### For ease of use, this records the sticky tag of versions ### released with each point release. ### + 4.4.3) noSNAP=snapshot BINDTAG=v9_11_36 ;; 4.4.2) noSNAP=snapshot BINDTAG=v9_11_14 ;; 4.4.2b1) noSNAP=snapshot BINDTAG=v9_11_14 ;; 4.4.2-dev) noSNAP=snapshot BINDTAG=v9_11_8 ;; @@ -134,6 +135,7 @@ else # Make and move to our directory for all things bind mkdir $binddir cp util/Makefile.bind.in bind/Makefile.in + cp util/bind-kit.sh bind/kit.sh cd $binddir # Get the bind version file and move it to version.tmp @@ -151,19 +153,7 @@ else fi mv version version.tmp - # Get the bind release kit shell script - if type wget - then - wget https://$repo_host/$repo_path/raw/master/util/kit.sh || - { echo "Fetch of kit.sh file failed" ; exit -1; } - elif type fetch - then - fetch https://$repo_host/$repo_path/raw/master/util/kit.sh || - { echo "Fetch of kit.sh failed" ; exit -1; } - else - echo "Fetch of kit.sh failed" - exit 1 - fi + # Now the bind release kit shell script is distributed # Create the bind tarball, which has the side effect of # setting up the bind directory we will use for building -- cgit v1.2.1 From ea10884dc5b57d5a864a5289f82f484303de7f02 Mon Sep 17 00:00:00 2001 From: Tomek Mrugalski Date: Thu, 13 Jan 2022 11:42:55 +0100 Subject: [#218] Imported BIND 9.11.36 --- bind/bind.tar.gz | Bin 8464212 -> 8507011 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/bind/bind.tar.gz b/bind/bind.tar.gz index 8137753a..a42810a5 100644 Binary files a/bind/bind.tar.gz and b/bind/bind.tar.gz differ -- cgit v1.2.1 From ddbacbd5e15aab14f9a743e9bec7a789f58bea6f Mon Sep 17 00:00:00 2001 From: Tomek Mrugalski Date: Thu, 13 Jan 2022 11:45:38 +0100 Subject: [#218] Update .gitignore --- .gitignore | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.gitignore b/.gitignore index 60c67238..1105bc60 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,7 @@ *.lo *.o +*.a +*.log doc/html .deps Makefile @@ -36,3 +38,6 @@ server/tests/test-suite.log tests/libt_api.a tests/libt_api.la tests/unittest.sh + +bind/bind-* +bind/include -- cgit v1.2.1 From 2925489603b1c3c034f657d7af78eb4d37a605c8 Mon Sep 17 00:00:00 2001 From: Tomek Mrugalski Date: Thu, 13 Jan 2022 11:49:11 +0100 Subject: [#218] RELNOTES updated --- RELNOTES | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/RELNOTES b/RELNOTES index 1dfff178..11e12e5c 100644 --- a/RELNOTES +++ b/RELNOTES @@ -103,8 +103,12 @@ ISC DHCP is open source software maintained by Internet Systems Consortium. This product includes cryptographic software written by Eric Young (eay@cryptsoft.com). + Changes since 4.4.2 (New Features) +- BIND9 version updated to latest 9.11.36. + [Gitlab #218] + - Added support of the new DHCPv4 option v6-only-preferred specified in RFC 8925. A new reason code, V6ONLY, was added to the client script and the client Linux script sample was updated. -- cgit v1.2.1 From 8d822e2c239f873f856b3689e9e2c631e83072ff Mon Sep 17 00:00:00 2001 From: Tomek Mrugalski Date: Thu, 20 Jan 2022 10:36:06 +0100 Subject: [#218] Added empty install-exec target - as requested by Philip Prindeville for OpenWRT build fix --- bind/Makefile.in | 1 + util/Makefile.bind.in | 1 + 2 files changed, 2 insertions(+) diff --git a/bind/Makefile.in b/bind/Makefile.in index 8fe8883f..7e2993f6 100644 --- a/bind/Makefile.in +++ b/bind/Makefile.in @@ -116,5 +116,6 @@ uninstall-bind: all # Include the following so that this Makefile is happy when the parent # tries to use them. +install-exec: check distdir distclean dvi installcheck: diff --git a/util/Makefile.bind.in b/util/Makefile.bind.in index 8fe8883f..7e2993f6 100644 --- a/util/Makefile.bind.in +++ b/util/Makefile.bind.in @@ -116,5 +116,6 @@ uninstall-bind: all # Include the following so that this Makefile is happy when the parent # tries to use them. +install-exec: check distdir distclean dvi installcheck: -- cgit v1.2.1 From 06eba2207b1dab17d7ac9f8cd628afee8d54d009 Mon Sep 17 00:00:00 2001 From: Tomek Mrugalski Date: Thu, 20 Jan 2022 11:23:58 +0100 Subject: [#218] Updated RELNOTES with acknowledgement --- RELNOTES | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/RELNOTES b/RELNOTES index 11e12e5c..fa8252ab 100644 --- a/RELNOTES +++ b/RELNOTES @@ -106,7 +106,8 @@ by Eric Young (eay@cryptsoft.com). Changes since 4.4.2 (New Features) -- BIND9 version updated to latest 9.11.36. +- BIND9 version updated to latest 9.11.36. Thanks to Philip Prindeville + for testing on OpenWRT. [Gitlab #218] - Added support of the new DHCPv4 option v6-only-preferred specified -- cgit v1.2.1 From 429a56d73c0f9f2edf400fd6313850a3ce4fd809 Mon Sep 17 00:00:00 2001 From: Tomek Mrugalski Date: Wed, 19 Jan 2022 20:13:19 +0100 Subject: [#189] ISC address updated --- LICENSE | 4 ++-- client/client_tables.c | 4 ++-- client/clparse.c | 4 ++-- client/dhc6.c | 4 ++-- client/dhclient-script.8 | 4 ++-- client/dhclient.8 | 4 ++-- client/dhclient.c | 4 ++-- client/dhclient.conf.5 | 4 ++-- client/dhclient.leases.5 | 4 ++-- client/tests/duid_unittest.c | 4 ++-- common/alloc.c | 4 ++-- common/bpf.c | 4 ++-- common/comapi.c | 4 ++-- common/conflex.c | 4 ++-- common/ctrace.c | 4 ++-- common/dhcp-eval.5 | 4 ++-- common/dhcp-options.5 | 4 ++-- common/dhcp4o6.c | 4 ++-- common/discover.c | 4 ++-- common/dispatch.c | 4 ++-- common/dlpi.c | 4 ++-- common/dns.c | 4 ++-- common/ethernet.c | 4 ++-- common/execute.c | 4 ++-- common/fddi.c | 4 ++-- common/icmp.c | 4 ++-- common/inet.c | 4 ++-- common/lpf.c | 4 ++-- common/memory.c | 4 ++-- common/nit.c | 4 ++-- common/ns_name.c | 4 ++-- common/options.c | 4 ++-- common/packet.c | 4 ++-- common/parse.c | 4 ++-- common/print.c | 4 ++-- common/raw.c | 4 ++-- common/resolv.c | 4 ++-- common/socket.c | 4 ++-- common/tables.c | 4 ++-- common/tr.c | 4 ++-- common/tree.c | 4 ++-- common/upf.c | 4 ++-- dhcpctl/callback.c | 4 ++-- dhcpctl/cltest.c | 4 ++-- dhcpctl/dhcpctl.3 | 4 ++-- dhcpctl/dhcpctl.c | 4 ++-- dhcpctl/dhcpctl.h | 4 ++-- dhcpctl/omshell.1 | 4 ++-- dhcpctl/omshell.c | 4 ++-- dhcpctl/remote.c | 4 ++-- doc/References.txt | 11 ++++------- doc/References.xml | 21 ++++++++++----------- includes/arpa/nameser.h | 4 ++-- includes/cdefs.h | 4 ++-- includes/ctrace.h | 4 ++-- includes/dhcp.h | 4 ++-- includes/dhcp6.h | 4 ++-- includes/dhcpd.h | 4 ++-- includes/dhctoken.h | 4 ++-- includes/failover.h | 4 ++-- includes/inet.h | 4 ++-- includes/ldap_casa.h | 4 ++-- includes/netinet/udp.h | 4 ++-- includes/ns_name.h | 4 ++-- includes/omapip/alloc.h | 4 ++-- includes/omapip/buffer.h | 4 ++-- includes/omapip/convert.h | 4 ++-- includes/omapip/hash.h | 4 ++-- includes/omapip/isclib.h | 4 ++-- includes/omapip/omapip.h | 4 ++-- includes/omapip/omapip_p.h | 4 ++-- includes/omapip/result.h | 4 ++-- includes/omapip/trace.h | 4 ++-- includes/osdep.h | 4 ++-- includes/statement.h | 4 ++-- includes/tree.h | 4 ++-- keama/conflex.c | 4 ++-- keama/confparse.c | 4 ++-- keama/data.c | 4 ++-- keama/data.h | 4 ++-- keama/dhctoken.h | 4 ++-- keama/eval.c | 4 ++-- keama/json.c | 4 ++-- keama/keama.8 | 4 ++-- keama/keama.c | 4 ++-- keama/keama.h | 4 ++-- keama/options.c | 4 ++-- keama/parse.c | 4 ++-- keama/print.c | 4 ++-- keama/reduce.c | 4 ++-- omapip/alloc.c | 4 ++-- omapip/array.c | 4 ++-- omapip/auth.c | 4 ++-- omapip/buffer.c | 4 ++-- omapip/connection.c | 4 ++-- omapip/convert.c | 4 ++-- omapip/dispatch.c | 4 ++-- omapip/errwarn.c | 4 ++-- omapip/generic.c | 4 ++-- omapip/handle.c | 4 ++-- omapip/hash.c | 4 ++-- omapip/isclib.c | 4 ++-- omapip/listener.c | 4 ++-- omapip/message.c | 4 ++-- omapip/omapi.3 | 4 ++-- omapip/protocol.c | 4 ++-- omapip/result.c | 4 ++-- omapip/support.c | 4 ++-- omapip/test.c | 4 ++-- omapip/toisc.c | 4 ++-- omapip/trace.c | 4 ++-- relay/dhcrelay.8 | 4 ++-- relay/dhcrelay.c | 4 ++-- relay/tests/relay_unittests.c | 4 ++-- server/Makefile.dist | 4 ++-- server/bootp.c | 4 ++-- server/class.c | 4 ++-- server/confpars.c | 4 ++-- server/db.c | 4 ++-- server/ddns.c | 4 ++-- server/dhcp.c | 4 ++-- server/dhcpd.8 | 4 ++-- server/dhcpd.c | 4 ++-- server/dhcpd.conf.5 | 4 ++-- server/dhcpd.leases.5 | 4 ++-- server/failover.c | 4 ++-- server/ldap_casa.c | 4 ++-- server/leasechain.c | 4 ++-- server/mdb.c | 4 ++-- server/omapi.c | 4 ++-- server/salloc.c | 4 ++-- server/stables.c | 4 ++-- server/tests/hash_unittest.c | 4 ++-- tests/DHCPv6/000-badmsgtype.pl | 4 ++-- tests/DHCPv6/010-solicit-noclientid.pl | 4 ++-- tests/DHCPv6/011-solicit-serverid.pl | 4 ++-- tests/DHCPv6/020-advertise-mcast.pl | 4 ++-- tests/DHCPv6/030-request-noclientid.pl | 4 ++-- tests/DHCPv6/031-request-noserverid.pl | 4 ++-- tests/DHCPv6/032-request-badduid.pl | 4 ++-- tests/DHCPv6/110-information-request-ia_na.pl | 4 ++-- tests/DHCPv6/111-information-request-ia_ta.pl | 4 ++-- tests/DHCPv6/112-badduid.pl | 4 ++-- tests/DHCPv6/210-solicit-nohost.pl | 4 ++-- tests/DHCPv6/211-solicit-opt-in-na.pl | 4 ++-- tests/DHCPv6/212-solicit-opt-in-na-norapidcommit.pl | 4 ++-- tests/DHCPv6/280-release-nohost.pl | 4 ++-- tests/DHCPv6/281-release-bad-address.pl | 4 ++-- tests/DHCPv6/282-release-no-address.pl | 4 ++-- tests/DHCPv6/283-release.pl | 4 ++-- tests/DHCPv6/290-decline-nohost.pl | 4 ++-- tests/DHCPv6/291-decline-bad-address.pl | 4 ++-- tests/DHCPv6/292-decline-no-address.pl | 4 ++-- tests/DHCPv6/293-decline.pl | 4 ++-- tests/DHCPv6/dhcp_client.pm | 4 ++-- tests/DHCPv6/stubcli-opt-in-na.pl | 4 ++-- tests/DHCPv6/stubcli.pl | 4 ++-- 157 files changed, 324 insertions(+), 328 deletions(-) diff --git a/LICENSE b/LICENSE index b7c85280..27a9fe86 100644 --- a/LICENSE +++ b/LICENSE @@ -10,8 +10,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ # diff --git a/client/client_tables.c b/client/client_tables.c index 41a3885b..fc915a15 100644 --- a/client/client_tables.c +++ b/client/client_tables.c @@ -18,8 +18,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/client/clparse.c b/client/clparse.c index 35e2d164..2f0909b8 100644 --- a/client/clparse.c +++ b/client/clparse.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/client/dhc6.c b/client/dhc6.c index 55ecab80..ea7cce83 100644 --- a/client/dhc6.c +++ b/client/dhc6.c @@ -17,8 +17,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ */ diff --git a/client/dhclient-script.8 b/client/dhclient-script.8 index 1506a644..4d6e7fdb 100644 --- a/client/dhclient-script.8 +++ b/client/dhclient-script.8 @@ -16,8 +16,8 @@ .\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Internet Systems Consortium, Inc. -.\" 950 Charter Street -.\" Redwood City, CA 94063 +.\" PO Box 360 +.\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ .\" diff --git a/client/dhclient.8 b/client/dhclient.8 index 0ec9fc76..9382779d 100644 --- a/client/dhclient.8 +++ b/client/dhclient.8 @@ -16,8 +16,8 @@ .\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Internet Systems Consortium, Inc. -.\" 950 Charter Street -.\" Redwood City, CA 94063 +.\" PO Box 360 +.\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ .\" diff --git a/client/dhclient.c b/client/dhclient.c index d06efa55..249af4f1 100644 --- a/client/dhclient.c +++ b/client/dhclient.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/client/dhclient.conf.5 b/client/dhclient.conf.5 index fa3b908a..36b97070 100644 --- a/client/dhclient.conf.5 +++ b/client/dhclient.conf.5 @@ -16,8 +16,8 @@ .\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Internet Systems Consortium, Inc. -.\" 950 Charter Street -.\" Redwood City, CA 94063 +.\" PO Box 360 +.\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ .\" diff --git a/client/dhclient.leases.5 b/client/dhclient.leases.5 index d151753f..14f743a8 100644 --- a/client/dhclient.leases.5 +++ b/client/dhclient.leases.5 @@ -16,8 +16,8 @@ .\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Internet Systems Consortium, Inc. -.\" 950 Charter Street -.\" Redwood City, CA 94063 +.\" PO Box 360 +.\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ .\" diff --git a/client/tests/duid_unittest.c b/client/tests/duid_unittest.c index 3ca03f42..fdfdf433 100644 --- a/client/tests/duid_unittest.c +++ b/client/tests/duid_unittest.c @@ -14,8 +14,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/alloc.c b/common/alloc.c index 47609bbc..05c00b88 100644 --- a/common/alloc.c +++ b/common/alloc.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/bpf.c b/common/bpf.c index 16076fea..775f70ae 100644 --- a/common/bpf.c +++ b/common/bpf.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/comapi.c b/common/comapi.c index 656f1d70..33b6b785 100644 --- a/common/comapi.c +++ b/common/comapi.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/conflex.c b/common/conflex.c index 045b655d..fb9a9df6 100644 --- a/common/conflex.c +++ b/common/conflex.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/ctrace.c b/common/ctrace.c index 2813f1d1..030c68a9 100644 --- a/common/ctrace.c +++ b/common/ctrace.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/dhcp-eval.5 b/common/dhcp-eval.5 index 7dd52613..fa3932fb 100644 --- a/common/dhcp-eval.5 +++ b/common/dhcp-eval.5 @@ -17,8 +17,8 @@ .\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Internet Systems Consortium, Inc. -.\" 950 Charter Street -.\" Redwood City, CA 94063 +.\" PO Box 360 +.\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ .\" diff --git a/common/dhcp-options.5 b/common/dhcp-options.5 index b829e308..1c3f3a6b 100644 --- a/common/dhcp-options.5 +++ b/common/dhcp-options.5 @@ -16,8 +16,8 @@ .\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Internet Systems Consortium, Inc. -.\" 950 Charter Street -.\" Redwood City, CA 94063 +.\" PO Box 360 +.\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ .\" diff --git a/common/dhcp4o6.c b/common/dhcp4o6.c index 11ae29ab..7d846f29 100644 --- a/common/dhcp4o6.c +++ b/common/dhcp4o6.c @@ -18,8 +18,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/discover.c b/common/discover.c index 22f09767..6288850e 100644 --- a/common/discover.c +++ b/common/discover.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/dispatch.c b/common/dispatch.c index 0207ad3c..e019421e 100644 --- a/common/dispatch.c +++ b/common/dispatch.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/dlpi.c b/common/dlpi.c index 3990bf12..7a80eaaf 100644 --- a/common/dlpi.c +++ b/common/dlpi.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/dns.c b/common/dns.c index bdd8af46..012e4df8 100644 --- a/common/dns.c +++ b/common/dns.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/ethernet.c b/common/ethernet.c index 6513b95a..1621aa29 100644 --- a/common/ethernet.c +++ b/common/ethernet.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/execute.c b/common/execute.c index aad8067d..053dab81 100644 --- a/common/execute.c +++ b/common/execute.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/fddi.c b/common/fddi.c index 7a893cc6..a6c8098b 100644 --- a/common/fddi.c +++ b/common/fddi.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/icmp.c b/common/icmp.c index 2090041b..8c87aaa1 100644 --- a/common/icmp.c +++ b/common/icmp.c @@ -20,8 +20,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/inet.c b/common/inet.c index c4da73c8..4388d92b 100644 --- a/common/inet.c +++ b/common/inet.c @@ -20,8 +20,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/lpf.c b/common/lpf.c index 82a279bb..1e4deff6 100644 --- a/common/lpf.c +++ b/common/lpf.c @@ -20,8 +20,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ */ diff --git a/common/memory.c b/common/memory.c index 6a2f0937..8e31154a 100644 --- a/common/memory.c +++ b/common/memory.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/nit.c b/common/nit.c index d822c151..10deb313 100644 --- a/common/nit.c +++ b/common/nit.c @@ -20,8 +20,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/ns_name.c b/common/ns_name.c index f5198219..5abb12a7 100644 --- a/common/ns_name.c +++ b/common/ns_name.c @@ -15,8 +15,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * http://www.isc.org/ */ diff --git a/common/options.c b/common/options.c index a7ed84c6..cbce4e24 100644 --- a/common/options.c +++ b/common/options.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/packet.c b/common/packet.c index f3f62c19..726d51e5 100644 --- a/common/packet.c +++ b/common/packet.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/parse.c b/common/parse.c index 386a6321..1daedc0b 100644 --- a/common/parse.c +++ b/common/parse.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/print.c b/common/print.c index b42e7bc5..470b6495 100644 --- a/common/print.c +++ b/common/print.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/raw.c b/common/raw.c index 5c88b25e..a7496916 100644 --- a/common/raw.c +++ b/common/raw.c @@ -32,8 +32,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/resolv.c b/common/resolv.c index a01f520c..7174fc8e 100644 --- a/common/resolv.c +++ b/common/resolv.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/socket.c b/common/socket.c index 31c99b3f..5772c13e 100644 --- a/common/socket.c +++ b/common/socket.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/tables.c b/common/tables.c index 0d735004..28f34111 100644 --- a/common/tables.c +++ b/common/tables.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/tr.c b/common/tr.c index d5d25f0a..34183654 100644 --- a/common/tr.c +++ b/common/tr.c @@ -20,8 +20,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ */ diff --git a/common/tree.c b/common/tree.c index ea787543..b9d5d76d 100644 --- a/common/tree.c +++ b/common/tree.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/common/upf.c b/common/upf.c index 9785879a..b1a38e15 100644 --- a/common/upf.c +++ b/common/upf.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/dhcpctl/callback.c b/dhcpctl/callback.c index 95096edf..46428fee 100644 --- a/dhcpctl/callback.c +++ b/dhcpctl/callback.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/dhcpctl/cltest.c b/dhcpctl/cltest.c index 4e2544b1..0e180dde 100644 --- a/dhcpctl/cltest.c +++ b/dhcpctl/cltest.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/dhcpctl/dhcpctl.3 b/dhcpctl/dhcpctl.3 index ee2e583a..98d8294a 100644 --- a/dhcpctl/dhcpctl.3 +++ b/dhcpctl/dhcpctl.3 @@ -22,8 +22,8 @@ .\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Internet Systems Consortium, Inc. -.\" 950 Charter Street -.\" Redwood City, CA 94063 +.\" PO Box 360 +.\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ .\" diff --git a/dhcpctl/dhcpctl.c b/dhcpctl/dhcpctl.c index f394fc5d..0f800216 100644 --- a/dhcpctl/dhcpctl.c +++ b/dhcpctl/dhcpctl.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/dhcpctl/dhcpctl.h b/dhcpctl/dhcpctl.h index 0512bd4c..94ab6129 100644 --- a/dhcpctl/dhcpctl.h +++ b/dhcpctl/dhcpctl.h @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/dhcpctl/omshell.1 b/dhcpctl/omshell.1 index 2f55e965..02fb3874 100644 --- a/dhcpctl/omshell.1 +++ b/dhcpctl/omshell.1 @@ -16,8 +16,8 @@ .\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Internet Systems Consortium, Inc. -.\" 950 Charter Street -.\" Redwood City, CA 94063 +.\" PO Box 360 +.\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ .\" diff --git a/dhcpctl/omshell.c b/dhcpctl/omshell.c index d7a05cc4..31fa9367 100644 --- a/dhcpctl/omshell.c +++ b/dhcpctl/omshell.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/dhcpctl/remote.c b/dhcpctl/remote.c index 31964c79..a35e5ce1 100644 --- a/dhcpctl/remote.c +++ b/dhcpctl/remote.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/doc/References.txt b/doc/References.txt index abf67da5..096f2a2a 100644 --- a/doc/References.txt +++ b/doc/References.txt @@ -1102,8 +1102,8 @@ Authors' Addresses David W. Hankins Internet Systems Consortium, Inc. - 950 Charter Street - Redwood City, CA 94063 + PO Box 360 + Newmarket, NH 03857 USA @@ -1122,11 +1122,8 @@ Hankins & Mrugalski [Page 20] Tomasz Mrugalski Internet Systems Consortium, Inc. - 950 Charter Street - Redwood City, CA 94063 - - Phone: +1 650 423 1345 - Email: Tomasz_Mrugalski@isc.org + PO Box 360 + Newmarket, NH 03857 USA diff --git a/doc/References.xml b/doc/References.xml index f998d7dd..efdc2092 100644 --- a/doc/References.xml +++ b/doc/References.xml @@ -109,10 +109,11 @@
- 950 Charter Street - Redwood City - CA - 94063 + PO Box 360 + Newmarket + NH + 03857 + USA
@@ -124,14 +125,12 @@
- 950 Charter Street - Redwood City - CA - 94063 + PO Box 360 + Newmarket + NH + 03857 + USA - - +1 650 423 1345 - Tomasz_Mrugalski@isc.org
diff --git a/includes/arpa/nameser.h b/includes/arpa/nameser.h index d0f64b82..69ed5c92 100644 --- a/includes/arpa/nameser.h +++ b/includes/arpa/nameser.h @@ -44,8 +44,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ */ diff --git a/includes/cdefs.h b/includes/cdefs.h index af8a2b0b..59f16a5a 100644 --- a/includes/cdefs.h +++ b/includes/cdefs.h @@ -20,8 +20,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/includes/ctrace.h b/includes/ctrace.h index 4fc6a65c..d21bd2e2 100644 --- a/includes/ctrace.h +++ b/includes/ctrace.h @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/includes/dhcp.h b/includes/dhcp.h index 84316924..ae621c15 100644 --- a/includes/dhcp.h +++ b/includes/dhcp.h @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/includes/dhcp6.h b/includes/dhcp6.h index c78501c6..3a8e555e 100644 --- a/includes/dhcp6.h +++ b/includes/dhcp6.h @@ -18,8 +18,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ */ diff --git a/includes/dhcpd.h b/includes/dhcpd.h index f9217ea8..372062d3 100644 --- a/includes/dhcpd.h +++ b/includes/dhcpd.h @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/includes/dhctoken.h b/includes/dhctoken.h index 5920f4ff..6bf50e88 100644 --- a/includes/dhctoken.h +++ b/includes/dhctoken.h @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/includes/failover.h b/includes/failover.h index 135b969f..3f35f480 100644 --- a/includes/failover.h +++ b/includes/failover.h @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/includes/inet.h b/includes/inet.h index c36b36f8..b68d94d0 100644 --- a/includes/inet.h +++ b/includes/inet.h @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/includes/ldap_casa.h b/includes/ldap_casa.h index f17690f7..d0a86a50 100644 --- a/includes/ldap_casa.h +++ b/includes/ldap_casa.h @@ -48,8 +48,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ */ diff --git a/includes/netinet/udp.h b/includes/netinet/udp.h index d86cf447..01e46102 100644 --- a/includes/netinet/udp.h +++ b/includes/netinet/udp.h @@ -48,8 +48,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ */ diff --git a/includes/ns_name.h b/includes/ns_name.h index a2c42769..03e54ee5 100644 --- a/includes/ns_name.h +++ b/includes/ns_name.h @@ -15,8 +15,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * http://www.isc.org/ */ diff --git a/includes/omapip/alloc.h b/includes/omapip/alloc.h index 62d0d331..0c8fb924 100644 --- a/includes/omapip/alloc.h +++ b/includes/omapip/alloc.h @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/includes/omapip/buffer.h b/includes/omapip/buffer.h index 33eb2f0e..693432f0 100644 --- a/includes/omapip/buffer.h +++ b/includes/omapip/buffer.h @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/includes/omapip/convert.h b/includes/omapip/convert.h index bbcf85f0..f466d35f 100644 --- a/includes/omapip/convert.h +++ b/includes/omapip/convert.h @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/includes/omapip/hash.h b/includes/omapip/hash.h index 4bf91df8..b9f14f97 100644 --- a/includes/omapip/hash.h +++ b/includes/omapip/hash.h @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/includes/omapip/isclib.h b/includes/omapip/isclib.h index b8f7c397..22ddcb3c 100644 --- a/includes/omapip/isclib.h +++ b/includes/omapip/isclib.h @@ -18,8 +18,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * http://www.isc.org/ * diff --git a/includes/omapip/omapip.h b/includes/omapip/omapip.h index f8db15c1..0b7bd04e 100644 --- a/includes/omapip/omapip.h +++ b/includes/omapip/omapip.h @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/includes/omapip/omapip_p.h b/includes/omapip/omapip_p.h index 8913a1a2..fbbd1182 100644 --- a/includes/omapip/omapip_p.h +++ b/includes/omapip/omapip_p.h @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/includes/omapip/result.h b/includes/omapip/result.h index 860298f6..b38c748f 100644 --- a/includes/omapip/result.h +++ b/includes/omapip/result.h @@ -17,8 +17,8 @@ * PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ */ diff --git a/includes/omapip/trace.h b/includes/omapip/trace.h index cda04bc5..e0493c5e 100644 --- a/includes/omapip/trace.h +++ b/includes/omapip/trace.h @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/includes/osdep.h b/includes/osdep.h index 3ee70bc0..d676bb91 100644 --- a/includes/osdep.h +++ b/includes/osdep.h @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/includes/statement.h b/includes/statement.h index 178ebb11..18d44599 100644 --- a/includes/statement.h +++ b/includes/statement.h @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/includes/tree.h b/includes/tree.h index c8cce4b2..47e9b2e0 100644 --- a/includes/tree.h +++ b/includes/tree.h @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/keama/conflex.c b/keama/conflex.c index 143487b0..09f147f8 100644 --- a/keama/conflex.c +++ b/keama/conflex.c @@ -14,8 +14,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/keama/confparse.c b/keama/confparse.c index 2c1865ab..95d4ebea 100644 --- a/keama/confparse.c +++ b/keama/confparse.c @@ -14,8 +14,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/keama/data.c b/keama/data.c index bd656289..3aef5507 100644 --- a/keama/data.c +++ b/keama/data.c @@ -14,8 +14,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * http://www.isc.org/ */ diff --git a/keama/data.h b/keama/data.h index b8078cc3..6b0294e8 100644 --- a/keama/data.h +++ b/keama/data.h @@ -14,8 +14,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * http://www.isc.org/ */ diff --git a/keama/dhctoken.h b/keama/dhctoken.h index ac24463a..6d96829a 100644 --- a/keama/dhctoken.h +++ b/keama/dhctoken.h @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/keama/eval.c b/keama/eval.c index 8e2dbdb5..bd738933 100644 --- a/keama/eval.c +++ b/keama/eval.c @@ -14,8 +14,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/keama/json.c b/keama/json.c index 0b2667a2..ff596e80 100644 --- a/keama/json.c +++ b/keama/json.c @@ -14,8 +14,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/keama/keama.8 b/keama/keama.8 index 8e4cc2c7..7069ffc5 100644 --- a/keama/keama.8 +++ b/keama/keama.8 @@ -15,8 +15,8 @@ .\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Internet Systems Consortium, Inc. -.\" 950 Charter Street -.\" Redwood City, CA 94063 +.\" PO Box 360 +.\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ .\" diff --git a/keama/keama.c b/keama/keama.c index d6573dbc..1df3c551 100644 --- a/keama/keama.c +++ b/keama/keama.c @@ -14,8 +14,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/keama/keama.h b/keama/keama.h index e09f4575..54f887fe 100644 --- a/keama/keama.h +++ b/keama/keama.h @@ -14,8 +14,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/keama/options.c b/keama/options.c index 7d1e66ea..ec8c47ce 100644 --- a/keama/options.c +++ b/keama/options.c @@ -14,8 +14,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/keama/parse.c b/keama/parse.c index e60fe95a..3297e80e 100644 --- a/keama/parse.c +++ b/keama/parse.c @@ -14,8 +14,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/keama/print.c b/keama/print.c index be85bd4d..41fbd293 100644 --- a/keama/print.c +++ b/keama/print.c @@ -14,8 +14,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/keama/reduce.c b/keama/reduce.c index 24939473..e85a1a23 100644 --- a/keama/reduce.c +++ b/keama/reduce.c @@ -14,8 +14,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/omapip/alloc.c b/omapip/alloc.c index 90bd9040..e68aa605 100644 --- a/omapip/alloc.c +++ b/omapip/alloc.c @@ -20,8 +20,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/omapip/array.c b/omapip/array.c index 37ac6f8d..83d7cf30 100644 --- a/omapip/array.c +++ b/omapip/array.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/omapip/auth.c b/omapip/auth.c index 23f5f0a8..894f93e8 100644 --- a/omapip/auth.c +++ b/omapip/auth.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/omapip/buffer.c b/omapip/buffer.c index a21f0a80..041be497 100644 --- a/omapip/buffer.c +++ b/omapip/buffer.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/omapip/connection.c b/omapip/connection.c index 014ff21b..000f6d57 100644 --- a/omapip/connection.c +++ b/omapip/connection.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/omapip/convert.c b/omapip/convert.c index 900d3df2..08dcc1d1 100644 --- a/omapip/convert.c +++ b/omapip/convert.c @@ -20,8 +20,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/omapip/dispatch.c b/omapip/dispatch.c index ba99889c..0fd8ed34 100644 --- a/omapip/dispatch.c +++ b/omapip/dispatch.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/omapip/errwarn.c b/omapip/errwarn.c index 6317fe4c..f9737c5d 100644 --- a/omapip/errwarn.c +++ b/omapip/errwarn.c @@ -20,8 +20,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/omapip/generic.c b/omapip/generic.c index b14b7cbe..af95d57a 100644 --- a/omapip/generic.c +++ b/omapip/generic.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/omapip/handle.c b/omapip/handle.c index 1534f6cd..aa368522 100644 --- a/omapip/handle.c +++ b/omapip/handle.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/omapip/hash.c b/omapip/hash.c index e30ad881..9ca0a013 100644 --- a/omapip/hash.c +++ b/omapip/hash.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/omapip/isclib.c b/omapip/isclib.c index 4aca9130..f014bd8e 100644 --- a/omapip/isclib.c +++ b/omapip/isclib.c @@ -14,8 +14,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * http://www.isc.org/ * diff --git a/omapip/listener.c b/omapip/listener.c index 20ec6f34..828970ce 100644 --- a/omapip/listener.c +++ b/omapip/listener.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/omapip/message.c b/omapip/message.c index 37abbd25..254061a0 100644 --- a/omapip/message.c +++ b/omapip/message.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/omapip/omapi.3 b/omapip/omapi.3 index 8fa81052..d5de2a61 100644 --- a/omapip/omapi.3 +++ b/omapip/omapi.3 @@ -17,8 +17,8 @@ .\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Internet Systems Consortium, Inc. -.\" 950 Charter Street -.\" Redwood City, CA 94063 +.\" PO Box 360 +.\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ .\" diff --git a/omapip/protocol.c b/omapip/protocol.c index 3a2fa546..ea93d0f1 100644 --- a/omapip/protocol.c +++ b/omapip/protocol.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/omapip/result.c b/omapip/result.c index 424a5be8..c6e467bc 100644 --- a/omapip/result.c +++ b/omapip/result.c @@ -18,8 +18,8 @@ * PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/omapip/support.c b/omapip/support.c index a6b842ed..6ad625a3 100644 --- a/omapip/support.c +++ b/omapip/support.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/omapip/test.c b/omapip/test.c index c7e48eb3..8497ebc9 100644 --- a/omapip/test.c +++ b/omapip/test.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/omapip/toisc.c b/omapip/toisc.c index 2a828c27..fb91e549 100644 --- a/omapip/toisc.c +++ b/omapip/toisc.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/omapip/trace.c b/omapip/trace.c index 45bd508c..4fa6397c 100644 --- a/omapip/trace.c +++ b/omapip/trace.c @@ -21,8 +21,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/relay/dhcrelay.8 b/relay/dhcrelay.8 index 53cd28bf..d795030d 100644 --- a/relay/dhcrelay.8 +++ b/relay/dhcrelay.8 @@ -16,8 +16,8 @@ .\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Internet Systems Consortium, Inc. -.\" 950 Charter Street -.\" Redwood City, CA 94063 +.\" PO Box 360 +.\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ .\" diff --git a/relay/dhcrelay.c b/relay/dhcrelay.c index 72b2b1f9..382d062d 100644 --- a/relay/dhcrelay.c +++ b/relay/dhcrelay.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/relay/tests/relay_unittests.c b/relay/tests/relay_unittests.c index b308393f..c1e52830 100644 --- a/relay/tests/relay_unittests.c +++ b/relay/tests/relay_unittests.c @@ -14,8 +14,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/server/Makefile.dist b/server/Makefile.dist index 3fbf9515..b25dc5db 100644 --- a/server/Makefile.dist +++ b/server/Makefile.dist @@ -16,8 +16,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ # diff --git a/server/bootp.c b/server/bootp.c index 26a76073..cf7b75cd 100644 --- a/server/bootp.c +++ b/server/bootp.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/server/class.c b/server/class.c index dc7737f2..fce7822c 100644 --- a/server/class.c +++ b/server/class.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/server/confpars.c b/server/confpars.c index e2216685..02f0d986 100644 --- a/server/confpars.c +++ b/server/confpars.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/server/db.c b/server/db.c index 67e6cc19..b1614ed0 100644 --- a/server/db.c +++ b/server/db.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/server/ddns.c b/server/ddns.c index aecc3d38..eec3d26c 100644 --- a/server/ddns.c +++ b/server/ddns.c @@ -20,8 +20,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/server/dhcp.c b/server/dhcp.c index 16a4f924..8852e9e3 100644 --- a/server/dhcp.c +++ b/server/dhcp.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/server/dhcpd.8 b/server/dhcpd.8 index 0d0901c3..a5f4445f 100644 --- a/server/dhcpd.8 +++ b/server/dhcpd.8 @@ -16,8 +16,8 @@ .\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Internet Systems Consortium, Inc. -.\" 950 Charter Street -.\" Redwood City, CA 94063 +.\" PO Box 360 +.\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ .\" diff --git a/server/dhcpd.c b/server/dhcpd.c index 7b25d70d..7c1f68fa 100644 --- a/server/dhcpd.c +++ b/server/dhcpd.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/server/dhcpd.conf.5 b/server/dhcpd.conf.5 index 9cc6b74c..0c05096d 100644 --- a/server/dhcpd.conf.5 +++ b/server/dhcpd.conf.5 @@ -16,8 +16,8 @@ .\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Internet Systems Consortium, Inc. -.\" 950 Charter Street -.\" Redwood City, CA 94063 +.\" PO Box 360 +.\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ .\" diff --git a/server/dhcpd.leases.5 b/server/dhcpd.leases.5 index 50a88402..a8f64ff4 100644 --- a/server/dhcpd.leases.5 +++ b/server/dhcpd.leases.5 @@ -16,8 +16,8 @@ .\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Internet Systems Consortium, Inc. -.\" 950 Charter Street -.\" Redwood City, CA 94063 +.\" PO Box 360 +.\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ .\" diff --git a/server/failover.c b/server/failover.c index 0e3381a2..bbe1ff4c 100644 --- a/server/failover.c +++ b/server/failover.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/server/ldap_casa.c b/server/ldap_casa.c index cd101570..9329450f 100644 --- a/server/ldap_casa.c +++ b/server/ldap_casa.c @@ -48,8 +48,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ */ diff --git a/server/leasechain.c b/server/leasechain.c index 42a3fc6c..12f88597 100644 --- a/server/leasechain.c +++ b/server/leasechain.c @@ -18,8 +18,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/server/mdb.c b/server/mdb.c index 8266d764..b982cc16 100644 --- a/server/mdb.c +++ b/server/mdb.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/server/omapi.c b/server/omapi.c index f7411317..50804e26 100644 --- a/server/omapi.c +++ b/server/omapi.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/server/salloc.c b/server/salloc.c index cd7887a1..791172e9 100644 --- a/server/salloc.c +++ b/server/salloc.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/server/stables.c b/server/stables.c index 43408c55..5242a656 100644 --- a/server/stables.c +++ b/server/stables.c @@ -19,8 +19,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/server/tests/hash_unittest.c b/server/tests/hash_unittest.c index 3cb45754..757ef2af 100644 --- a/server/tests/hash_unittest.c +++ b/server/tests/hash_unittest.c @@ -14,8 +14,8 @@ * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * * Internet Systems Consortium, Inc. - * 950 Charter Street - * Redwood City, CA 94063 + * PO Box 360 + * Newmarket, NH 03857 USA * * https://www.isc.org/ * diff --git a/tests/DHCPv6/000-badmsgtype.pl b/tests/DHCPv6/000-badmsgtype.pl index d0c35ee4..149168a9 100644 --- a/tests/DHCPv6/000-badmsgtype.pl +++ b/tests/DHCPv6/000-badmsgtype.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/010-solicit-noclientid.pl b/tests/DHCPv6/010-solicit-noclientid.pl index 6bb5d6ee..faab1569 100644 --- a/tests/DHCPv6/010-solicit-noclientid.pl +++ b/tests/DHCPv6/010-solicit-noclientid.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/011-solicit-serverid.pl b/tests/DHCPv6/011-solicit-serverid.pl index cee4ddb3..2f7affdb 100644 --- a/tests/DHCPv6/011-solicit-serverid.pl +++ b/tests/DHCPv6/011-solicit-serverid.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/020-advertise-mcast.pl b/tests/DHCPv6/020-advertise-mcast.pl index c5c4ade7..d575eb94 100644 --- a/tests/DHCPv6/020-advertise-mcast.pl +++ b/tests/DHCPv6/020-advertise-mcast.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/030-request-noclientid.pl b/tests/DHCPv6/030-request-noclientid.pl index d5af0770..75066d5d 100644 --- a/tests/DHCPv6/030-request-noclientid.pl +++ b/tests/DHCPv6/030-request-noclientid.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/031-request-noserverid.pl b/tests/DHCPv6/031-request-noserverid.pl index 1f730388..4e12b1b8 100644 --- a/tests/DHCPv6/031-request-noserverid.pl +++ b/tests/DHCPv6/031-request-noserverid.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/032-request-badduid.pl b/tests/DHCPv6/032-request-badduid.pl index 30e5040a..e086b1d0 100644 --- a/tests/DHCPv6/032-request-badduid.pl +++ b/tests/DHCPv6/032-request-badduid.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/110-information-request-ia_na.pl b/tests/DHCPv6/110-information-request-ia_na.pl index 5dc68898..ca0aaae7 100644 --- a/tests/DHCPv6/110-information-request-ia_na.pl +++ b/tests/DHCPv6/110-information-request-ia_na.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/111-information-request-ia_ta.pl b/tests/DHCPv6/111-information-request-ia_ta.pl index dc3cf1c2..2b662f9d 100644 --- a/tests/DHCPv6/111-information-request-ia_ta.pl +++ b/tests/DHCPv6/111-information-request-ia_ta.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/112-badduid.pl b/tests/DHCPv6/112-badduid.pl index 3be9261e..f741b39c 100644 --- a/tests/DHCPv6/112-badduid.pl +++ b/tests/DHCPv6/112-badduid.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/210-solicit-nohost.pl b/tests/DHCPv6/210-solicit-nohost.pl index be9538cd..3e02fa73 100644 --- a/tests/DHCPv6/210-solicit-nohost.pl +++ b/tests/DHCPv6/210-solicit-nohost.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/211-solicit-opt-in-na.pl b/tests/DHCPv6/211-solicit-opt-in-na.pl index 33f69512..881285e7 100644 --- a/tests/DHCPv6/211-solicit-opt-in-na.pl +++ b/tests/DHCPv6/211-solicit-opt-in-na.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/212-solicit-opt-in-na-norapidcommit.pl b/tests/DHCPv6/212-solicit-opt-in-na-norapidcommit.pl index a8d81490..12c26f04 100644 --- a/tests/DHCPv6/212-solicit-opt-in-na-norapidcommit.pl +++ b/tests/DHCPv6/212-solicit-opt-in-na-norapidcommit.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/280-release-nohost.pl b/tests/DHCPv6/280-release-nohost.pl index 9758cd83..c17ff0c2 100644 --- a/tests/DHCPv6/280-release-nohost.pl +++ b/tests/DHCPv6/280-release-nohost.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/281-release-bad-address.pl b/tests/DHCPv6/281-release-bad-address.pl index d130812e..194dfa23 100644 --- a/tests/DHCPv6/281-release-bad-address.pl +++ b/tests/DHCPv6/281-release-bad-address.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/282-release-no-address.pl b/tests/DHCPv6/282-release-no-address.pl index b3d0af5c..48ed021e 100644 --- a/tests/DHCPv6/282-release-no-address.pl +++ b/tests/DHCPv6/282-release-no-address.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/283-release.pl b/tests/DHCPv6/283-release.pl index a1baae49..289bb762 100644 --- a/tests/DHCPv6/283-release.pl +++ b/tests/DHCPv6/283-release.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/290-decline-nohost.pl b/tests/DHCPv6/290-decline-nohost.pl index 02a25e31..d235b933 100644 --- a/tests/DHCPv6/290-decline-nohost.pl +++ b/tests/DHCPv6/290-decline-nohost.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/291-decline-bad-address.pl b/tests/DHCPv6/291-decline-bad-address.pl index d9f0e1e1..60ea01b7 100644 --- a/tests/DHCPv6/291-decline-bad-address.pl +++ b/tests/DHCPv6/291-decline-bad-address.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/292-decline-no-address.pl b/tests/DHCPv6/292-decline-no-address.pl index 84c970f5..1a13904c 100644 --- a/tests/DHCPv6/292-decline-no-address.pl +++ b/tests/DHCPv6/292-decline-no-address.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/293-decline.pl b/tests/DHCPv6/293-decline.pl index 960195ab..24d05bc0 100644 --- a/tests/DHCPv6/293-decline.pl +++ b/tests/DHCPv6/293-decline.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/dhcp_client.pm b/tests/DHCPv6/dhcp_client.pm index 5caa3776..a2720e85 100644 --- a/tests/DHCPv6/dhcp_client.pm +++ b/tests/DHCPv6/dhcp_client.pm @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/stubcli-opt-in-na.pl b/tests/DHCPv6/stubcli-opt-in-na.pl index d68ba09e..918fa562 100644 --- a/tests/DHCPv6/stubcli-opt-in-na.pl +++ b/tests/DHCPv6/stubcli-opt-in-na.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ diff --git a/tests/DHCPv6/stubcli.pl b/tests/DHCPv6/stubcli.pl index be9538cd..3e02fa73 100644 --- a/tests/DHCPv6/stubcli.pl +++ b/tests/DHCPv6/stubcli.pl @@ -15,8 +15,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ -- cgit v1.2.1 From f6b8f48d1665c4487dedbcfa4dca435a0d67ddeb Mon Sep 17 00:00:00 2001 From: Tomek Mrugalski Date: Wed, 19 Jan 2022 20:14:16 +0100 Subject: [#189] Whitespace fixes in opened files --- client/clparse.c | 22 +- client/dhclient-script.8 | 2 +- client/dhclient.c | 2 +- client/dhclient.conf.5 | 10 +- common/bpf.c | 6 +- common/comapi.c | 15 +- common/conflex.c | 71 +- common/ctrace.c | 10 +- common/dhcp-eval.5 | 6 +- common/dhcp-options.5 | 2 +- common/discover.c | 86 +- common/dispatch.c | 6 +- common/dlpi.c | 166 +-- common/execute.c | 12 +- common/fddi.c | 2 +- common/icmp.c | 2 +- common/inet.c | 58 +- common/lpf.c | 4 +- common/ns_name.c | 4 +- common/options.c | 2 +- common/packet.c | 12 +- common/parse.c | 114 +- common/resolv.c | 2 +- common/socket.c | 98 +- common/tables.c | 2 +- common/tr.c | 8 +- common/tree.c | 68 +- common/upf.c | 2 +- dhcpctl/callback.c | 5 +- dhcpctl/cltest.c | 2 +- dhcpctl/dhcpctl.3 | 51 +- dhcpctl/dhcpctl.c | 6 +- dhcpctl/dhcpctl.h | 4 +- dhcpctl/omshell.1 | 1 - dhcpctl/omshell.c | 70 +- dhcpctl/remote.c | 5 +- doc/References.html | 18 +- doc/References.xml | 4 +- doc/ja_JP.eucJP/dhclient-script.8 | 350 ++--- doc/ja_JP.eucJP/dhclient.8 | 432 +++--- doc/ja_JP.eucJP/dhclient.conf.5 | 708 +++++----- doc/ja_JP.eucJP/dhclient.leases.5 | 46 +- doc/ja_JP.eucJP/dhcp-eval.5 | 528 ++++---- doc/ja_JP.eucJP/dhcp-options.5 | 1392 ++++++++++---------- includes/arpa/nameser.h | 4 +- includes/cdefs.h | 2 +- includes/ctrace.h | 2 +- includes/dhcp.h | 1 - includes/dhcpd.h | 1 - includes/inet.h | 3 +- includes/ldap_casa.h | 43 +- includes/omapip/buffer.h | 3 +- includes/omapip/omapip.h | 22 +- includes/omapip/omapip_p.h | 2 +- includes/omapip/result.h | 60 +- includes/omapip/trace.h | 2 +- includes/statement.h | 1 - includes/tree.h | 6 +- keama/conflex.c | 67 +- keama/confparse.c | 56 +- keama/data.c | 10 +- keama/eval.c | 16 +- keama/keama.c | 8 +- keama/keama.h | 2 +- keama/options.c | 2 +- keama/parse.c | 76 +- keama/print.c | 8 +- keama/reduce.c | 4 +- omapip/alloc.c | 33 +- omapip/array.c | 3 +- omapip/auth.c | 4 +- omapip/buffer.c | 19 +- omapip/connection.c | 28 +- omapip/dispatch.c | 70 +- omapip/generic.c | 14 +- omapip/handle.c | 10 +- omapip/hash.c | 8 +- omapip/isclib.c | 6 +- omapip/listener.c | 15 +- omapip/message.c | 16 +- omapip/omapi.3 | 11 +- omapip/protocol.c | 26 +- omapip/result.c | 2 +- omapip/support.c | 8 +- omapip/trace.c | 18 +- relay/dhcrelay.8 | 4 +- server/bootp.c | 4 +- server/confpars.c | 207 ++- server/dhcpd.8 | 20 +- server/failover.c | 2 +- server/ldap_casa.c | 43 +- server/leasechain.c | 34 +- server/omapi.c | 4 +- server/stables.c | 2 +- server/tests/hash_unittest.c | 2 +- tests/DHCPv6/000-badmsgtype.pl | 19 +- tests/DHCPv6/010-solicit-noclientid.pl | 21 +- tests/DHCPv6/011-solicit-serverid.pl | 21 +- tests/DHCPv6/020-advertise-mcast.pl | 19 +- tests/DHCPv6/030-request-noclientid.pl | 21 +- tests/DHCPv6/031-request-noserverid.pl | 21 +- tests/DHCPv6/032-request-badduid.pl | 21 +- tests/DHCPv6/110-information-request-ia_na.pl | 21 +- tests/DHCPv6/111-information-request-ia_ta.pl | 21 +- tests/DHCPv6/112-badduid.pl | 21 +- tests/DHCPv6/210-solicit-nohost.pl | 21 +- tests/DHCPv6/211-solicit-opt-in-na.pl | 21 +- .../DHCPv6/212-solicit-opt-in-na-norapidcommit.pl | 21 +- tests/DHCPv6/280-release-nohost.pl | 19 +- tests/DHCPv6/281-release-bad-address.pl | 19 +- tests/DHCPv6/282-release-no-address.pl | 19 +- tests/DHCPv6/283-release.pl | 19 +- tests/DHCPv6/290-decline-nohost.pl | 19 +- tests/DHCPv6/291-decline-bad-address.pl | 19 +- tests/DHCPv6/292-decline-no-address.pl | 19 +- tests/DHCPv6/293-decline.pl | 19 +- tests/DHCPv6/dhcp_client.pm | 29 +- tests/DHCPv6/stubcli-opt-in-na.pl | 21 +- tests/DHCPv6/stubcli.pl | 21 +- 119 files changed, 2939 insertions(+), 2983 deletions(-) diff --git a/client/clparse.c b/client/clparse.c index 2f0909b8..2ba0761a 100644 --- a/client/clparse.c +++ b/client/clparse.c @@ -62,7 +62,7 @@ isc_result_t read_client_conf () isc_result_t status; unsigned code; - /* + /* * TODO: LATER constant is very undescriptive. We should review it and * change it to something more descriptive or even better remove it * completely as it is currently not used. @@ -162,7 +162,7 @@ isc_result_t read_client_conf () } } #endif - + /* Initialize the top level client configuration. */ memset (&top_level_config, 0, sizeof top_level_config); @@ -317,7 +317,7 @@ void read_client_duid () /* * All we care about is DUIDs - if we get anything else * just toss it and continue looking for DUIDs until we - * run out of file. + * run out of file. */ if (token == DEFAULT_DUID) { parse_client_default_duid(cfile); @@ -377,7 +377,7 @@ void read_client_leases () end_parse (&cfile); } -/* client-declaration :== +/* client-declaration :== SEND option-decl | DEFAULT option-decl | SUPERSEDE option-decl | @@ -430,7 +430,7 @@ void parse_client_statement (cfile, ip, config) parse_semi (cfile); } return; - + case KEY: skip_token(&val, (unsigned *)0, cfile); if (ip) { @@ -577,7 +577,7 @@ void parse_client_statement (cfile, ip, config) parse_warn (cfile, "expecting a policy type."); skip_to_semi (cfile); return; - } + } break; case OPTION: @@ -705,7 +705,7 @@ void parse_client_statement (cfile, ip, config) config -> omapi_port = tmp; parse_semi (cfile); return; - + case DO_FORWARD_UPDATE: skip_token(&val, (unsigned *)0, cfile); token = next_token (&val, (unsigned *)0, cfile); @@ -799,7 +799,7 @@ void parse_client_statement (cfile, ip, config) strcpy (name, val); parse_interface_declaration (cfile, config, name); return; - + case LEASE: skip_token(&val, (unsigned *)0, cfile); parse_client_lease_statement (cfile, 1); @@ -1170,7 +1170,7 @@ void parse_client_lease_statement (cfile, is_static) client -> leases = lease; return; } - + /* The last lease in the lease file on a particular interface is the active lease for that interface. Of course, we don't know what the last lease in the file is until we've parsed the whole @@ -2270,7 +2270,7 @@ void parse_reject_statement (cfile, config) "for reject statement"); skip_to_semi(cfile); return; - } + } list = dmalloc(sizeof(struct iaddrmatchlist), MDL); if (!list) @@ -2287,7 +2287,7 @@ void parse_reject_statement (cfile, config) parse_warn (cfile, "expecting semicolon."); skip_to_semi (cfile); } -} +} /* allow-deny-keyword :== BOOTP | BOOTING diff --git a/client/dhclient-script.8 b/client/dhclient-script.8 index 4d6e7fdb..ee1a5060 100644 --- a/client/dhclient-script.8 +++ b/client/dhclient-script.8 @@ -129,7 +129,7 @@ option name as above but prepended with requested_ and with a value of 1, for example requested_subnet_mask=1. No such variable is defined for options not requested by the client or options that don't require a request option, such as the ip address (*_ip_address) or expiration -time (*_expiry). +time (*_expiry). .PP Before actually configuring the address, dhclient-script should somehow ARP for it and exit with a nonzero status if it receives a diff --git a/client/dhclient.c b/client/dhclient.c index 249af4f1..7a9b5926 100644 --- a/client/dhclient.c +++ b/client/dhclient.c @@ -1288,7 +1288,7 @@ uint32_t check_v6only(packet, client) if (found == ISC_FALSE) return 0; - + /* Get the V6ONLY_WAIT timer. */ oc = lookup_option(&dhcp_universe, packet->options, DHO_V6_ONLY_PREFERRED); diff --git a/client/dhclient.conf.5 b/client/dhclient.conf.5 index 36b97070..d973d11b 100644 --- a/client/dhclient.conf.5 +++ b/client/dhclient.conf.5 @@ -165,11 +165,11 @@ amount. It defaults to ten seconds. .PP \fBinitial-delay \fItime\fR\fB;\fR .PP -.I initial-delay -parameter sets the maximum time client can wait after start before +.I initial-delay +parameter sets the maximum time client can wait after start before commencing first transmission. According to RFC2131 Section 4.4.1, client should wait a random time between -startup and the actual first transmission. Previous versions of ISC DHCP +startup and the actual first transmission. Previous versions of ISC DHCP client used to wait random time up to 5 seconds, but that was unwanted due to impact on startup time. As such, new versions have the default initial delay set to 0. To restore old behavior, please set initial-delay @@ -350,7 +350,7 @@ statement. .PP If for some option the client should always use a locally-configured value or values rather than whatever is supplied by the server, these -values can be defined in the +values can be defined in the .B supersede statement. .PP @@ -664,7 +664,7 @@ effect that will be addressed in a future release. .PP \fBpseudo "\fIname\fR" "\fIreal-name\fB" { \fIdeclarations ... \fB } .PP -Under some circumstances it can be useful to declare a pseudo-interface +Under some circumstances it can be useful to declare a pseudo-interface and have the DHCP client acquire a configuration for that interface. Each interface that the DHCP client is supporting normally has a DHCP client state machine running on it to acquire and maintain its lease. diff --git a/common/bpf.c b/common/bpf.c index 775f70ae..7e511394 100644 --- a/common/bpf.c +++ b/common/bpf.c @@ -520,7 +520,7 @@ ssize_t receive_packet (interface, buf, len, from, hfrom) physical layer that supports this, but WTH), skip this packet. */ if (offset < 0) { - interface->rbuf_offset = + interface->rbuf_offset = BPF_WORDALIGN(interface->rbuf_offset + hdr.bh_caplen); continue; @@ -535,7 +535,7 @@ ssize_t receive_packet (interface, buf, len, from, hfrom) /* If the IP or UDP checksum was bad, skip the packet... */ if (offset < 0) { - interface->rbuf_offset = + interface->rbuf_offset = BPF_WORDALIGN(interface->rbuf_offset + hdr.bh_caplen); continue; @@ -614,7 +614,7 @@ get_hw_addr(const char *name, struct hardware *hw) { */ sa = NULL; for (p=ifa; (p != NULL) && (sa == NULL); p = p->ifa_next) { - if ((p->ifa_addr->sa_family == AF_LINK) && + if ((p->ifa_addr->sa_family == AF_LINK) && !strcmp(p->ifa_name, name)) { sa = (struct sockaddr_dl *)p->ifa_addr; } diff --git a/common/comapi.c b/common/comapi.c index 33b6b785..050fe110 100644 --- a/common/comapi.c +++ b/common/comapi.c @@ -59,7 +59,7 @@ void dhcp_common_objects_setup () dhcp_control_destroy, dhcp_control_signal_handler, dhcp_control_stuff_values, - dhcp_control_lookup, + dhcp_control_lookup, dhcp_control_create, dhcp_control_remove, 0, 0, 0, sizeof (dhcp_control_object_t), @@ -80,7 +80,7 @@ void dhcp_common_objects_setup () dhcp_group_destroy, dhcp_group_signal_handler, dhcp_group_stuff_values, - dhcp_group_lookup, + dhcp_group_lookup, dhcp_group_create, dhcp_group_remove, 0, 0, 0, sizeof (struct group_object), 0, @@ -96,7 +96,7 @@ void dhcp_common_objects_setup () dhcp_subnet_destroy, dhcp_subnet_signal_handler, dhcp_subnet_stuff_values, - dhcp_subnet_lookup, + dhcp_subnet_lookup, dhcp_subnet_create, dhcp_subnet_remove, 0, 0, 0, sizeof (struct subnet), 0, @@ -113,7 +113,7 @@ void dhcp_common_objects_setup () dhcp_shared_network_destroy, dhcp_shared_network_signal_handler, dhcp_shared_network_stuff_values, - dhcp_shared_network_lookup, + dhcp_shared_network_lookup, dhcp_shared_network_create, dhcp_shared_network_remove, 0, 0, 0, sizeof (struct shared_network), 0, RC_MISC); @@ -136,7 +136,7 @@ isc_result_t dhcp_group_set_value (omapi_object_t *h, return DHCP_R_INVALIDARG; group = (struct group_object *)h; - /* XXX For now, we can only set these values on new group objects. + /* XXX For now, we can only set these values on new group objects. XXX Soon, we need to be able to update group objects. */ if (!omapi_ds_strcmp (name, "name")) { if (group -> name) @@ -193,7 +193,7 @@ isc_result_t dhcp_group_set_value (omapi_object_t *h, if (status == ISC_R_SUCCESS || status == DHCP_R_UNCHANGED) return status; } - + return ISC_R_NOTFOUND; } @@ -461,7 +461,7 @@ isc_result_t dhcp_control_set_value (omapi_object_t *h, if (status == ISC_R_SUCCESS || status == DHCP_R_UNCHANGED) return status; } - + return ISC_R_NOTFOUND; } @@ -904,4 +904,3 @@ isc_result_t dhcp_shared_network_remove (omapi_object_t *lp, { return ISC_R_NOTIMPLEMENTED; } - diff --git a/common/conflex.c b/common/conflex.c index fb9a9df6..7b671560 100644 --- a/common/conflex.c +++ b/common/conflex.c @@ -55,7 +55,7 @@ isc_result_t new_parse (cfile, file, inbuf, buflen, name, eolp) } /* - * We don't need to initialize things to zero here, since + * We don't need to initialize things to zero here, since * dmalloc() returns memory that is set to zero. */ tmp->tlname = name; @@ -112,7 +112,7 @@ isc_result_t end_parse (cfile) if ((*cfile)->saved_state != NULL) { dfree((*cfile)->saved_state, MDL); } - + dfree(*cfile, MDL); *cfile = NULL; return ISC_R_SUCCESS; @@ -201,7 +201,7 @@ static int get_char (cfile) if (!cfile->ugflag) { if (c == EOL) { - if (cfile->cur_line == cfile->line1) { + if (cfile->cur_line == cfile->line1) { cfile->cur_line = cfile->line2; cfile->prev_line = cfile->line1; } else { @@ -220,7 +220,7 @@ static int get_char (cfile) } } else cfile->ugflag = 0; - return c; + return c; } /* @@ -239,11 +239,11 @@ unget_char(struct parse *cfile, int c) { /* * GENERAL NOTE ABOUT TOKENS * - * We normally only want non-whitespace tokens. There are some + * We normally only want non-whitespace tokens. There are some * circumstances where we *do* want to see whitespace (for example * when parsing IPv6 addresses). * - * Generally we use the next_token() function to read tokens. This + * Generally we use the next_token() function to read tokens. This * in turn calls get_next_token, which does *not* return tokens for * whitespace. Rather, it skips these. * @@ -269,7 +269,7 @@ get_raw_token(struct parse *cfile) { p = cfile -> lpos; c = get_char (cfile); - if (!((c == '\n') && cfile->eol_token) && + if (!((c == '\n') && cfile->eol_token) && isascii(c) && isspace(c)) { ttok = read_whitespace(c, cfile); break; @@ -316,12 +316,12 @@ get_raw_token(struct parse *cfile) { * The get_next_token() function consumes the next token and * returns it to the caller. * - * Since the code is almost the same for "normal" and "raw" + * Since the code is almost the same for "normal" and "raw" * input, we pass a flag to alter the way it works. */ -static enum dhcp_token -get_next_token(const char **rval, unsigned *rlen, +static enum dhcp_token +get_next_token(const char **rval, unsigned *rlen, struct parse *cfile, isc_boolean_t raw) { int rv; @@ -343,7 +343,7 @@ get_next_token(const char **rval, unsigned *rlen, cfile->token_line = cfile->cur_line; } } - + if (rval) *rval = cfile -> tval; if (rlen) @@ -358,10 +358,10 @@ get_next_token(const char **rval, unsigned *rlen, /* * Get the next token from cfile and return it. * - * If rval is non-NULL, set the pointer it contains to + * If rval is non-NULL, set the pointer it contains to * the contents of the token. * - * If rlen is non-NULL, set the integer it contains to + * If rlen is non-NULL, set the integer it contains to * the length of the token. */ @@ -386,8 +386,8 @@ next_raw_token(const char **rval, unsigned *rlen, struct parse *cfile) { * The do_peek_token() function checks the next token without * consuming it, and returns it to the caller. * - * Since the code is almost the same for "normal" and "raw" - * input, we pass a flag to alter the way it works. (See the + * Since the code is almost the same for "normal" and "raw" + * input, we pass a flag to alter the way it works. (See the * warning in the GENERAL NOTES ABOUT TOKENS above though.) */ @@ -427,15 +427,15 @@ do_peek_token(const char **rval, unsigned int *rlen, /* - * Get the next token from cfile and return it, leaving it for a + * Get the next token from cfile and return it, leaving it for a * subsequent call to next_token(). * * Note that it WILL consume whitespace tokens. * - * If rval is non-NULL, set the pointer it contains to + * If rval is non-NULL, set the pointer it contains to * the contents of the token. * - * If rlen is non-NULL, set the integer it contains to + * If rlen is non-NULL, set the integer it contains to * the length of the token. */ @@ -492,7 +492,7 @@ read_whitespace(int c, struct parse *cfile) { c = get_char(cfile); if (c == EOF) return END_OF_FILE; - } while (!((c == '\n') && cfile->eol_token) && + } while (!((c == '\n') && cfile->eol_token) && isascii(c) && isspace(c)); /* @@ -956,7 +956,7 @@ intern(char *atom, enum dhcp_token dfv) { } break; case 'e': - if (isascii (atom [1]) && + if (isascii (atom [1]) && tolower((unsigned char)atom[1]) == 'x') { if (!strcasecmp (atom + 2, "tract-int")) return EXTRACT_INT; @@ -1055,15 +1055,15 @@ intern(char *atom, enum dhcp_token dfv) { } break; case 'i': - if (!strcasecmp(atom+1, "a-na")) + if (!strcasecmp(atom+1, "a-na")) return IA_NA; - if (!strcasecmp(atom+1, "a-ta")) + if (!strcasecmp(atom+1, "a-ta")) return IA_TA; - if (!strcasecmp(atom+1, "a-pd")) + if (!strcasecmp(atom+1, "a-pd")) return IA_PD; - if (!strcasecmp(atom+1, "aaddr")) + if (!strcasecmp(atom+1, "aaddr")) return IAADDR; - if (!strcasecmp(atom+1, "aprefix")) + if (!strcasecmp(atom+1, "aprefix")) return IAPREFIX; if (!strcasecmp (atom + 1, "nclude")) return INCLUDE; @@ -1352,11 +1352,11 @@ intern(char *atom, enum dhcp_token dfv) { case 's': if (!strcasecmp(atom + 1, "cript")) return SCRIPT; - if (isascii(atom[1]) && + if (isascii(atom[1]) && tolower((unsigned char)atom[1]) == 'e') { if (!strcasecmp(atom + 2, "arch")) return SEARCH; - if (isascii(atom[2]) && + if (isascii(atom[2]) && tolower((unsigned char)atom[2]) == 'c') { if (!strncasecmp(atom + 3, "ond", 3)) { if (!strcasecmp(atom + 6, "ary")) @@ -1386,7 +1386,7 @@ intern(char *atom, enum dhcp_token dfv) { return TOKEN_SERVER; if (atom[6] == '-') { if (!strcasecmp(atom + 7, - "duid")) + "duid")) return SERVER_DUID; if (!strcasecmp(atom + 7, "name")) @@ -1406,7 +1406,7 @@ intern(char *atom, enum dhcp_token dfv) { return TOKEN_SET; break; } - if (isascii(atom[1]) && + if (isascii(atom[1]) && tolower((unsigned char)atom[1]) == 'h') { if (!strcasecmp(atom + 2, "ared-network")) return SHARED_NETWORK; @@ -1414,7 +1414,7 @@ intern(char *atom, enum dhcp_token dfv) { return SHUTDOWN; break; } - if (isascii(atom[1]) && + if (isascii(atom[1]) && tolower((unsigned char)atom[1]) == 'i') { if (!strcasecmp(atom + 2, "addr")) return SIADDR; @@ -1424,9 +1424,9 @@ intern(char *atom, enum dhcp_token dfv) { return SIZE; break; } - if (isascii(atom[1]) && + if (isascii(atom[1]) && tolower((unsigned char)atom[1]) == 'p') { - if (isascii(atom[2]) && + if (isascii(atom[2]) && tolower((unsigned char)atom[2]) == 'a') { if (!strcasecmp(atom + 3, "ce")) return SPACE; @@ -1438,9 +1438,9 @@ intern(char *atom, enum dhcp_token dfv) { return SPLIT; break; } - if (isascii(atom[1]) && + if (isascii(atom[1]) && tolower((unsigned char)atom[1]) == 't') { - if (isascii(atom[2]) && + if (isascii(atom[2]) && tolower((unsigned char)atom[2]) == 'a') { if(!strncasecmp(atom + 3, "rt", 2)) { if (!strcasecmp(atom + 5, "s")) @@ -1473,7 +1473,7 @@ intern(char *atom, enum dhcp_token dfv) { return SUBSTRING; break; } - if (isascii(atom[1]) && + if (isascii(atom[1]) && tolower((unsigned char)atom[1]) == 'u') { if (!strcasecmp(atom + 2, "ffix")) return SUFFIX; @@ -1567,4 +1567,3 @@ intern(char *atom, enum dhcp_token dfv) { } return dfv; } - diff --git a/common/ctrace.c b/common/ctrace.c index 030c68a9..cdf85c4a 100644 --- a/common/ctrace.c +++ b/common/ctrace.c @@ -44,7 +44,7 @@ void trace_interface_register (trace_type_t *ttype, struct interface_info *ip) tipkt.index = htonl (ip -> index); trace_write_packet (ttype, sizeof tipkt, (char *)&tipkt, MDL); - } + } } void trace_interface_input (trace_type_t *ttype, unsigned len, char *buf) @@ -61,7 +61,7 @@ void trace_interface_input (trace_type_t *ttype, unsigned len, char *buf) return; } tipkt = (trace_interface_packet_t *)buf; - + ip = (struct interface_info *)0; status = interface_allocate (&ip, MDL); if (status != ISC_R_SUCCESS) { @@ -85,7 +85,7 @@ void trace_interface_input (trace_type_t *ttype, unsigned len, char *buf) ip->address_count = ip->address_max = 1; ip->addresses = dmalloc(sizeof(*ip->addresses), MDL); if (!ip->addresses) { - dfree(ip->ifp, MDL); + dfree(ip->ifp, MDL); ip->ifp = NULL; interface_dereference (&ip, MDL); status = ISC_R_NOMEMORY; @@ -183,7 +183,7 @@ void trace_inpacket_input (trace_type_t *ttype, unsigned len, char *buf) tip = (trace_inpacket_t *)buf; index = ntohl (tip -> index); tip -> from.len = ntohl (tip -> from.len); - + if (index > interface_count || index < 0 || !interface_vector [index]) { @@ -259,7 +259,7 @@ void trace_outpacket_input (trace_type_t *ttype, unsigned len, char *buf) } tip = (trace_outpacket_t *)buf; index = ntohl (tip -> index); - + if (index > interface_count || index < 0 || !interface_vector [index]) { diff --git a/common/dhcp-eval.5 b/common/dhcp-eval.5 index fa3932fb..fb89adf4 100644 --- a/common/dhcp-eval.5 +++ b/common/dhcp-eval.5 @@ -92,7 +92,7 @@ statement are executed, and all subsequent .B elsif and .B else -clauses are skipped. Otherwise, each subsequent +clauses are skipped. Otherwise, each subsequent .B elsif clause's expression is checked, until an elsif clause is encountered whose test evaluates to true. If such a clause is found, the @@ -101,7 +101,7 @@ subsequent .B elsif and .B else -clauses are skipped. If all the +clauses are skipped. If all the .B if and .B elsif @@ -150,7 +150,7 @@ The statement and the .B case statements can both be data expressions or numeric expressions. Within -a switch statement they all must be the same type. The server +a switch statement they all must be the same type. The server evaluates the expression from the switch statement and then it evaluates the expressions from the case statements until it finds a match. .PP diff --git a/common/dhcp-options.5 b/common/dhcp-options.5 index 1c3f3a6b..a70ce1e0 100644 --- a/common/dhcp-options.5 +++ b/common/dhcp-options.5 @@ -848,7 +848,7 @@ information. .B option \fBpxe-system-type\fR \fIuint16\fR [\fB, \fIuint16\fR ... ]\fB;\fR .RS 0.25i .PP -A list of one ore more 16-bit integers which allows a client to specify its +A list of one ore more 16-bit integers which allows a client to specify its pre-boot architecture type(s). .PP This option is included based on RFC 4578. diff --git a/common/discover.c b/common/discover.c index 6288850e..1220b061 100644 --- a/common/discover.c +++ b/common/discover.c @@ -102,7 +102,7 @@ isc_result_t interface_setup () dhcp_interface_destroy, dhcp_interface_signal_handler, dhcp_interface_stuff_values, - dhcp_interface_lookup, + dhcp_interface_lookup, dhcp_interface_create, dhcp_interface_remove, 0, 0, 0, @@ -139,11 +139,11 @@ isc_result_t interface_initialize (omapi_object_t *ipo, } -/* +/* * Scanning for Interfaces * ----------------------- * - * To find interfaces, we create an iterator that abstracts out most + * To find interfaces, we create an iterator that abstracts out most * of the platform specifics. Use is fairly straightforward: * * - begin_iface_scan() starts the process. @@ -213,7 +213,7 @@ isc_result_t interface_initialize (omapi_object_t *ipo, #endif #if defined(SIOCGLIFCONF) && defined(SIOCGLIFFLAGS) -/* +/* * Solaris support * --------------- * @@ -223,7 +223,7 @@ isc_result_t interface_initialize (omapi_object_t *ipo, * Solaris' extended interface is documented in the if_tcp man page. */ -/* +/* * Structure holding state about the scan. */ struct iface_conf_list { @@ -233,7 +233,7 @@ struct iface_conf_list { int next; /* next interface to retrieve when iterating */ }; -/* +/* * Structure used to return information about a specific interface. */ struct iface_info { @@ -242,12 +242,12 @@ struct iface_info { isc_uint64_t flags; /* interface flags, e.g. IFF_LOOPBACK */ }; -/* +/* * Start a scan of interfaces. * * The iface_conf_list structure maintains state for this process. */ -int +int begin_iface_scan(struct iface_conf_list *ifaces) { #ifdef ISC_PLATFORM_HAVELIFNUM struct lifnum lifnum; @@ -308,7 +308,7 @@ begin_iface_scan(struct iface_conf_list *ifaces) { /* * Retrieve the next interface. * - * Returns information in the info structure. + * Returns information in the info structure. * Sets err to 1 if there is an error, otherwise 0. */ int @@ -359,11 +359,11 @@ next_iface(struct iface_info *info, int *err, struct iface_conf_list *ifaces) { foundif = ISC_TRUE; } while ((foundif == ISC_FALSE) || (strncmp(info->name, "dummy", 5) == 0)); - + memset(&tmp, 0, sizeof(tmp)); strncpy(tmp.lifr_name, info->name, sizeof(tmp.lifr_name) - 1); if (ioctl(ifaces->sock, SIOCGLIFFLAGS, &tmp) < 0) { - log_error("Error getting interface flags for '%s'; %m", + log_error("Error getting interface flags for '%s'; %m", p->lifr_name); *err = 1; return 0; @@ -387,11 +387,11 @@ end_iface_scan(struct iface_conf_list *ifaces) { #else -/* +/* * BSD/Linux support * ----------- * - * FreeBSD, NetBSD, OpenBSD, OS X/macOS and Linux all have the getifaddrs() + * FreeBSD, NetBSD, OpenBSD, OS X/macOS and Linux all have the getifaddrs() * function. * * The getifaddrs() man page describes the use. @@ -399,7 +399,7 @@ end_iface_scan(struct iface_conf_list *ifaces) { #include -/* +/* * Structure holding state about the scan. */ struct iface_conf_list { @@ -407,7 +407,7 @@ struct iface_conf_list { struct ifaddrs *next; /* current position in the list */ }; -/* +/* * Structure used to return information about a specific interface. */ struct iface_info { @@ -416,12 +416,12 @@ struct iface_info { isc_uint64_t flags; /* interface flags, e.g. IFF_LOOPBACK */ }; -/* +/* * Start a scan of interfaces. * * The iface_conf_list structure maintains state for this process. */ -int +int begin_iface_scan(struct iface_conf_list *ifaces) { if (getifaddrs(&ifaces->head) != 0) { log_error("Error getting interfaces; %m"); @@ -434,7 +434,7 @@ begin_iface_scan(struct iface_conf_list *ifaces) { /* * Retrieve the next interface. * - * Returns information in the info structure. + * Returns information in the info structure. * Sets err to 1 if there is an error, otherwise 0. */ int @@ -446,7 +446,7 @@ next_iface(struct iface_info *info, int *err, struct iface_conf_list *ifaces) { return 0; } if (strlen(ifaces->next->ifa_name) >= sizeof(info->name)) { - log_error("Interface name '%s' too long", + log_error("Interface name '%s' too long", ifaces->next->ifa_name); *err = 1; return 0; @@ -485,11 +485,11 @@ end_iface_scan(struct iface_conf_list *ifaces) { ifaces->head = NULL; ifaces->next = NULL; } -#endif +#endif /* XXX: perhaps create drealloc() rather than do it manually */ void -add_ipv4_addr_to_interface(struct interface_info *iface, +add_ipv4_addr_to_interface(struct interface_info *iface, const struct in_addr *addr) { /* * We don't expect a lot of addresses per IPv4 interface, so @@ -513,8 +513,8 @@ add_ipv4_addr_to_interface(struct interface_info *iface, log_fatal("Out of memory saving IPv4 address " "on interface."); } - memcpy(tmp, - iface->addresses, + memcpy(tmp, + iface->addresses, iface->address_max * sizeof(struct in_addr)); dfree(iface->addresses, MDL); iface->addresses = tmp; @@ -526,7 +526,7 @@ add_ipv4_addr_to_interface(struct interface_info *iface, #ifdef DHCPv6 /* XXX: perhaps create drealloc() rather than do it manually */ void -add_ipv6_addr_to_interface(struct interface_info *iface, +add_ipv6_addr_to_interface(struct interface_info *iface, const struct in6_addr *addr) { /* * Each IPv6 interface will have at least two IPv6 addresses, @@ -551,8 +551,8 @@ add_ipv6_addr_to_interface(struct interface_info *iface, log_fatal("Out of memory saving IPv6 address " "on interface."); } - memcpy(tmp, - iface->v6addresses, + memcpy(tmp, + iface->v6addresses, iface->v6address_max * sizeof(struct in6_addr)); dfree(iface->v6addresses, MDL); iface->v6addresses = tmp; @@ -567,7 +567,7 @@ add_ipv6_addr_to_interface(struct interface_info *iface, register that interface with the network I/O software, figure out what subnet it's on, and add it to the list of interfaces. */ -void +void discover_interfaces(int state) { struct iface_conf_list ifaces; struct iface_info info; @@ -637,7 +637,7 @@ discover_interfaces(int state) { (!(info.flags & IFF_UP) && state != DISCOVER_UNCONFIGURED)) continue; - + /* If there isn't already an interface by this name, allocate one. */ if (tmp == NULL) { @@ -658,7 +658,7 @@ discover_interfaces(int state) { (*dhcp_interface_discovery_hook)(tmp); } - if ((info.addr.ss_family == AF_INET) && + if ((info.addr.ss_family == AF_INET) && (local_family == AF_INET)) { struct sockaddr_in *a = (struct sockaddr_in*)&info.addr; struct iaddr addr; @@ -685,14 +685,14 @@ discover_interfaces(int state) { } } #ifdef DHCPv6 - else if ((info.addr.ss_family == AF_INET6) && + else if ((info.addr.ss_family == AF_INET6) && (local_family == AF_INET6)) { - struct sockaddr_in6 *a = + struct sockaddr_in6 *a = (struct sockaddr_in6*)&info.addr; struct iaddr addr; /* We don't want the loopback interface. */ - if (IN6_IS_ADDR_LOOPBACK(&a->sin6_addr) && + if (IN6_IS_ADDR_LOOPBACK(&a->sin6_addr) && ((tmp->flags & INTERFACE_AUTOMATIC) && ((state == DISCOVER_SERVER) || (state == DISCOVER_SERVER46)))) @@ -809,14 +809,14 @@ discover_interfaces(int state) { log_error("%s", ""); if (local_family == AF_INET) { log_error("No subnet declaration for %s (%s).", - tmp->name, + tmp->name, (tmp->addresses == NULL) ? "no IPv4 addresses" : inet_ntoa(tmp->addresses[0])); #ifdef DHCPv6 } else { if (tmp->v6addresses != NULL) { - inet_ntop(AF_INET6, + inet_ntop(AF_INET6, &tmp->v6addresses[0], abuf, sizeof(abuf)); @@ -876,7 +876,7 @@ discover_interfaces(int state) { } else if (tmp->v6address_count > 0) { subnet->interface_address.len = 16; memcpy(subnet->interface_address.iabuf, - &tmp->v6addresses[0].s6_addr, + &tmp->v6addresses[0].s6_addr, 16); } else { /* XXX: should be one */ @@ -954,7 +954,7 @@ discover_interfaces(int state) { if (tmp -> rfdesc == -1) continue; switch (local_family) { -#ifdef DHCPv6 +#ifdef DHCPv6 case AF_INET6: #ifdef RELAY_PORT #define UPSTREAM(ifp) \ @@ -981,7 +981,7 @@ discover_interfaces(int state) { } #endif status = omapi_register_io_object((omapi_object_t *)tmp, - if_readsocket, + if_readsocket, 0, got_one_v6, 0, 0); #ifdef RELAY_PORT if (UPSTREAM(tmp)) @@ -994,7 +994,7 @@ discover_interfaces(int state) { case AF_INET: default: status = omapi_register_io_object((omapi_object_t *)tmp, - if_readsocket, + if_readsocket, 0, got_one, 0, 0); break; } @@ -1194,7 +1194,7 @@ got_one_v6(omapi_object_t *h) { /* * If a packet is not multicast, we assume it is unicast. */ - if (IN6_IS_ADDR_MULTICAST(&to)) { + if (IN6_IS_ADDR_MULTICAST(&to)) { is_unicast = ISC_FALSE; } else { is_unicast = ISC_TRUE; @@ -1211,8 +1211,8 @@ got_one_v6(omapi_object_t *h) { if (ip == NULL) return ISC_R_NOTFOUND; - (*dhcpv6_packet_handler)(ip, buf, - result, from.sin6_port, + (*dhcpv6_packet_handler)(ip, buf, + result, from.sin6_port, &ifrom, is_unicast); } @@ -1252,7 +1252,7 @@ isc_result_t dhcp_interface_set_value (omapi_object_t *h, if (status == ISC_R_SUCCESS || status == DHCP_R_UNCHANGED) return status; } - + return ISC_R_NOTFOUND; } @@ -1453,7 +1453,7 @@ isc_result_t dhcp_interface_create (omapi_object_t **lp, { struct interface_info *hp; isc_result_t status; - + hp = (struct interface_info *)0; status = interface_allocate (&hp, MDL); if (status != ISC_R_SUCCESS) diff --git a/common/dispatch.c b/common/dispatch.c index e019421e..6687ab17 100644 --- a/common/dispatch.c +++ b/common/dispatch.c @@ -96,7 +96,7 @@ struct timeval *process_outstanding_timeouts (struct timeval *tvp) * to the timer and use that. The complications arise in trying to ensure * that all of the corner cases are covered. The last one is potentially * more painful and requires more investigation. - * + * * The plan is continue with the older DHCP calls and timer list. The * calls will continue to manipulate the list but will also pass a * timer to the ISC timer code for the actual dispatch. Later, if desired, @@ -266,7 +266,7 @@ void add_timeout (when, where, what, ref, unref) sec = when->tv_sec - cur_tv.tv_sec; usec = when->tv_usec - cur_tv.tv_usec; - + if ((when->tv_usec != 0) && (usec < 0)) { sec--; usec += USEC_MAX; @@ -287,7 +287,7 @@ void add_timeout (when, where, what, ref, unref) usec = USEC_MAX - 1; } - /* + /* * This is necessary for the tracing code but we put it * here in case we want to compare timing information * for some reason, like debugging. diff --git a/common/dlpi.c b/common/dlpi.c index 7a80eaaf..153aa519 100644 --- a/common/dlpi.c +++ b/common/dlpi.c @@ -1,5 +1,5 @@ /* dlpi.c - + Data Link Provider Interface (DLPI) network interface code. */ /* @@ -160,8 +160,8 @@ static int dlpibindack (int fd, char *bufp); /* These functions are not used if we're only sourcing the get_hw_addr() * function (for USE_SOCKETS). */ -static int dlpiunitdatareq (int fd, unsigned char *addr, int addrlen, - unsigned long minpri, unsigned long maxpri, +static int dlpiunitdatareq (int fd, unsigned char *addr, int addrlen, + unsigned long minpri, unsigned long maxpri, unsigned char *data, int datalen); static int dlpiunitdataind (int fd, unsigned char *dstaddr, @@ -172,7 +172,7 @@ static int dlpiunitdataind (int fd, unsigned char *data, int datalen); #endif /* !USE_DLPI_HWADDR: USE_DLPI_SEND || USE_DLPI_RECEIVE */ -static int expected (unsigned long prim, union DL_primitives *dlp, +static int expected (unsigned long prim, union DL_primitives *dlp, int msgflags); static int strgetmsg (int fd, struct strbuf *ctlp, struct strbuf *datap, int *flagsp, char *caller); @@ -214,7 +214,7 @@ int if_register_dlpi (info) } /* - * Submit a DL_INFO_REQ request, to find the dl_mac_type and + * Submit a DL_INFO_REQ request, to find the dl_mac_type and * dl_provider_style */ if (dlpiinforeq(sock) < 0 || dlpiinfoack(sock, (char *)buf) < 0) { @@ -225,7 +225,7 @@ int if_register_dlpi (info) case DL_ETHER: info -> hw_address.hbuf [0] = HTYPE_ETHER; break; - /* adding token ring 5/1999 - mayer@ping.at */ + /* adding token ring 5/1999 - mayer@ping.at */ case DL_TPR: info -> hw_address.hbuf [0] = HTYPE_IEEE802; break; @@ -243,10 +243,10 @@ int if_register_dlpi (info) * assume -2 and ffffff. */ info -> dlpi_sap_length = dlp -> info_ack.dl_sap_length; - info -> dlpi_broadcast_addr.hlen = + info -> dlpi_broadcast_addr.hlen = dlp -> info_ack.dl_brdcst_addr_length; - memcpy (info -> dlpi_broadcast_addr.hbuf, - (char *)dlp + dlp -> info_ack.dl_brdcst_addr_offset, + memcpy (info -> dlpi_broadcast_addr.hbuf, + (char *)dlp + dlp -> info_ack.dl_brdcst_addr_offset, dlp -> info_ack.dl_brdcst_addr_length); } @@ -256,7 +256,7 @@ int if_register_dlpi (info) * does not exist. */ unit = dlpiunit (info -> name); - + if (dlpiattachreq (sock, unit) < 0 || dlpiokack (sock, (char *)buf) < 0) { log_fatal ("Can't attach DLPI device for %s: %m", info -> name); @@ -575,9 +575,9 @@ ssize_t send_packet (interface, packet, raw, len, from, to, hto) #else /* - * Setup the destination address (DLSAP) in dstaddr + * Setup the destination address (DLSAP) in dstaddr * - * If sap_length < 0 we must deliver the DLSAP as phys+sap. + * If sap_length < 0 we must deliver the DLSAP as phys+sap. * If sap_length > 0 we must deliver the DLSAP as sap+phys. * * sap = Service Access Point == ETHERTYPE_IP @@ -601,11 +601,11 @@ ssize_t send_packet (interface, packet, raw, len, from, to, hto) if (hto && hto -> hlen == interface -> hw_address.hlen) memcpy ( phys, (char *) &hto -> hbuf [1], phys_len); - else - memcpy ( phys, interface -> dlpi_broadcast_addr.hbuf, + else + memcpy ( phys, interface -> dlpi_broadcast_addr.hbuf, interface -> dlpi_broadcast_addr.hlen); - if (sap_len < 0) { + if (sap_len < 0) { memcpy ( dstaddr, phys, phys_len); memcpy ( (char *) &dstaddr [phys_len], sap, ABS (sap_len)); } @@ -640,10 +640,10 @@ ssize_t receive_packet (interface, buf, len, from, hfrom) int offset = 0; int bufix = 0; unsigned paylen; - + #ifdef USE_DLPI_RAW length = read (interface -> rfdesc, dbuf, sizeof (dbuf)); -#else +#else length = dlpiunitdataind (interface -> rfdesc, (unsigned char *)NULL, (unsigned long *)NULL, srcaddr, &srcaddrlen, (unsigned long *)NULL, dbuf, sizeof (dbuf)); @@ -669,14 +669,14 @@ ssize_t receive_packet (interface, buf, len, from, hfrom) if (hfrom && (srcaddrlen == ABS (sap_len) + phys_len )) { hfrom -> hbuf [0] = interface -> hw_address.hbuf [0]; hfrom -> hlen = interface -> hw_address.hlen; - + if (sap_len < 0) { memcpy ((char *) &hfrom -> hbuf [1], srcaddr, phys_len); } else { memcpy((char *)&hfrom->hbuf[1], srcaddr + sap_len, phys_len); } - } + } else if (hfrom) { memset (hfrom, '\0', sizeof *hfrom); } @@ -733,11 +733,11 @@ ssize_t receive_packet (interface, buf, len, from, hfrom) * Based largely in part to the example code contained in the document * "How to Use the STREAMS Data Link Provider Interface (DLPI)", written * by Neal Nuckolls of SunSoft Internet Engineering. - * + * * This code has been developed and tested on sparc-based machines running * SunOS 5.5.1, with le and hme network interfaces. It should be pretty * generic, though. - * + * * The usual disclaimers apply. This code works for me. Don't blame me * if it makes your machine or network go down in flames. That taken * into consideration, use this code as you wish. If you make usefull @@ -756,24 +756,24 @@ static int dlpiunit (ifname) { char *cp; int unit; - + if (!ifname) { return 0; } - + /* Advance to the end of the name */ cp = ifname; while (*cp) cp++; /* Back up to the start of the first digit */ while ((*(cp-1) >= '0' && *(cp-1) <= '9') || *(cp - 1) == ':') cp--; - + /* Convert the unit number */ unit = 0; while (*cp >= '0' && *cp <= '9') { unit *= 10; unit += (*cp++ - '0'); } - + return unit; } @@ -785,11 +785,11 @@ dlpiopen(const char *ifname) { char devname [50]; char *dp; const char *cp, *ep; - + if (!ifname) { return -1; } - + /* Open a DLPI device */ if (*ifname == '/') { dp = devname; @@ -810,13 +810,13 @@ dlpiopen(const char *ifname) { while ((*(ep - 1) >= '0' && *(ep - 1) <= '9') || *(ep - 1) == ':') ep--; #endif - + /* Copy everything up to the unit number */ while (cp < ep) { *dp++ = *cp++; } *dp = '\0'; - + return open (devname, O_RDWR, 0); } @@ -830,15 +830,15 @@ static int dlpiinforeq (fd) dl_info_req_t info_req; struct strbuf ctl; int flags; - + info_req.dl_primitive = DL_INFO_REQ; - + ctl.maxlen = 0; ctl.len = sizeof (info_req); ctl.buf = (char *)&info_req; - + flags = RS_HIPRI; - + return putmsg (fd, &ctl, (struct strbuf *)NULL, flags); } @@ -852,16 +852,16 @@ static int dlpiphysaddrreq (fd, addrtype) dl_phys_addr_req_t physaddr_req; struct strbuf ctl; int flags; - + physaddr_req.dl_primitive = DL_PHYS_ADDR_REQ; physaddr_req.dl_addr_type = addrtype; - + ctl.maxlen = 0; ctl.len = sizeof (physaddr_req); ctl.buf = (char *)&physaddr_req; - + flags = RS_HIPRI; - + return putmsg (fd, &ctl, (struct strbuf *)NULL, flags); } @@ -875,16 +875,16 @@ static int dlpiattachreq (fd, ppa) dl_attach_req_t attach_req; struct strbuf ctl; int flags; - + attach_req.dl_primitive = DL_ATTACH_REQ; attach_req.dl_ppa = ppa; - + ctl.maxlen = 0; ctl.len = sizeof (attach_req); ctl.buf = (char *)&attach_req; - + flags = 0; - + return putmsg (fd, &ctl, (struct strbuf*)NULL, flags); } @@ -902,20 +902,20 @@ static int dlpibindreq (fd, sap, max_conind, service_mode, conn_mgmt, xidtest) dl_bind_req_t bind_req; struct strbuf ctl; int flags; - + bind_req.dl_primitive = DL_BIND_REQ; bind_req.dl_sap = sap; bind_req.dl_max_conind = max_conind; bind_req.dl_service_mode = service_mode; bind_req.dl_conn_mgmt = conn_mgmt; bind_req.dl_xidtest_flg = xidtest; - + ctl.maxlen = 0; ctl.len = sizeof (bind_req); ctl.buf = (char *)&bind_req; - + flags = 0; - + return putmsg (fd, &ctl, (struct strbuf*)NULL, flags); } @@ -931,15 +931,15 @@ static int dlpiunbindreq (fd) dl_unbind_req_t unbind_req; struct strbuf ctl; int flags; - + unbind_req.dl_primitive = DL_UNBIND_REQ; - + ctl.maxlen = 0; ctl.len = sizeof (unbind_req); ctl.buf = (char *)&unbind_req; - + flags = 0; - + return putmsg (fd, &ctl, (struct strbuf*)NULL, flags); } @@ -955,15 +955,15 @@ static int dlpidetachreq (fd) dl_detach_req_t detach_req; struct strbuf ctl; int flags; - + detach_req.dl_primitive = DL_DETACH_REQ; - + ctl.maxlen = 0; ctl.len = sizeof (detach_req); ctl.buf = (char *)&detach_req; - + flags = 0; - + return putmsg (fd, &ctl, (struct strbuf*)NULL, flags); } #endif /* UNUSED_DLPI_INTERFACE */ @@ -979,7 +979,7 @@ static int dlpibindack (fd, bufp) union DL_primitives *dlp; struct strbuf ctl; int flags; - + ctl.maxlen = DLPI_MAXDLBUF; ctl.len = 0; ctl.buf = bufp; @@ -988,13 +988,13 @@ static int dlpibindack (fd, bufp) (struct strbuf*)NULL, &flags, "dlpibindack") < 0) { return -1; } - + dlp = (union DL_primitives *)ctl.buf; - + if (expected (DL_BIND_ACK, dlp, flags) == -1) { return -1; } - + if (ctl.len < sizeof (dl_bind_ack_t)) { /* Returned structure is too short */ return -1; @@ -1013,27 +1013,27 @@ static int dlpiokack (fd, bufp) union DL_primitives *dlp; struct strbuf ctl; int flags; - + ctl.maxlen = DLPI_MAXDLBUF; ctl.len = 0; ctl.buf = bufp; - + if (strgetmsg (fd, &ctl, (struct strbuf*)NULL, &flags, "dlpiokack") < 0) { return -1; } - + dlp = (union DL_primitives *)ctl.buf; - + if (expected (DL_OK_ACK, dlp, flags) == -1) { return -1; } - + if (ctl.len < sizeof (dl_ok_ack_t)) { /* Returned structure is too short */ return -1; } - + return 0; } @@ -1047,27 +1047,27 @@ static int dlpiinfoack (fd, bufp) union DL_primitives *dlp; struct strbuf ctl; int flags; - + ctl.maxlen = DLPI_MAXDLBUF; ctl.len = 0; ctl.buf = bufp; - + if (strgetmsg (fd, &ctl, (struct strbuf *)NULL, &flags, "dlpiinfoack") < 0) { return -1; } - + dlp = (union DL_primitives *) ctl.buf; - + if (expected (DL_INFO_ACK, dlp, flags) == -1) { return -1; } - + if (ctl.len < sizeof (dl_info_ack_t)) { /* Returned structure is too short */ return -1; } - + return 0; } @@ -1081,18 +1081,18 @@ int dlpiphysaddrack (fd, bufp) union DL_primitives *dlp; struct strbuf ctl; int flags; - + ctl.maxlen = DLPI_MAXDLBUF; ctl.len = 0; ctl.buf = bufp; - + if (strgetmsg (fd, &ctl, (struct strbuf *)NULL, &flags, "dlpiphysaddrack") < 0) { return -1; } dlp = (union DL_primitives *)ctl.buf; - + if (expected (DL_PHYS_ADDR_ACK, dlp, flags) == -1) { return -1; } @@ -1101,7 +1101,7 @@ int dlpiphysaddrack (fd, bufp) /* Returned structure is too short */ return -1; } - + return 0; } @@ -1118,7 +1118,7 @@ int dlpiunitdatareq (fd, addr, addrlen, minpri, maxpri, dbuf, dbuflen) long buf [DLPI_MAXDLBUF]; union DL_primitives *dlp; struct strbuf ctl, data; - + /* Set up the control information... */ dlp = (union DL_primitives *)buf; dlp -> unitdata_req.dl_primitive = DL_UNITDATA_REQ; @@ -1130,7 +1130,7 @@ int dlpiunitdatareq (fd, addr, addrlen, minpri, maxpri, dbuf, dbuflen) /* Append the destination address */ memcpy ((char *)buf + dlp -> unitdata_req.dl_dest_addr_offset, addr, addrlen); - + ctl.maxlen = 0; ctl.len = dlp -> unitdata_req.dl_dest_addr_offset + addrlen; ctl.buf = (char *)buf; @@ -1233,7 +1233,7 @@ static int expected (prim, dlp, msgflags) /* Incorrect/unexpected return message */ return -1; } - + return 0; } @@ -1252,7 +1252,7 @@ static int strgetmsg (fd, ctlp, datap, flagsp, caller) time_t now; time_t starttime; int to_msec; - + pfd.fd = fd; pfd.events = POLLPRI; /* We're only interested in knowing * when we can receive the next high @@ -1264,7 +1264,7 @@ static int strgetmsg (fd, ctlp, datap, flagsp, caller) while (now <= starttime + DLPI_MAXWAIT) { to_msec = ((starttime + DLPI_MAXWAIT) - now) * 1000; count = poll (&pfd, 1, to_msec); - + if (count == 0) { /* log_fatal ("strgetmsg: timeout"); */ return -1; @@ -1342,7 +1342,7 @@ void maybe_setup_fallback () } #endif /* USE_DLPI_SEND */ -void +void get_hw_addr(const char *name, struct hardware *hw) { int sock, unit; long buf[DLPI_MAXDLBUF]; @@ -1350,7 +1350,7 @@ get_hw_addr(const char *name, struct hardware *hw) { dlp = (union DL_primitives *)buf; - /* + /* * Open a DLPI device. */ sock = dlpiopen(name); @@ -1359,7 +1359,7 @@ get_hw_addr(const char *name, struct hardware *hw) { } /* - * Submit a DL_INFO_REQ request, to find the dl_mac_type and + * Submit a DL_INFO_REQ request, to find the dl_mac_type and * dl_provider_style */ if (dlpiinforeq(sock) < 0) { @@ -1411,12 +1411,12 @@ get_hw_addr(const char *name, struct hardware *hw) { name); } if (dlp->physaddr_ack.dl_addr_length < sizeof(hw->hbuf)) { - memcpy(hw->hbuf+1, + memcpy(hw->hbuf+1, (char *)buf + dlp->physaddr_ack.dl_addr_offset, dlp->physaddr_ack.dl_addr_length); hw->hlen = dlp->physaddr_ack.dl_addr_length + 1; } else { - memcpy(hw->hbuf+1, + memcpy(hw->hbuf+1, (char *)buf + dlp->physaddr_ack.dl_addr_offset, sizeof(hw->hbuf)-1); hw->hlen = sizeof(hw->hbuf); diff --git a/common/execute.c b/common/execute.c index 053dab81..5f285377 100644 --- a/common/execute.c +++ b/common/execute.c @@ -167,7 +167,7 @@ int execute_statements (result, packet, lease, client_state, (&rc, packet, lease, client_state, in_options, out_options, scope, r->data.ie.expr)); - + #if defined (DEBUG_EXPRESSIONS) log_debug ("exec: if %s", (status ? (rc ? "true" : "false") @@ -219,7 +219,7 @@ int execute_statements (result, packet, lease, client_state, } log_debug("execute_statement argv[0] = %s", argv[0]); - + for (i = 1, expr = r->data.execute.arglist; expr; expr = expr->data.arg.next, i++) { memset (&ds, 0, sizeof(ds)); @@ -509,7 +509,7 @@ int execute_statements (result, packet, lease, client_state, (&ds, packet, lease, client_state, in_options, out_options, scope, r->data.log.expr, MDL)); - + #if defined (DEBUG_EXPRESSIONS) log_debug ("exec: log"); #endif @@ -936,7 +936,7 @@ void write_statements (file, statements, indent) token_indent_data_string (file, col, indent + 8, "", "", &r -> data.option -> data); - + fprintf (file, ";"); /* XXX */ break; @@ -952,7 +952,7 @@ void write_statements (file, statements, indent) (void) token_print_indent (file, col, indent + 4, " ", "", ";"); break; - + case unset_statement: indent_spaces (file, indent); fprintf (file, "unset "); @@ -1021,7 +1021,7 @@ void write_statements (file, statements, indent) "is not defined).", MDL); #endif /* ENABLE_EXECUTE */ break; - + case vendor_opt_statement: indent_spaces (file, indent); fprintf (file, "parse-vendor-option;"); diff --git a/common/fddi.c b/common/fddi.c index a6c8098b..16ac2da7 100644 --- a/common/fddi.c +++ b/common/fddi.c @@ -77,7 +77,7 @@ ssize_t decode_fddi_header (interface, buf, bufix, from) { struct fddi_header fh; struct llc lh; - + from -> hbuf [0] = HTYPE_FDDI; memcpy (&from -> hbuf [1], fh.fddi_shost, sizeof fh.fddi_shost); return FDDI_HEADER_SIZE + LLC_SNAP_LEN; diff --git a/common/icmp.c b/common/icmp.c index 8c87aaa1..cdf92a37 100644 --- a/common/icmp.c +++ b/common/icmp.c @@ -85,7 +85,7 @@ void icmp_startup (routep, handler) proto = getprotobyname ("icmp"); if (proto) protocol = proto -> p_proto; - + /* Get a raw socket for the ICMP protocol. */ icmp_state -> socket = socket (AF_INET, SOCK_RAW, protocol); if (icmp_state -> socket < 0) { diff --git a/common/inet.c b/common/inet.c index 4388d92b..dcb628ce 100644 --- a/common/inet.c +++ b/common/inet.c @@ -101,7 +101,7 @@ struct iaddr ip_addr (subnet, mask, host_address) } else rv.iabuf [i + j] = habuf [i]; } - + return rv; } @@ -174,7 +174,7 @@ int addr_eq (addr1, addr2) return memcmp (addr1.iabuf, addr2.iabuf, addr1.len) == 0; } -/* addr_match +/* addr_match * * compares an IP address against a network/mask combination * by ANDing the IP with the mask and seeing whether the result @@ -189,7 +189,7 @@ addr_match(addr, match) if (addr->len != match->addr.len) return 0; - + for (i = 0 ; i < addr->len ; i++) { if ((addr->iabuf[i] & match->mask.iabuf[i]) != match->addr.iabuf[i]) @@ -198,7 +198,7 @@ addr_match(addr, match) return 1; } -/* +/* * Compares the addresses a1 and a2. * * If a1 < a2, returns -1. @@ -234,7 +234,7 @@ addr_cmp(const struct iaddr *a1, const struct iaddr *a2) { * * WARNING: if a1 and a2 differ in length, returns 0. */ -int +int addr_or(struct iaddr *result, const struct iaddr *a1, const struct iaddr *a2) { int i; int all_zero; @@ -263,7 +263,7 @@ addr_or(struct iaddr *result, const struct iaddr *a1, const struct iaddr *a2) { * * WARNING: if a1 and a2 differ in length, returns 0. */ -int +int addr_and(struct iaddr *result, const struct iaddr *a1, const struct iaddr *a2) { int i; int all_zero; @@ -323,7 +323,7 @@ is_cidr_mask_valid(const struct iaddr *addr, int bits) { zero_bits = (addr->len * 8) - bits; zero_bytes = zero_bits / 8; - /* + /* * Check to make sure the low-order bytes are zero. */ for (i=1; i<=zero_bytes; i++) { @@ -332,11 +332,11 @@ is_cidr_mask_valid(const struct iaddr *addr, int bits) { } } - /* - * Look to see if any bits not in right-hand bytes are - * non-zero, by making a byte that has these bits set to zero - * comparing to the original byte. If these two values are - * equal, then the right-hand bits are zero, and we are + /* + * Look to see if any bits not in right-hand bytes are + * non-zero, by making a byte that has these bits set to zero + * comparing to the original byte. If these two values are + * equal, then the right-hand bits are zero, and we are * happy. */ shift_bits = zero_bits % 8; @@ -350,14 +350,14 @@ is_cidr_mask_valid(const struct iaddr *addr, int bits) { * * Converts a range of IP addresses to a set of CIDR networks. * - * Examples: + * Examples: * 192.168.0.0 - 192.168.0.255 = 192.168.0.0/24 * 10.0.0.0 - 10.0.1.127 = 10.0.0.0/24, 10.0.1.0/25 * 255.255.255.32 - 255.255.255.255 = 255.255.255.32/27, 255.255.255.64/26, * 255.255.255.128/25 */ -isc_result_t -range2cidr(struct iaddrcidrnetlist **result, +isc_result_t +range2cidr(struct iaddrcidrnetlist **result, const struct iaddr *lo, const struct iaddr *hi) { struct iaddr addr; struct iaddr mask; @@ -395,30 +395,30 @@ range2cidr(struct iaddrcidrnetlist **result, * Start at the low end, and keep trying larger networks * until we get one that is too big (explained below). * - * We keep a "mask", which is the ones-complement of a + * We keep a "mask", which is the ones-complement of a * normal netmask. So, a /23 has a netmask of 255.255.254.0, * and a mask of 0.0.1.255. * - * We know when a network is too big when we bitwise-AND the - * mask with the starting address and we get a non-zero + * We know when a network is too big when we bitwise-AND the + * mask with the starting address and we get a non-zero * result, like this: * * addr: 192.168.1.0, mask: 0.0.1.255 * bitwise-AND: 0.0.1.0 - * + * * A network is also too big if the bitwise-OR of the mask * with the starting address is larger than the end address, * like this: * * start: 192.168.1.0, mask: 0.0.1.255, end: 192.168.0.255 - * bitwise-OR: 192.168.1.255 + * bitwise-OR: 192.168.1.255 * * ------------------- - * Once we have found a network that is too big, we add the + * Once we have found a network that is too big, we add the * appropriate CIDR network to our list of found networks. * * We then use the next IP address as our low address, and - * begin the process of searching for a network that is + * begin the process of searching for a network that is * too big again, starting with an empty mask. */ addr = *lo; @@ -435,12 +435,12 @@ range2cidr(struct iaddrcidrnetlist **result, mask.iabuf[ofs] |= val; } - /* + /* * See if we're too big, and save this network if so. */ addr_or(&end_addr, &addr, &mask); if ((ofs < 0) || - (addr_cmp(&end_addr, hi) > 0) || + (addr_cmp(&end_addr, hi) > 0) || addr_and(&dummy, &addr, &mask)) { /* * Add a new prefix to our list. @@ -459,8 +459,8 @@ range2cidr(struct iaddrcidrnetlist **result, net->next = *result; *result = net; - /* - * Figure out our new starting address, + /* + * Figure out our new starting address, * by adding (1 << bit) to our previous * starting address. */ @@ -534,7 +534,7 @@ piaddr(const struct iaddr addr) { } if (addr.len == 4) { return inet_ntop(AF_INET, addr.iabuf, pbuf, sizeof(pbuf)); - } + } if (addr.len == 16) { return inet_ntop(AF_INET6, addr.iabuf, pbuf, sizeof(pbuf)); } @@ -610,7 +610,7 @@ validate_port(char *port) { errno = 0; local_port = strtol(port, &endptr, 10); - + if ((*endptr != '\0') || (errno == ERANGE) || (errno == EINVAL)) log_fatal ("Invalid port number specification: %s", port); @@ -636,7 +636,7 @@ validate_port_pair(char *port) { errno = 0; local_port = strtol(port, &endptr, 10); - + if ((*endptr != '\0') || (errno == ERANGE) || (errno == EINVAL)) log_fatal ("Invalid port pair specification: %s", port); diff --git a/common/lpf.c b/common/lpf.c index 1e4deff6..e66e3ad4 100644 --- a/common/lpf.c +++ b/common/lpf.c @@ -307,7 +307,7 @@ static void lpf_tr_filter_setup (info) /* Patch the server port into the LPF program... XXX changes to filter program may require changes XXX to the insn number(s) used below! - XXX Token ring filter is null - when/if we have a filter + XXX Token ring filter is null - when/if we have a filter XXX that's not, we'll need this code. XXX dhcp_bpf_filter [?].k = ntohs (local_port); */ @@ -539,7 +539,7 @@ get_hw_addr(const char *name, struct hardware *hw) { memset(&tmp, 0, sizeof(tmp)); strcpy(tmp.ifr_name, name); if (ioctl(sock, SIOCGIFHWADDR, &tmp) < 0) { - log_fatal("Error getting hardware address for \"%s\": %m", + log_fatal("Error getting hardware address for \"%s\": %m", name); } diff --git a/common/ns_name.c b/common/ns_name.c index 5abb12a7..f4eda437 100644 --- a/common/ns_name.c +++ b/common/ns_name.c @@ -491,7 +491,7 @@ cleanup: *lpp = NULL; errno = EMSGSIZE; return (-1); - } + } return (dstp - dst); } @@ -509,7 +509,7 @@ MRns_name_uncompress(const u_char *msg, const u_char *eom, const u_char *src, { u_char tmp[NS_MAXCDNAME]; int n; - + if ((n = MRns_name_unpack(msg, eom, src, tmp, sizeof tmp)) == -1) return (-1); if (MRns_name_ntop(tmp, dst, dstsiz) == -1) diff --git a/common/options.c b/common/options.c index cbce4e24..f4e86cf5 100644 --- a/common/options.c +++ b/common/options.c @@ -1905,7 +1905,7 @@ const char *pretty_print_option (option, data, len, emit_commas, emit_quotes) } hunksize += k; break; - + case 't': case 'k': fmtbuf[l + 1] = 0; diff --git a/common/packet.c b/common/packet.c index 726d51e5..63b4ff8e 100644 --- a/common/packet.c +++ b/common/packet.c @@ -61,7 +61,7 @@ u_int32_t checksum (buf, nbytes, sum) /* Add carry. */ if (sum > 0xFFFF) sum -= 0xFFFF; - } + } /* If there's a single byte left over, checksum it, too. Network byte order is big-endian, so the remaining byte is the high byte. */ @@ -74,7 +74,7 @@ u_int32_t checksum (buf, nbytes, sum) if (sum > 0xFFFF) sum -= 0xFFFF; } - + return sum; } @@ -91,7 +91,7 @@ u_int32_t wrapsum (sum) #ifdef DEBUG_CHECKSUM_VERBOSE log_debug ("sum = %x", sum); #endif - + #ifdef DEBUG_CHECKSUM log_debug ("wrapsum returns %x", htons (sum)); #endif @@ -156,10 +156,10 @@ void assemble_udp_ip_header (interface, buf, bufix, ip.ip_sum = 0; ip.ip_src.s_addr = from; ip.ip_dst.s_addr = to; - + /* Checksum the IP header... */ ip.ip_sum = wrapsum (checksum ((unsigned char *)&ip, sizeof ip, 0)); - + /* Copy the ip header into the buffer... */ memcpy (&buf [*bufix], &ip, sizeof ip); *bufix += sizeof ip; @@ -181,7 +181,7 @@ void assemble_udp_ip_header (interface, buf, bufix, udp.uh_sum = wrapsum (checksum ((unsigned char *)&udp, sizeof udp, - checksum (data, len, + checksum (data, len, checksum ((unsigned char *) &ip.ip_src, 2 * sizeof ip.ip_src, diff --git a/common/parse.c b/common/parse.c index 1daedc0b..e884ba32 100644 --- a/common/parse.c +++ b/common/parse.c @@ -93,7 +93,7 @@ void skip_to_semi (cfile) statement foo bar { } statement foo bar { statement { } } statement} - + ...et cetera. */ void skip_to_rbrace (cfile, brace_count) struct parse *cfile; @@ -203,7 +203,7 @@ char *parse_host_name (cfile) char *t; pair c = (pair)0; int ltid = 0; - + /* Read a dotted hostname... */ do { /* Read a token, which should be an identifier. */ @@ -256,7 +256,7 @@ char *parse_host_name (cfile) /* ip-addr-or-hostname :== ip-address | hostname ip-address :== NUMBER DOT NUMBER DOT NUMBER DOT NUMBER - + Parse an ip address or a hostname. If uniform is zero, put in an expr_substring node to limit hostnames that evaluate to more than one IP address. @@ -327,8 +327,8 @@ int parse_ip_addr_or_hostname (expr, cfile, uniform) } return 1; -} - +} + /* * ip-address :== NUMBER DOT NUMBER DOT NUMBER DOT NUMBER */ @@ -342,7 +342,7 @@ int parse_ip_addr (cfile, addr) &addr -> len, DOT, 10, 8)) return 1; return 0; -} +} /* * Return true if every character in the string is hexadecimal. @@ -363,7 +363,7 @@ is_hex_string(const char *s) { * * See section 2.2 of RFC 1884 for details. * - * We are lazy for this. We pull numbers, names, colons, and dots + * We are lazy for this. We pull numbers, names, colons, and dots * together and then throw the resulting string at the inet_pton() * function. */ @@ -378,7 +378,7 @@ parse_ip6_addr(struct parse *cfile, struct iaddr *addr) { int v6_len; /* - * First token is non-raw. This way we eat any whitespace before + * First token is non-raw. This way we eat any whitespace before * our IPv6 address begins, like one would expect. */ token = peek_token(&val, NULL, cfile); @@ -425,11 +425,11 @@ parse_ip6_addr(struct parse *cfile, struct iaddr *addr) { } /* - * Same as parse_ip6_addr() above, but returns the value in the + * Same as parse_ip6_addr() above, but returns the value in the * expression rather than in an address structure. */ int -parse_ip6_addr_expr(struct expression **expr, +parse_ip6_addr_expr(struct expression **expr, struct parse *cfile) { struct iaddr addr; @@ -539,7 +539,7 @@ parse_ip_addr_with_subnet(cfile, match) match->mask.iabuf[fflen] = "\x00\x80\xc0\xe0\xf0\xf8\xfc\xfe"[prefixlen % 8]; - memset(match->mask.iabuf+fflen+1, 0x00, + memset(match->mask.iabuf+fflen+1, 0x00, match->mask.len - fflen - 1); /* AND-out insignificant bits from supplied netmask. */ @@ -569,7 +569,7 @@ parse_ip_addr_with_subnet(cfile, match) parse_warn(cfile, "expecting ip-address or ip-address/prefixlen"); - return 0; /* let caller pick up pieces */ + return 0; /* let caller pick up pieces */ } /* @@ -643,7 +643,7 @@ void parse_hardware_param (cfile, hardware) (sizeof(hardware->hbuf)) - hlen - 1); dfree(t, MDL); } - + out: token = next_token(&val, NULL, cfile); if (token != SEMI) { @@ -922,9 +922,9 @@ void convert_num (cfile, buf, str, base, size) } /* - * date :== NUMBER NUMBER SLASH NUMBER SLASH NUMBER + * date :== NUMBER NUMBER SLASH NUMBER SLASH NUMBER * NUMBER COLON NUMBER COLON NUMBER | - * NUMBER NUMBER SLASH NUMBER SLASH NUMBER + * NUMBER NUMBER SLASH NUMBER SLASH NUMBER * NUMBER COLON NUMBER COLON NUMBER NUMBER | * EPOCH NUMBER | * NEVER @@ -939,7 +939,7 @@ void convert_num (cfile, buf, str, base, size) * just parse the date * any trailing semi must be consumed by the caller of this routine */ -TIME +TIME parse_date_core(cfile) struct parse *cfile; { @@ -1021,7 +1021,7 @@ parse_date_core(cfile) parse_warn(cfile, "numeric month expected."); return((TIME)0); } - skip_token(&val, NULL, cfile); /* consume month */ + skip_token(&val, NULL, cfile); /* consume month */ mon = atoi(val) - 1; /* Slash separating month from day... */ @@ -1149,7 +1149,7 @@ parse_date_core(cfile) * :== date semi */ -TIME +TIME parse_date(cfile) struct parse *cfile; { @@ -1551,7 +1551,7 @@ int parse_option_code_definition (cfile, option) char *s; int has_encapsulation = 0; struct universe *encapsulated; - + /* Parse the option code. */ token = next_token (&val, (unsigned *)0, cfile); if (token != NUMBER) { @@ -1845,7 +1845,7 @@ int parse_option_code_definition (cfile, option) /* INSIST(tokbuf[0] == 'E'); */ /* INSIST(encapsulated != NULL); */ if (!option_code_hash_lookup(&encapsulated->enc_opt, - option->universe->code_hash, + option->universe->code_hash, &option->code, 0, MDL)) { log_fatal("error finding encapsulated option (%s:%d)", MDL); @@ -1884,7 +1884,7 @@ int parse_base64 (data, cfile) int cc = 0; int terminated = 0; int valid_base64; - + /* It's possible for a + or a / to cause a base64 quantity to be tokenized into more than one token, so we have to parse them all in before decoding. */ @@ -1925,7 +1925,7 @@ int parse_base64 (data, cfile) data->data = NULL; goto out; } - + j = k = 0; for (t = bufs; t; t = t->next) { for (i = 0; t->string[i]; i++) { @@ -1959,7 +1959,7 @@ int parse_base64 (data, cfile) data->buffer->data[j++] = (acc >> 4); acc = acc & 0x0f; break; - + case 2: data->buffer->data[j++] = (acc >> 2); acc = acc & 0x03; @@ -2057,7 +2057,7 @@ int parse_cshl (data, cfile) dfree (sl, MDL); sl = next; } - + memcpy (rvp, ibuf, ilen); return 1; } @@ -2275,7 +2275,7 @@ int parse_executable_statement (result, cfile, lose, case_context) case ON: skip_token(&val, (unsigned *)0, cfile); return parse_on_statement (result, cfile, lose); - + case SWITCH: skip_token(&val, (unsigned *)0, cfile); return parse_switch_statement (result, cfile, lose); @@ -2297,7 +2297,7 @@ int parse_executable_statement (result, cfile, lose, case_context) if (case_context == context_any) { parse_warn (cfile, "switch default statement in %s", "inappropriate scope."); - + *lose = 1; return 0; } else { @@ -2306,7 +2306,7 @@ int parse_executable_statement (result, cfile, lose, case_context) (*result) -> op = default_statement; return 1; } - + case DEFINE: case TOKEN_SET: skip_token(&val, (unsigned *)0, cfile); @@ -2701,7 +2701,7 @@ int parse_executable_statement (result, cfile, lose, case_context) } dns_zone_dereference (&zone, MDL); return 1; - + /* Also not really a statement, but same idea as above. */ case KEY: skip_token(&val, (unsigned *)0, cfile); @@ -2803,7 +2803,7 @@ int parse_zone (struct dns_zone *zone, struct parse *cfile) log_fatal ("can't allocate primary option cache."); oc = zone -> primary; goto consemup; - + case SECONDARY: if (zone -> secondary) { parse_warn (cfile, "more than one secondary."); @@ -2932,7 +2932,7 @@ int parse_zone (struct dns_zone *zone, struct parse *cfile) if (!parse_semi(cfile)) return (0); break; - + default: done = 1; break; @@ -3121,15 +3121,15 @@ int parse_on_statement (result, cfile, lose) case EXPIRY: (*result) -> data.on.evtypes |= ON_EXPIRY; break; - + case COMMIT: (*result) -> data.on.evtypes |= ON_COMMIT; break; - + case RELEASE: (*result) -> data.on.evtypes |= ON_RELEASE; break; - + case TRANSMISSION: (*result) -> data.on.evtypes |= ON_TRANSMISSION; break; @@ -3143,7 +3143,7 @@ int parse_on_statement (result, cfile, lose) } token = next_token (&val, (unsigned *)0, cfile); } while (token == OR); - + /* Semicolon means no statements. */ if (token == SEMI) return 1; @@ -3419,7 +3419,7 @@ int parse_if_statement (result, cfile, lose) } } else (*result) -> data.ie.fc = (struct executable_statement *)0; - + return 1; } @@ -3433,7 +3433,7 @@ int parse_if_statement (result, cfile, lose) * boolean-expression OR boolean-expression * EXISTS OPTION-NAME */ - + int parse_boolean_expression (expr, cfile, lose) struct expression **expr; struct parse *cfile; @@ -3485,7 +3485,7 @@ int parse_boolean (cfile) * data_expression :== SUBSTRING LPAREN data-expression COMMA * numeric-expression COMMA * numeric-expression RPAREN | - * CONCAT LPAREN data-expression COMMA + * CONCAT LPAREN data-expression COMMA * data-expression RPAREN * SUFFIX LPAREN data_expression COMMA * numeric-expression RPAREN | @@ -4053,7 +4053,7 @@ int parse_non_binary (expr, cfile, lose, context) if (token != RPAREN) goto norparen; break; - + case STRING: skip_token(&val, &len, cfile); if (!make_const_data (expr, (const unsigned char *)val, @@ -4062,7 +4062,7 @@ int parse_non_binary (expr, cfile, lose, context) break; case EXTRACT_INT: - skip_token(&val, (unsigned *)0, cfile); + skip_token(&val, (unsigned *)0, cfile); token = next_token (&val, (unsigned *)0, cfile); if (token != LPAREN) { parse_warn (cfile, "left parenthesis expected."); @@ -4130,9 +4130,9 @@ int parse_non_binary (expr, cfile, lose, context) return 0; } break; - + case ENCODE_INT: - skip_token(&val, (unsigned *)0, cfile); + skip_token(&val, (unsigned *)0, cfile); token = next_token (&val, (unsigned *)0, cfile); if (token != LPAREN) { parse_warn (cfile, "left parenthesis expected."); @@ -4197,7 +4197,7 @@ int parse_non_binary (expr, cfile, lose, context) return 0; } break; - + case NUMBER: /* If we're in a numeric context, this should just be a number, by itself. */ @@ -4232,7 +4232,7 @@ int parse_non_binary (expr, cfile, lose, context) (*expr) -> op = expr_const_int; (*expr) -> data.const_int = known; break; - + case NS_NOERROR: known = ISC_R_SUCCESS; goto ns_const; @@ -4756,19 +4756,19 @@ int parse_expression (expr, cfile, lose, context, plhs, binop) tmp = (struct expression *)0; if (!expression_allocate (&tmp, MDL)) log_fatal ("No memory for equal precedence combination."); - + /* Store the LHS and RHS. */ tmp -> data.equal [0] = lhs; tmp -> data.equal [1] = rhs; tmp -> op = binop; - + lhs = tmp; tmp = (struct expression *)0; rhs = (struct expression *)0; binop = next_op; goto new_rhs; -} +} int parse_option_data (expr, cfile, lookups, option) @@ -4800,7 +4800,7 @@ struct option *option; fmt = option->format; /* 'a' means always uniform */ - if ((fmt[0] != 'Z') && (tolower((unsigned char)fmt[1]) == 'a')) + if ((fmt[0] != 'Z') && (tolower((unsigned char)fmt[1]) == 'a')) uniform = 1; do { @@ -4894,7 +4894,7 @@ int parse_option_statement (result, cfile, lookups, option, op) if ((token == SEMI) && (option->format[0] != 'Z')) { /* Eat the semicolon... */ /* - * XXXSK: I'm not sure why we should ever get here, but we + * XXXSK: I'm not sure why we should ever get here, but we * do during our startup. This confuses things if * we are parsing a zero-length option, so don't * eat the semicolon token in that case. @@ -5059,7 +5059,7 @@ int parse_option_token (rv, cfile, fmt, expr, uniform, lookups) } break; - case 'k': /* key name */ + case 'k': /* key name */ token = peek_token (&val, &len, cfile); if (token == STRING) { token = next_token (&val, &len, cfile); @@ -5132,7 +5132,7 @@ int parse_option_token (rv, cfile, fmt, expr, uniform, lookups) return 0; } break; - + case 'T': /* Lease interval. */ token = next_token (&val, (unsigned *)0, cfile); if (token != INFINITE) @@ -5217,11 +5217,11 @@ int parse_option_token (rv, cfile, fmt, expr, uniform, lookups) } buf[0] = '\0'; if (!make_const_data(&t, /* expression */ - buf, /* buffer */ - 0, /* length */ - 0, /* terminated */ - 1, /* allocate */ - MDL)) + buf, /* buffer */ + 0, /* length */ + 0, /* terminated */ + 1, /* allocate */ + MDL)) return 0; break; @@ -5305,7 +5305,7 @@ int parse_option_decl (oc, cfile) sizeof hunkbuf - hunkix); hunkix += len; break; - + case 't': /* Text string... */ token = peek_token (&val, &len, cfile); @@ -5512,7 +5512,7 @@ int parse_option_decl (oc, cfile) if (!buffer_allocate (&bp, hunkix + nul_term, MDL)) log_fatal ("no memory to store option declaration."); memcpy (bp -> data, hunkbuf, hunkix + nul_term); - + if (!option_cache_allocate (oc, MDL)) log_fatal ("out of memory allocating option cache."); diff --git a/common/resolv.c b/common/resolv.c index 7174fc8e..f59cae88 100644 --- a/common/resolv.c +++ b/common/resolv.c @@ -179,7 +179,7 @@ struct name_server *first_name_server () } if (st.st_mtime > rcdate) { rcdate = cur_time + 1; - + read_resolv_conf (rcdate); } } diff --git a/common/socket.c b/common/socket.c index 5772c13e..c3e5f034 100644 --- a/common/socket.c +++ b/common/socket.c @@ -30,7 +30,7 @@ * This sockopt allows a socket to be bound to a particular interface, * thus enabling the use of DHCPD on a multihomed host. * If SO_BINDTODEVICE is defined in your system header files, the use of - * this sockopt will be automatically enabled. + * this sockopt will be automatically enabled. * I have implemented it under Linux; other systems should be doable also. */ @@ -150,15 +150,15 @@ if_register_socket(struct interface_info *info, int family, once = 1; #endif - /* + /* * Set up the address we're going to bind to, depending on the - * address family. - */ + * address family. + */ memset(&name, 0, sizeof(name)); switch (family) { #ifdef DHCPv6 case AF_INET6: - addr6 = (struct sockaddr_in6 *)&name; + addr6 = (struct sockaddr_in6 *)&name; addr6->sin6_family = AF_INET6; addr6->sin6_port = local_port; #if defined(RELAY_PORT) @@ -194,7 +194,7 @@ if_register_socket(struct interface_info *info, int family, case AF_INET: default: - addr = (struct sockaddr_in *)&name; + addr = (struct sockaddr_in *)&name; addr->sin_family = AF_INET; addr->sin_port = relay_port ? relay_port : local_port; memcpy(&addr->sin_addr, @@ -296,7 +296,7 @@ if_register_socket(struct interface_info *info, int family, */ if (family == AF_INET) { int on = 1; - if (setsockopt(sock, IPPROTO_IP, IP_RECVPKTINFO, + if (setsockopt(sock, IPPROTO_IP, IP_RECVPKTINFO, &on, sizeof(on)) != 0) { log_fatal("Can't set IP_RECVPTKINFO on dhcp socket for" " %s: %m", info->name); @@ -306,7 +306,7 @@ if_register_socket(struct interface_info *info, int family, #ifdef DHCPv6 /* - * If we turn on IPV6_PKTINFO, we will be able to receive + * If we turn on IPV6_PKTINFO, we will be able to receive * additional information, such as the destination IP address. * We need this to spot unicast packets. */ @@ -314,14 +314,14 @@ if_register_socket(struct interface_info *info, int family, int on = 1; #ifdef IPV6_RECVPKTINFO /* RFC3542 */ - if (setsockopt(sock, IPPROTO_IPV6, IPV6_RECVPKTINFO, + if (setsockopt(sock, IPPROTO_IPV6, IPV6_RECVPKTINFO, &on, sizeof(on)) != 0) { log_fatal("setsockopt: IPV6_RECVPKTINFO for %s: %m", info->name); } #else /* RFC2292 */ - if (setsockopt(sock, IPPROTO_IPV6, IPV6_PKTINFO, + if (setsockopt(sock, IPPROTO_IPV6, IPV6_PKTINFO, &on, sizeof(on)) != 0) { log_fatal("setsockopt: IPV6_PKTINFO for %s: %m", info->name); @@ -411,7 +411,7 @@ void if_register_receive (info) MDL); } } - + info->rfdesc = global_v4_socket; global_v4_socket_references++; #else @@ -462,7 +462,7 @@ void if_deregister_receive (info) #endif /* USE_SOCKET_RECEIVE */ -#ifdef DHCPv6 +#ifdef DHCPv6 /* * This function joins the interface to DHCPv6 multicast groups so we will * receive multicast messages. @@ -474,11 +474,11 @@ if_register_multicast(struct interface_info *info) { if (inet_pton(AF_INET6, All_DHCP_Relay_Agents_and_Servers, &mreq.ipv6mr_multiaddr) <= 0) { - log_fatal("inet_pton: unable to convert '%s'", + log_fatal("inet_pton: unable to convert '%s'", All_DHCP_Relay_Agents_and_Servers); } mreq.ipv6mr_interface = if_nametoindex(info->name); - if (setsockopt(sock, IPPROTO_IPV6, IPV6_JOIN_GROUP, + if (setsockopt(sock, IPPROTO_IPV6, IPV6_JOIN_GROUP, &mreq, sizeof(mreq)) < 0) { log_fatal("setsockopt: IPV6_JOIN_GROUP for %s: %m", info->name); @@ -494,11 +494,11 @@ if_register_multicast(struct interface_info *info) { if ((info->flags & INTERFACE_STREAMS) == 0) { if (inet_pton(AF_INET6, All_DHCP_Servers, &mreq.ipv6mr_multiaddr) <= 0) { - log_fatal("inet_pton: unable to convert '%s'", + log_fatal("inet_pton: unable to convert '%s'", All_DHCP_Servers); } mreq.ipv6mr_interface = if_nametoindex(info->name); - if (setsockopt(sock, IPPROTO_IPV6, IPV6_JOIN_GROUP, + if (setsockopt(sock, IPPROTO_IPV6, IPV6_JOIN_GROUP, &mreq, sizeof(mreq)) < 0) { log_fatal("setsockopt: IPV6_JOIN_GROUP for %s: %m", info->name); @@ -545,7 +545,7 @@ if_register6(struct interface_info *info, int do_multicast) { log_info("Bound to *:%d", (int) ntohs(local_port)); } } - + info->rfdesc = global_v6_socket; info->wfdesc = global_v6_socket; global_v6_socket_references++; @@ -582,7 +582,7 @@ if_register6(struct interface_info *info, int do_multicast) { if (!quiet_interface_discovery) { if (info->shared_network != NULL) { log_info("Listening on Socket/%d/%s/%s", - global_v6_socket, info->name, + global_v6_socket, info->name, info->shared_network->name); log_info("Sending on Socket/%d/%s/%s", global_v6_socket, info->name, @@ -610,7 +610,7 @@ if_register_linklocal6(struct interface_info *info) { if (global_v6_socket >= 0) { log_fatal("Impossible condition at %s:%d", MDL); } - + no_global_v6_socket = 1; /* get the (?) link-local address */ @@ -638,7 +638,7 @@ if_register_linklocal6(struct interface_info *info) { if (!quiet_interface_discovery) { if (info->shared_network != NULL) { log_info("Listening on Socket/%d/%s/%s", - global_v6_socket, info->name, + global_v6_socket, info->name, info->shared_network->name); log_info("Sending on Socket/%d/%s/%s", global_v6_socket, info->name, @@ -650,7 +650,7 @@ if_register_linklocal6(struct interface_info *info) { } } -void +void if_deregister6(struct interface_info *info) { /* client case */ if (no_global_v6_socket) { @@ -734,7 +734,7 @@ ssize_t send_packet (interface, packet, raw, len, from, to, hto) pktinfo.ipi_ifindex = interface->ifp->ifr_index; if (setsockopt(interface->wfdesc, IPPROTO_IP, IP_PKTINFO, (char *)&pktinfo, - sizeof(pktinfo)) < 0) + sizeof(pktinfo)) < 0) log_fatal("setsockopt: IP_PKTINFO for %s: %m", (char*)(interface->ifp)); } @@ -761,7 +761,7 @@ ssize_t send_packet (interface, packet, raw, len, from, to, hto) #ifdef DHCPv6 /* - * Solaris 9 is missing the CMSG_LEN and CMSG_SPACE macros, so we will + * Solaris 9 is missing the CMSG_LEN and CMSG_SPACE macros, so we will * synthesize them (based on the BIND 9 technique). */ @@ -831,16 +831,16 @@ allocate_cmsg_cbuf(void) { #endif /* DHCPv6, IP_PKTINFO ... */ #ifdef DHCPv6 -/* - * For both send_packet6() and receive_packet6() we need to use the +/* + * For both send_packet6() and receive_packet6() we need to use the * sendmsg()/recvmsg() functions rather than the simpler send()/recv() * functions. * * In the case of send_packet6(), we need to do this in order to insure - * that the reply packet leaves on the same interface that it arrived - * on. + * that the reply packet leaves on the same interface that it arrived + * on. * - * In the case of receive_packet6(), we need to do this in order to + * In the case of receive_packet6(), we need to do this in order to * get the IP address the packet was sent to. This is used to identify * whether a packet is multicast or unicast. * @@ -898,8 +898,8 @@ ssize_t send_packet6(struct interface_info *interface, dst.sin6_scope_id = ifindex; /* - * Set the data buffer we're sending. (Using this wacky - * "scatter-gather" stuff... we only have a single chunk + * Set the data buffer we're sending. (Using this wacky + * "scatter-gather" stuff... we only have a single chunk * of data to send, so we declare a single vector entry.) */ v.iov_base = (char *)raw; @@ -909,11 +909,11 @@ ssize_t send_packet6(struct interface_info *interface, /* * Setting the interface is a bit more involved. - * - * We have to create a "control message", and set that to + * + * We have to create a "control message", and set that to * define the IPv6 packet information. We could set the * source address if we wanted, but we can safely let the - * kernel decide what that should be. + * kernel decide what that should be. */ m.msg_control = control_buf; m.msg_controllen = control_buf_len; @@ -993,7 +993,7 @@ ssize_t receive_packet (interface, buf, len, from, hfrom) m.msg_namelen = sizeof(*from); /* - * Set the data buffer we're receiving. (Using this wacky + * Set the data buffer we're receiving. (Using this wacky * "scatter-gather" stuff... but we that doesn't really make * sense for us, so we use a single vector entry.) */ @@ -1005,8 +1005,8 @@ ssize_t receive_packet (interface, buf, len, from, hfrom) /* * Getting the interface is a bit more involved. * - * We set up some space for a "control message". We have - * previously asked the kernel to give us packet + * We set up some space for a "control message". We have + * previously asked the kernel to give us packet * information (when we initialized the interface), so we * should get the interface index from that. */ @@ -1018,19 +1018,19 @@ ssize_t receive_packet (interface, buf, len, from, hfrom) if (result >= 0) { /* * If we did read successfully, then we need to loop - * through the control messages we received and + * through the control messages we received and * find the one with our inteface index. */ cmsg = CMSG_FIRSTHDR(&m); while (cmsg != NULL) { - if ((cmsg->cmsg_level == IPPROTO_IP) && + if ((cmsg->cmsg_level == IPPROTO_IP) && (cmsg->cmsg_type == IP_PKTINFO)) { pktinfo = (struct in_pktinfo *)CMSG_DATA(cmsg); ifindex = pktinfo->ipi_ifindex; /* - * We pass the ifindex back to the caller + * We pass the ifindex back to the caller * using the unused hfrom parameter avoiding - * interface changes between sockets and + * interface changes between sockets and * the discover code. */ memcpy(hfrom->hbuf, &ifindex, sizeof(ifindex)); @@ -1062,9 +1062,9 @@ ssize_t receive_packet (interface, buf, len, from, hfrom) #endif /* USE_SOCKET_RECEIVE */ #ifdef DHCPv6 -ssize_t -receive_packet6(struct interface_info *interface, - unsigned char *buf, size_t len, +ssize_t +receive_packet6(struct interface_info *interface, + unsigned char *buf, size_t len, struct sockaddr_in6 *from, struct in6_addr *to_addr, unsigned int *if_idx) { @@ -1100,7 +1100,7 @@ receive_packet6(struct interface_info *interface, m.msg_namelen = sizeof(*from); /* - * Set the data buffer we're receiving. (Using this wacky + * Set the data buffer we're receiving. (Using this wacky * "scatter-gather" stuff... but we that doesn't really make * sense for us, so we use a single vector entry.) */ @@ -1112,8 +1112,8 @@ receive_packet6(struct interface_info *interface, /* * Getting the interface is a bit more involved. * - * We set up some space for a "control message". We have - * previously asked the kernel to give us packet + * We set up some space for a "control message". We have + * previously asked the kernel to give us packet * information (when we initialized the interface), so we * should get the destination address from that. */ @@ -1125,12 +1125,12 @@ receive_packet6(struct interface_info *interface, if (result >= 0) { /* * If we did read successfully, then we need to loop - * through the control messages we received and + * through the control messages we received and * find the one with our destination address. */ cmsg = CMSG_FIRSTHDR(&m); while (cmsg != NULL) { - if ((cmsg->cmsg_level == IPPROTO_IPV6) && + if ((cmsg->cmsg_level == IPPROTO_IPV6) && (cmsg->cmsg_type == IPV6_PKTINFO)) { pktinfo = (struct in6_pktinfo *)CMSG_DATA(cmsg); *to_addr = pktinfo->ipi6_addr; @@ -1230,7 +1230,7 @@ void maybe_setup_fallback () (fbi -> shared_network ? "/" : ""), (fbi -> shared_network ? fbi -> shared_network -> name : "")); - + status = omapi_register_io_object ((omapi_object_t *)fbi, if_readsocket, 0, fallback_discard, 0, 0); diff --git a/common/tables.c b/common/tables.c index 28f34111..5421170c 100644 --- a/common/tables.c +++ b/common/tables.c @@ -86,7 +86,7 @@ HASH_FUNCTIONS (option_code, const unsigned *, struct option, named enumeration. Named enumerations are tracked in parse.c. d - Domain name (e.g., FOO or FOO.BAR) no quotes, on-wire format is RFC 1035. - D - Domain list (e.g., "example.com eng.example.com") quoted, + D - Domain list (e.g., "example.com eng.example.com") quoted, on-wire format is RFC 1035. c - When following a 'D' atom, enables compression pointers. Z - Zero-length option diff --git a/common/tr.c b/common/tr.c index 34183654..70c9b10e 100644 --- a/common/tr.c +++ b/common/tr.c @@ -152,7 +152,7 @@ ssize_t decode_tr_header (interface, buf, bufix, from) && llc->protid[1] == 0 && llc->protid[2] == 0) { /* say there is source routing information present */ - trh->saddr[0] |= TR_RII; + trh->saddr[0] |= TR_RII; } if (trh->saddr[0] & TR_RII) @@ -199,7 +199,7 @@ static int insert_source_routing (trh, interface) /* single route broadcasts as per rfc 1042 */ if (memcmp(trh->daddr, tr_broadcast,TR_ALEN) == 0) { trh->saddr[0] |= TR_RII; - trh->rcf = ((sizeof(trh->rcf)) << 8) & TR_RCF_LEN_MASK; + trh->rcf = ((sizeof(trh->rcf)) << 8) & TR_RCF_LEN_MASK; trh->rcf |= (TR_RCF_FRAME2K | TR_RCF_LIMITED_BROADCAST); trh->rcf = htons(trh->rcf); } else { @@ -214,7 +214,7 @@ static int insert_source_routing (trh, interface) if ((rover->rcf & TR_RCF_LEN_MASK) >> 8) { u_int16_t rcf = rover->rcf; memcpy(trh->rseg,rover->rseg,sizeof(trh->rseg)); - rcf ^= TR_RCF_DIR_BIT; + rcf ^= TR_RCF_DIR_BIT; rcf &= ~TR_RCF_BROADCAST_MASK; trh->rcf = htons(rcf); trh->saddr[0] |= TR_RII; @@ -224,7 +224,7 @@ static int insert_source_routing (trh, interface) /* we don't have any routing information so send a * limited broadcast */ trh->saddr[0] |= TR_RII; - trh->rcf = ((sizeof(trh->rcf)) << 8) & TR_RCF_LEN_MASK; + trh->rcf = ((sizeof(trh->rcf)) << 8) & TR_RCF_LEN_MASK; trh->rcf |= (TR_RCF_FRAME2K | TR_RCF_LIMITED_BROADCAST); trh->rcf = htons(trh->rcf); } diff --git a/common/tree.c b/common/tree.c index b9d5d76d..e17df578 100644 --- a/common/tree.c +++ b/common/tree.c @@ -42,14 +42,14 @@ static int do_host_lookup (struct data_string *, struct dns_host_entry *); #define DS_SPRINTF_SIZE 128 /* - * If we are using a data_string structure to hold a NUL-terminated - * ASCII string, this function can be used to append a printf-formatted + * If we are using a data_string structure to hold a NUL-terminated + * ASCII string, this function can be used to append a printf-formatted * string to the end of it. The data_string structure will be resized to * be big enough to hold the new string. * * If the append works, then 1 is returned. * - * If it is not possible to allocate a buffer big enough to hold the + * If it is not possible to allocate a buffer big enough to hold the * new value, then the old data_string is unchanged, and 0 is returned. */ int @@ -81,7 +81,7 @@ data_string_sprintfa(struct data_string *ds, const char *fmt, ...) { cur_strlen = strlen((char *)ds->data); max = ds->len - cur_strlen; - /* + /* * Use vsnprintf(), which won't write past our space, but will * tell us how much space it wants. */ @@ -94,7 +94,7 @@ data_string_sprintfa(struct data_string *ds, const char *fmt, ...) { * If our buffer is not big enough, we need a new buffer. */ if (vsnprintf_ret >= max) { - /* + /* * Figure out a size big enough. */ new_len = ds->len * 2; @@ -102,13 +102,13 @@ data_string_sprintfa(struct data_string *ds, const char *fmt, ...) { new_len *= 2; } - /* + /* * Create a new buffer and fill it. */ tmp_buffer = NULL; if (!buffer_allocate(&tmp_buffer, new_len, MDL)) { - /* - * If we can't create a big enough buffer, + /* + * If we can't create a big enough buffer, * we should remove any truncated output that we had. */ *((char *)ds->data+cur_strlen) = '\0'; @@ -240,7 +240,7 @@ int make_const_data (struct expression **expr, const unsigned char *data, &nt -> data.const_data.buffer -> data [0]; memcpy (nt -> data.const_data.buffer -> data, data, len + terminated); - } else + } else nt -> data.const_data.data = data; nt -> data.const_data.terminated = terminated; } else @@ -282,13 +282,13 @@ int make_concat (expr, left, right) expression_reference (expr, left, MDL); return 1; } - + /* Otherwise, allocate a new node to concatenate the two. */ if (!expression_allocate (expr, MDL)) { log_error ("No memory for concatenation expression node."); return 0; } - + (*expr) -> op = expr_concat; expression_reference (&(*expr) -> data.concat [0], left, MDL); expression_reference (&(*expr) -> data.concat [1], right, MDL); @@ -304,7 +304,7 @@ int make_encapsulation (expr, name) log_error ("No memory for encapsulation expression node."); return 0; } - + (*expr) -> op = expr_encapsulate; data_string_copy (&(*expr) -> data.encapsulate, name, MDL); return 1; @@ -380,7 +380,7 @@ int make_let (result, name) { if (!(executable_statement_allocate (result, MDL))) return 0; - + (*result) -> op = let_statement; (*result) -> data.let.name = dmalloc (strlen (name) + 1, MDL); if (!(*result) -> data.let.name) { @@ -390,7 +390,7 @@ int make_let (result, name) strcpy ((*result) -> data.let.name, name); return 1; } - + static int do_host_lookup (result, dns) struct data_string *result; struct dns_host_entry *dns; @@ -457,7 +457,7 @@ static int do_host_lookup (result, dns) /* Count the number of addresses we got... */ for (count = 0; h -> h_addr_list [count]; count++) ; - + /* Dereference the old data, if any. */ data_string_forget (&dns -> data, MDL); @@ -1571,8 +1571,8 @@ int evaluate_data_expression (result, packet, lease, client_state, result -> data, 20)); #endif return s0; - - + + case expr_encode_int16: s0 = evaluate_numeric_expression (&len, packet, lease, client_state, @@ -1994,7 +1994,7 @@ int evaluate_data_expression (result, packet, lease, client_state, memchr (packet -> raw -> sname, 0, sizeof packet -> raw -> sname); if (!fn) - fn = ((char *)packet -> raw -> sname + + fn = ((char *)packet -> raw -> sname + sizeof packet -> raw -> sname); result -> len = fn - &packet -> raw -> sname [0]; if (buffer_allocate (&result -> buffer, @@ -2080,7 +2080,7 @@ int evaluate_data_expression (result, packet, lease, client_state, /* no number or an obviously invalid number */ if ((s0 == 0) || - ((len > 0) && + ((len > 0) && ((packet == NULL) || (packet->dhcpv6_container_packet == NULL)))) { #if defined (DEBUG_EXPRESSIONS) @@ -2093,7 +2093,7 @@ int evaluate_data_expression (result, packet, lease, client_state, i = len; relay_packet = packet; relay_options = in_options; - while ((i != 0) && + while ((i != 0) && (relay_packet->dhcpv6_container_packet != NULL)) { relay_packet = relay_packet->dhcpv6_container_packet; relay_options = relay_packet->options; @@ -2224,7 +2224,7 @@ int evaluate_data_expression (result, packet, lease, client_state, log_error ("Bogus opcode in evaluate_data_expression: %d", expr -> op); return 0; -} +} int evaluate_numeric_expression (result, packet, lease, client_state, in_options, cfg_options, scope, expr) @@ -2377,7 +2377,7 @@ int evaluate_numeric_expression (result, packet, lease, client_state, (long unsigned)cur_time, *result); #endif return (1); - + case expr_variable_reference: if (scope && *scope) { binding = find_binding (*scope, expr -> data.variable); @@ -2793,7 +2793,7 @@ int evaluate_boolean_expression_result (ignorep, packet, lease, client_state, /* So that we can be called with option_lookup as an argument. */ if (!expr) return 0; - + if (!evaluate_boolean_expression (&result, packet, lease, client_state, in_options, cfg_options, scope, expr)) @@ -2806,7 +2806,7 @@ int evaluate_boolean_expression_result (ignorep, packet, lease, client_state, *ignorep = 0; return result; } - + /* Dereference an expression node, and if the reference count goes to zero, dereference any data it refers to, and then free it. */ @@ -3318,7 +3318,7 @@ int write_expression (file, expr, col, indent, firstp) case expr_none: col = token_print_indent (file, col, indent, "", "", "null"); break; - + case expr_check: col = token_print_indent (file, col, indent, "", "", "check"); col = token_print_indent_concat (file, col, indent, @@ -3483,7 +3483,7 @@ int write_expression (file, expr, col, indent, firstp) if (expr -> data.option -> universe != &dhcp_universe) { col = token_print_indent (file, col, indent, " ", "", - (expr -> data.option -> + (expr -> data.option -> universe -> name)); col = token_print_indent (file, col, indent, "", "", "."); @@ -3495,7 +3495,7 @@ int write_expression (file, expr, col, indent, firstp) } break; - case expr_hardware: + case expr_hardware: col = token_print_indent (file, col, indent, "", "", "hardware"); break; @@ -3941,7 +3941,7 @@ int data_subexpression_length (int *rv, else *rv = lrhs; return 1; - + case expr_v6relay: clhs = data_subexpression_length (&llhs, expr -> data.v6relay.relay); @@ -4148,11 +4148,11 @@ int unset (struct binding_scope *scope, const char *name) /*! * \brief Adds two Dc-formatted lists into a single Dc-formatted list * - * Given two data_strings containing compressed lists, it constructs a + * Given two data_strings containing compressed lists, it constructs a * third data_string containing a single compressed list: * * 1. Decompressing the first list into a buffer - * 2. Decompressing the second list onto the end of the buffer + * 2. Decompressing the second list onto the end of the buffer * 3. Compressing the buffer into the result * * If either list is empty, the result will be the equal to the compressed @@ -4161,17 +4161,17 @@ int unset (struct binding_scope *scope, const char *name) * * It relies on two functions to decompress and compress: * - * - MRns_name_uncompress_list() - produces a null-terminated string of + * - MRns_name_uncompress_list() - produces a null-terminated string of * comma-separated domain-names from a buffer containing "Dc" formatted * data * * - MRns_name_compress_list() - produces a buffer containing "Dc" formatted * data from a null-terminated string containing comma-separated domain-names - * + * * \param result data_string which will contain the combined list * in Dc format - * \param list1 data_string containing first Dc formatted list - * \param list2 data_string containing second Dc formatted list + * \param list1 data_string containing first Dc formatted list + * \param list2 data_string containing second Dc formatted list * \return 0 if there is an error, the length of the new list when successful */ int concat_dclists (struct data_string* result, diff --git a/common/upf.c b/common/upf.c index b1a38e15..85a1187e 100644 --- a/common/upf.c +++ b/common/upf.c @@ -94,7 +94,7 @@ int if_register_upf (info) info -> name); /* We only know how to do ethernet. */ - if (param.end_dev_type != ENDT_10MB) + if (param.end_dev_type != ENDT_10MB) log_fatal ("Invalid device type on network interface %s: %d", info -> name, param.end_dev_type); diff --git a/dhcpctl/callback.c b/dhcpctl/callback.c index 46428fee..5ab28c37 100644 --- a/dhcpctl/callback.c +++ b/dhcpctl/callback.c @@ -66,7 +66,7 @@ dhcpctl_status dhcpctl_set_callback (dhcpctl_handle h, void *data, omapi_object_reference (&callback -> object, h, MDL); callback -> data = data; callback -> callback = func; - + return ISC_R_SUCCESS; } @@ -93,7 +93,7 @@ isc_result_t dhcpctl_callback_get_value (omapi_object_t *h, { if (h -> type != dhcpctl_callback_type) return DHCP_R_INVALIDARG; - + if (h -> inner && h -> inner -> type -> get_value) return (*(h -> inner -> type -> get_value)) (h -> inner, id, name, value); @@ -159,4 +159,3 @@ isc_result_t dhcpctl_callback_stuff_values (omapi_object_t *c, p -> inner); return ISC_R_SUCCESS; } - diff --git a/dhcpctl/cltest.c b/dhcpctl/cltest.c index 0e180dde..ea03d3b3 100644 --- a/dhcpctl/cltest.c +++ b/dhcpctl/cltest.c @@ -99,7 +99,7 @@ int main (argc, argv) int mode = undefined; const char *interface = 0; const char *action; - + for (i = 1; i < argc; i++) { if (!strcmp (argv[i], "-u")) { mode = up; diff --git a/dhcpctl/dhcpctl.3 b/dhcpctl/dhcpctl.3 index 98d8294a..dcc08992 100644 --- a/dhcpctl/dhcpctl.3 +++ b/dhcpctl/dhcpctl.3 @@ -3,7 +3,7 @@ .\" Project: DHCP .\" File: dhcpctl.3 .\" RCSId: $Id: dhcpctl.3,v 1.9 2011/04/25 23:43:16 sar Exp $ -.\" +.\" .\" Copyright (c) 2011,2014 by Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 2004,2009 by Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 2000-2003 by Internet Software Consortium @@ -26,9 +26,9 @@ .\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ -.\" +.\" .\" Description: dhcpctl man page. -.\" +.\" .\" .Dd Nov 15, 2000 .Dt DHCPCTL 3 @@ -207,8 +207,8 @@ with and manipulate a running ISC DHCP server. All functions return a value of The return values reflects the result of operations to local data structures. If an operation fails on the server for any reason, then the error result will be returned through the -second parameter of the -.Fn dhcpctl_wait_for_completion +second parameter of the +.Fn dhcpctl_wait_for_completion call. .\" .\" @@ -241,13 +241,13 @@ of the request as processed on the server is returned via the second parameter. .Bd -literal -offset indent s = dhcpctl_wait_for_completion(cxn, &wv); -if (s != ISC_R_SUCCESS) +if (s != ISC_R_SUCCESS) local_failure(s); else if (wv != ISC_R_SUCCESS) server_failure(wc); .Ed .Pp -The call to +The call to .Fn dhcpctl_wait_for_completion won't return until the remote message processing completes or the connection to the server is lost. @@ -290,7 +290,7 @@ The .Fn dhcpctl_set_boolean_value , and .Fn dhcpctl_set_int_value -functions all set a value on the object handle. +functions all set a value on the object handle. .\" .\" .\" @@ -319,7 +319,7 @@ handle. .\" .\" .Pp -The +The .Fn dhcpctl_set_callback function sets up a user-defined function to be called when an event completes on the given object handle. This is needed for asynchronous handling of @@ -327,23 +327,23 @@ events, versus the synchronous handling given by .Fn dhcpctl_wait_for_completion . When the function is called the first parameter is the object the event arrived for, the second is the status of the message that was processed, the -third is the same value as the second parameter given to +third is the same value as the second parameter given to .Fn dhcpctl_set_callback . .\" .\" .\" .Pp -The +The .Fn dhcpctl_new_authenticator creates a new authenticator object to be used for signing the messages -that cross over the network. The +that cross over the network. The .Dq name , .Dq algorithm , -and +and .Dq secret values must all match what the server uses and are defined in its configuration file. The created object is returned through the first parameter -and must be used as the 4th parameter to +and must be used as the 4th parameter to .Fn dhcpctl_connect . Note that the 'secret' value must not be base64 encoded, which is different from how the value appears in the dhcpd.conf file. @@ -352,11 +352,11 @@ from how the value appears in the dhcpd.conf file. .\" .Pp .Fn dhcpctl_new_object -creates a local handle for an object on the server. The +creates a local handle for an object on the server. The .Dq object_type -parameter is the ascii name of the type of object being accessed. e.g. +parameter is the ascii name of the type of object being accessed. e.g. .Qq lease . -This function only sets up local data structures, it does not queue any +This function only sets up local data structures, it does not queue any messages to be sent to the remote side, .Fn dhcpctl_open_object @@ -385,22 +385,22 @@ was also specified .\" .\" .Pp -The +The .Fn omapi_data_string_new function allocates a new .Ft dhcpctl_data_string -object. The data string will be large enough to hold +object. The data string will be large enough to hold .Dq length bytes of data. The -.Dq file +.Dq file and .Dq lineno arguments are the source file location the call is made from, typically by -using the +using the .Dv __FILE__ and .Dv __LINE__ -macros or the +macros or the .Dv MDL macro defined in . @@ -414,11 +414,11 @@ deallocates a data string created by The memory for the object won't be freed until the last reference is released. .Sh EXAMPLES -.Pp +.Pp The following program will connect to the DHCP server running on the local host and will get the details of the existing lease for IP address 10.0.0.101. It will then print out the time the lease is due to expire. Note -that most error checking has been omitted for brevity. +that most error checking has been omitted for brevity. .Bd -literal -offset indent #include #include @@ -446,7 +446,7 @@ int main (int argc, char **argv) { dhcpctl_connect (&connection, "127.0.0.1", 7911, 0); - + dhcpctl_new_object (&lease, connection, "lease"); @@ -492,4 +492,3 @@ omapi(3), omshell(1), dhcpd(8), dhclient(8), dhcpd.conf(5), dhclient.conf(5). is maintained by ISC. To learn more about Internet Systems Consortium, see .B https://www.isc.org - diff --git a/dhcpctl/dhcpctl.c b/dhcpctl/dhcpctl.c index 0f800216..3c78bc19 100644 --- a/dhcpctl/dhcpctl.c +++ b/dhcpctl/dhcpctl.c @@ -86,7 +86,7 @@ dhcpctl_status dhcpctl_initialize () synchronous returns nonzero status code if it didn't connect, zero otherwise stores connection handle through connection, which can be used - for subsequent access to the specified server. + for subsequent access to the specified server. server_name is the name of the server, and port is the TCP port on which it is listening. authinfo is the handle to an object containing authentication @@ -150,7 +150,7 @@ dhcpctl_status dhcpctl_wait_for_completion (dhcpctl_handle h, synchronous returns zero if the call succeeded, a nonzero status code if - it didn't. + it didn't. result is the address of an empty data string (initialized with bzero or cleared with data_string_forget). On successful completion, the addressed data string will contain @@ -232,7 +232,7 @@ dhcpctl_status dhcpctl_get_boolean (int *result, isc_result_t status; dhcpctl_data_string data = (dhcpctl_data_string)0; int rv; - + status = dhcpctl_get_value (&data, h, value_name); if (status != ISC_R_SUCCESS) return status; diff --git a/dhcpctl/dhcpctl.h b/dhcpctl/dhcpctl.h index 94ab6129..3c0da74b 100644 --- a/dhcpctl/dhcpctl.h +++ b/dhcpctl/dhcpctl.h @@ -87,7 +87,7 @@ isc_result_t dhcpctl_callback_set_value (omapi_object_t *, omapi_object_t *, omapi_typed_data_t *); isc_result_t dhcpctl_callback_get_value (omapi_object_t *, omapi_object_t *, omapi_data_string_t *, - omapi_value_t **); + omapi_value_t **); isc_result_t dhcpctl_callback_destroy (omapi_object_t *, const char *, int); isc_result_t dhcpctl_callback_signal_handler (omapi_object_t *, const char *, va_list); @@ -107,7 +107,7 @@ isc_result_t dhcpctl_remote_set_value (omapi_object_t *, omapi_object_t *, omapi_typed_data_t *); isc_result_t dhcpctl_remote_get_value (omapi_object_t *, omapi_object_t *, omapi_data_string_t *, - omapi_value_t **); + omapi_value_t **); isc_result_t dhcpctl_remote_destroy (omapi_object_t *, const char *, int); isc_result_t dhcpctl_remote_signal_handler (omapi_object_t *, const char *, va_list); diff --git a/dhcpctl/omshell.1 b/dhcpctl/omshell.1 index 02fb3874..ab484cda 100644 --- a/dhcpctl/omshell.1 +++ b/dhcpctl/omshell.1 @@ -341,4 +341,3 @@ dhcpctl(3), omapi(3), dhcpd(8), dhclient(8), dhcpd.conf(5), dhclient.conf(5). is maintained by ISC. To learn more about Internet Systems Consortium, see .B https://www.isc.org - diff --git a/dhcpctl/omshell.c b/dhcpctl/omshell.c index 31fa9367..d5d31aa8 100644 --- a/dhcpctl/omshell.c +++ b/dhcpctl/omshell.c @@ -81,7 +81,7 @@ static void check (isc_result_t status, const char *func) { } } -int +int main(int argc, char **argv) { isc_result_t status, waitstatus; dhcpctl_handle connection; @@ -132,7 +132,7 @@ main(int argc, char **argv) { dhcpctl_remote_object_t *r = (dhcpctl_remote_object_t *)oh; omapi_generic_object_t *g = (omapi_generic_object_t *)(r -> inner); - + printf ("obj: "); if (r -> rtype -> type != omapi_datatype_string) { @@ -142,16 +142,16 @@ main(int argc, char **argv) { (int)(r -> rtype -> u . buffer . len), r -> rtype -> u . buffer . value); } - + for (i = 0; i < g -> nvalues; i++) { omapi_value_t *v = g -> values [i]; - + if (!g -> values [i]) continue; printf ("%.*s = ", (int)v -> name -> len, v -> name -> value); - + if (!v -> value) { printf ("\n"); continue; @@ -161,20 +161,20 @@ main(int argc, char **argv) { printf ("%d\n", v -> value -> u . integer); break; - + case omapi_datatype_string: printf ("\"%.*s\"\n", (int) v -> value -> u.buffer.len, v -> value -> u.buffer.value); break; - + case omapi_datatype_data: print_hex_or_string(v->value->u.buffer.len, v->value->u.buffer.value, sizeof(hex_buf), hex_buf); printf("%s\n", hex_buf); break; - + case omapi_datatype_object: printf ("\n"); break; @@ -189,18 +189,18 @@ main(int argc, char **argv) { status = new_parse (&cfile, -1, buf, strlen(buf), "", 1); check(status, "new_parse()"); - + token = next_token (&val, (unsigned *)0, cfile); switch (token) { default: parse_warn (cfile, "unknown token: %s", val); skip_to_semi (cfile); break; - + case END_OF_FILE: case ENDOFLINE: /* EOL: */ break; - + case TOKEN_HELP: case QUESTIONMARK: /* '?': */ printf ("Commands:\n"); @@ -218,7 +218,7 @@ main(int argc, char **argv) { printf (" remove\n"); skip_to_semi (cfile); break; - + case PORT: token = next_token (&val, (unsigned *)0, cfile); if (is_identifier (token)) { @@ -433,13 +433,13 @@ main(int argc, char **argv) { printf ("usage: new \n"); break; } - + if (oh) { printf ("an object is already open.\n"); skip_to_semi (cfile); break; } - + if (!connected) { printf ("not connected.\n"); skip_to_semi (cfile); @@ -452,7 +452,7 @@ main(int argc, char **argv) { isc_result_totext (status)); break; } - + token = next_token (&val, (unsigned *)0, cfile); if (token != END_OF_FILE && token != EOL) { printf ("usage: new \n"); @@ -481,7 +481,7 @@ main(int argc, char **argv) { break; } omapi_object_dereference (&oh, MDL); - + break; case TOKEN_SET: @@ -493,13 +493,13 @@ main(int argc, char **argv) { skip_to_semi (cfile); break; } - + if (oh == NULL) { printf ("no open object.\n"); skip_to_semi (cfile); break; } - + if (!connected) { printf ("not connected.\n"); skip_to_semi (cfile); @@ -512,7 +512,7 @@ main(int argc, char **argv) { s1[0] = 0; strncat (s1, val, sizeof(s1)-strlen(s1)-1); #endif - + token = next_token (&val, (unsigned *)0, cfile); if (token != EQUAL) goto set_usage; @@ -523,7 +523,7 @@ main(int argc, char **argv) { dhcpctl_set_string_value (oh, val, s1); token = next_token (&val, (unsigned *)0, cfile); break; - + case NUMBER: strcpy (buf, val); token = peek_token (&val, (unsigned *)0, cfile); @@ -561,7 +561,7 @@ main(int argc, char **argv) { token = next_token (&val, (unsigned *)0, cfile); badnum: break; - + case NUMBER_OR_NAME: strcpy (buf, val); cshl: @@ -587,11 +587,11 @@ main(int argc, char **argv) { printf ("invalid value.\n"); skip_to_semi (cfile); } - + if (token != END_OF_FILE && token != EOL) goto set_usage; break; - + case UNSET: token = next_token (&val, (unsigned *)0, cfile); @@ -601,13 +601,13 @@ main(int argc, char **argv) { skip_to_semi (cfile); break; } - + if (!oh) { printf ("no open object.\n"); skip_to_semi (cfile); break; } - + if (!connected) { printf ("not connected.\n"); skip_to_semi (cfile); @@ -620,7 +620,7 @@ main(int argc, char **argv) { s1[0] = 0; strncat (s1, val, sizeof(s1)-strlen(s1)-1); #endif - + token = next_token (&val, (unsigned *)0, cfile); if (token != END_OF_FILE && token != EOL) goto unset_usage; @@ -628,7 +628,7 @@ main(int argc, char **argv) { dhcpctl_set_null_value (oh, s1); break; - + case TOKEN_CREATE: case TOKEN_OPEN: i = token; @@ -638,7 +638,7 @@ main(int argc, char **argv) { skip_to_semi (cfile); break; } - + if (!connected) { printf ("not connected.\n"); skip_to_semi (cfile); @@ -655,7 +655,7 @@ main(int argc, char **argv) { i = DHCPCTL_CREATE | DHCPCTL_EXCL; else i = 0; - + status = dhcpctl_open_object (oh, connection, i); if (status == ISC_R_SUCCESS) status = dhcpctl_wait_for_completion @@ -667,7 +667,7 @@ main(int argc, char **argv) { isc_result_totext (status)); break; } - + break; case UPDATE: @@ -677,7 +677,7 @@ main(int argc, char **argv) { skip_to_semi (cfile); break; } - + if (!connected) { printf ("not connected.\n"); skip_to_semi (cfile); @@ -701,7 +701,7 @@ main(int argc, char **argv) { isc_result_totext (status)); break; } - + break; case REMOVE: @@ -711,7 +711,7 @@ main(int argc, char **argv) { skip_to_semi (cfile); break; } - + if (!connected) { printf ("not connected.\n"); break; @@ -743,7 +743,7 @@ main(int argc, char **argv) { skip_to_semi (cfile); break; } - + if (!connected) { printf ("not connected.\n"); break; @@ -765,7 +765,7 @@ main(int argc, char **argv) { isc_result_totext (status)); break; } - + break; } end_parse (&cfile); diff --git a/dhcpctl/remote.c b/dhcpctl/remote.c index a35e5ce1..0ec119a4 100644 --- a/dhcpctl/remote.c +++ b/dhcpctl/remote.c @@ -164,7 +164,7 @@ dhcpctl_status dhcpctl_new_object (dhcpctl_handle *h, flags include: DHCPCTL_CREATE - if the object doesn't exist, create it DHCPCTL_UPDATE - update the object on the server using the - attached parameters + attached parameters DHCPCTL_EXCL - error if the object exists and DHCPCTL_CREATE was also specified */ @@ -281,7 +281,7 @@ isc_result_t dhcpctl_remote_get_value (omapi_object_t *h, { if (h -> type != dhcpctl_remote_type) return DHCP_R_INVALIDARG; - + if (h -> inner && h -> inner -> type -> get_value) return (*(h -> inner -> type -> get_value)) (h -> inner, id, name, value); @@ -352,4 +352,3 @@ isc_result_t dhcpctl_remote_stuff_values (omapi_object_t *c, p -> inner); return ISC_R_SUCCESS; } - diff --git a/doc/References.html b/doc/References.html index 30745d49..759bb5df 100644 --- a/doc/References.html +++ b/doc/References.html @@ -301,7 +301,7 @@ Definition: Reference Implementation first provide a reference.

- +

That is the lofty goal, at any rate. It's well understood that, especially because the ISC DHCP Software package has not always been @@ -394,7 +394,7 @@ Low Layer References the need to implement many forms of Link Layer framing and above. The software gets away with not having to implement IP routing tables as well by simply utilizing the aforementioned 'fallback' - UDP socket when unicasting between two configured systems is + UDP socket when unicasting between two configured systems is needed.

Modern unixes have opened up some facilities that diminish how @@ -645,7 +645,7 @@ Experimental: Failover References DHCP clients on given networks, so that one of the two servers may fail and be survived by a server that can act responsibly.

-

Unfortunately it has been quite some years (2003) since the last +

Unfortunately it has been quite some years (2003) since the last time this document was edited, and the authors no longer show any interest in fielding comments or improving the document.

@@ -676,7 +676,7 @@ Experimental: Failover References communications-interrupted. This is supported using a new 'rewind state' record on the dhcpd.leases entry for each lease. - +

[RFC3074] (Volz, B., Gonczi, S., Lemon, T., and R. Stevens, “DHC Load Balancing Algorithm,” February 2001.) describes the Load Balancing Algorithm (LBA) that ISC DHCP uses in concert with the Failover @@ -734,7 +734,7 @@ DHCPv6 Protocol References beneath options it also contains.

- +

Precisely how to correctly support the above conundrums has not quite yet been settled, so support is incomplete. @@ -1015,9 +1015,9 @@ References Internet Systems Consortium, Inc.   -950 Charter Street +PO Box 360   -Redwood City, CA 94063 +Newmarket, NH 03857 USA      Tomasz Mrugalski @@ -1025,9 +1025,9 @@ References Internet Systems Consortium, Inc.   -950 Charter Street +PO Box 360   -Redwood City, CA 94063 +Newmarket, NH 03857 USA Phone:  +1 650 423 1345 Email:  diff --git a/doc/References.xml b/doc/References.xml index efdc2092..95162ded 100644 --- a/doc/References.xml +++ b/doc/References.xml @@ -313,7 +313,7 @@ the need to implement many forms of Link Layer framing and above. The software gets away with not having to implement IP routing tables as well by simply utilizing the aforementioned 'fallback' - UDP socket when unicasting between two configured systems is + UDP socket when unicasting between two configured systems is needed. Modern unixes have opened up some facilities that diminish how @@ -526,7 +526,7 @@ DHCP clients on given networks, so that one of the two servers may fail and be survived by a server that can act responsibly. - Unfortunately it has been quite some years (2003) since the last + Unfortunately it has been quite some years (2003) since the last time this document was edited, and the authors no longer show any interest in fielding comments or improving the document. diff --git a/doc/ja_JP.eucJP/dhclient-script.8 b/doc/ja_JP.eucJP/dhclient-script.8 index 9ebcf3f0..d8f76001 100644 --- a/doc/ja_JP.eucJP/dhclient-script.8 +++ b/doc/ja_JP.eucJP/dhclient-script.8 @@ -16,8 +16,8 @@ .\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Internet Systems Consortium, Inc. -.\" 950 Charter Street -.\" Redwood City, CA 94063 +.\" PO Box 360 +.\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ .\" @@ -25,211 +25,211 @@ .\" .\" $FreeBSD: doc/ja_JP.eucJP/man/man8/dhclient-script.8,v 1.13 2002/05/08 03:27:27 horikawa Exp $ .TH dhclient-script 8 -.SH ̾¾Î -dhclient-script - DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Î¥Í¥Ã¥È¥ï¡¼¥¯ÀßÄꥹ¥¯¥ê¥×¥È -.SH ²òÀâ -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Î¥Í¥Ã¥È¥ï¡¼¥¯ÀßÄꥹ¥¯¥ê¥×¥È¤Ï¡¢ -»þ¤¢¤ë¤´¤È¤Ë \fBdhclient(8)\fR ¤¬¸Æ¤Ó½Ð¤·¤Þ¤¹¡£ -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢ËÜ¥¹¥¯¥ê¥×¥È¤ò»ÈÍѤ¹¤ë¤³¤È¤Ë¤è¤ê¡¢ -¥¢¥É¥ì¥¹Í×µá¤ËÀèΩ¤Ä³Æ¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î½é´üÀßÄê¤È¡¢ -ÉÕÍ¿¤µ¤ì¤¿¥¢¥É¥ì¥¹¤Î¸¡ºº¤È¡¢ -¥ê¡¼¥¹³ÍÆÀ»þ¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÎºÇ½ªÀßÄê¤ò¹Ô¤¤¤Þ¤¹¡£ -¥ê¡¼¥¹¤¬³ÍÆÀ¤µ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢ -ÄêµÁºÑ¤ß¤Î¥ê¡¼¥¹¤¬Â¸ºß¤¹¤ë¤Ê¤é¤Ð¤³¤ì¤ò¸¡ºº¤¹¤ë¤¿¤á¤ËËÜ¥¹¥¯¥ê¥×¥È¤Ï»ÈÍѤµ¤ì¡¢ -Í­¸ú¤Ê¥ê¡¼¥¹¤¬È½ÌÀ¤·¤Ê¤«¤Ã¤¿¾ì¹ç¤Ë¤â¤â¤¦ 1 ²ó¤³¤Î¥¹¥¯¥ê¥×¥È¤¬¸Æ¤Ð¤ì¤Þ¤¹¡£ +.SH ̾�� +dhclient-script - DHCP ���饤����ȤΥͥåȥ�����ꥹ����ץ� +.SH ���� +DHCP ���饤����ȤΥͥåȥ�����ꥹ����ץȤϡ� +�����뤴�Ȥ� \fBdhclient(8)\fR ���ƤӽФ��ޤ��� +DHCP ���饤����Ȥϡ��ܥ�����ץȤ���Ѥ��뤳�Ȥˤ�ꡢ +���ɥ쥹�׵����Ω�ijƥ��󥿥ե������ν������ȡ� +��Ϳ���줿���ɥ쥹�θ����ȡ� +�꡼���������Υ��󥿥ե������κǽ������Ԥ��ޤ��� +�꡼������������ʤ��ä���硢 +����ѤߤΥ꡼����¸�ߤ���ʤ�Ф���ò¸¡ºï¿½ï¿½ï¿½ï¿½ë¤¿ï¿½ï¿½ï¿½ï¿½Ü¥ï¿½ï¿½ï¿½ï¿½ï¿½×¥È¤Ï»ï¿½ï¿½Ñ¤ï¿½ï¿½ì¡¢ +ͭ���ʥ꡼����Ƚ�����ʤ��ä����ˤ�⤦ 1 �󤳤Υ�����ץȤ��ƤФ�ޤ��� .PP -ËÜ¥¹¥¯¥ê¥×¥È¤Ï¡¢¥¨¥ó¥É¥æ¡¼¥¶¤Ë¥«¥¹¥¿¥Þ¥¤¥º¤µ¤ì¤ë¤³¤È¤ò°Õ¿Þ¤·¤Æ¤¤¤Þ¤»¤ó¡£ -¥í¡¼¥«¥ë¤Ê¥«¥¹¥¿¥Þ¥¤¥º¤¬É¬Íפʾì¹ç¡¢ -¤³¤ì¤ÏÆþ (enter) ¤È½Ð (exit) ¤È¤¤¤¦¥Õ¥Ã¥¯¤ò»ÈÍѤ¹¤ë¤³¤È¤Ç²Äǽ¤È¤Ê¤ê¤Þ¤¹ -(¾ÜºÙ¤Ï¥Õ¥Ã¥¯»²¾È)¡£ -¤³¤ì¤é¤Î¥Õ¥Ã¥¯¤Ï¡¢ +�ܥ�����ץȤϡ�����ɥ桼���˥������ޥ�������뤳�Ȥ�տޤ��Ƥ��ޤ��� +��������ʥ������ޥ�����ɬ�פʾ�硢 +������� (enter) �Ƚ� (exit) �Ȥ����եå�����Ѥ��뤳�ȤDz�ǽ�Ȥʤ�ޤ� +(�ܺ٤ϥեå�����)�� +�����Υեå��ϡ� .B /etc/resolv.conf -ºîÀ®»þ¤Ë¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤Î¥Ç¥Õ¥©¥ë¥ÈÆ°ºî¤ò¥æ¡¼¥¶¤¬¥ª¡¼¥Ð¥é¥¤¥É¤Ç¤­¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£ +�������ˡ� +���饤����ȤΥǥե����ư���桼���������Х饤�ɤǤ���褦�ˤ��ޤ��� .PP -ÆÃÄê¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤Ç¤Ï¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤Î¼ÂÂΤÏÆ°ºî¤¹¤ë¤È¤·¤Æ¤â¡¢ -ɸ½à¤Î¥¹¥¯¥ê¥×¥È¤¬Æ°ºî¤·¤Ê¤¤¤«¤â¤·¤ì¤Þ¤»¤ó¡£ -Àè¶îŪ¤Ê¥æ¡¼¥¶¤¬¿·µ¬¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤¿¤ê´û¸¤Î¤â¤Î¤ò½¤Àµ¤·¤¿¤ê¤¹¤ëɬÍפ¬¤¢¤ë -¤³¤È¤Ï¤â¤Ã¤È¤â¤Ê¤³¤È¤Ç¤¹¡£ -°ìÈÌŪ¤Ë¤Ï¡¢¤½¤ì¤¾¤ì¤Î¥³¥ó¥Ô¥å¡¼¥¿¤Ë¸ÇÍ­¤Î¥«¥¹¥¿¥Þ¥¤¥º¤Ï +����Υ��ڥ졼�ƥ��󥰥����ƥ�Ǥϡ� +���饤����Ȥμ��Τ�ư���Ȥ��Ƥ⡢ +ɸ��Υ�����ץȤ�ư��ʤ����⤷��ޤ��� +���Ū�ʥ桼��������������ץȤ�����������¸�Τ�Τ��������ꤹ��ɬ�פ����� +���ȤϤ�äȤ�ʤ��ȤǤ��� +����Ū�ˤϡ����줾��Υ���ԥ塼���˸�ͭ�Υ������ޥ����� .B ETCDIR/dhclient.conf -¥¹¥¯¥ê¥×¥È¤Ç¹Ô¤¦¤Ù¤­¤Ç¤¹¡£ +������ץȤǹԤ��٤��Ǥ��� .B ETCDIR/dhclient.conf -¤Î¥«¥¹¥¿¥Þ¥¤¥ºÌµ¤·¤Ë¤Ç¤­¤Ê¤¤¥«¥¹¥¿¥Þ¥¤¥º¤ä¡¢ -Æþ¤È½Ð¤Î¥Õ¥Ã¥¯¤Î»ÈÍѤǤϤǤ­¤Ê¤¤¥«¥¹¥¿¥Þ¥¤¥º¤Ëµ¤¤Å¤¤¤¿¾ì¹ç¤Ë¤Ï¡¢ -¥Ð¥°¥ì¥Ý¡¼¥È¤òÁ÷¤Ã¤Æ¤¯¤À¤µ¤¤¡£ -.SH ¥Õ¥Ã¥¯ -³«»Ï»þ¤Ë¡¢¥¯¥é¥¤¥¢¥ó¥È¥¹¥¯¥ê¥×¥È¤Ï¤Þ¤º¥·¥§¥ë´Ø¿ô¤òÄêµÁ¤·¤Þ¤¹¡£¤½¤Î´Ø¿ô¤Ï +�Υ������ޥ���̵���ˤǤ��ʤ��������ޥ����䡢 +���ȽФΥեå��λ��ѤǤϤǤ��ʤ��������ޥ����˵��Ť������ˤϡ� +�Х���ݡ��Ȥ����äƤ��������� +.SH �եå� +���ϻ��ˡ����饤����ȥ�����ץȤϤޤ�������ؿ���������ޤ������δؿ��� .B make_resolv_conf -¤Ç¤¢¤ê¡¢¸å¤Ë +�Ǥ��ꡢ��� .B /etc/resolv.conf -¥Õ¥¡¥¤¥ë¤òºîÀ®¤¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£ -¥Ç¥Õ¥©¥ë¥ÈÆ°ºî¤ò¥ª¡¼¥Ð¥é¥¤¥É¤¹¤ë¤Ë¤Ï¡¢ -¤³¤Î´Ø¿ô¤òÆþ¤Î¥Õ¥Ã¥¯¥¹¥¯¥ê¥×¥È¤ÇºÆÄêµÁ¤·¤Æ¤¯¤À¤µ¤¤¡£ +�ե������������뤿��˻��Ѥ���ޤ��� +�ǥե����ư��ò¥ª¡ï¿½ï¿½Ð¥é¥¤ï¿½É¤ï¿½ï¿½ï¿½Ë¤Ï¡ï¿½ +���δؿ������Υեå�������ץȤǺ�������Ƥ��������� .PP -make_resolv_conf ´Ø¿ô¤ÎÄêµÁ¤Î¸å¡¢¥¯¥é¥¤¥¢¥ó¥È¥¹¥¯¥ê¥×¥È¤Ï -¼Â¹Ô²Äǽ¤Ê +make_resolv_conf �ؿ�������θ塢���饤����ȥ�����ץȤ� +�¹Բ�ǽ�� .B ETCDIR/dhclient-enter-hooks -¥¹¥¯¥ê¥×¥È¤Î¸ºß¤ò¸¡ºº¤·¡¢ -¸ºß¤¹¤ë¾ì¹ç¤Ë¤Ï Bourne ¥·¥§¥ë¤Î '.' ¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ -ËÜ¥¹¥¯¥ê¥×¥È¤ò¥¤¥ó¥é¥¤¥ó¤Çµ¯Æ°¤·¤Þ¤¹¡£ -Áàºî¤Çµ­½Ò¤µ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î´Ä¶­¤¬ËÜ¥¹¥¯¥ê¥×¥È¤Ç»ÈÍѲÄǽ¤Ç¤¢¤ê¡¢ -¥¹¥¯¥ê¥×¥È¤ÎÆ°ºî¤ÎÊѹ¹¤¬É¬Íפʾì¹ç¤Ë¤Ï´Ä¶­¤Î½¤Àµ¤¬µö¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ -¥¹¥¯¥ê¥×¥È¼Â¹ÔÃæ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤¿¾ì¹ç¡¢ -exit_status ÊÑ¿ô¤òÈó 0 ÃͤËÀßÄꤹ¤ë¤³¤È¤¬²Äǽ¤Ç¤¢¤ê¡¢ -¥¯¥é¥¤¥¢¥ó¥È¥¹¥¯¥ê¥×¥È½ªÎ»Ä¾¸å¤Ë +������ץȤ�¸�ߤò¸¡ºï¿½ï¿½ï¿½ï¿½ï¿½ +¸�ߤ�����ˤ� Bourne ������� '.' ���ޥ�ɤ���Ѥ��� +�ܥ�����ץȤò¥¤¥ï¿½é¥¤ï¿½ï¿½Çµï¿½Æ°ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +���ǵ��Ҥ���Ƥ��뤹�٤ƤδĶ����ܥ�����ץȤǻ��Ѳ�ǽ�Ǥ��ꡢ +������ץȤ�ư����ѹ���ɬ�פʾ��ˤϴĶ��ν�����������Ƥ��ޤ��� +������ץȼ¹���˥��顼��ȯ��������硢 +exit_status �ѿ����� 0 �ͤ����ꤹ�뤳�Ȥ���ǽ�Ǥ��ꡢ +���饤����ȥ�����ץȽ�λľ��� .B CLIENTBINDIR/dhclient-script -¤Ï¤½¤Î¥¨¥é¡¼¥³¡¼¥É¤Ç½ªÎ»¤·¤Þ¤¹¡£ +�Ϥ��Υ��顼�����ɤǽ�λ���ޤ��� .PP -¤¹¤Ù¤Æ¤Î½èÍý¤Î´°Î»¸å¤Ë¡¢ +���٤Ƥν����δ�λ��ˡ� .B CLIENTBINDIR/dhclient-script -¤Ï¼Â¹Ô²Äǽ¤Ê +�ϼ¹Բ�ǽ�� .B ETCDIR/dhclient-exit-hooks -¥¹¥¯¥ê¥×¥È¤Î¸ºß¤ò¸¡ºº¤·¡¢Â¸ºß¤¹¤ë¾ì¹ç¤Ë¤Ï '.' ¥³¥Þ¥ó¥É¤Ç¤³¤ì¤òµ¯Æ°¤·¤Þ¤¹¡£ -dhclient-script ¤Î -½ªÎ»¾õÂÖ¤Ï dhclient-exit-hooks ¤Î exit_status ¥·¥§¥ëÊÑ¿ô¤ËÅϤµ¤ì¡¢ -µ¯Æ°¤µ¤ì¤¿»Å»ö¤Ë¥¹¥¯¥ê¥×¥È¤¬À®¸ù¤·¤¿¾ì¹ç¤Ë¤ÏÃͤϾï¤Ë 0 ¤Ë¤Ê¤ê¤Þ¤¹¡£ -dhclient-enter-hooks ¤Î¹à¤ÇÁ°½Ò¤·¤¿¤½¤Î¾¤Î´Ä¶­¤â°ú¤­·Ñ¤¬¤ì¤Þ¤¹¡£ +������ץȤ�¸�ߤò¸¡ºï¿½ï¿½ï¿½ï¿½ï¿½Â¸ï¿½ß¤ï¿½ï¿½ï¿½ï¿½ï¿½Ë¤ï¿½ '.' ���ޥ�ɤǤ����ư���ޤ��� +dhclient-script �� +��λ���֤� dhclient-exit-hooks �� exit_status �������ѿ����Ϥ��졢 +��ư���줿�Ż��˥�����ץȤ������������ˤ��ͤϾ�� 0 �ˤʤ�ޤ��� +dhclient-enter-hooks �ι�����Ҥ�������¾�δĶ�������Ѥ���ޤ��� .B ETCDIR/dhclient-exit-hooks -¤Ï exit_status ¤Ë¼ê¤ò²Ã¤¨¤Æ -dhclient-script ¤ÎÌá¤êÃͤòÊѹ¹¤Ç¤­¤Þ¤¹¡£ -.SH Áàºî -dhclient ¤¬¥¯¥é¥¤¥¢¥ó¥ÈÀßÄꥹ¥¯¥ê¥×¥È¤òµ¯Æ°¤¹¤ëɬÍפ¬¤¢¤ë¤È¤­¡¢ -ÍÍ¡¹¤ÊÊÑ¿ô¤ò´Ä¶­¤ËÄêµÁ¤·¤Æ¤«¤é +�� exit_status �˼��ä��� +dhclient-script ������ͤ��ѹ��Ǥ��ޤ��� +.SH ��� +dhclient �����饤��������ꥹ����ץȤ�ư����ɬ�פ�����Ȥ��� +�͡����ѿ���Ķ���������Ƥ��� .B CLIENTBINDIR/dhclient-script -¤òµ¯Æ°¤·¤Þ¤¹¡£ -¤¹¤Ù¤Æ¤Î¾ì¹ç¤Ë¤ª¤¤¤Æ¡¢$reason ¤Ë¤Ï¥¹¥¯¥ê¥×¥È¤¬µ¯Æ°¤µ¤ì¤ëÍýͳ̾¤¬ÀßÄꤵ¤ì¤Þ¤¹¡£ -¼¡¤ÎÍýͳ¤¬¸½ºßÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹: +��ư���ޤ��� +���٤Ƥξ��ˤ����ơ�$reason �ˤϥ�����ץȤ���ư�������ͳ̾�����ꤵ��ޤ��� +������ͳ�������������Ƥ��ޤ�: MEDIUM, PREINIT, BOUND, RENEW, REBIND, REBOOT, -EXPIRE, FAIL, TIMEOUT¡£ +EXPIRE, FAIL, TIMEOUT�� .PP .SH MEDIUM -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥á¥Ç¥£¥¢¥¿¥¤¥×¤ÎÀßÄê¤òµá¤á¤Æ¤¤¤Þ¤¹¡£ -¥¤¥ó¥¿¥Õ¥§¡¼¥¹Ì¾¤Ï $interface ¤ÇÅϤµ¤ì¡¢¥á¥Ç¥£¥¢¥¿¥¤¥×¤Ï $medium ¤ÇÅϤµ¤ì¤Þ¤¹¡£ +DHCP ���饤����Ȥϡ����󥿥ե������Υ�ǥ��������פ��������Ƥ��ޤ��� +���󥿥ե�����̾�� $interface ���Ϥ��졢��ǥ��������פ� $medium ���Ϥ���ޤ��� .SH PREINIT -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢ -¼ÂºÝ¤Î¥¢¥É¥ì¥¹¤ò¼õ¤±¼è¤ëÁ°¤Ë¥Ñ¥±¥Ã¥È¤òÁ÷¿®¤¹¤ëÌÜŪ¤Ç¡¢ -Í×µáÄ̤ê¤Ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤¬ÀßÄꤵ¤ì¤ë¤³¤È¤òµá¤á¤Æ¤¤¤Þ¤¹¡£ -BSD ¤Î¥½¥±¥Ã¥È¥é¥¤¥Ö¥é¥ê¤ò»ÈÍѤ¹¤ë¥¯¥é¥¤¥¢¥ó¥È¤Ç¤Ï¡¢ -IP ¥¢¥É¥ì¥¹ 0.0.0.0 ¤«¤Ä¥Ö¥í¡¼¥É¥­¥ã¥¹¥È¥¢¥É¥ì¥¹ 255.255.255.255 ¤Ç¡¢ -¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÀßÄꤹ¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£ -¾¤Î¥¯¥é¥¤¥¢¥ó¥È¤Ç¤Ï¡¢ -¼ÂºÝ¤Ë IP ¥¢¥É¥ì¥¹¤òÍ¿¤¨¤ë¤³¤È¤Ê¤¯Ã±¤Ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÀßÄꤹ¤ë¤³¤È¤Ç -¼Â¸½¤µ¤ì¤ë¤Ç¤·¤ç¤¦¡£ -¥¤¥ó¥¿¥Õ¥§¡¼¥¹Ì¾¤Ï $interface ¤ÇÅϤµ¤ì¡¢¥á¥Ç¥£¥¢¥¿¥¤¥×¤Ï $medium ¤ÇÅϤµ¤ì¤Þ¤¹¡£ +DHCP ���饤����Ȥϡ� +�ºݤΥ��ɥ쥹�����������˥ѥ��åȤ�����������Ū�ǡ� +�׵��̤�˥��󥿥ե����������ꤵ��뤳�Ȥ���Ƥ��ޤ��� +BSD �Υ����åȥ饤�֥�����Ѥ��륯�饤����ȤǤϡ� +IP ���ɥ쥹 0.0.0.0 ���ĥ֥����ɥ��㥹�ȥ��ɥ쥹 255.255.255.255 �ǡ� +���󥿥ե����������ꤹ�뤳�Ȥ��̣���ޤ��� +¾�Υ��饤����ȤǤϡ� +�ºݤ� IP ���ɥ쥹��Ϳ���뤳�Ȥʤ�ñ�˥��󥿥ե����������ꤹ�뤳�Ȥ� +�¸������Ǥ��礦�� +���󥿥ե�����̾�� $interface ���Ϥ��졢��ǥ��������פ� $medium ���Ϥ���ޤ��� .PP -IP ¥¨¥¤¥ê¥¢¥¹¤¬ dhclient.conf ¤ÇÀë¸À¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢ -¤³¤Î¥¢¥É¥ì¥¹¤¬ $alias_ip_address ¤ÇÅϤµ¤ì¤Þ¤¹¡£ -ËÜ IP ¥¢¥É¥ì¥¹¤Ø¤Î·ÐÏ©¤È¤È¤â¤Ë¡¢ -ËÜ IP ¥¢¥É¥ì¥¹¤òÂоݥ¤¥ó¥¿¥Õ¥§¡¼¥¹¤«¤éºï½ü¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ +IP �����ꥢ���� dhclient.conf ���������Ƥ����硢 +���Υ��ɥ쥹�� $alias_ip_address ���Ϥ���ޤ��� +�� IP ���ɥ쥹�ؤη�ϩ�ȤȤ�ˡ� +�� IP ���ɥ쥹���оݥ��󥿥ե���������������ɬ�פ�����ޤ��� .SH BOUND -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢¿·¥¢¥É¥ì¥¹¤Ø¤Î½é´ü¤Î·ë¹ç¤ò´°Î»¤·¤Þ¤·¤¿¡£ -¿·¤·¤¤ IP ¥¢¥É¥ì¥¹¤Ï $new_ip_address ¤ÇÅϤµ¤ì¡¢ -¥¤¥ó¥¿¥Õ¥§¡¼¥¹Ì¾¤Ï $interface ¤ÇÅϤµ¤ì¤Þ¤¹¡£ -¥á¥Ç¥£¥¢¥¿¥¤¥×¤Ï $medium ¤ÇÅϤµ¤ì¤Þ¤¹¡£ -¥µ¡¼¥Ð¤«¤é³ÍÆÀ¤·¤¿¥ª¥×¥·¥ç¥ó¤Ï¡¢\fBdhcp-options\fR ¤ÇÀë¸À¤µ¤ì¤Æ¤¤¤ë -¥ª¥×¥·¥ç¥ó̾¤ÇÅϤµ¤ì¤Þ¤¹¡£ -Îã³°¤È¤·¤Æ¡¢ Í­¸ú¤Ê¥·¥§¥ëÊÑ¿ô¤È¤¹¤ë¤¿¤á¤Ë -¥À¥Ã¥·¥å ('-') ¤Ï¥¢¥ó¥À¥¹¥³¥¢('_')¤ÇÃÖ¤­´¹¤¨¤é¤ì¡¢ -ÊÑ¿ô̾¤Ï new_ ¤Ç³«»Ï¤·¤Þ¤¹¡£ -Î㤨¤Ð¡¢¿·¤·¤¤¥µ¥Ö¥Í¥Ã¥È¥Þ¥¹¥¯¤Ï $new_subnet_mask ¤ÇÅϤµ¤ì¤Þ¤¹¡£ +DHCP ���饤����Ȥϡ������ɥ쥹�ؤν���η���λ���ޤ����� +������ IP ���ɥ쥹�� $new_ip_address ���Ϥ��졢 +���󥿥ե�����̾�� $interface ���Ϥ���ޤ��� +��ǥ��������פ� $medium ���Ϥ���ޤ��� +�����Ф�������������ץ����ϡ�\fBdhcp-options\fR ���������Ƥ��� +���ץ����̾���Ϥ���ޤ��� +�㳰�Ȥ��ơ� ͭ���ʥ������ѿ��Ȥ��뤿��� +����� ('-') �ϥ����������('_')���֤�������졢 +�ѿ�̾�� new_ �dz��Ϥ��ޤ��� +�㤨�С����������֥ͥåȥޥ����� $new_subnet_mask ���Ϥ���ޤ��� .PP -¥¢¥É¥ì¥¹¤ò¼ÂºÝ¤ËÀßÄꤹ¤ëÁ°¤Ë¡¢dhclient-script ¤Ï²¿¤é¤«¤ÎÊýË¡¤Ç -¤½¤Î¥¢¥É¥ì¥¹¤ËÂФ·¤Æ ARP ¤ò¹Ô¤¤¡¢ÊÖ»ö¤ò¼õ¤±¼è¤Ã¤¿¾ì¹ç¤Ë¤ÏÈó 0 ¤ÎÃÍ¤Ç -½ªÎ»¤¹¤ë¤Ù¤­¤Ç¤¹¡£¤³¤Î¾ì¹ç¥¯¥é¥¤¥¢¥ó¥È¤Ï DHCPDECLINE ¥á¥Ã¥»¡¼¥¸¤ò¥µ¡¼¥Ð -¤ËÁ÷¿®¤·¡¢°ã¤¦¥¢¥É¥ì¥¹¤ò¼èÆÀ¤·¤Þ¤¹¡£ -¤³¤Îºî¶È¤Ï RENEW, REBIND, REBOOT ¾õÂ֤ǤâƱÍͤ˹Ԥ¤¤Þ¤¹¤¬¡¢ -ɬ¤º¤·¤âɬÍפǤϤʤ¯¡¢¼ÂºÝ¹¥¤Þ¤·¤¯¤Ê¤¤¤Ç¤·¤ç¤¦¡£ +���ɥ쥹��ºݤ����ꤹ�����ˡ�dhclient-script �ϲ��餫����ˡ�� +���Υ��ɥ쥹���Ф��� ARP ��Ԥ����ֻ��������ä����ˤ��� 0 ���ͤ� +��λ����٤��Ǥ������ξ�祯�饤����Ȥ� DHCPDECLINE �������ò¥µ¡ï¿½ï¿½ï¿½ +�����������㤦���ɥ쥹��������ޤ��� +���κ�Ȥ� RENEW, REBIND, REBOOT ���֤Ǥ�Ʊ�ͤ˹Ԥ��ޤ����� +ɬ������ɬ�פǤϤʤ����ºݹ��ޤ����ʤ��Ǥ��礦�� .PP -·ë¹ç¤¬´°Î»¤¹¤ë¤È¡¢ -¥Í¥Ã¥È¥ï¡¼¥¯¤Ë´Ø¤¹¤ë¿¤¯¤Î¥Ñ¥é¥á¡¼¥¿¤òÀßÄꤹ¤ëɬÍפ¬¤¢¤ë¤Ç¤·¤ç¤¦¡£ -$new_domain_name ¤ª¤è¤Ó $new_domain_name_servers -(¤³¤ì¤Ë¤ÏÊ£¿ô¤Î¥µ¡¼¥Ð¤ò¶õÇò¤Ç¶èÀڤäÆÎóµó¤·¤Æ¤¢¤ë¤«¤â¤·¤ì¤Þ¤»¤ó) ¤ò»ÈÍѤ·¤Æ¡¢ -¿·¤·¤¤ /etc/resolv.conf ¤òºîÀ®¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ -¥Ç¥Õ¥©¥ë¥È·ÐÏ©¤Ï¡¢$new_routers ¤ò»ÈÍѤ·¤ÆÀßÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ -ÀÅŪ·ÐÏ©¤Ï¡¢$new_static_routes ¤ò»ÈÍѤ·¤ÆÀßÄꤹ¤ëɬÍפ¬¤¢¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡£ +��礬��λ����ȡ� +�ͥåȥ���˴ؤ���¿���Υѥ�᡼�������ꤹ��ɬ�פ�����Ǥ��礦�� +$new_domain_name ����� $new_domain_name_servers +(����ˤ�ʣ���Υ����Ф����Ƕ��ڤä���󤷤Ƥ��뤫�⤷��ޤ���) ����Ѥ��ơ� +������ /etc/resolv.conf ���������ɬ�פ�����ޤ��� +�ǥե���ȷ�ϩ�ϡ�$new_routers ����Ѥ������ꤹ��ɬ�פ�����ޤ��� +��Ū��ϩ�ϡ�$new_static_routes ����Ѥ������ꤹ��ɬ�פ����뤫�⤷��ޤ��� .PP -IP ¥¨¥¤¥ê¥¢¥¹¤¬Àë¸À¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¤³¤³¤ÇÀßÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ -¥¨¥¤¥ê¥¢¥¹¤Î IP ¥¢¥É¥ì¥¹¤Ï $alias_ip_address ¤È¤·¤Æµ­½Ò¤µ¤ì¡¢ -¥¨¥¤¥ê¥¢¥¹ÍѤËÀßÄꤵ¤ì¤ë¾¤Î DHCP ¥ª¥×¥·¥ç¥ó (Î㤨¤Ð¥µ¥Ö¥Í¥Ã¥È¥Þ¥¹¥¯) ¤Ï -Á°½Ò¤Î¤è¤¦¤ËÊÑ¿ô¤ÇÅϤµ¤ì¤Þ¤¹¤¬¡¢ -$new_ ¤Ç³«»Ï¤¹¤ë¤Î¤Ç¤Ï¤Ê¤¯ $alias_ ¤Ç³«»Ï¤·¤Þ¤¹¡£ -¥¨¥¤¥ê¥¢¥¹¤Î IP ¥¢¥É¥ì¥¹¤¬·ë¹ç¤µ¤ì¤¿ IP ¥¢¥É¥ì¥¹ ($new_ip_address) ¤È -Ʊ¤¸¾ì¹ç¡¢¤³¤ì¤ò»ÈÍѤ·¤Æ¤Ï¤Ê¤é¤Ê¤¤¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£ -¤Ê¤¼¤Ê¤é¡¢¤³¤Î¾ì¹ç¤Ë¤Ï¾¤Î¥¨¥¤¥ê¥¢¥¹¤Î¥Ñ¥é¥á¡¼¥¿¤¬Àµ¤·¤¯¤Ê¤¤²ÄǽÀ­¤¬¤¢¤ë -¤«¤é¤Ç¤¹¡£ +IP �����ꥢ�����������Ƥ����硢���������ꤹ��ɬ�פ�����ޤ��� +�����ꥢ���� IP ���ɥ쥹�� $alias_ip_address �Ȥ��Ƶ��Ҥ��졢 +�����ꥢ���Ѥ����ꤵ���¾�� DHCP ���ץ���� (�㤨�Х��֥ͥåȥޥ���) �� +���ҤΤ褦���ѿ����Ϥ���ޤ����� +$new_ �dz��Ϥ���ΤǤϤʤ� $alias_ �dz��Ϥ��ޤ��� +�����ꥢ���� IP ���ɥ쥹����礵�줿 IP ���ɥ쥹 ($new_ip_address) �� +Ʊ����硢�������Ѥ��ƤϤʤ�ʤ����Ȥ����դ��Ƥ��������� +�ʤ��ʤ顢���ξ��ˤ�¾�Υ����ꥢ���Υѥ�᡼�����������ʤ���ǽ�������� +����Ǥ��� .SH RENEW -·ë¹ç¤¬¹¹¿·¤µ¤ì¤ë¤È¡¢¥¹¥¯¥ê¥×¥È¤Ï BOUND ¤ÈƱÍͤ˸ƤФì¤Þ¤¹¤¬¡¢ -$new_ ¤Ç³«»Ï¤¹¤ëÁ´ÊÑ¿ô¤Ë²Ã¤¨¤Æ $old ¤Ç³«»Ï¤¹¤ëÊ̤ÎÊÑ¿ô¤ÎÁȤ¬¤¢¤ë¤È¤¤¤¦ -Îã³°¤¬¤¢¤ê¤Þ¤¹¡£ -Êѹ¹¤µ¤ì¤¿²ÄǽÀ­¤¬¤¢¤ë±Ê³Ū¤ÊÀßÄê¤Ï¡¢ºï½ü¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ -Î㤨¤Ð¡¢·ë¹ç¤µ¤ì¤¿¥¢¥É¥ì¥¹¤ËÂФ¹¤ë¥í¡¼¥«¥ë·ÐÏ©¤¬ÀßÄꤵ¤ì¤¿¾ì¹ç¡¢ -¸Å¤¤¥í¡¼¥«¥ë·ÐÏ©¤òºï½ü¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ -¥Ç¥Õ¥©¥ë¥È·ÐÏ©¤¬Êѹ¹¤µ¤ì¤¿¾ì¹ç¡¢¸Å¤¤¥Ç¥Õ¥©¥ë¥È·ÐÏ©¤òºï½ü¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ -ÀÅŪ·ÐÏ©¤¬Êѹ¹¤µ¤ì¤¿¾ì¹ç¡¢¸Å¤¤¤â¤Î¤òºï½ü¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ -¤½¤Î¾¤Ë¤Ä¤¤¤Æ¤Ï¡¢BOUND ¤ÈƱÍͤ˽èÍý²Äǽ¤Ç¤¹¡£ +��礬���������ȡ�������ץȤ� BOUND ��Ʊ�ͤ˸ƤФ�ޤ����� +$new_ �dz��Ϥ������ѿ��˲ä��� $old �dz��Ϥ����̤��ѿ����Ȥ�����Ȥ��� +�㳰������ޤ��� +�ѹ����줿��ǽ���������³Ū������ϡ��������ɬ�פ�����ޤ��� +�㤨�С���礵�줿���ɥ쥹���Ф�����������ϩ�����ꤵ�줿��硢 +�Ť����������ϩ��������ɬ�פ�����ޤ��� +�ǥե���ȷ�ϩ���ѹ����줿��硢�Ť��ǥե���ȷ�ϩ��������ɬ�פ�����ޤ��� +��Ū��ϩ���ѹ����줿��硢�Ť���Τ�������ɬ�פ�����ޤ��� +����¾�ˤĤ��Ƥϡ�BOUND ��Ʊ�ͤ˽�����ǽ�Ǥ��� .SH REBIND -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤¬¡¢¿·µ¬ DHCP ¥µ¡¼¥Ð¤ËºÆ·ë¹ç¤µ¤ì¤Þ¤·¤¿¡£ -¤³¤ì¤Ï RENEW ¤ÈƱÍͤ˰·¤¨¤Þ¤¹¤¬¡¢IP ¥¢¥É¥ì¥¹¤¬ÊѤï¤Ã¤¿¾ì¹ç¤Ë¤Ï¡¢ -ARP ɽ¤ò¥¯¥ê¥¢¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ +DHCP ���饤����Ȥ������� DHCP �����Ф˺Ʒ�礵��ޤ����� +����� RENEW ��Ʊ�ͤ˰����ޤ�����IP ���ɥ쥹���Ѥ�ä����ˤϡ� +ARP ɽ�ò¥¯¥ê¥¢ï¿½ï¿½ï¿½ï¿½É¬ï¿½×¤ï¿½ï¿½ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ .SH REBOOT -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢¥ê¥Ö¡¼¥È¸å¤Ë¸µ¤Î¥¢¥É¥ì¥¹¤òºÆ³ÍÆÀ¤¹¤ë¤³¤È¤ËÀ®¸ù¤·¤Þ¤·¤¿¡£ -¤³¤ì¤Ï BOUND ¤ÈƱÍͤ˽èÍý²Äǽ¤Ç¤¹¡£ +DHCP ���饤����Ȥϡ���֡��ȸ�˸��Υ��ɥ쥹��Ƴ������뤳�Ȥ��������ޤ����� +����� BOUND ��Ʊ�ͤ˽�����ǽ�Ǥ��� .SH EXPIRE -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï¥ê¡¼¥¹¹¹¿·¤È¿·µ¬¥ê¡¼¥¹³ÍÆÀ¤Ë¼ºÇÔ¤·¡¢ -¥ê¡¼¥¹¤Î´ü¸Â¤¬ÀÚ¤ì¤Þ¤·¤¿¡£ -ÂÐ¾Ý IP ¥¢¥É¥ì¥¹¤ò²òÊü¤¹¤ëɬÍפ¬¤¢¤ê¡¢ -RENEW ¤ª¤è¤Ó REBIND ¤ÈƱÍͤˡ¢´ØÏ¢¤¹¤ë¥Ñ¥é¥á¡¼¥¿¤òºï½ü¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ +DHCP ���饤����Ȥϥ꡼�������ȿ����꡼�������˼��Ԥ��� +�꡼���δ��¤��ڤ�ޤ����� +�о� IP ���ɥ쥹���������ɬ�פ����ꡢ +RENEW ����� REBIND ��Ʊ�ͤˡ���Ϣ����ѥ�᡼����������ɬ�פ�����ޤ��� .SH FAIL -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï DHCP ¥µ¡¼¥Ð¤ËÀܳ¤Ç¤­¤º¡¢ -¤Þ¤¿¸¡ºº¤·¤¿ IP ¥¢¥É¥ì¥¹¤Ë¤ÏÍ­¸ú¤Ê¤â¤Î¤Ï¤¢¤ê¤Þ¤»¤ó¤Ç¤·¤¿¡£ -ºÇ¸å¤Ë¸¡ºº¤·¤¿¥ê¡¼¥¹¤Î¥Ñ¥é¥á¡¼¥¿¤Ï¡¢ÀßÄê²ò½ü¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ -¤³¤ì¤Ï¡¢EXPIRE ¤ÈƱÍͤ˰·¤¨¤Þ¤¹¡£ +DHCP ���饤����Ȥ� DHCP �����Ф���³�Ǥ����� +�ޤ��������� IP ���ɥ쥹�ˤ�ͭ���ʤ�ΤϤ���ޤ���Ǥ����� +�Ǹ�˸��������꡼���Υѥ�᡼���ϡ�����������ɬ�פ�����ޤ��� +����ϡ�EXPIRE ��Ʊ�ͤ˰����ޤ��� .SH TIMEOUT -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï¤É¤Î DHCP ¥µ¡¼¥Ð¤Ë¤âÀܳ¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿¡£ -¤·¤«¤·¤Ê¤¬¤é¡¢¸Å¤¤¥ê¡¼¥¹¤¬¼±Ê̤µ¤ì¡¢ -BOUND ¤ÈƱÍͤˡ¢¤³¤Î¸Å¤¤¥ê¡¼¥¹¤Î¥Ñ¥é¥á¡¼¥¿¤¬ÅϤµ¤ì¤Þ¤·¤¿¡£ -¥¯¥é¥¤¥¢¥ó¥È¤ÎÀßÄꥹ¥¯¥ê¥×¥È¤Ï¡¢¤³¤Î¥Ñ¥é¥á¡¼¥¿¤ò¸¡ºº¤·¡¢ -¤³¤ì¤¬Í­¸ú¤Ç¤¢¤ë¤È¿®¤¸¤ëÍýͳ¤¬¤¢¤ë¤Ê¤é¤Ð¡¢ÃÍ 0 ¤Ç½ªÎ»¤¹¤Ù¤­¤Ç¤¹¡£ -¤½¤¦¤Ç¤Ê¤¤¤Ê¤é¤Ð¡¢Èó 0 ¤ÎÃͤǽªÎ»¤¹¤Ù¤­¤Ç¤¹¡£ +DHCP ���饤����ȤϤɤ� DHCP �����Фˤ���³�Ǥ��ޤ���Ǥ����� +�������ʤ��顢�Ť��꡼�������̤��졢 +BOUND ��Ʊ�ͤˡ����θŤ��꡼���Υѥ�᡼�����Ϥ���ޤ����� +���饤����Ȥ����ꥹ����ץȤϡ����Υѥ�᡼���ò¸¡ºï¿½ï¿½ï¿½ï¿½ï¿½ +���줬ͭ���Ǥ���ȿ�������ͳ������ʤ�С��� 0 �ǽ�λ���٤��Ǥ��� +�����Ǥʤ��ʤ�С��� 0 ���ͤǽ�λ���٤��Ǥ��� .PP -¥ê¡¼¥¹¤ò¸¡ºº¤¹¤ëÄ̾ï¤ÎÊýË¡¤Ï¡¢REBIND ¤ÈƱÍͤ˥ͥåȥ¥¯¤òÀßÄꤷ¤Æ -(Ê£¿ô¤Î¥ê¡¼¥¹¤ò¸¡ºº¤¹¤ë¤¿¤á¤Ë¸Æ¤Ð¤ì¤ë¤³¤È¤¬¤¢¤ë¤«¤é¤Ç¤¹)¡¢ -$routers ¤ÇÄêµÁ¤µ¤ì¤ëºÇ½é¤Î¥ë¡¼¥¿¤Ë ping ¤¹¤ë¤³¤È¤Ç¤¹¡£ -±þÅú¤ò¼õ¿®¤·¤¿¾ì¹ç¡¢ -¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤¬¸½ºßÀܳ¤µ¤ì¤Æ¤¤¤ë¥Í¥Ã¥È¥ï¡¼¥¯¤ËÂФ·¤Æ¡¢¥ê¡¼¥¹¤¬Í­¸ú¤Ç¤¹¡£ -$new_static_routers ¤Ë²Ã¤¨¤Æ -$new_routers ¤ËÎóµó¤µ¤ì¤Æ¤¤¤ëÁ´¥ë¡¼¥¿¤Ë ping ¤ò»î¤¹¤è¤¦¤Ë¤Ê¤ì¤Ð¡¢ -´°Á´À­¤¬Áý¤¹¤Ç¤·¤ç¤¦¡£¤·¤«¤·¡¢¸½ºß¤Î¥¹¥¯¥ê¥×¥È¤Ï¤½¤¦¤Ê¤Ã¤Æ¤¤¤Þ¤»¤ó¡£ -.SH ´ØÏ¢¥Õ¥¡¥¤¥ë -Îà»÷¤·¤¿¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤ËÂФ¹¤ë¥¹¥¯¥ê¥×¥È¥Õ¥¡¥¤¥ë¤Ï -»÷¤Æ¤¤¤¿¤êÁ´¤¯Æ±¤¸¤«¤â¤·¤ì¤Þ¤»¤ó¤¬¡¢°ìÈ̤ˤϡ¢ -³Æ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥àÍѤ˳ơ¹¤Î¥¹¥¯¥ê¥×¥È¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¤Ù¤­¤Ç¤¹¡£ -Internet Systems Consortium ¤Î DHCP ÇÛÉۤ˴ޤޤì¤ë¥¹¥¯¥ê¥×¥È¥Õ¥¡¥¤¥ë¤Ï¡¢ -client/scripts °Ê²¼¤ÎÇÛÉۥĥ꡼¤Ë¤¢¤ê¡¢ -Æ°ºîÂоݥª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à̾¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£ -.SH ¥Ð¥° -Ê£¿ô¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢ -¥µ¡¼¥Ð¤¬Ä󶡤¹¤ëÀßÄê¥Ñ¥é¥á¡¼¥¿Æ±»Î¤¬ -¾×Æͤ·¤Ê¤¤¤è¤¦¤Ë¤¹¤ëÌÀ³Î¤ÊÊýË¡¤Ï¤¢¤ê¤Þ¤»¤ó¡£ -Î㤨¤Ð¡¢ -ɸ½à¤Î dhclient-script ¤Ï /etc/resolv.conf ¤òºÆÅÙ½ñ¤­´¹¤¨¤Æ¤·¤Þ¤¤¤Þ¤¹¡£ -¤¹¤Ê¤ï¤Á¡¢Ê£¿ô¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢ -¤¢¤ë¥µ¡¼¥Ð¤«¤éÄ󶡤µ¤ì¤ëÃÍ¤Ë /etc/resolv.conf ¤¬½é´ü²½¤µ¤ì¤¿¸å¤Ë¡¢ -Ê̤Υµ¡¼¥Ð¤«¤éÄ󶡤µ¤ì¤ëÃͤ˽é´ü²½¤µ¤ì¤ë¤È¤¤¤¦Æ°ºî¤ò·«¤êÊÖ¤·¤Þ¤¹¡£ -¤É¤Á¤é¤Î¥µ¡¼¥Ð¤«¤éÄ󶡤µ¤ì¤ë¾ðÊó¤âÍ­¸ú¤Ç¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢ -¼ÂºÝ¾åÌäÂê¤È¤Ï¤Ê¤é¤Ê¤¤¤â¤Î¤Î¡¢º®Íð¤Î¤â¤È¤Ë¤Ê¤ê¤¨¤Þ¤¹¡£ -.SH ´ØÏ¢¹àÌÜ +�꡼���ò¸¡ºï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ì¾ï¿½ï¿½ï¿½ï¿½Ë¡ï¿½Ï¡ï¿½REBIND ��Ʊ�ͤ˥ͥåȥ�������ꤷ�� +(ʣ���Υ꡼���ò¸¡ºï¿½ï¿½ï¿½ï¿½ë¤¿ï¿½ï¿½Ë¸Æ¤Ð¤ï¿½ë¤³ï¿½È¤ï¿½ï¿½ï¿½ï¿½ë¤«ï¿½ï¿½Ç¤ï¿½)�� +$routers ����������ǽ�Υ롼���� ping ���뤳�ȤǤ��� +���������������硢 +���󥿥ե�������������³����Ƥ���ͥåȥ�����Ф��ơ��꡼����ͭ���Ǥ��� +$new_static_routers �˲ä��� +$new_routers ����󤵤�Ƥ������롼���� ping ���褦�ˤʤ�С� +�������������Ǥ��礦�������������ߤΥ�����ץȤϤ����ʤäƤ��ޤ��� +.SH ��Ϣ�ե����� +����������ڥ졼�ƥ��󥰥����ƥ���Ф��륹����ץȥե������ +���Ƥ���������Ʊ�����⤷��ޤ��󤬡����̤ˤϡ� +�ƥ��ڥ졼�ƥ��󥰥����ƥ��Ѥ˳ơ��Υ�����ץȥե����뤬����٤��Ǥ��� +Internet Systems Consortium �� DHCP ���ۤ˴ޤޤ�륹����ץȥե�����ϡ� +client/scripts �ʲ������ۥĥ꡼�ˤ��ꡢ +ư���оݥ��ڥ졼�ƥ��󥰥����ƥ�̾�ˤʤäƤ��ޤ��� +.SH �Х� +ʣ�����󥿥ե���������Ѥ����硢 +�����Ф��󶡤�������ѥ�᡼��Ʊ�Τ� +���ͤ��ʤ��褦�ˤ������Τ���ˡ�Ϥ���ޤ��� +�㤨�С� +ɸ��� dhclient-script �� /etc/resolv.conf ����ٽñ¤­´ï¿½ï¿½ï¿½ï¿½Æ¤ï¿½ï¿½Þ¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +���ʤ����ʣ���Υ��󥿥ե����������ꤵ��Ƥ����硢 +���륵���Ф����󶡤�����ͤ� /etc/resolv.conf ����������줿��ˡ� +�̤Υ����Ф����󶡤�����ͤ˽���������Ȥ���ư��ò·«¤ï¿½ï¿½Ö¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +�ɤ���Υ����Ф����󶡤��������ͭ���Ǥ�����ˤϡ� +�ºݾ�����ȤϤʤ�ʤ���ΤΡ�����Τ�Ȥˤʤꤨ�ޤ��� +.SH ��Ϣ���� dhclient.conf(5), dhclient.leases(5), dhclient(8) -.SH ºî¼Ô +.SH ��� .B dhclient-script(8) -¤Ï Ted Lemon ¤¬ -Vixie Enterprises ¤È¶¨ÎϤ·¤Æ Internet Systems Consortium ¤Î¤¿¤á¤Ë -½ñ¤­¤Þ¤·¤¿¡£ -Internet Systems Consortium ¤Ë¤Ä¤¤¤Æ¤è¤ê¾Ü¤·¤¯¤Ï¡¢ +�� Ted Lemon �� +Vixie Enterprises �ȶ��Ϥ��� Internet Systems Consortium ����� +�ñ¤­¤Þ¤ï¿½ï¿½ï¿½ï¿½ï¿½ +Internet Systems Consortium �ˤĤ��Ƥ��ܤ����ϡ� .B https://www.isc.org -¤ò¤´Í÷¤¯¤À¤µ¤¤¡£ -Vixie Enterprises ¤Ë¤Ä¤¤¤Æ¤è¤ê¾Ü¤·¤¯¤Ï¡¢ +�������������� +Vixie Enterprises �ˤĤ��Ƥ��ܤ����ϡ� .B http://www.vix.com -¤ò¤´Í÷¤¯¤À¤µ¤¤¡£ +�������������� diff --git a/doc/ja_JP.eucJP/dhclient.8 b/doc/ja_JP.eucJP/dhclient.8 index d0b25879..3de0be1a 100644 --- a/doc/ja_JP.eucJP/dhclient.8 +++ b/doc/ja_JP.eucJP/dhclient.8 @@ -16,8 +16,8 @@ .\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Internet Systems Consortium, Inc. -.\" 950 Charter Street -.\" Redwood City, CA 94063 +.\" PO Box 360 +.\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ .\" @@ -26,16 +26,16 @@ .\" %FreeBSD: src/contrib/isc-dhcp/client/dhclient.8,v 1.8.2.3 2002/04/11 10:16:45 murray Exp % .\" .\" $FreeBSD: doc/ja_JP.eucJP/man/man8/dhclient.8,v 1.8 2002/05/21 03:46:48 horikawa Exp $ -.\" WORD: Dynamic Host Configuration Protocol (DHCP) ưŪ¥Û¥¹¥ÈÀßÄê¥×¥í¥È¥³¥ë -.\" WORD: lease ¥ê¡¼¥¹ [dhclient.8] -.\" WORD: mobile host °ÜÆ°¥Û¥¹¥È -.\" WORD: limited broadcast address ¥ê¥ß¥Æ¥Ã¥É¥Ö¥í¡¼¥É¥­¥ã¥¹¥È¥¢¥É¥ì¥¹ -.\" WORD: networking framework ¥Í¥Ã¥È¥ï¡¼¥­¥ó¥°¥Õ¥ì¡¼¥à¥ï¡¼¥¯ -.\" WORD: housekeeping chores »¨»ö +.\" WORD: Dynamic Host Configuration Protocol (DHCP) ưŪ�ۥ�������ץ��ȥ��� +.\" WORD: lease �꡼�� [dhclient.8] +.\" WORD: mobile host ��ư�ۥ��� +.\" WORD: limited broadcast address ��ߥƥåɥ֥����ɥ��㥹�ȥ��ɥ쥹 +.\" WORD: networking framework �ͥåȥ���󥰥ե졼���� +.\" WORD: housekeeping chores ���� .TH dhclient 8 -.SH ̾¾Î -dhclient - ưŪ¥Û¥¹¥ÈÀßÄê¥×¥í¥È¥³¥ë¤Î¥¯¥é¥¤¥¢¥ó¥È -.SH ½ñ¼° +.SH ̾�� +dhclient - ưŪ�ۥ�������ץ��ȥ���Υ��饤����� +.SH �� .B dhclient [ .B -p @@ -95,271 +95,271 @@ relay .I ...ifN ] ] -.SH ²òÀâ -Internet Systems Consortium ¤Î DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ç¤¢¤ë dhclient -¤ÏưŪ¥Û¥¹¥ÈÀßÄê¥×¥í¥È¥³¥ë (DHCP: Dynamic Host Configuration Protocol) -¤Þ¤¿¤Ï BOOTP ¥×¥í¥È¥³¥ë¤òÍѤ¤¤Æ¡¢¤¢¤ë¤¤¤Ï -¤³¤ì¤é¤Î¥×¥í¥È¥³¥ë¤¬¼ºÇÔ¤·¤¿¾ì¹ç¤Ë¤Ï¥¢¥É¥ì¥¹¤òÀÅŪ¤Ë³ä¤êÅö¤Æ¤Æ¡¢ -1 ¤Ä°Ê¾å¤Î¥Í¥Ã¥È¥ï¡¼¥¯¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÀßÄꤹ¤ëÊýË¡¤òÄ󶡤·¤Þ¤¹¡£ -.SH Áàºî +.SH ���� +Internet Systems Consortium �� DHCP ���饤����ȤǤ��� dhclient +��ưŪ�ۥ�������ץ��ȥ��� (DHCP: Dynamic Host Configuration Protocol) +�ޤ��� BOOTP �ץ��ȥ�����Ѥ��ơ����뤤�� +�����Υץ��ȥ��뤬���Ԥ������ˤϥ��ɥ쥹����Ū�˳�����Ƥơ� +1 �İʾ�Υͥåȥ�����󥿥ե����������ꤹ����ˡ���󶡤��ޤ��� +.SH ��� .PP -DHCP ¥×¥í¥È¥³¥ë¤Ç¤Ï¡¢1 ¤Ä°Ê¾å¤Î¥µ¥Ö¥Í¥Ã¥È¤Ë³ä¤êÅö¤Æ¤ë¤³¤È¤Î¤Ç¤­¤ë -IP ¥¢¥É¥ì¥¹¤Î¥ê¥¹¥È¤ò´ÉÍý¤¹¤ëÃæ±û¥µ¡¼¥Ð¤Ë¡¢¥Û¥¹¥È¤¬¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤¹¡£ -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï¤³¤Î¥ê¥¹¥È¤«¤é¥¢¥É¥ì¥¹¤òÍ׵ᤷ¤Æ¡¢ -¤½¤ì¤ò¥Í¥Ã¥È¥ï¡¼¥¯ÄÌ¿®¤Î°ì»þŪ¤ÊÅÚÂæ¤ËÍѤ¤¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ -¤Þ¤¿ DHCP ¥×¥í¥È¥³¥ë¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¥ë¡¼¥¿¤Î¾ì½ê¤ä¥Í¡¼¥à¥µ¡¼¥Ð¤Î¾ì½ê¤Ê¤É¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤¬Àܳ¤·¤Æ¤¤¤ë¥Í¥Ã¥È¥ï¡¼¥¯¤Ë´Ø¤¹¤ë½ÅÍפʾðÊó¤ò -¥¯¥é¥¤¥¢¥ó¥È¤Ë¾ÜºÙ¤ËÃΤ餻¤ëµ¡¹½¤âÄ󶡤·¤Þ¤¹¡£ +DHCP �ץ��ȥ���Ǥϡ�1 �İʾ�Υ��֥ͥåȤ˳�����Ƥ뤳�ȤΤǤ��� +IP ���ɥ쥹�Υꥹ�Ȥ����������������Фˡ��ۥ��Ȥ����������Ǥ��ޤ��� +DHCP ���饤����ȤϤ��Υꥹ�Ȥ��饢�ɥ쥹���׵ᤷ�ơ� +�����ͥåȥ���̿��ΰ��Ū��������Ѥ��뤳�Ȥ��Ǥ��ޤ��� +�ޤ� DHCP �ץ��ȥ���ϡ��ǥե���ȥ롼���ξ���͡��ॵ���Фξ��ʤɡ� +���饤����Ȥ���³���Ƥ���ͥåȥ���˴ؤ�����פʾ���� +���饤����Ȥ˾ܺ٤��Τ餻�뵡�����󶡤��ޤ��� .PP -µ¯Æ°»þ¤Ë dhclient ¤Ï +��ư���� dhclient �� .IR dhclient.conf -¤«¤éÀßÄê»Ø¼¨¤òÆɤ߼è¤ê¤Þ¤¹¡£ -¤½¤ì¤«¤é¸½ºß¤Î¥·¥¹¥Æ¥à¤ËÁȤ߹þ¤Þ¤ì¤Æ¤¤¤ë -¤¹¤Ù¤Æ¤Î¥Í¥Ã¥È¥ï¡¼¥¯¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥ê¥¹¥È¤ò¼èÆÀ¤·¤Þ¤¹¡£ -³Æ¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ËÂФ· dhclient ¤Ï DHCP ¥×¥í¥È¥³¥ë¤òÍѤ¤¤ÆÀßÄê¤ò»î¤ß¤Þ¤¹¡£ +��������ؼ����ɤ߼��ޤ��� +���줫�鸽�ߤΥ����ƥ���Ȥ߹��ޤ�Ƥ��� +���٤ƤΥͥåȥ�����󥿥ե������Υꥹ�Ȥ�������ޤ��� +�ƥ��󥿥ե��������Ф� dhclient �� DHCP �ץ��ȥ�����Ѥ���������ߤޤ��� .PP -¥·¥¹¥Æ¥à¥ê¥Ö¡¼¥È¤ä¥µ¡¼¥ÐºÆµ¯Æ°¤ÎºÝ¤Ë¥ê¡¼¥¹¤ò¼º¤ï¤Ê¤¤¤è¤¦¤Ë¡¢ -dhclient ¤Ï³ä¤êÅö¤Æ¤é¤ì¤¿¥ê¡¼¥¹¤Î¥ê¥¹¥È¤ò -dhclient.leases(5) ¥Õ¥¡¥¤¥ë¤ËÊݸ¤·¤Þ¤¹¡£ -µ¯Æ°»þ¡¢dhclient.conf ¥Õ¥¡¥¤¥ë¤òÆɤ߼è¤Ã¤¿¸å¡¢ -dhclient ¤Ï dhclient.leases ¥Õ¥¡¥¤¥ë¤òÆɤ߹þ¤ó¤Ç¡¢ -³ä¤êÅö¤Æ¤é¤ì¤¿¥ê¡¼¥¹¤Ë´Ø¤¹¤ë¥á¥â¥ê¤ò¹¹¿·¤·¤Þ¤¹¡£ +�����ƥ��֡��Ȥ䥵���кƵ�ư�κݤ˥꡼���ò¼º¤ï¿½Ê¤ï¿½ï¿½è¤¦ï¿½Ë¡ï¿½ +dhclient �ϳ�����Ƥ�줿�꡼���Υꥹ�Ȥ� +dhclient.leases(5) �ե��������¸���ޤ��� +��ư����dhclient.conf �ե�������ɤ߼�ä��塢 +dhclient �� dhclient.leases �ե�������ɤ߹���ǡ� +������Ƥ�줿�꡼���˴ؤ������ò¹¹¿ï¿½ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ .PP -¿·¤·¤¤¥ê¡¼¥¹¤ò¼èÆÀ¤¹¤ë¤È¡¢dhclient.leases ¥Õ¥¡¥¤¥ë¤ÎËöÈø¤ËÉÕ¤±²Ã¤¨¤é¤ì¤Þ¤¹¡£ -¥Õ¥¡¥¤¥ë¤¬¶Ëü¤ËÂ礭¤¯¤Ê¤ë¤Î¤òËɤ°¤¿¤á¤Ë¡¢ -dhclient ¤Ï»þ¤ª¤ê¥³¥¢ÆâÉô¤Î¥ê¡¼¥¹¥Ç¡¼¥¿¥Ù¡¼¥¹¤«¤é -¿·µ¬¤Ë dhclient.leases ¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£ -¸Å¤¤ dhclient.leases ¥Õ¥¡¥¤¥ë¤Ï¡¢ -dhclient ¤¬¼¡¤Ë¥Ç¡¼¥¿¥Ù¡¼¥¹¤òºî¤êÂؤ¨¤ë¤Þ¤Ç¡¢ +�������꡼�����������ȡ�dhclient.leases �ե�������������դ��ä����ޤ��� +�ե����뤬��ü���礭���ʤ�Τ��ɤ�����ˡ� +dhclient �ϻ����ꥳ�������Υ꡼���ǡ����١������� +������ dhclient.leases �ե������������ޤ��� +�Ť� dhclient.leases �ե�����ϡ� +dhclient �����˥ǡ����١��������ؤ���ޤǡ� .IR dhclient.leases~ -¤È¤¤¤¦Ì¾Á°¤ÇÊݸ¤µ¤ì¤Þ¤¹¡£ +�Ȥ���̾������¸����ޤ��� .PP -dhclient ¤¬ºÇ½é¤Ëµ¯Æ°¤µ¤ì¤¿¤È¤­ -(°ìÈÌŪ¤Ë¤Ï¥·¥¹¥Æ¥à¥Ö¡¼¥È½é´ü²áÄø¤Î´Ö) ¤Ë DHCP ¥µ¡¼¥Ð¤¬ÍøÍѤǤ­¤Ê¤±¤ì¤Ð¡¢ -¸Å¤¤¥ê¡¼¥¹¤Ï»Ä¤µ¤ì¤Þ¤¹¡£ -¤½¤Î¾ì¹ç¡¢dhclient.leases ¥Õ¥¡¥¤¥ë¤«¤é -¤Þ¤À´ü¸Â¤ÎÀÚ¤ì¤Æ¤¤¤Ê¤¤¸Å¤¤¥ê¡¼¥¹¤ò¸¡ºº¤·¡¢ -Í­¸ú¤Ç¤¢¤ë¤ÈȽÃǤµ¤ì¤ì¤Ð¡¢¤½¤ì¤é¤Î´ü¸Â¤¬ÀÚ¤ì¤ë¤« -¤Þ¤¿¤Ï DHCP ¥µ¡¼¥Ð¤¬ÍøÍѤǤ­¤ë¤è¤¦¤Ë¤Ê¤ë¤Þ¤Ç¡¢¤½¤Î¥ê¡¼¥¹¤ò»È¤¤¤Þ¤¹¡£ +dhclient ���ǽ�˵�ư���줿�Ȥ� +(����Ū�ˤϥ����ƥ�֡��Ƚ�������δ�) �� DHCP �����Ф����ѤǤ��ʤ���С� +�Ť��꡼���ϻĤ���ޤ��� +���ξ�硢dhclient.leases �ե����뤫�� +�ޤ����¤��ڤ�Ƥ��ʤ��Ť��꡼���ò¸¡ºï¿½ï¿½ï¿½ï¿½ï¿½ +ͭ���Ǥ����Ƚ�Ǥ����С������δ��¤��ڤ�뤫 +�ޤ��� DHCP �����Ф����ѤǤ���褦�ˤʤ�ޤǡ����Υ꡼����Ȥ��ޤ��� .PP -DHCP ¥µ¡¼¥Ð¤¬Â¸ºß¤·¤Ê¤¤¥Í¥Ã¥È¥ï¡¼¥¯¤Ë»þ¤ª¤ê¥¢¥¯¥»¥¹¤¹¤ëɬÍפ¬ -¤¢¤ë¤è¤¦¤Ê°ÜÆ°¥Û¥¹¥È¤Ï¡¢¤½¤Î¥Í¥Ã¥È¥ï¡¼¥¯¾å¤Î¸ÇÄꥢ¥É¥ì¥¹¤Î¥ê¡¼¥¹¤ò -¤¢¤é¤«¤¸¤áÆɤ߹þ¤ó¤Ç¤ª¤¯¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ -DHCP ¥µ¡¼¥Ð¤Ø¤Î¥¢¥¯¥»¥¹¤¬¤É¤ì¤âÀ®¸ù¤·¤Ê¤«¤Ã¤¿¾ì¹ç¡¢ -dhclient ¤Ï¤½¤ÎÀÅŪ¤Ê¥ê¡¼¥¹¤¬Í­¸ú¤Ç¤¢¤ë¤«¸¡¾Ú¤·¡¢ -Í­¸ú¤Ç¤¢¤ì¤Ð¼¡¤ËºÆµ¯Æ°¤µ¤ì¤ë¤Þ¤Ç¤½¤Î¥ê¡¼¥¹¤ò»È¤¤¤Þ¤¹¡£ +DHCP �����Ф�¸�ߤ��ʤ��ͥåȥ���˻����ꥢ����������ɬ�פ� +����褦�ʰ�ư�ۥ��Ȥϡ����Υͥåȥ����θ��ꥢ�ɥ쥹�Υ꡼���� +���餫�����ɤ߹���Ǥ������Ȥ��Ǥ��ޤ��� +DHCP �����ФؤΥ����������ɤ���������ʤ��ä���硢 +dhclient �Ϥ�����Ū�ʥ꡼����ͭ���Ǥ��뤫���ڤ��� +ͭ���Ǥ���м��˺Ƶ�ư�����ޤǤ��Υ꡼����Ȥ��ޤ��� .PP -¤Þ¤¿°ÜÆ°¥Û¥¹¥È¤Ï¡¢DHCP ¤ÏÍøÍѤǤ­¤Ê¤¤¤¬ BOOTP ¤Ê¤éÍøÍѤǤ­¤ë¤è¤¦¤Ê -¥Í¥Ã¥È¥ï¡¼¥¯¤Ø°ÜÆ°¤¹¤ë¤³¤È¤â¤¢¤ë¤Ç¤·¤ç¤¦¡£ -¤½¤Î¤è¤¦¤Ê¾ì¹ç¤Ï¡¢¸Å¤¤¥ê¡¼¥¹¤ò½ç¼¡»î¤¹¤è¤ê¤â¡¢ -¤½¤Î¥Í¥Ã¥È¥ï¡¼¥¯¤Î´ÉÍý¼Ô¤ÈÁêÃ̤·¤Æ -BOOTP ¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ë¥¨¥ó¥È¥ê¤òºîÀ®¤·¤Æ¤â¤é¤¤¡¢ -¤½¤Î¥Í¥Ã¥È¥ï¡¼¥¯¾å¤ÇÁÇÁ᤯¥Ö¡¼¥È¤Ç¤­¤ë¤è¤¦¤Ë¤¹¤ë¤È¤è¤¤¤Ç¤·¤ç¤¦¡£ -.SH ¥³¥Þ¥ó¥É¥é¥¤¥ó +�ޤ���ư�ۥ��Ȥϡ�DHCP �����ѤǤ��ʤ��� BOOTP �ʤ����ѤǤ���褦�� +�ͥåȥ���ذ�ư���뤳�Ȥ⤢��Ǥ��礦�� +���Τ褦�ʾ��ϡ��Ť��꡼����缡����⡢ +���Υͥåȥ���δ����Ԥ����̤��� +BOOTP �ǡ����١����˥���ȥ��������Ƥ�餤�� +���Υͥåȥ��������᤯�֡��ȤǤ���褦�ˤ���Ȥ褤�Ǥ��礦�� +.SH ���ޥ�ɥ饤�� .PP -dhclient ¤¬ÀßÄꤷ¤è¤¦¤È¤¹¤ë¥Í¥Ã¥È¥ï¡¼¥¯¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î̾Á°¤ò -¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄê¤Ç¤­¤Þ¤¹¡£ -¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¥¤¥ó¥¿¥Õ¥§¡¼¥¹Ì¾¤¬»ØÄꤵ¤ì¤Ê¤±¤ì¤Ð¡¢ -dhclient ¤Ï¤¹¤Ù¤Æ¤Î¥Í¥Ã¥È¥ï¡¼¥¯¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò¼±Ê̤·¡¢ -²Äǽ¤Ê¤éÈó¥Ö¥í¡¼¥É¥­¥ã¥¹¥È¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï½ü¤¤¤Æ¡¢ -¤½¤ì¤¾¤ì¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÀßÄꤷ¤è¤¦¤È¤·¤Þ¤¹¡£ +dhclient �����ꤷ�褦�Ȥ���ͥåȥ�����󥿥ե�������̾���� +���ޥ�ɥ饤��ǻ���Ǥ��ޤ��� +���ޥ�ɥ饤��ǥ��󥿥ե�����̾�����ꤵ��ʤ���С� +dhclient �Ϥ��٤ƤΥͥåȥ�����󥿥ե��������̤��� +��ǽ�ʤ���֥����ɥ��㥹�ȥ��󥿥ե������Ͻ����ơ� +���줾��Υ��󥿥ե����������ꤷ�褦�Ȥ��ޤ��� .PP .B dhclient.conf(5) -¥Õ¥¡¥¤¥ëÃæ¤Î̾Á°¤Ç¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò»ØÄꤹ¤ë¤³¤È¤â²Äǽ¤Ç¤¹¡£ -¤³¤ÎÊýË¡¤Ç¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò»ØÄꤷ¤¿¾ì¹ç¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢ -ÀßÄê¥Õ¥¡¥¤¥ëÃæ¤Ç»ØÄꤷ¤¿¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤â¤·¤¯¤Ï¥³¥Þ¥ó¥É¹Ô¤Ç -»ØÄꤷ¤¿¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¤É¤Á¤é¤«¤À¤±¤òÀßÄꤹ¤ë¤Ç¤·¤ç¤¦¡£ +�ե��������̾���ǥ��󥿥ե���������ꤹ�뤳�Ȥ��ǽ�Ǥ��� +������ˡ�ǥ��󥿥ե���������ꤷ����硢���饤����Ȥϡ� +����ե�������ǻ��ꤷ�����󥿥ե������⤷���ϥ��ޥ�ɹԤ� +���ꤷ�����󥿥ե������Τɤ��餫���������ꤹ��Ǥ��礦�� .PP .B -D -¥Õ¥é¥°¤ò»ØÄꤹ¤ë¤È¡¢ +�ե饰����ꤹ��ȡ� .B dhclient -¤¬ +�� .B dhclient-script -¤ÈÁȤ߹ç¤ï¤»¤Æ»ÈÍѤ¹¤ë¤¿¤á¤ËºîÀ®¤·¤¿¥¹¥¯¥ê¥×¥È¤ò¡¢ +���Ȥ߹�碌�ƻ��Ѥ��뤿��˺�������������ץȤ� .IR /tmp -¤ËÊݸ¤µ¤»¤Þ¤¹¡£ +����¸�����ޤ��� .PP -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤¬É¸½à¥Ý¡¼¥È (¥Ý¡¼¥ÈÈÖ¹æ 68) °Ê³°¤Î¥Ý¡¼¥È¤Ç -ÂÔµ¡¤ª¤è¤ÓÁ÷¿®¤¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤Ë¤Ï +DHCP ���饤����Ȥ�ɸ��ݡ��� (�ݡ����ֹ� 68) �ʳ��Υݡ��Ȥ� +�Ե��������������ɬ�פ�������ˤ� .B -p -¥Õ¥é¥°¤¬»È¤¨¤Þ¤¹¡£ -¤³¤Î¥Õ¥é¥°¤Ë³¤±¤Æ¡¢dhclient ¤¬»È¤¦ udp ¥Ý¡¼¥ÈÈÖ¹æ¤ò»ØÄꤷ¤Þ¤¹¡£ -¤³¤ì¤Ï¼ç¤È¤·¤Æ¥Ç¥Ð¥Ã¥°ÌÜŪ¤Ç¤ÏÍ­ÍѤǤ¹¡£ -¥¯¥é¥¤¥¢¥ó¥È¤¬ÂÔµ¡¤ª¤è¤ÓÁ÷¿®¤¹¤ë¤¿¤á¤Ë»ÈÍѤ¹¤ë¥Ý¡¼¥È¤Ë -¥Ç¥Õ¥©¥ë¥È¤È¤Ï°ã¤¦¥Ý¡¼¥È¤ò»ØÄꤹ¤ë¾ì¹ç¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ï -¤â¤¦ 1 ¤ÄÊ̤ÎÁ÷¿®Àè¥Ý¡¼¥È¤â»ÈÍѤ·¤Þ¤¹¡£¤½¤ÎÁ÷¿®Àè¥Ý¡¼¥È¤Ï¡¢ -»ØÄꤷ¤¿Á÷¿®Àè¥Ý¡¼¥È¤è¤ê¤âÂ礭¤ÊÈÖ¹æ¤ò»ý¤Ã¤¿¤â¤Î¤Ç¤¹¡£ +�ե饰���Ȥ��ޤ��� +���Υե饰��³���ơ�dhclient ���Ȥ� udp �ݡ����ֹ����ꤷ�ޤ��� +����ϼ�Ȥ��ƥǥХå���Ū�Ǥ�ͭ�ѤǤ��� +���饤����Ȥ��Ե�������������뤿��˻��Ѥ���ݡ��Ȥ� +�ǥե���ȤȤϰ㤦�ݡ��Ȥ���ꤹ���硢���饤����Ȥ� +�⤦ 1 ���̤�������ݡ��Ȥ���Ѥ��ޤ�������������ݡ��Ȥϡ� +���ꤷ��������ݡ��Ȥ����礭���ֹ����ä���ΤǤ��� .PP -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢Ä̾ï IP ¥¢¥É¥ì¥¹¤ò³ÍÆÀ¤·¤Æ¤¤¤Ê¤¤´Ö -Ǥ°Õ¤Î¥×¥í¥È¥³¥ë¥á¥Ã¥»¡¼¥¸¤ò¥ê¥ß¥Æ¥Ã¥É¥Ö¥í¡¼¥É¥­¥ã¥¹¥È -¥¢¥É¥ì¥¹¤Ç¤¢¤ë 255.255.255.255 ¤Ø¤ÈÁ÷¿®¤·¤Þ¤¹¡£ -¥Ç¥Ð¥Ã¥°ÌÜŪ¤Ç¡¢¥µ¡¼¥Ð¤¬¤³¤ì¤é¤Î¥á¥Ã¥»¡¼¥¸¤ò¤É¤³¤«Ê̤Υ¢¥É¥ì¥¹¤Ø -Á÷¿®¤·¤¿Êý¤¬ÊØÍø¤Ê¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£ +DHCP ���饤����Ȥϡ��̾� IP ���ɥ쥹��������Ƥ��ʤ��� +Ǥ�դΥץ��ȥ����å��������ߥƥåɥ֥����ɥ��㥹�� +���ɥ쥹�Ǥ��� 255.255.255.255 �ؤ��������ޤ��� +�ǥХå���Ū�ǡ������Ф������Υ�å�������ɤ����̤Υ��ɥ쥹�� +�����������������ʤ��Ȥ�����ޤ��� .B -s -¥Õ¥é¥°¤Î¸å¤ËÁ÷¿®Àè¤Î IP ¥¢¥É¥ì¥¹¤â¤·¤¯¤Ï¥É¥á¥¤¥ó̾¤ò¤Ä¤±¤Æ»ØÄê -¤Ç¤­¤Þ¤¹¡£ -¥Æ¥¹¥ÈÌÜŪ¤Ç¡¢DHCP ¥¯¥é¥¤¥¢¥ó¥È¤¬Á÷¿®¤¹¤ëÁ´¤Æ¤Î¥Ñ¥±¥Ã¥È¤Î -giaddr ¥Õ¥£¡¼¥ë¥É¤ò +�ե饰�θ��������� IP ���ɥ쥹�⤷���ϥɥᥤ��̾��Ĥ��ƻ��� +�Ǥ��ޤ��� +�ƥ�����Ū�ǡ�DHCP ���饤����Ȥ������������ƤΥѥ��åȤ� +giaddr �ե�����ɤ� .B -g -¥Õ¥é¥°¤ËÁ÷¿®Àè¤Î IP ¥¢¥É¥ì¥¹¤ò³¤±¤¿·Á¤ò»ÈÍѤ¹¤ë¤³¤È¤ÇÀßÄꤹ¤ë -¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤ì¤Ï¥Æ¥¹¥ÈÌÜŪ¤Î»þ¤Î¤ßÍ­ÍѤʤâ¤Î¤Ç¤¢¤ê¡¢ -·ø¼Â¤µ¤ä»È¤¤¤ä¤¹¤µ¤òµá¤á¤ë¾õ¶·¤ÇÆ°ºî¤¹¤ë¤³¤È¤òÁÛÄꤷ¤Æ¤Ï -¤¤¤±¤Þ¤»¤ó¡£ +�ե饰��������� IP ���ɥ쥹��³����������Ѥ��뤳�Ȥ����ꤹ�� +���Ȥ��Ǥ��ޤ�������ϥƥ�����Ū�λ��Τ�ͭ�Ѥʤ�ΤǤ��ꡢ +���¤���Ȥ��䤹������������ư��뤳�Ȥ����ꤷ�Ƥ� +�����ޤ��� .PP -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢Ä̾磻¥ó¥¿¥Õ¥§¡¼¥¹¤òÀßÄꤹ¤ë¤Þ¤Ç¤Ï -¥Õ¥©¥¢¥°¥é¥¦¥ó¥É¤ÇÆ°ºî¤·¡¢¤½¤Î¸å¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¤ÇÆ°ºî -¤¹¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£dhclient ¤ò¾ï¤Ë¥Õ¥©¥¢¥°¥é¥¦¥ó¥É¤Î -¥×¥í¥»¥¹¤È¤·¤ÆÆ°ºî¤µ¤»¤ë¤¿¤á¤Ë¤Ï¡¢ +DHCP ���饤����Ȥϡ��̾磻�󥿥ե����������ꤹ��ޤǤ� +�ե������饦��ɤ�ư������θ�Хå����饦��ɤ�ư�� +����褦�ˤʤ�ޤ���dhclient ���˥ե������饦��ɤ� +�ץ������Ȥ���ư����뤿��ˤϡ� .B -d -¥Õ¥é¥°¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ï¡¢DHCP ¥¯¥é¥¤¥¢¥ó¥È¤¬ -¥Ç¥Ð¥Ã¥¬¤Î¤â¤È¤ÇÆ°ºî¤·¤Æ¤¤¤ë¾ì¹ç¤ä¡¢System V ¥·¥¹¥Æ¥à¤Î -inittab ¤Î³°Â¦¤ÇÆ°ºî¤·¤Æ¤¤¤ë¾ì¹ç¤Ë¤ÏÍ­¸ú¤Ê¤â¤Î¤Ç¤¹¡£ +�ե饰����ꤹ��ɬ�פ�����ޤ�������ϡ�DHCP ���饤����Ȥ� +�ǥХå��Τ�Ȥ�ư��Ƥ�����䡢System V �����ƥ�� +inittab �γ�¦��ư��Ƥ�����ˤ�ͭ���ʤ�ΤǤ��� .PP -¤³¤Î¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢Ä̾ï¤Ïµ¯Æ°¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¡¢¥¢¥É¥ì¥¹¤ò -³ÍÆÀ¤¹¤ë¤Þ¤Çɸ½à¥¨¥é¡¼½ÐÎϤ˥ץí¥È¥³¥ë¥·¡¼¥±¥ó¥¹¤ò -½ñ¤­½Ð¤·¤Þ¤¹¡£¥¢¥É¥ì¥¹¤ò³ÍÆÀ¤·¤¿¸å¤Ï +���Υ��饤����Ȥϡ��̾�ϵ�ư��å�������ɽ���������ɥ쥹�� +��������ޤ�ɸ�२�顼���Ϥ˥ץ��ȥ��륷�����󥹤� +�ñ¤­½Ð¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½É¥ì¥¹ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ .B syslog (3) -¥Õ¥¡¥·¥ê¥Æ¥£¤ò»ÈÍѤ·¤Æ¥á¥Ã¥»¡¼¥¸¤Î¥í¥°¤ò¼è¤ë¤À¤±¤Ë¤Ê¤ê¤Þ¤¹¡£ +�ե�����ƥ�����Ѥ��ƥ�å������Υ�����������ˤʤ�ޤ��� .B -q -¥Õ¥é¥°¤ò»ÈÍѤ¹¤ë¤È¡¢¥¨¥é¡¼°Ê³°¤Î¥á¥Ã¥»¡¼¥¸¤òɸ½à¥¨¥é¡¼½ÐÎÏ¤Ë -½ñ¤­½Ð¤µ¤Ê¤¤¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£ +�ե饰����Ѥ���ȡ����顼�ʳ��Υ�å�������ɸ�२�顼���Ϥ� +�ñ¤­½Ð¤ï¿½ï¿½Ê¤ï¿½ï¿½è¤¦ï¿½Ë¤Ê¤ï¿½Þ¤ï¿½ï¿½ï¿½ .PP -¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢DHCP ¥×¥í¥È¥³¥ë¤ÇµÁ̳¤Å¤±¤é¤ì¤Æ¤¤¤Ê¤¤¤¿¤á¡¢ -Ä̾ï¤Ï¸½ºß¼èÆÀ¤·¤Æ¤¤¤ë¥ê¡¼¥¹¤ò³«Êü¤¹¤ë¤³¤È¤Ï¤¢¤ê¤Þ¤»¤ó¡£ -¤¿¤À¡¢¥±¡¼¥Ö¥ë ISP ¤Î¤Ê¤«¤Ë¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ -³ä¤êÅö¤Æ¤é¤ì¤¿IP ¥¢¥É¥ì¥¹¤ò³«Êü¤·¤¿¤¤¾ì¹ç¤Ë¤Ï¡¢¥µ¡¼¥Ð¤Ë -ÄÌÃΤ¹¤ë¤è¤¦¤ËµÁ̳¤Å¤±¤Æ¤¤¤ë¤È¤³¤í¤â¤¢¤ê¤Þ¤¹¡£ +���饤����Ȥϡ�DHCP �ץ��ȥ���ǵ�̳�Ť����Ƥ��ʤ����ᡢ +�̾�ϸ��߼������Ƥ���꡼���������뤳�ȤϤ���ޤ��� +�����������֥� ISP �Τʤ��ˤϡ����饤����Ȥ� +������Ƥ�줿IP ���ɥ쥹�������������ˤϡ������Ф� +���Τ���褦�˵�̳�Ť��Ƥ���Ȥ����⤢��ޤ��� .B -r -¥Õ¥é¥°¤òÍѤ¤¤ë¤È¡¢ÌÀ¼¨Åª¤Ë¸½ºß¤Î¥ê¡¼¥¹¤ò³«Êü¤·¡¢¤¤¤Ã¤¿¤ó -¥ê¡¼¥¹¤ò³«Êü¤¹¤ë¤È¥¯¥é¥¤¥¢¥ó¥È¤Ï½ªÎ»¤·¤Þ¤¹¡£ +�ե饰���Ѥ���ȡ�����Ū�˸��ߤΥ꡼�������������ä��� +�꡼����������ȥ��饤����ȤϽ�λ���ޤ��� .PP .B -1 -¥Õ¥é¥°¤ò»ØÄꤹ¤ë¤È¡¢ -dhclient ¤Ï¤Ò¤È¤Ä¤Î¥ê¡¼¥¹¤ËÂФ· 1 ÅÙ¤À¤±¤·¤«¼èÆÀ¤ò»î¤ß¤Þ¤»¤ó¡£ -¤â¤·¼èÆÀ¤Ë¼ºÇÔ¤¹¤ì¤Ð dhclient ¤Ï½ªÎ»¥³¡¼¥É 2 ¤Ç½ªÎ»¤·¤Þ¤¹¡£ +�ե饰����ꤹ��ȡ� +dhclient �ϤҤȤĤΥ꡼�����Ф� 1 �٤��������������ߤޤ��� +�⤷�����˼��Ԥ���� dhclient �Ͻ�λ������ 2 �ǽ�λ���ޤ��� .PP -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢Ä̾ï¤ÏÀßÄê¾ðÊó¤ò +DHCP ���饤����Ȥϡ��̾���������� .B ETCDIR/dhclient.conf -¤«¤é¡¢¥ê¡¼¥¹¥Ç¡¼¥¿¥Ù¡¼¥¹¤ò +���顢�꡼���ǡ����١����� .B DBDIR/dhclient.leases -¤«¤é¼èÆÀ¤·¡¢¼«Ê¬¤Î¥×¥í¥»¥¹ ID ¤ò +�������������ʬ�Υץ����� ID �� .B RUNDIR/dhclient.pid -¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤ËÊݸ¤·¡¢ -¤½¤·¤Æ¥Í¥Ã¥È¥ï¡¼¥¯¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò +�Ȥ���̾���Υե��������¸���� +�����ƥͥåȥ�����󥿥ե������� .B CLIENTBINDIR/dhclient-script -¤ò»ÈÍѤ·¤ÆÀßÄꤷ¤Þ¤¹¡£ -¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤ËÊ̤Î̾Á°¤ò»ØÄꤷ¤¿¤ê¡¢Ê̤ξì½ê¤ò -»ØÄꤷ¤¿¤ê¤¹¤ë¤Ë¤Ï¡¢¤½¤ì¤¾¤ì +����Ѥ������ꤷ�ޤ��� +�����Υե�������̤�̾������ꤷ���ꡢ�̤ξ��� +���ꤷ���ꤹ��ˤϡ����줾�� .B -cf, .B -lf, .B -pf -¤ª¤è¤Ó +����� .B -sf -¥Õ¥é¥°¤ò¡¢¸å¤í¤Ë¥Õ¥¡¥¤¥ë̾¤ò³¤±¤ë·Á¤Ç»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£ -¤³¤ÎÊýË¡¤Ï¡¢Î㤨¤Ð DHCP ¥¯¥é¥¤¥¢¥ó¥È¤¬µ¯Æ°¤·¤¿¤È¤­¤Ë +�ե饰�ò¡¢¸ï¿½ï¿½ï¿½Ë¥Õ¥ï¿½ï¿½ï¿½ï¿½ï¿½Ì¾ï¿½ï¿½Â³ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ç»ï¿½ï¿½Ñ¤ï¿½ï¿½Æ¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ +������ˡ�ϡ��㤨�� DHCP ���饤����Ȥ���ư�����Ȥ��� .B DBDIR -¤â¤·¤¯¤Ï +�⤷���� .B RUNDIR -¤¬¤Þ¤À¥Þ¥¦¥ó¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë¤ÏÆäËÍ­ÍѤʤâ¤Î¤Ë -¤Ê¤êÆÀ¤Þ¤¹¡£ +���ޤ��ޥ���Ȥ���Ƥ��ʤ����ˤ��ä�ͭ�Ѥʤ�Τ� +�ʤ����ޤ��� .PP -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢ÀßÄꤹ¤Ù¤­¥Í¥Ã¥È¥ï¡¼¥¯ -¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òƱÄê¤Ç¤­¤Ê¤¤¾ì¹ç¡¢Ä̾ï¤Ï½ªÎ»¤·¤Þ¤¹¡£ -¥é¥Ã¥×¥È¥Ã¥×¥³¥ó¥Ô¥å¡¼¥¿¤ä¥Û¥Ã¥È¥¹¥ï¥Ã¥×²Äǽ¤Ê I/O ¥Ð¥¹¤ò -»ý¤Ã¤¿¥³¥ó¥Ô¥å¡¼¥¿¤Ç¤Ï¡¢¥Ö¥í¡¼¥É¥­¥ã¥¹¥È¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤¬ -¥·¥¹¥Æ¥àµ¯Æ°¸å¤ËÄɲ䵤ì¤ë¤³¤È¤¬¤¢¤êÆÀ¤Þ¤¹¡£ +DHCP ���饤����Ȥϡ����ꤹ�٤��ͥåȥ�� +���󥿥ե�������Ʊ��Ǥ��ʤ���硢�̾�Ͻ�λ���ޤ��� +��åץȥåץ���ԥ塼����ۥåȥ���åײ�ǽ�� I/O ���� +���ä�����ԥ塼���Ǥϡ��֥����ɥ��㥹�ȥ��󥿥ե������� +�����ƥ൯ư����ɲä���뤳�Ȥ��������ޤ��� .B -w -¥Õ¥é¥°¤òÍѤ¤¤ë¤È¡¢¤½¤Î¤è¤¦¤Ê¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤¬ 1 ¤Ä¤â -¸«¤Ä¤«¤é¤Ê¤¤¤È¤­¤Ë¤â¥¯¥é¥¤¥¢¥ó¥È¤¬½ªÎ»¤·¤Ê¤¤¤è¤¦¤Ë¤Ç¤­¤Þ¤¹¡£ -¸å¤Ç +�ե饰���Ѥ���ȡ����Τ褦�ʥ��󥿥ե������� 1 �Ĥ� +���Ĥ���ʤ��Ȥ��ˤ⥯�饤����Ȥ���λ���ʤ��褦�ˤǤ��ޤ��� +��� .B omshell (8) -¥×¥í¥°¥é¥à¤ò»ÈÍѤ·¤Æ¡¢¥Í¥Ã¥È¥ï¡¼¥¯¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤¬Äɲ䵤줿¤ê -ºï½ü¤µ¤ì¤¿¤ê¤·¤¿¤³¤È¤ò¥¯¥é¥¤¥¢¥ó¥È¤ËÄÌÃΤ¹¤ë¤³¤È¤¬¤Ç¤­¡¢ -¤³¤ì¤Ë¤è¤Ã¤Æ¥¯¥é¥¤¥¢¥ó¥È¤¬¤³¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¾å¤Î -IP ¥¢¥É¥ì¥¹¤òÀßÄꤹ¤ë¤è¤¦»î¤ß¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ +�ץ���������Ѥ��ơ��ͥåȥ�����󥿥ե��������ɲä��줿�� +������줿�ꤷ�����Ȥò¥¯¥é¥¤ï¿½ï¿½ï¿½ï¿½È¤ï¿½ï¿½ï¿½ï¿½Î¤ï¿½ï¿½ë¤³ï¿½È¤ï¿½ï¿½Ç¤ï¿½ï¿½ï¿½ +����ˤ�äƥ��饤����Ȥ����Υ��󥿥ե�������� +IP ���ɥ쥹�����ꤹ��褦��ߤ뤳�Ȥ��Ǥ��ޤ��� .PP .B -n -¥Õ¥é¥°¤òÍѤ¤¤ë¤³¤È¤Ç¡¢¤É¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤âÀßÄꤷ¤è¤¦¤È -¤·¤Ê¤¤¤è¤¦¤Ë DHCP ¥¯¥é¥¤¥¢¥ó¥È¤ò»Ø¼¨¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ -¤³¤Î¥Õ¥é¥°¤Ï¡¢¤­¤Ã¤È +�ե饰���Ѥ��뤳�Ȥǡ��ɤΥ��󥿥ե����������ꤷ�褦�� +���ʤ��褦�� DHCP ���饤����Ȥ�ؼ����뤳�Ȥ��Ǥ��ޤ��� +���Υե饰�ϡ����ä� .B -w -¥Õ¥é¥°¤È¶¦¤Ë»ÈÍѤ¹¤ë¤ÈÍ­ÍѤǤ·¤ç¤¦¡£ +�ե饰�ȶ��˻��Ѥ����ͭ�ѤǤ��礦�� .PP -IP ¥¢¥É¥ì¥¹¤ò³ÍÆÀ¤¹¤ë¤Þ¤ÇÂԤĤΤǤϤʤ¯¡¢Â¨ºÂ¤Ë¥Ç¡¼¥â¥ó¤È -¤Ê¤ë¤è¤¦¤Ë¥¯¥é¥¤¥¢¥ó¥È¤ò»Ø¼¨¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£ +IP ���ɥ쥹���������ޤ��ԤĤΤǤϤʤ���¨�¤˥ǡ����� +�ʤ�褦�˥��饤����Ȥ�ؼ����뤳�Ȥ�Ǥ��ޤ��� .B -nw -¥Õ¥é¥°¤òÍ¿¤¨¤ë¤È²Äǽ¤Ç¤¹¡£ -.SH ÀßÄê -dhclient.conf(5) ¥Õ¥¡¥¤¥ë¤Î½ñ¼°¤ÏÊ̤˲òÀ⤵¤ì¤Æ¤¤¤Þ¤¹¡£ +�ե饰��Ϳ����Ȳ�ǽ�Ǥ��� +.SH ���� +dhclient.conf(5) �ե�����νñ¼°¤ï¿½ï¿½Ì¤Ë²ï¿½ï¿½â¤µï¿½ï¿½Æ¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ .SH OMAPI -¤³¤Î DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢Æ°ºîÃæ¤Ë¤½¤ÎÆ°ºî¤òÄä»ß¤µ¤»¤ë -¤³¤È¤Ê¤¯¼«Ê¬¼«¿È¤òÀ©¸æ¤Ç¤­¤ë¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Îµ¡Ç½¤òÄ󶡤·¤Æ¤¤¤Þ¤¹¡£ -¤³¤Îµ¡Ç½¤Ï¡¢¥ê¥â¡¼¥È¥ª¥Ö¥¸¥§¥¯¥ÈÁàºî API ¤Ç¤¢¤ë OMAPI ¤ò -ÍѤ¤¤ÆÄ󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£OMAPI ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢TCP/IP ¤ò -»ÈÍѤ·¤Æ¤³¤Î DHCP ¥¯¥é¥¤¥¢¥ó¥È¤ËÀܳ¤·¤Þ¤¹¡£¤½¤·¤Æ¡¢ -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Î¸½ºß¤Î¾õÂÖ¤ò¸¡ºº¤Ç¤­¡¢¤½¤Î¾õÂÖ¤òÊѹ¹¤¹¤ë¤³¤È¤¬ -¤Ç¤­¤Þ¤¹¡£ +���� DHCP ���饤����Ȥϡ�ư����ˤ���ư�����ߤ����� +���Ȥʤ���ʬ���Ȥ�����Ǥ���褦�ˤ��뤿��ε�ǽ���󶡤��Ƥ��ޤ��� +���ε�ǽ�ϡ���⡼�ȥ��֥���������� API �Ǥ��� OMAPI �� +�Ѥ����󶡤���Ƥ��ޤ���OMAPI ���饤����Ȥϡ�TCP/IP �� +���Ѥ��Ƥ��� DHCP ���饤����Ȥ���³���ޤ��������ơ� +DHCP ���饤����Ȥθ��ߤξ��֤ò¸¡ºï¿½ï¿½Ç¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Î¾ï¿½ï¿½Ö¤ï¿½ï¿½Ñ¹ï¿½ï¿½ï¿½ï¿½ë¤³ï¿½È¤ï¿½ +�Ǥ��ޤ��� .PP -¥æ¡¼¥¶¥×¥í¥°¥é¥à¤Ç¤Ï¡¢´ðÁäˤ¢¤ë OMAPI ¥×¥í¥È¥³¥ë¤òľÀܼÂÁõ¤¹¤ë -¤Î¤Ç¤Ï¤Ê¤¯¡¢dhcpctl API ¤â¤·¤¯¤Ï OMAPI ¤½¤Î¤â¤Î¤ò»ÈÍѤ¹¤Ù¤­¤Ç¤¹¡£ -dhcpctl ¤Ï¡¢OMAPI ¤¬¼«Æ°¤Ç¹Ô¤Ã¤Æ¤Ï¤¯¤ì¤Ê¤¤»¨»ö¤Î¤¤¤¯¤Ä¤«¤ò°·¤¦ -¥é¥Ã¥Ñ¤Ç¤¹¡£dhcpctl ¤ª¤è¤Ó OMAPI ¤Ë¤Ä¤¤¤Æ¤Ï -\fBdhcpctl(3)\fR ¤ª¤è¤Ó \fBomapi(3)\fR ¤Ëµ­½Ò¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ -¥¯¥é¥¤¥¢¥ó¥È¤òÍѤ¤¤Æ¤ä¤ê¤¿¤¤¤³¤È¤Î¤Û¤È¤ó¤É¤Ï¡¢ÆÃÊÌ¤Ê¥×¥í¥°¥é¥à¤ò -½ñ¤«¤Ê¤¯¤È¤â \fBomshell(1)\fR ¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤ÆľÀܼ¸½¤Ç¤­¤ë -¤â¤Î¤Ç¤¹¡£ -.SH À©¸æ¥ª¥Ö¥¸¥§¥¯¥È -À©¸æ¥ª¥Ö¥¸¥§¥¯¥È¤ò»ÈÍѤ¹¤ë¤È¡¢DHCP ¥¯¥é¥¤¥¢¥ó¥È¤ò½ªÎ»¤µ¤»¡¢ -ÊÝ»ý¤·¤Æ¤¤¤ë¥ê¡¼¥¹¤ò¤¹¤Ù¤Æ³«Êü¤·¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬Äɲä·¤¿ -DNS ¥ì¥³¡¼¥É¤ò¤¹¤Ù¤Æ¾Ãµî¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£ -¤Þ¤¿¡¢¥¯¥é¥¤¥¢¥ó¥È¤ò°ì»þÄä»ß¤µ¤»¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬»ÈÍѤ·¤Æ¤¤¤ë -¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÎÀßÄê¤ò½ü¤¯¤³¤È¤¬¤Ç¤­¤ë¤è¤¦¤Ë¤â¤Ê¤ê¤Þ¤¹¡£ -¤½¤Î¸å¤Ç¡¢DHCP ¥¯¥é¥¤¥¢¥ó¥È¤òºÆµ¯Æ°¤µ¤»¤ë¤³¤È¤¬¤Ç¤­¡¢ -¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òºÆÀßÄꤹ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£Ä̾¥Ï¥¤¥Ð¥Í¡¼¥·¥ç¥ó¤Ë -Æþ¤ëÁ°¤ä¥é¥Ã¥×¥È¥Ã¥×¥³¥ó¥Ô¥å¡¼¥¿¤Ç¤Ï¥¹¥ê¡¼¥×¤¹¤ëÁ°¤Ë -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤ò°ì»þÄä»ß¤µ¤»¤ë¤Ç¤·¤ç¤¦¡£ -¤½¤·¤Æ¡¢ÅŸ»¤¬Ìá¤Ã¤Æ¤­¤¿¸å¤Ç DHCP ¥¯¥é¥¤¥¢¥ó¥È¤ò²óÉü¤µ¤»¤ë -¤Ç¤·¤ç¤¦¡£¤³¤¦¤¹¤ë¤³¤È¤Ç¡¢¥³¥ó¥Ô¥å¡¼¥¿¤¬¥Ï¥¤¥Ð¥Í¡¼¥·¥ç¥ó¤ä -¥¹¥ê¡¼¥×Ãæ¤Ë¤Ï PC ¥«¡¼¥É¤òÄä»ß¤µ¤»¤Æ¤ª¤­¡¢¥³¥ó¥Ô¥å¡¼¥¿¤¬ -¥Ï¥¤¥Ð¥Í¡¼¥·¥ç¥ó¤ä¥¹¥ê¡¼¥×¤«¤éÉüµ¢¤·¤¿¤é°ÊÁ°¤Î¾õÂÖ¤Ë -ºÆÅÙ½é´ü²½¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ë¤Î¤Ç¤¹¡£ +�桼���ץ������Ǥϡ����äˤ��� OMAPI �ץ��ȥ����ľ�ܼ������� +�ΤǤϤʤ���dhcpctl API �⤷���� OMAPI ���Τ�Τ���Ѥ��٤��Ǥ��� +dhcpctl �ϡ�OMAPI ����ư�ǹԤäƤϤ���ʤ������Τ����Ĥ��ò°·¤ï¿½ +��åѤǤ���dhcpctl ����� OMAPI �ˤĤ��Ƥ� +\fBdhcpctl(3)\fR ����� \fBomapi(3)\fR �˵��Ҥ���Ƥ��ޤ��� +���饤����Ȥ��Ѥ��Ƥ�ꤿ�����ȤΤۤȤ�ɤϡ����̤ʥץ������� +�ñ¤«¤Ê¤ï¿½ï¿½È¤ï¿½ \fBomshell(1)\fR ���ޥ�ɤ���Ѥ���ľ�ܼ¸��Ǥ��� +��ΤǤ��� +.SH ���楪�֥������� +���楪�֥������Ȥ���Ѥ���ȡ�DHCP ���饤����Ȥ�λ������ +�ݻ����Ƥ���꡼���ò¤¹¤Ù¤Æ³ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½é¥¤ï¿½ï¿½ï¿½ï¿½È¤ï¿½ï¿½É²Ã¤ï¿½ï¿½ï¿½ +DNS �쥳���ɤò¤¹¤Ù¤Æ¾Ãµî¤¹ï¿½ë¤³ï¿½È¤ï¿½ï¿½Ç¤ï¿½ï¿½ï¿½è¤¦ï¿½Ë¤Ê¤ï¿½Þ¤ï¿½ï¿½ï¿½ +�ޤ������饤����Ȥ�����ߤ��������饤����Ȥ����Ѥ��Ƥ��� +���󥿥ե������������������Ȥ��Ǥ���褦�ˤ�ʤ�ޤ��� +���θ�ǡ�DHCP ���饤����Ȥ�Ƶ�ư�����뤳�Ȥ��Ǥ��� +���󥿥ե�����������ꤹ�뤳�Ȥ��Ǥ��ޤ����̾�ϥ��Х͡������� +���������åץȥåץ���ԥ塼���Ǥϥ��꡼�פ������� +DHCP ���饤����Ȥ�����ߤ�����Ǥ��礦�� +�����ơ��Ÿ�����äƤ������ DHCP ���饤����Ȥ���������� +�Ǥ��礦���������뤳�Ȥǡ�����ԥ塼�����ϥ��Х͡������� +���꡼����ˤ� PC �����ɤ���ߤ����Ƥ���������ԥ塼���� +�ϥ��Х͡������䥹�꡼�פ�����������������ξ��֤� +���ٽ�������뤳�Ȥ��Ǥ���褦�ˤʤ�ΤǤ��� .PP -À©¸æ¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ï°À­¤¬ 1 ¤Ä¤¢¤ê¤Þ¤¹¡£¤½¤ì¤Ï¾õÂÖ°À­¤Ç¤¹¡£ -¥¯¥é¥¤¥¢¥ó¥È¤ò½ªÎ»¤µ¤»¤ë¤Ë¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤Î¾õÂÖ°À­¤ò 2 ¤Ë -ÀßÄꤷ¤Þ¤¹¡£¥¯¥é¥¤¥¢¥ó¥È¤Ï¼«Æ°Åª¤Ë DHCPRELEASE ¤ò¹Ô¤¦¤Ç¤·¤ç¤¦¡£ -¥¯¥é¥¤¥¢¥ó¥È¤ò°ì»þÄä»ß¤µ¤»¤ë¤Ë¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤Î¾õÂÖ°À­¤ò -3 ¤ËÀßÄꤷ¤Þ¤¹¡£¥¯¥é¥¤¥¢¥ó¥È¤òÉüµ¢¤µ¤»¤ë¤Ë¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤Î -¾õÂÖ°À­¤ò 4 ¤ËÀßÄꤷ¤Þ¤¹¡£ -.SH ´ØÏ¢¥Õ¥¡¥¤¥ë +���楪�֥������Ȥˤ�°���� 1 �Ĥ���ޤ�������Ͼ���°���Ǥ��� +���饤����Ȥ�λ������ˤϡ����饤����Ȥξ���°���� 2 �� +���ꤷ�ޤ������饤����Ȥϼ�ưŪ�� DHCPRELEASE ��Ԥ��Ǥ��礦�� +���饤����Ȥ�����ߤ�����ˤϡ����饤����Ȥξ���°���� +3 �����ꤷ�ޤ������饤����Ȥ�����������ˤϡ����饤����Ȥ� +����°���� 4 �����ꤷ�ޤ��� +.SH ��Ϣ�ե����� .B CLIENTBINDIR/dhclient-script, .B ETCDIR/dhclient.conf, DBDIR/dhclient.leases, RUNDIR/dhclient.pid, .B DBDIR/dhclient.leases~ -.SH ´ØÏ¢¹àÌÜ +.SH ��Ϣ���� dhclient.conf(5), dhclient.leases(5), dhclient-script(8) -.SH ºî¼Ô +.SH ��� .B dhclient(8) -¤Ï Ted Lemon ¤¬ -Vixie Enterprises ¤È¶¨ÎϤ·¤Æ Internet Systems Consortium ¤Î¤¿¤á¤Ë -½ñ¤­¤Þ¤·¤¿¡£ -Internet Systems Consortium ¤Ë¤Ä¤¤¤Æ¤è¤ê¾Ü¤·¤¯¤Ï¡¢ +�� Ted Lemon �� +Vixie Enterprises �ȶ��Ϥ��� Internet Systems Consortium ����� +�ñ¤­¤Þ¤ï¿½ï¿½ï¿½ï¿½ï¿½ +Internet Systems Consortium �ˤĤ��Ƥ��ܤ����ϡ� .B https://www.isc.org -¤ò¤´Í÷¤¯¤À¤µ¤¤¡£ -Vixie Enterprises ¤Ë¤Ä¤¤¤Æ¤è¤ê¾Ü¤·¤¯¤Ï¡¢ +�������������� +Vixie Enterprises �ˤĤ��Ƥ��ܤ����ϡ� .B http://www.vix.com -¤ò¤´Í÷¤¯¤À¤µ¤¤¡£ +�������������� .PP -ËÜ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢Elliot Poger ¤¬ -Stanford Âç³Ø¤Î MosquitoNet ¥×¥í¥¸¥§¥¯¥È¤Ë»²²Ã¤·¤Æ¤¤¤ë´Ö¤Ë¡¢ -Linux ¤Ç¤ÎÍøÍѤ˺ݤ·ÂçÉý¤Ë½¤Àµ¡¢²þÎɤò¹Ô¤¤¤Þ¤·¤¿¡£ +�ܥ��饤����Ȥϡ�Elliot Poger �� +Stanford ��ؤ� MosquitoNet �ץ��������Ȥ˻��ä��Ƥ���֤ˡ� +Linux �Ǥ����Ѥ˺ݤ������˽��������ɤ�Ԥ��ޤ����� .PP -¸½ºß¤Î¥Ð¡¼¥¸¥ç¥ó¤Ï¡¢Elliot ¤Ë¤è¤ë Linux ¤Ç¤Î²þÎɤËÉ餦¤È¤³¤í¤¬Â礭¤¤¤Ç¤¹¤¬¡¢ -Internet Systems Consortium ¤Î DHCP ¥µ¡¼¥Ð¤¬»È¤¦¤â¤Î¤ÈƱ¤¸ -¥Í¥Ã¥È¥ï¡¼¥­¥ó¥°¥Õ¥ì¡¼¥à¥ï¡¼¥¯¤òÍѤ¤¤ë¤è¤¦¤Ë¡¢Ted Lemon ¤¬ -ÂçÉý¤ÊºÆÊÔÀ®¤äÉôʬŪ¤Ê½ñ¤­´¹¤¨¤ò¹Ô¤¤¤Þ¤·¤¿¡£ -¥·¥¹¥Æ¥àÆÃÍ­¤ÎÀßÄꥳ¡¼¥É¤ÎÂçÉôʬ¤Ï¥·¥§¥ë¥¹¥¯¥ê¥×¥È¤Ë°Ü¤µ¤ì¤¿¤Î¤Ç¡¢ -¤è¤ê¿¤¯¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤Î¥µ¥Ý¡¼¥È¤¬²Ã¤¨¤é¤ì¤ë¤Ë¤Ä¤ì¡¢ -¥·¥¹¥Æ¥àÆÃÍ­¤ÎÀßÄꥳ¡¼¥É¤ò¤½¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤Ë -°Ü¿¢¤·¤¿¤ê´ÉÍý¤·¤¿¤ê¤¹¤ëɬÍפϤʤ¯¤Ê¤ë¤Ç¤·¤ç¤¦¡£ -Âå¤ï¤ê¤Ë¡¢¥·¥§¥ë¥¹¥¯¥ê¥×¥È¤¬´Ä¶­¤Ë¹ç¤Ã¤¿¥Ä¡¼¥ë¤ò¸Æ¤Ó½Ð¤·¤Æ -¤½¤ÎÌÜŪ¤ò²Ì¤¿¤·¤Æ¤¯¤ì¤Þ¤¹¡£ +���ߤΥС������ϡ�Elliot �ˤ�� Linux �Ǥβ��ɤ��餦�Ȥ������礭���Ǥ����� +Internet Systems Consortium �� DHCP �����Ф��Ȥ���Τ�Ʊ�� +�ͥåȥ���󥰥ե졼�������Ѥ���褦�ˡ�Ted Lemon �� +�����ʺ���������ʬŪ�ʽñ¤­´ï¿½ï¿½ï¿½ï¿½ï¿½Ô¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ï¿½ï¿½ +�����ƥ���ͭ�����ꥳ���ɤ�����ʬ�ϥ����륹����ץȤ˰ܤ��줿�Τǡ� +���¿���Υ��ڥ졼�ƥ��󥰥����ƥ�Υ��ݡ��Ȥ��ä�����ˤĤ졢 +�����ƥ���ͭ�����ꥳ���ɤò¤½¤Î¥ï¿½ï¿½Ú¥ì¡¼ï¿½Æ¥ï¿½ï¿½ó¥°¥ï¿½ï¿½ï¿½ï¿½Æ¥ï¿½ï¿½ +�ܿ���������������ꤹ��ɬ�פϤʤ��ʤ�Ǥ��礦�� +����ˡ������륹����ץȤ��Ķ��˹�ä��ġ����ƤӽФ��� +������Ū��̤����Ƥ���ޤ��� .PP diff --git a/doc/ja_JP.eucJP/dhclient.conf.5 b/doc/ja_JP.eucJP/dhclient.conf.5 index a14e1da6..79940df6 100644 --- a/doc/ja_JP.eucJP/dhclient.conf.5 +++ b/doc/ja_JP.eucJP/dhclient.conf.5 @@ -16,48 +16,48 @@ .\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Internet Systems Consortium, Inc. -.\" 950 Charter Street -.\" Redwood City, CA 94063 +.\" PO Box 360 +.\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ .\" .\" %FreeBSD: src/contrib/isc-dhcp/client/dhclient.conf.5,v 1.7.2.1 2002/04/11 10:16:46 murray Exp % .\" $FreeBSD: doc/ja_JP.eucJP/man/man5/dhclient.conf.5,v 1.6 2002/05/03 03:23:30 horikawa Exp $ -.\" WORD: lease ¥ê¡¼¥¹(¥¢¥É¥ì¥¹¤ÎÂßÍ¿)[dhclient.conf.5] -.\" WORD: lease discovery request ¥ê¡¼¥¹È¯¸«Í×µá[dhclient.conf.5] -.\" WORD: offer (¥ê¡¼¥¹Ä󶡤Î)¿½¤·½Ð¡¢Ä󶡿½¤·½Ð[dhclient.conf.5] +.\" WORD: lease �꡼��(���ɥ쥹����Ϳ)[dhclient.conf.5] +.\" WORD: lease discovery request �꡼��ȯ���׵�[dhclient.conf.5] +.\" WORD: offer (�꡼���󶡤�)�����С��󶡿�����[dhclient.conf.5] .TH dhclient.conf 5 -.SH ̾¾Î -dhclient.conf - DHCP ¥¯¥é¥¤¥¢¥ó¥ÈÀßÄê¥Õ¥¡¥¤¥ë -.SH ²òÀâ -dhclient.conf ¥Õ¥¡¥¤¥ë¤Ë¤Ï -Internet Systems Consortium ¤Î DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ç¤¢¤ë +.SH ̾�� +dhclient.conf - DHCP ���饤���������ե����� +.SH ���� +dhclient.conf �ե�����ˤ� +Internet Systems Consortium �� DHCP ���饤����ȤǤ��� .IR dhclient -¤ÎÀßÄê¾ðÊ󤬴ޤޤì¤Þ¤¹¡£ -.PP -dhclient.conf ¤Ï¼«Í³·Á¼°¤Î ASCII ¥Æ¥­¥¹¥È¥Õ¥¡¥¤¥ë¤Ç¤¹¡£ -¤³¤Î¥Õ¥¡¥¤¥ë¤Ï dhclient ¤ËÁȤ߹þ¤Þ¤ì¤¿ºÆµ¢²¼¹ß¥Ñ¡¼¥¶¤Ë²òÀϤµ¤ì¤Þ¤¹¡£ -¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢À°·Á¤ÎÌÜŪ¤Ç¥¿¥Ö¤ä²þ¹Ô¤ò;ʬ¤Ë´Þ¤á¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£ -¥Õ¥¡¥¤¥ëÃæ¤Î¥­¡¼¥ï¡¼¥É¤Ç¤ÏÂçʸ»ú¾®Ê¸»ú¤ò¶èÊ̤·¤Þ¤»¤ó¡£ -(¥¯¥©¡¼¥ÈÆâ¤Ï½ü¤¤¤Æ) ¥Õ¥¡¥¤¥ëÃæ¤Î¤É¤³¤Ç¤â¥³¥á¥ó¥È¤òÃÖ¤¯¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ -¥³¥á¥ó¥È¤Ïʸ»ú # ¤Ç»Ï¤Þ¤ê¡¢¹ÔËö¤Ç½ª¤ï¤ê¤Þ¤¹¡£ -.PP -dhclient.conf ¥Õ¥¡¥¤¥ë¤Ç¡¢¥¯¥é¥¤¥¢¥ó¥È¤Î¤µ¤Þ¤¶¤Þ¤ÊÆ°ºî¤òÀßÄê¤Ç¤­¤Þ¤¹¡£ -¤½¤ì¤é¤Ë¤Ï¡¢¥×¥í¥È¥³¥ë¤Î¥¿¥¤¥ß¥ó¥°¡¢¥µ¡¼¥Ð¤ËÂФ·¤ÆÍ׵᤹¤ë¾ðÊó¡¢ -¥µ¡¼¥Ð¤ËÂФ·¤Æɬ¿Ü¤È¤µ¤ì¤ë¾ðÊó¡¢ -¥µ¡¼¥Ð¤¬¾ðÊó¤òÄ󶡤·¤Ê¤«¤Ã¤¿¾ì¹ç¤ËÍѤ¤¤ë¥Ç¥Õ¥©¥ë¥È¡¢ -¥µ¡¼¥Ð¤«¤éÄ󶡤µ¤ì¤¿¾ðÊó¤ò¾å½ñ¤­¤¹¤ëÃÍ¡¢ -¥µ¡¼¥Ð¤«¤éÄ󶡤µ¤ì¤¿¾ðÊó¤ËÁ°ÃÖ¤ä¸åÃÖ¤¹¤ëÃͤʤɤ¬¤¢¤ê¤Þ¤¹¡£ -¤Þ¤¿¡¢DHCP ¥µ¡¼¥Ð¤ò»ý¤¿¤Ê¤¤¥Í¥Ã¥È¥ï¡¼¥¯¤Ç»È¤¦¥¢¥É¥ì¥¹¤Ç¤¢¤Ã¤Æ¤â¡¢ -¤¢¤é¤«¤¸¤áÀßÄê¥Õ¥¡¥¤¥ë¤Ç½é´ü²½¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£ -.SH ¥×¥í¥È¥³¥ë¤Î¥¿¥¤¥ß¥ó¥° -¥¯¥é¥¤¥¢¥ó¥È¤Î¥¿¥¤¥ß¥ó¥°Æ°ºî¤Ï¡¢¥æ¡¼¥¶¤¬ÀßÄꤹ¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£ -¥æ¡¼¥¶¤¬¥¿¥¤¥ß¥ó¥°ÀßÄê¤ò¹Ô¤ï¤Ê¤±¤ì¤Ð¡¢ -¥µ¡¼¥Ð¤Ë̵Ãá½ø¤ËÉé²Ù¤òÍ¿¤¨¤¿¤ê¤»¤ºÅ¬»þ¹¹¿·¤ò¹Ô¤¦¤è¤¦¤Ê¡¢ -½¼Ê¬¤ËŬÀڤʥ¿¥¤¥ß¥ó¥°Æ°ºî¤¬¥Ç¥Õ¥©¥ë¥È¤ÇÍѤ¤¤é¤ì¤Þ¤¹¡£ -.PP -¤·¤«¤·¡¢É¬Íפ˱þ¤¸¤Æ¡¢ -¼¡¤Îʸ¤ò»ØÄꤷ¤Æ DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Î¥¿¥¤¥ß¥ó¥°Æ°ºî¤òÄ´Àá¤Ç¤­¤Þ¤¹: +��������󤬴ޤޤ�ޤ��� +.PP +dhclient.conf �ϼ�ͳ������ ASCII �ƥ����ȥե�����Ǥ��� +���Υե������ dhclient ���Ȥ߹��ޤ줿�Ƶ����ߥѡ����˲��Ϥ���ޤ��� +�ե�����ˤϡ���������Ū�ǥ��֤���Ԥ�;ʬ�˴ޤ�뤳�Ȥ�Ǥ��ޤ��� +�ե�������Υ�����ɤǤ���ʸ����ʸ������̤��ޤ��� +(����������Ͻ�����) �ե�������Τɤ��Ǥ⥳���Ȥ��֤����Ȥ��Ǥ��ޤ��� +�����Ȥ�ʸ�� # �ǻϤޤꡢ�����ǽ����ޤ��� +.PP +dhclient.conf �ե�����ǡ����饤����ȤΤ��ޤ��ޤ�ư�������Ǥ��ޤ��� +�����ˤϡ��ץ��ȥ���Υ����ߥ󥰡������Ф��Ф����׵᤹����� +�����Ф��Ф���ɬ�ܤȤ������� +�����Ф�������󶡤��ʤ��ä������Ѥ���ǥե���ȡ� +�����Ф����󶡤��줿������ñ¤­¤ï¿½ï¿½ï¿½ï¿½Í¡ï¿½ +�����Ф����󶡤��줿��������֤���֤����ͤʤɤ�����ޤ��� +�ޤ���DHCP �����Ф�����ʤ��ͥåȥ���ǻȤ����ɥ쥹�Ǥ��äƤ⡢ +���餫��������ե�����ǽ�������뤳�Ȥ�Ǥ��ޤ��� +.SH �ץ��ȥ���Υ����ߥ� +���饤����ȤΥ����ߥ�ư��ϡ��桼�������ꤹ��ɬ�פϤ���ޤ��� +�桼���������ߥ������Ԥ�ʤ���С� +�����Ф�̵�������٤�Ϳ�����ꤻ��Ŭ��������Ԥ��褦�ʡ� +��ʬ��Ŭ�ڤʥ����ߥ�ư��ǥե���Ȥ��Ѥ����ޤ��� +.PP +��������ɬ�פ˱����ơ� +����ʸ����ꤷ�� DHCP ���饤����ȤΥ����ߥ�ư���Ĵ��Ǥ��ޤ�: .PP .B timeout .I ʸ @@ -67,18 +67,18 @@ dhclient.conf .B ; .PP .I timeout -ʸ¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¥¢¥É¥ì¥¹¤ò·è¤á¤ë»î¤ß¤ò³«»Ï¤·¤Æ¤«¤é¡¢ -¥µ¡¼¥Ð¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤³¤È¤¬ -¤Ç¤­¤Ê¤¤¤ÈȽÃǤ¹¤ë¤Þ¤Ç¤Ë·Ð²á¤¹¤Ù¤­»þ´Ö¤ò·è¤á¤Þ¤¹¡£ -¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¤³¤Î¥¿¥¤¥à¥¢¥¦¥ÈÃÍ¤Ï 60 ÉäǤ¹¡£ -¤³¤Î¥¿¥¤¥à¥¢¥¦¥ÈÃͤ¬²á¤®¤¿¸å¤Ï¡¢ -¤â¤·ÀÅŪ¤Ê¥ê¡¼¥¹¤¬ÀßÄê¥Õ¥¡¥¤¥ë¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤ë¤«¡¢ -¥ê¡¼¥¹¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ë¤Þ¤À´ü¸ÂÀÚ¤ì¤Ë¤Ê¤Ã¤Æ¤¤¤Ê¤¤¥ê¡¼¥¹¤¬»Ä¤Ã¤Æ¤¤¤ì¤Ð¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤Ï¤½¤ì¤é¤Î¥ê¡¼¥¹¤ò¤Ò¤È¤Ä¤º¤Ä¸¡¾Ú¤·¤Æ¤ß¤Æ¡¢ -¤¤¤º¤ì¤«¤¬Í­¸ú¤Ê¤è¤¦¤Ç¤¢¤ì¤Ð¤½¤Î¥ê¡¼¥¹¤Î¥¢¥É¥ì¥¹¤ò»È¤¤¤Þ¤¹¡£ -¤â¤·ÀÅŪ¤Ê¥ê¡¼¥¹¤â¡¢¥ê¡¼¥¹¥Ç¡¼¥¿¥Ù¡¼¥¹Æâ¤Î´ü¸Â¤ÎÀÚ¤ì¤Æ¤¤¤Ê¤¤¥ê¡¼¥¹¤Ç -Í­¸ú¤Ê¤â¤Î¤â¸ºß¤·¤Ê¤±¤ì¤Ð¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤ÏÄêµÁ¤µ¤ì¤¿ retry ´Ö³Ö¤Î¸å¤Ç¥×¥í¥È¥³¥ë¤òºÆ³«¤µ¤»¤Þ¤¹¡£ +ʸ�ϡ����饤����Ȥ����ɥ쥹������ߤò³«»Ï¤ï¿½ï¿½Æ¤ï¿½ï¿½é¡¢ +�����Ф˥����������뤳�Ȥ� +�Ǥ��ʤ���Ƚ�Ǥ���ޤǤ˷в᤹�٤����֤���ޤ��� +�ǥե���ȤǤϤ��Υ����ॢ�����ͤ� 60 �äǤ��� +���Υ����ॢ�����ͤ��᤮����ϡ� +�⤷��Ū�ʥ꡼��������ե�������������Ƥ��뤫�� +�꡼���ǡ����١����ˤޤ������ڤ�ˤʤäƤ��ʤ��꡼�����ĤäƤ���С� +���饤����ȤϤ����Υ꡼����ҤȤĤ��ĸ��ڤ��Ƥߤơ� +�����줫��ͭ���ʤ褦�Ǥ���Ф��Υ꡼���Υ��ɥ쥹��Ȥ��ޤ��� +�⤷��Ū�ʥ꡼���⡢�꡼���ǡ����١�����δ��¤��ڤ�Ƥ��ʤ��꡼���� +ͭ���ʤ�Τ�¸�ߤ��ʤ���С� +���饤����Ȥ�������줿 retry �ֳ֤θ�ǥץ��ȥ����Ƴ������ޤ��� .PP .B retry .I ʸ @@ -86,63 +86,63 @@ dhclient.conf \fBretry \fItime\fR\fB;\fR .PP .I retry -ʸ¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ DHCP ¥µ¡¼¥Ð¤¬Â¸ºß¤·¤Ê¤¤¤ÈȽÃǤ·¤Æ¤«¤é -ºÆ¤Ó DHCP ¥µ¡¼¥Ð¤Ë¥¢¥¯¥»¥¹¤ò»î¤ß¤ë¤Þ¤Ç¤Î´Ö¤Ë¡¢·Ð²á¤¹¤ë¤Ù¤­»þ´Ö¤ò·è¤á¤Þ¤¹¡£ -¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤ì¤Ï 5 ʬ¤Ç¤¹¡£ +ʸ�ϡ����饤����Ȥ� DHCP �����Ф�¸�ߤ��ʤ���Ƚ�Ǥ��Ƥ��� +�Ƥ� DHCP �����Ф˥����������ߤ�ޤǤδ֤ˡ��в᤹��٤����֤���ޤ��� +�ǥե���ȤǤϡ������ 5 ʬ�Ǥ��� .PP .B select-timeout .I ʸ .PP \fBselect-timeout \fItime\fR\fB;\fR .PP -¤¢¤ë¥Í¥Ã¥È¥ï¡¼¥¯¾å¤Ç¡¢Ê£¿ô¤Î DHCP ¥µ¡¼¥Ð¤¬¥µ¡¼¥Ó¥¹¤òÄ󶡤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹ -(¤½¤ÎÊý¤¬Ë¾¤Þ¤·¤¤¤È¤¤¤¦°Õ¸«¤â¤¢¤ê¤Þ¤¹)¡£ -¤½¤Î¾ì¹ç¡¢ºÇ½é¤Î¥ê¡¼¥¹È¯¸«¥á¥Ã¥»¡¼¥¸ (lease discovery message) -¤Ø¤Î±þÅú¤È¤·¤Æ¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤¬Ê£¿ô¤Î¥ê¡¼¥¹Ä󶡤、·½Ð¤ò¼õ¤±¤ë¤³¤È¤â¤¢¤êÆÀ¤Þ¤¹¡£ -¤½¤ì¤é¤Î¤¦¤Á¡¢¤¢¤ëÄ󶡤¬Â¾¤ÎÄ󶡤è¤ê¤â¹¥¤Þ¤·¤¤¤«¤â¤·¤ì¤Þ¤»¤ó -(Î㤨¤Ð¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬°ÊÁ°»ÈÍѤ·¤Æ¤¤¤¿¥¢¥É¥ì¥¹¤¬¤¢¤ëÄ󶡤˴ޤޤì¤Æ¤¤¤ë¤¬¡¢ -¾¤ÎÄ󶡤ˤϴޤޤì¤Ê¤¤¤Ê¤É)¡£ +����ͥåȥ����ǡ�ʣ���� DHCP �����Ф������ӥ����󶡤��뤳�Ȥ�Ǥ��ޤ� +(��������˾�ޤ����Ȥ����ո��⤢��ޤ�)�� +���ξ�硢�ǽ�Υ꡼��ȯ����å����� (lease discovery message) +�ؤα����Ȥ��ơ� +���饤����Ȥ�ʣ���Υ꡼���󶡤ο����Ф�����뤳�Ȥ⤢�����ޤ��� +�����Τ����������󶡤�¾���󶡤��⹥�ޤ������⤷��ޤ��� +(�㤨�С����饤����Ȥ��������Ѥ��Ƥ������ɥ쥹�������󶡤˴ޤޤ�Ƥ��뤬�� +¾���󶡤ˤϴޤޤ�ʤ��ʤ�)�� .PP .I select-timeout -¤Ï¥¯¥é¥¤¥¢¥ó¥È¤¬ºÇ½é¤Î¥ê¡¼¥¹È¯¸«Í×µá -¤òÁ÷¿®¤·¤Æ¡¢ -¾¯¤Ê¤¯¤È¤â 1 ¤Ä¤ÎÄ󶡿½¤·½Ð¤ò¼õ¤±¤¿¾ì¹ç¡¢ -¥µ¡¼¥Ð¤«¤é¤ÎÄ󶡿½¤·½ÐÂÔ¤Á¤ò¤ä¤á¤ë¤Þ¤Ç¤Î»þ´Ö¤Ç¤¹¡£ -¤â¤· +�ϥ��饤����Ȥ��ǽ�Υ꡼��ȯ���׵� +���������ơ� +���ʤ��Ȥ� 1 �Ĥ��󶡿����Ф��������硢 +�����Ф�����󶡿������Ԥ������ޤǤλ��֤Ǥ��� +�⤷ .I select-timeout -¤¬ÀÚ¤ì¤ë¤Þ¤Ç¤Ë¤É¤³¤«¤é¤âÄ󶡿½¤·½Ð¤ò¼õ¤±¼è¤ì¤Ê¤±¤ì¤Ð¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤Ï¤½¤Î¤¢¤ÈºÇ½é¤ËÅþÃ夹¤ëÄ󶡿½¤·½Ð¤ò¼õ¤±Æþ¤ì¤Þ¤¹¡£ +���ڤ��ޤǤˤɤ�������󶡿����Ф�������ʤ���С� +���饤����ȤϤ��Τ��Ⱥǽ�����夹���󶡿����Ф��������ޤ��� .PP -¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢select-timeout ÃÍ¤Ï 0 ÉäǤ¹¡£ -¤Ä¤Þ¤ê¥¯¥é¥¤¥¢¥ó¥È¤ÏºÇ½é¤Ë¼õ¤±¼è¤ëÄ󶡿½¤·½Ð¤ò¼õ¤±Æþ¤ì¤Þ¤¹¡£ +�ǥե���ȤǤϡ�select-timeout �ͤ� 0 �äǤ��� +�Ĥޤꥯ�饤����ȤϺǽ�˼�������󶡿����Ф��������ޤ��� .PP .B reboot .I ʸ .PP \fBreboot \fItime\fR\fB;\fR .PP -¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢ºÆµ¯Æ°¤¹¤ë¤È¡¢ -ºÇ¸å¤ËÊÝ»ý¤·¤Æ¤¤¤¿¥¢¥É¥ì¥¹¤ò¤Þ¤º¼èÆÀ¤·Ä¾¤½¤¦¤È¤·¤Þ¤¹¡£ -¤³¤ì¤ò INIT-REBOOT (½é´ü¥ê¥Ö¡¼¥È) ¾õÂ֤ȸƤӤޤ¹¡£ -ºÇ¸å¤ËÆ°ºî¤·¤Æ¤¤¤¿¤È¤­¤ÈƱ¤¸¥Í¥Ã¥È¥ï¡¼¥¯¤Ë -¥¯¥é¥¤¥¢¥ó¥È¤¬¤Þ¤ÀÀܳ¤·¤Æ¤¤¤ì¤Ð¡¢¤³¤ì¤¬ºÇ¤âÁÇÁᤤµ¯Æ°Ë¡¤È¤Ê¤ê¤Þ¤¹¡£ +���饤����Ȥϡ��Ƶ�ư����ȡ� +�Ǹ���ݻ����Ƥ������ɥ쥹��ޤ�������ľ�����Ȥ��ޤ��� +����� INIT-REBOOT (�����֡���) ���֤ȸƤӤޤ��� +�Ǹ��ư��Ƥ����Ȥ���Ʊ���ͥåȥ���� +���饤����Ȥ��ޤ���³���Ƥ���С����줬�Ǥ����ᤤ��ưˡ�Ȥʤ�ޤ��� .I reboot -ʸ¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ºÇ½é¤Ë¸Å¤¤¥¢¥É¥ì¥¹¤ÎºÆ¼èÆÀ¤ò»î¤ß¤Æ¤«¤é¡¢ -¤¢¤­¤é¤á¤Æ¿·¤·¤¤¥¢¥É¥ì¥¹¤òȯ¸«¤·¤è¤¦¤È¤¹¤ë¤Þ¤Ç¤Ë¡¢ -·Ð²á¤¹¤Ù¤­»þ´Ö¤òÀßÄꤷ¤Þ¤¹¡£ -¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢reboot ¥¿¥¤¥à¥¢¥¦¥ÈÃÍ¤Ï 10 ÉäǤ¹¡£ +ʸ�ϡ����饤����Ȥ��ǽ�˸Ť����ɥ쥹�κƼ������ߤƤ��顢 +�������ƿ��������ɥ쥹��ȯ�����褦�Ȥ���ޤǤˡ� +�в᤹�٤����֤����ꤷ�ޤ��� +�ǥե���ȤǤϡ�reboot �����ॢ�����ͤ� 10 �äǤ��� .PP .B backoff-cutoff .I ʸ .PP \fBbackoff-cutoff \fItime\fR\fB;\fR .PP -¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢»Ø¿ôŪ¤Ê°ì»þÂàÈò (backoff) ¥¢¥ë¥´¥ê¥º¥à¤ò¡¢¤¢¤ëÄøÅ٤Π-Íð¿ôÉÕ¤­¤Ç»ÈÍѤ·¤Þ¤¹¡£¤³¤ì¤Ï¡¢Â¿¤¯¤Î¥¯¥é¥¤¥¢¥ó¥È¤¬Æ±»þ¤Ë¼«Ê¬¤òÀßÄꤷ¤è¤¦ -¤È¤·¤¿¤È¤­¤Ç¤â¡¢¥ê¥¯¥¨¥¹¥È¤¬¥í¥Ã¥¯¤·¤Æ¤·¤Þ¤¦¤³¤È¤¬¤Ê¤¤¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Ç¤¹¡£ +���饤����Ȥϡ��ؿ�Ū�ʰ������ (backoff) ���르�ꥺ��ò¡¢¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ù¤ï¿½ +����դ��ǻ��Ѥ��ޤ�������ϡ�¿���Υ��饤����Ȥ�Ʊ���˼�ʬ�����ꤷ�褦 +�Ȥ����Ȥ��Ǥ⡢�ꥯ�����Ȥ����å����Ƥ��ޤ����Ȥ��ʤ��褦�ˤ��뤿��Ǥ��� .I backoff-cutoff -ʸ¤Ï¡¢°ì»þÂàÈò¤Ëµö¤µ¤ì¤¿ºÇÂç»þ´Ö¤ò·èÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃÍ¤Ï 2 ʬ¤Ç¤¹¡£ +ʸ�ϡ��������˵����줿������֤���ꤷ�ޤ����ǥե�����ͤ� 2 ʬ�Ǥ��� .PP .B initial-interval .I ʸ @@ -150,43 +150,43 @@ dhclient.conf \fBinitial-interval \fItime\fR\fB;\fR .PP .I initial-interval -ʸ¤Ï¡¢¥µ¡¼¥Ð¤Ø¤ÎºÇ½é¤Î¥¢¥¯¥»¥¹¤Î»î¤ß¤«¤é¼¡¤Î»î¤ß¤Þ¤Ç¤Î´Ö¤Î»þ´Ö¤ò -ÀßÄꤷ¤Þ¤¹¡£¥á¥Ã¥»¡¼¥¸¤Î´Ö³Ö¤Ï¡¢¥á¥Ã¥»¡¼¥¸¤ò 1 ²óÁ÷¿®¤¹¤ë¤¿¤Ó¤Ë¡¢ -¸½ºß¤Î´Ö³Ö¤Ë 0 ¤«¤é 1 ¤Î´Ö¤ÎÍð¿ôÃͤò¾è¤¸¤¿¤â¤Î¤Î 2 Çܤò¡¢¸½ºß¤Î´Ö³Ö¤Ë -²Ã¤¨¤¿¤â¤Î¤Ë¤Ê¤ê¤Þ¤¹¡£ -¤³¤ÎÃͤ¬ backoff-cutoff Ãͤè¤êÂ礭¤¯¤Ê¤ë¤È¡¢¤³¤Î»þ´Ö¤¬ÀßÄꤵ¤ì¤Þ¤¹¡£ -¥Ç¥Õ¥©¥ë¥ÈÃÍ¤Ï 10 ÉäǤ¹¡£ -.SH ¥ê¡¼¥¹Í×µá¤È¥ê¥¯¥¨¥¹¥È -DHCP ¥×¥í¥È¥³¥ë¤Ç¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤«¤é¥µ¡¼¥Ð¤ËÂФ·¡¢ÆÃÄê¤Î¾ðÊó¤òÁ÷¤ë¤è¤¦ -Í׵ᤷ¤¿¤ê¡¢¼õ¤±Æþ¤ì½àÈ÷¤Î¤Ç¤­¤Æ¤¤¤Ê¤¤Â¾¤Î¾ðÊó¤ÏÁ÷¤é¤Ê¤¤¤è¤¦¤ËÍ׵ᤷ¤¿¤ê -¤Ç¤­¤Þ¤¹¡£ -¤Þ¤¿¡¢¥µ¡¼¥Ð¤«¤é¤ÎÄ󶡿½¤·½Ð¤Ë¥¯¥é¥¤¥¢¥ó¥È¤ÎɬÍפȤ¹¤ë¾ðÊ󤬴ޤޤì¤Ê¤¤ -¾ì¹ç¤ä¡¢Ä󶡤µ¤ì¤¿¾ðÊ󤬽¼Ê¬¤Ç¤Ê¤¤¾ì¹ç¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬Ä󶡿½¤·½Ð¤ò -µñÈݤ¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£ -.PP -DHCP ¥µ¡¼¥Ð¤¬ DHCP ¥¯¥é¥¤¥¢¥ó¥È¤ËÁ÷¤ëÄ󶡿½¤·½Ð¤Ë´Þ¤Þ¤ì¤ë¥Ç¡¼¥¿¤Ë¤Ï¡¢ -¤µ¤Þ¤¶¤Þ¤Ê¤â¤Î¤¬¤¢¤ê¤Þ¤¹¡£ -ÆäËÍ×µá¤Ç¤­¤ë¥Ç¡¼¥¿¤Ï \fIDHCP ¥ª¥×¥·¥ç¥ó\fR ¤È¸Æ¤Ð¤ì¤ë¤â¤Î¤Ç¤¹¡£ -DHCP ¥ª¥×¥·¥ç¥ó¤Ï +ʸ�ϡ������Фؤκǽ�Υ��������λ�ߤ��鼡�λ�ߤޤǤδ֤λ��֤� +���ꤷ�ޤ�����å������δֳ֤ϡ���å������� 1 ���������뤿�Ӥˡ� +���ߤδֳ֤� 0 ���� 1 �δ֤�����ͤ�褸����Τ� 2 �ܤò¡¢¸ï¿½ï¿½ß¤Î´Ö³Ö¤ï¿½ +�ä�����Τˤʤ�ޤ��� +�����ͤ� backoff-cutoff �ͤ���礭���ʤ�ȡ����λ��֤����ꤵ��ޤ��� +�ǥե�����ͤ� 10 �äǤ��� +.SH �꡼���׵�ȥꥯ������ +DHCP �ץ��ȥ���Ǥϡ����饤����Ȥ��饵���Ф��Ф�������ξ��������褦 +�׵ᤷ���ꡢ������������ΤǤ��Ƥ��ʤ�¾�ξ��������ʤ��褦���׵ᤷ���� +�Ǥ��ޤ��� +�ޤ��������Ф�����󶡿����Ф˥��饤����Ȥ�ɬ�פȤ�����󤬴ޤޤ�ʤ� +���䡢�󶡤��줿���󤬽�ʬ�Ǥʤ���硢���饤����Ȥ��󶡿����Ф� +���ݤ��뤳�Ȥ�Ǥ��ޤ��� +.PP +DHCP ������ DHCP ���饤����Ȥ������󶡿����Ф˴ޤޤ��ǡ����ˤϡ� +���ޤ��ޤʤ�Τ�����ޤ��� +�ä��׵�Ǥ���ǡ����� \fIDHCP ���ץ����\fR �ȸƤФ���ΤǤ��� +DHCP ���ץ����� \fBdhcp-options(5)\fR -¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ +���������Ƥ��ޤ��� .PP .B request .I ʸ .PP \fBrequest [ \fIoption\fR ] [\fB,\fI ... \fIoption\fR ]\fB;\fR .PP -request ʸ¤ò»ØÄꤹ¤ë¤³¤È¤Ç¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢¥µ¡¼¥Ð¤ËÂФ·¡¢¤½¤Î -¥¯¥é¥¤¥¢¥ó¥È¤Ë±þÅú¤¹¤ë¤Ê¤é¤Ð¡¢»ØÄꤷ¤¿¥ª¥×¥·¥ç¥ó¤ÎÃͤòÁ÷¤ë¤è¤¦ -Í׵᤹¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£ -request ʸ¤Ë¤Ï¥ª¥×¥·¥ç¥ó̾¤À¤±¤ò»ØÄꤷ¡¢¥ª¥×¥·¥ç¥ó¥Ñ¥é¥á¡¼¥¿¤Ï»ØÄꤷ¤Þ¤»¤ó¡£ -¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï +request ʸ����ꤹ�뤳�Ȥǡ����饤����Ȥϡ������Ф��Ф������� +���饤����Ȥ˱�������ʤ�С����ꤷ�����ץ������ͤ�����褦 +�׵᤹��褦�ˤʤ�ޤ��� +request ʸ�ˤϥ��ץ����̾��������ꤷ�����ץ����ѥ�᡼���ϻ��ꤷ�ޤ��� +�ǥե���ȤǤ� DHCP ���饤����Ȥ� subnet-mask, broadcast-address, time-offset, routers, domain-name, domain-name-servers, host-name -¥ª¥×¥·¥ç¥ó¤òÍ׵ᤷ¤Þ¤¹¡£ +���ץ������׵ᤷ�ޤ��� .PP -¾ì¹ç¤Ë¤è¤Ã¤Æ¤ÏÍ×µá¥ê¥¹¥È¤òÁ´¤¯Á÷¤é¤Ê¤¤¤³¤È¤¬Ë¾¤Þ¤·¤¤¤³¤È¤â¤¢¤ê¤Þ¤¹¡£ -¤½¤¦¤¹¤ë¤¿¤á¤Ë¤Ï¡¢Ã±½ã¤Ë¥Ñ¥é¥á¡¼¥¿¤ò»ØÄꤷ¤Ê¤¤ request ʸ¤ò½ñ¤¤¤Æ²¼¤µ¤¤: +���ˤ�äƤ��׵�ꥹ�Ȥ���������ʤ����Ȥ�˾�ޤ������Ȥ⤢��ޤ��� +�������뤿��ˤϡ�ñ��˥ѥ�᡼������ꤷ�ʤ� request ʸ��ñ¤¤¤Æ²ï¿½ï¿½ï¿½ï¿½ï¿½: .PP .nf request; @@ -197,9 +197,9 @@ domain-name, domain-name-servers, host-name .PP \fBrequire [ \fIoption\fR ] [\fB,\fI ... \fIoption ]\fB;\fR .PP -require ʸ¤Ë¤Ï¡¢¤¢¤ëÄ󶡿½¤·½Ð¤ò¥¯¥é¥¤¥¢¥ó¥È¤¬¼õ¤±Æþ¤ì¤ë¤¿¤á¤Ë -¥µ¡¼¥Ð¤¬Á÷¤ë¤Ù¤­¥ª¥×¥·¥ç¥ó¤òÎóµó¤·¤Þ¤¹¡£ -Îóµó¤µ¤ì¤¿¥ª¥×¥·¥ç¥ó¤¹¤Ù¤Æ¤ò´Þ¤Þ¤Ê¤¤Ä󶡿½¤·½Ð¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£ +require ʸ�ˤϡ������󶡿����Фò¥¯¥é¥¤ï¿½ï¿½ï¿½ï¿½È¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ë¤¿ï¿½ï¿½ï¿½ +�����Ф�����٤����ץ�������󤷤ޤ��� +��󤵤줿���ץ���󤹤٤Ƥ�ޤޤʤ��󶡿����Ф�̵�뤵��ޤ��� .PP .B send .I ʸ @@ -207,27 +207,27 @@ require ʸ \fBsend { [ \fIoption declaration\fR ] [\fB,\fI ... \fIoption declaration\fR ]\fB}\fR .PP -send ʸ¤ò»ØÄꤹ¤ë¤³¤È¤Ç¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢ -»ØÄꤷ¤¿¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿Ãͤǥµ¡¼¥Ð¤ËÁ÷¿®¤¹¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£ -¤³¤³¤Ç»ØÄê¤Ç¤­¤ë¥ª¥×¥·¥ç¥ó¤Ï¡¢ -\fBdhcp-options(5)\fR ¤ÇÀâÌÀ¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥óÀë¸À¤¹¤Ù¤Æ¤Ç¤¹¡£ -DHCP ¥×¥í¥È¥³¥ë¤Ç¾ï¤ËÁ÷¤é¤ì¤ë¥ª¥×¥·¥ç¥ó¤Ï -¤³¤³¤Ë»ØÄꤹ¤ë¤Ù¤­¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£Ã¢¤·¡¢ -\fBrequested-lease-time\fR ¥ª¥×¥·¥ç¥ó¤ò¥Ç¥Õ¥©¥ë¥È¤Î¥ê¡¼¥¹»þ´Ö (2 »þ´Ö) -°Ê³°¤ÎÃͤǻØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤¹¡£¤³¤Îʸ¤ò»È¤¦Â¾¤Î¾ì¹ç¤È¤·¤ÆÌÀ¤é¤«¤Ê -¤â¤Î¤Ï¡¢¼«Ê¬¤ÈÊ̤μïÎà¤Î¥¯¥é¥¤¥¢¥ó¥È¤È¤ò¶èÊ̤Ǥ­¤ë¤è¤¦¤Ê -¾ðÊó¤ò¡¢¥µ¡¼¥Ð¤ËÂФ·Á÷¿®¤¹¤ë¾ì¹ç¤Ç¤¹¡£ +send ʸ����ꤹ�뤳�Ȥǡ����饤����Ȥϡ� +���ꤷ�����ץ�������ꤷ���ͤǥ����Ф���������褦�ˤʤ�ޤ��� +�����ǻ���Ǥ��륪�ץ����ϡ� +\fBdhcp-options(5)\fR ����������Ƥ��륪�ץ����������٤ƤǤ��� +DHCP �ץ��ȥ���Ǿ�������륪�ץ����� +�����˻��ꤹ��٤��ǤϤ���ޤ���â���� +\fBrequested-lease-time\fR ���ץ�����ǥե���ȤΥ꡼������ (2 ����) +�ʳ����ͤǻ��ꤹ�뤳�ȤϤǤ��ޤ�������ʸ��Ȥ�¾�ξ��Ȥ������餫�� +��Τϡ���ʬ���̤μ���Υ��饤����ȤȤ���̤Ǥ���褦�� +����ò¡¢¥ï¿½ï¿½ï¿½ï¿½Ð¤ï¿½ï¿½Ð¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ç¤ï¿½ï¿½ï¿½ .SH ưŪ DNS -¸½ºß¡¢¥ê¡¼¥¹¤¬³ÍÆÀ¤µ¤ì¤¿ºÝ¤Ë DNS ¤Î¹¹¿·¤ò¹Ô¤¦¤¿¤á¤Î¡¢ -Èó¾ï¤Ë¸ÂÄêŪ¤Ê¥µ¥Ý¡¼¥È¤¬¥¯¥é¥¤¥¢¥ó¥È¤Ë¤¢¤ê¤Þ¤¹¡£ -¤³¤ì¤Ï¥×¥í¥È¥¿¥¤¥×Ū¤Ê¤â¤Î¤Ç¤¢¤ê¡¢ -¤ª¤½¤é¤¯¤¢¤Ê¤¿¤¬»×¤Ã¤Æ¤¤¤ë¤è¤¦¤Ë¤ÏÆ°¤­¤Þ¤»¤ó¡£ -¤â¤·¡¢¤¢¤Ê¤¿¤¬¶öÁ³¤Ë¤â¼«Ê¬¤Î¤È¤³¤í¤Î DNS ¥µ¡¼¥Ð¤Î´ÉÍý¼Ô¤Ç¤¢¤ë¤È¤¤¤¦¤Ê¤é¡¢ -¤½¤Î¾ì¹ç¤Ë¸Â¤Ã¤Æ¤ÏÆ°¤­¤Þ¤¹¡£¤È¤Æ¤â¤¢¤ê¤½¤¦¤Ë¤Ê¤¤¤³¤È¤Ç¤¹¤¬¡£ +���ߡ��꡼�����������줿�ݤ� DNS �ι�����Ԥ�����Ρ� +���˸���Ū�ʥ��ݡ��Ȥ����饤����Ȥˤ���ޤ��� +����ϥץ��ȥ�����Ū�ʤ�ΤǤ��ꡢ +�����餯���ʤ����פäƤ���褦�ˤ�ư���ޤ��� +�⤷�����ʤ��������ˤ⼫ʬ�ΤȤ����� DNS �����Фδ����ԤǤ���Ȥ����ʤ顢 +���ξ��˸¤äƤ�ư���ޤ����ȤƤ⤢�ꤽ���ˤʤ����ȤǤ����� .PP -¤³¤ì¤òÆ°ºî¤µ¤»¤ë¤¿¤á¤Ë¤Ï¡¢DHCP ¥µ¡¼¥Ð¤ÎÃæ¤Ç -¸°¤È¥¾¡¼¥ó¤òÀë¸À¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹ (¾ÜºÙ¤Ï \fBdhcpd.conf\fR(5) ¤ò»²¾È)¡£ -¤Þ¤¿¡¢¼¡¤Î¤è¤¦¤Ë¥¯¥é¥¤¥¢¥ó¥È¤Ç fqdn ¥ª¥×¥·¥ç¥ó¤òÀßÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹: +�����ư����뤿��ˤϡ�DHCP ��������� +���ȥ�������������ɬ�פ�����ޤ� (�ܺ٤� \fBdhcpd.conf\fR(5) �ò»²¾ï¿½)�� +�ޤ������Τ褦�˥��饤����Ȥ� fqdn ���ץ��������ꤹ��ɬ�פ�����ޤ�: .PP .nf send fqdn.fqdn "grosse.example.com."; @@ -235,214 +235,214 @@ DHCP send fqdn.server-update off; .fi .PP -\fIfqdn.fqdn\fR ¥ª¥×¥·¥ç¥ó¤Ï \fBɬ¤º\fR ´°Á´¤Ê¥É¥á¥¤¥ó̾¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ -¹¹¿·¤¹¤ë¥¾¡¼¥ó¤ËÂФ¹¤ë¥¾¡¼¥óʸ¤ò \fBɬ¤º\fR ÄêµÁ¤·¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ -\fIfqdn.encoded\fR ¥ª¥×¥·¥ç¥ó¤Ï¡¢»ÈÍѤ·¤Æ¤¤¤ë DHCP ¥µ¡¼¥Ð¤Ë¤è¤Ã¤Æ¤Ï¡¢ -\fIon\fR ¤« \fIoff\fR ¤ËÀßÄꤹ¤ëɬÍפ¬¤¢¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡£ +\fIfqdn.fqdn\fR ���ץ����� \fBɬ��\fR �����ʥɥᥤ��̾�Ǥʤ���Фʤ�ޤ��� +�������륾������Ф��륾����ʸ�� \fBɬ��\fR ������ʤ���Фʤ�ޤ��� +\fIfqdn.encoded\fR ���ץ����ϡ����Ѥ��Ƥ��� DHCP �����Фˤ�äƤϡ� +\fIon\fR �� \fIoff\fR �����ꤹ��ɬ�פ����뤫�⤷��ޤ��� .PP .B no-client-updates .I ʸ .PP \fBno-client-updates [ \fIflag\fR ] \fB;\fR .PP -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤¬Ä¾ÀÜ DNS ¤Î¹¹¿·¤ò¹Ô¤¦¤è¤ê¤â¡¢ -DHCP ¥¯¥é¥¤¥¢¥ó¥È¥¹¥¯¥ê¥×¥È (\fBdhclient-script(8)\fR »²¾È) ¤ÎÃæ¤Ç -DNS ¤Î¹¹¿·¤ò¹Ô¤¤¤¿¤¤¾ì¹ç -(Î㤨¤Ð¡¢DHCP ¥¯¥é¥¤¥¢¥ó¥È¤¬Ä¾ÀÜ¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Ê¤¤ -SIG(0) ǧ¾Ú¤ò»ÈÍѤ·¤¿¤¤¾ì¹ç) -¤Ë¤Ï¡¢\fBno-client-updates\fR ʸ¤ò»È¤Ã¤Æ¡¢¹¹¿·¤ò¹Ô¤ï¤Ê¤¤¤è¤¦¤Ë -¥¯¥é¥¤¥¢¥ó¥È¤Ë¶µ¤¨¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤¬¹¹¿·¤¹¤ë¤³¤È¤ò˾¤Þ¤Ê¤¤¾ì¹ç¤Ï \fIflag\fR ¤ò \fBtrue\fR ¤Ë¤·¡¢ -¹¹¿·¤¹¤ë¤³¤È¤ò˾¤à¾ì¹ç¤Ï \fIflag\fR ¤ò \fBfalse\fR ¤Ë¤¹¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£ -¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï DNS ¤Î¹¹¿·¤ò¹Ô¤¤¤Þ¤¹¡£ -.PP -.SH ¥ª¥×¥·¥ç¥ó½¤¾þ»Ò -¤½¤Î¥¯¥é¥¤¥¢¥ó¥È¤Ë¤È¤Ã¤Æ¼ÂºÝ¤Ë¤ÏŬÀڤǤʤ¤ -¥ª¥×¥·¥ç¥ó¥Ç¡¼¥¿¤ò¼õ¤±¼è¤Ã¤¿¤ê¡¢É¬ÍפʾðÊó¤ò¼õ¤±¼è¤é¤Ê¤«¤Ã¤¿¤ê -¤¹¤ë¾ì¹ç¤Ç¡¢¤«¤Ä¡¢¤½¤ì¤é¤Î¾ðÊó¤ËÍøÍѲÄǽ¤Ê¥Ç¥Õ¥©¥ë¥È¤ÎÃͤ¬ -¥¯¥é¥¤¥¢¥ó¥È¦¤Ë¸ºß¤¹¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£ -¤Þ¤¿¡¢ÍøÍѲÄǽ¤Ç¤Ï¤¢¤ë¤¬¥í¡¼¥«¥ë¤Î¾ðÊó¤ÇÊ䤦ɬÍפΤ¢¤ë¾ðÊó¤ò -¥¯¥é¥¤¥¢¥ó¥È¤¬¼õ¤±¤È¤ë¾ì¹ç¤â¤¢¤ê¤Þ¤¹¡£ -¤³¤¦¤¤¤¦¾ì¹ç¤ò°·¤¦¤¿¤á¤Ë¡¢ -¤¤¤¯¤Ä¤«¤Î¥ª¥×¥·¥ç¥ó½¤¾þ»Ò¤¬ÍøÍѤǤ­¤Þ¤¹¡£ +DHCP ���饤����Ȥ�ľ�� DNS �ι�����Ԥ����⡢ +DHCP ���饤����ȥ�����ץ� (\fBdhclient-script(8)\fR ����) ����� +DNS �ι�����Ԥ�������� +(�㤨�С�DHCP ���饤����Ȥ�ľ�ܥ��ݡ��Ȥ��Ƥ��ʤ� +SIG(0) ǧ�ڤ���Ѥ��������) +�ˤϡ�\fBno-client-updates\fR ʸ��Ȥäơ�������Ԥ�ʤ��褦�� +���饤����Ȥ˶����뤳�Ȥ��Ǥ��ޤ��� +DHCP ���饤����Ȥ��������뤳�Ȥ�˾�ޤʤ����� \fIflag\fR �� \fBtrue\fR �ˤ��� +�������뤳�Ȥ�˾����� \fIflag\fR �� \fBfalse\fR �ˤ��뤳�Ȥˤʤ�ޤ��� +�ǥե���ȤǤ� DHCP ���饤����Ȥ� DNS �ι�����Ԥ��ޤ��� +.PP +.SH ���ץ���󽤾��� +���Υ��饤����ȤˤȤäƼºݤˤ�Ŭ�ڤǤʤ� +���ץ����ǡ����������ä��ꡢɬ�פʾ����������ʤ��ä��� +������ǡ����ġ������ξ�������Ѳ�ǽ�ʥǥե���Ȥ��ͤ� +���饤�����¦��¸�ߤ����礬����ޤ��� +�ޤ������Ѳ�ǽ�ǤϤ��뤬��������ξ�����䤦ɬ�פΤ������� +���饤����Ȥ������Ȥ���⤢��ޤ��� +�����������ò°·¤ï¿½ï¿½ï¿½ï¿½ï¿½Ë¡ï¿½ +�����Ĥ��Υ��ץ���󽤾��Ҥ����ѤǤ��ޤ��� .PP .B default .I ʸ .PP \fBdefault [ \fIoption declaration\fR ] \fB;\fR .PP -¤¢¤ë¥ª¥×¥·¥ç¥ó¤Ë¤Ä¤¤¤Æ¡¢ -¥µ¡¼¥Ð¤«¤éÄ󶡤µ¤ì¤ëÃͤò¥¯¥é¥¤¥¢¥ó¥È¤¬»È¤ï¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤¬¡¢ -¤â¤·¥µ¡¼¥Ð¤«¤éÃͤ¬Ä󶡤µ¤ì¤Ê¤±¤ì¤Ð -²¿¤é¤«¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤò»È¤¦É¬Íפ¬¤¢¤ë¾ì¹ç¡¢ -¤½¤ì¤é¤ÎÃͤò +���륪�ץ����ˤĤ��ơ� +�����Ф����󶡤�����ͤò¥¯¥é¥¤ï¿½ï¿½ï¿½ï¿½È¤ï¿½ï¿½È¤ï¿½Ê¤ï¿½ï¿½ï¿½Ð¤Ê¤ï¿½Ê¤ï¿½ï¿½ï¿½ï¿½ï¿½ +�⤷�����Ф����ͤ��󶡤���ʤ���� +���餫�Υǥե�����ͤ�Ȥ�ɬ�פ������硢 +�������ͤ� .B default -ʸ¤ÇÄêµÁ¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ +ʸ��������뤳�Ȥ��Ǥ��ޤ��� .PP .B supersede .I ʸ .PP \fBsupersede [ \fIoption declaration\fR ] \fB;\fR .PP -¤¢¤ë¥ª¥×¥·¥ç¥ó¤Ë¤Ä¤¤¤Æ¡¢ -¤É¤Î¤è¤¦¤ÊÃͤ¬¥µ¡¼¥Ð¤«¤éÄ󶡤µ¤ì¤Æ¤â¡¢ -¾ï¤Ë¥í¡¼¥«¥ë¤ÇÀßÄꤵ¤ì¤¿Ãͤò»È¤ï¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¾ì¹ç¡¢ -¤½¤ì¤é¤ÎÃͤò +���륪�ץ����ˤĤ��ơ� +�ɤΤ褦���ͤ������Ф����󶡤���Ƥ⡢ +��˥�����������ꤵ�줿�ͤ�Ȥ�ʤ���Фʤ�ʤ���硢 +�������ͤ� .B supersede -ʸ¤ÇÄêµÁ¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ +ʸ��������뤳�Ȥ��Ǥ��ޤ��� .PP .B prepend .I ʸ .PP \fBprepend [ \fIoption declaration\fR ] \fB;\fR .PP -¤¢¤ë¥ª¥×¥·¥ç¥ó¤Î½¸¹ç¤Ë¤Ä¤¤¤Æ¡¢¤Þ¤º¥æ¡¼¥¶¤¬Ä󶡤¹¤ëÃͤò»È¤¤¡¢ -¤½¤Î¼¡¤Ë¥µ¡¼¥Ð¤«¤éÄ󶡤µ¤ì¤¿Ãͤ¬¤¢¤ì¤Ð¤½¤ì¤ò»È¤¦¾ì¹ç¡¢ -¤½¤ì¤é¤ÎÃͤò +���륪�ץ����ν���ˤĤ��ơ��ޤ��桼�����󶡤����ͤ�Ȥ��� +���μ��˥����Ф����󶡤��줿�ͤ�����Ф����Ȥ���硢 +�������ͤ� .B prepend -ʸ¤ÇÄêµÁ¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ +ʸ��������뤳�Ȥ��Ǥ��ޤ��� .B prepend -ʸ¤ÏÊ£¿ô¤ÎÃͤò¼è¤ë¤³¤È¤Î¤Ç¤­¤ë¥ª¥×¥·¥ç¥ó¤Ë¤Î¤ßÍѤ¤¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ -¤³¤ÎÀ©Ìó¤Ï¶¯À©¤µ¤ì¤ë¤â¤Î¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¢ -¤³¤ì¤ò̵»ë¤·¤¿¾ì¹ç¡¢¤É¤Î¤è¤¦¤ÊµóÆ°¤Ë¤Ê¤ë¤«¤ÏͽÁۤǤ­¤Þ¤»¤ó¡£ +ʸ��ʣ�����ͤ��뤳�ȤΤǤ��륪�ץ����ˤΤ��Ѥ��뤳�Ȥ��Ǥ��ޤ��� +��������϶���������ΤǤϤ���ޤ��󤬡� +�����̵�뤷����硢�ɤΤ褦�ʵ�ư�ˤʤ뤫��ͽ�ۤǤ��ޤ��� .PP .B append .I ʸ .PP \fBappend [ \fIoption declaration\fR ] \fB;\fR .PP -¤¢¤ë¥ª¥×¥·¥ç¥ó¤Î½¸¹ç¤Ë¤Ä¤¤¤Æ¡¢¤Þ¤º¥µ¡¼¥Ð¤«¤éÄ󶡤µ¤ì¤¿Ãͤò»È¤¤¡¢ -¤½¤Î¼¡¤Ë¥æ¡¼¥¶¤¬Ä󶡤¹¤ëÃͤ¬¤¢¤ì¤Ð¤½¤ì¤â»È¤¦¾ì¹ç¡¢ -¤½¤ì¤é¤ÎÃͤò +���륪�ץ����ν���ˤĤ��ơ��ޤ������Ф����󶡤��줿�ͤ�Ȥ��� +���μ��˥桼�����󶡤����ͤ�����Ф����Ȥ���硢 +�������ͤ� .B append -ʸ¤ÇÄêµÁ¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ +ʸ��������뤳�Ȥ��Ǥ��ޤ��� .B append -ʸ¤ÏÊ£¿ô¤ÎÃͤò¼è¤ë¤³¤È¤Î¤Ç¤­¤ë¥ª¥×¥·¥ç¥ó¤Ë¤Î¤ßÍѤ¤¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ -¤³¤ÎÀ©Ìó¤Ï¶¯À©¤µ¤ì¤ë¤â¤Î¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¢ -¤â¤·°ãÈ¿¤¹¤ë¤Èͽ´ü¤Ç¤­¤Ê¤¤·ë²Ì¤È¤Ê¤ê¤Þ¤¹¡£ -.SH ¥ê¡¼¥¹Àë¸À +ʸ��ʣ�����ͤ��뤳�ȤΤǤ��륪�ץ����ˤΤ��Ѥ��뤳�Ȥ��Ǥ��ޤ��� +��������϶���������ΤǤϤ���ޤ��󤬡� +�⤷��ȿ�����ͽ���Ǥ��ʤ���̤Ȥʤ�ޤ��� +.SH �꡼����� .PP .B lease -.I Àë¸À +.I ��� .PP \fBlease {\fR \fIlease-declaration\fR [ ... \fIlease-declaration ] \fB}\fR .PP -¤¢¤ë»þ´Ö (\fB¥×¥í¥È¥³¥ë¤Î¥¿¥¤¥ß¥ó¥°\fR »²¾È) ¤Î¸å¡¢DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï -¥µ¡¼¥Ð¤Ø¤Î¥¢¥¯¥»¥¹¤ËÀ®¸ù¤·¤½¤¦¤Ë¤Ê¤¤¤ÈȽÃǤ¹¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£ -¤½¤Î»þÅÀ¤Ç¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ï¼«Ê¬¤¬»ý¤Ã¤Æ¤¤¤ë¡¢¸Å¤¤¥ê¡¼¥¹¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤ò -¸«¤Æ¡¢»þ´ÖÀÚ¤ì¤Ë¤Ê¤Ã¤Æ¤¤¤Ê¤¤¥ê¡¼¥¹¤ò½ç¤ËÄ´¤Ù¡¢¤½¤³¤Ëµó¤¬¤Ã¤Æ¤¤¤ë -¥ë¡¼¥¿¤Ë ping ¤ò¹Ô¤Ã¤Æ¡¢¤½¤ì¤¬ÍøÍѲÄǽ¤Ê¥ê¡¼¥¹¤«¤É¤¦¤«¤òÄ´¤Ù¤Þ¤¹¡£ -DHCP ¥µ¡¼¥Ó¥¹¤ä BOOTP ¥µ¡¼¥Ó¥¹¤¬Â¸ºß¤·¤Ê¤¤¥Í¥Ã¥È¥ï¡¼¥¯¤Î¤¿¤á¤Ë¡¢ -1 ¤Ä°Ê¾å¤Î \fI¸ÇÄê\fR ¥ê¡¼¥¹¤ò¥¯¥é¥¤¥¢¥ó¥ÈÀßÄê¥Õ¥¡¥¤¥ë¤ËÄêµÁ¤·¤Æ¤ª¤¤¤Æ¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤¬¥¢¥É¥ì¥¹¤ò¼«Æ°Åª¤ËÀßÄê¤Ç¤­¤ë¤è¤¦¤Ë¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£ -¤³¤ì¤Ï +������� (\fB�ץ��ȥ���Υ����ߥ�\fR ����) �θ塢DHCP ���饤����Ȥ� +�����ФؤΥ��������������������ˤʤ���Ƚ�Ǥ����礬����ޤ��� +���λ����ǡ����饤����Ȥϼ�ʬ�����äƤ��롢�Ť��꡼���Υǡ����١����� +���ơ������ڤ�ˤʤäƤ��ʤ��꡼������Ĵ�١������˵󤬤äƤ��� +�롼���� ping ��Ԥäơ����줬���Ѳ�ǽ�ʥ꡼�����ɤ�����Ĵ�٤ޤ��� +DHCP �����ӥ��� BOOTP �����ӥ���¸�ߤ��ʤ��ͥåȥ���Τ���ˡ� +1 �İʾ�� \fI����\fR �꡼���ò¥¯¥é¥¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Õ¥ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Æ¤ï¿½ï¿½ï¿½ï¿½Æ¡ï¿½ +���饤����Ȥ����ɥ쥹��ưŪ������Ǥ���褦�ˤ��뤳�Ȥ�Ǥ��ޤ��� +����� .B lease -ʸ¤Ç¹Ô¤¤¤Þ¤¹¡£ +ʸ�ǹԤ��ޤ��� .PP -Ãí°Õ: lease ʸ¤Ï¡¢DHCP ¥µ¡¼¥Ð¤«¤é¼õ¤±¼è¤Ã¤¿¥ê¡¼¥¹¤òµ­Ï¿¤¹¤ë¤¿¤á¤Ë¡¢ -dhclient.leases ¥Õ¥¡¥¤¥ë¤Ç¤â»È¤ï¤ì¤Þ¤¹¡£ -°Ê²¼¤ËÀâÌÀ¤¹¤ë¥ê¡¼¥¹ÍѤΥ·¥ó¥¿¥Ã¥¯¥¹¤Ë¤Ï -dhclient.leases ¥Õ¥¡¥¤¥ë¤Ç¤Î¤ßɬÍפʤâ¤Î¤â¤¢¤ê¤Þ¤¹¡£ -ÀâÌÀ¤ò´°Á´¤Ê¤â¤Î¤Ë¤¹¤ë¤¿¤á¡¢¤½¤Î¤è¤¦¤Ê¥·¥ó¥¿¥Ã¥¯¥¹¤â¤³¤³¤Çµ­½Ò¤·¤Þ¤¹¡£ +����: lease ʸ�ϡ�DHCP �����Ф��������ä��꡼����Ͽ���뤿��ˡ� +dhclient.leases �ե�����Ǥ�Ȥ��ޤ��� +�ʲ�����������꡼���ѤΥ��󥿥å����ˤ� +dhclient.leases �ե�����ǤΤ�ɬ�פʤ�Τ⤢��ޤ��� +���������ʤ�Τˤ��뤿�ᡢ���Τ褦�ʥ��󥿥å����⤳���ǵ��Ҥ��ޤ��� .PP -lease ʸ¤Ï¡¢¥ê¡¼¥¹¥­¡¼¥ï¡¼¥É¡¢º¸Ãæ³ç¸Ì¡¢1 ¤Ä°Ê¾å¤Î¥ê¡¼¥¹Àë¸Àʸ¡¢ -±¦Ãæ³ç¸Ì¤¬Â³¤¤¤¿¤â¤Î¤Ç¹½À®¤µ¤ì¤Þ¤¹¡£ -¥ê¡¼¥¹Àë¸À¤È¤·¤Æ¡¢¼¡¤Î¤â¤Î¤¬²Äǽ¤Ç¤¹: +lease ʸ�ϡ��꡼��������ɡ������̡�1 �İʾ�Υ꡼�����ʸ�� +�����̤�³������Τǹ�������ޤ��� +�꡼������Ȥ��ơ����Τ�Τ���ǽ�Ǥ�: .PP \fBbootp;\fR .PP .B bootp -ʸ¤Ï¡¢¥ê¡¼¥¹¤¬ DHCP ¥×¥í¥È¥³¥ë¤Ç¤Ï¤Ê¤¯¡¢ -BOOTP ¥×¥í¥È¥³¥ë¤òÍѤ¤¤Æ¼èÆÀ¤µ¤ì¤¿¤³¤È¤ò¼¨¤·¤Þ¤¹¡£ -¤³¤Îʸ¤ò¥¯¥é¥¤¥¢¥ó¥ÈÀßÄê¥Õ¥¡¥¤¥ë¤Ë»ØÄꤹ¤ëɬÍפÏÁ´¤¯¤¢¤ê¤Þ¤»¤ó¡£ -¥¯¥é¥¤¥¢¥ó¥È¤Ï¤³¤Î¹½Ê¸¤ò¥ê¡¼¥¹¥Ç¡¼¥¿¥Ù¡¼¥¹¥Õ¥¡¥¤¥ëÆâ¤Ç»È¤¤¤Þ¤¹¡£ +ʸ�ϡ��꡼���� DHCP �ץ��ȥ���ǤϤʤ��� +BOOTP �ץ��ȥ�����Ѥ��Ƽ������줿���Ȥò¼¨¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +����ʸ�ò¥¯¥é¥¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Õ¥ï¿½ï¿½ï¿½ï¿½ï¿½Ë»ï¿½ï¿½ê¤¹ï¿½ï¿½É¬ï¿½×¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +���饤����ȤϤ��ι�ʸ��꡼���ǡ����١����ե�������ǻȤ��ޤ��� .PP \fBinterface\fR \fB"\fR\fIstring\fR\fB";\fR .PP .B interface -¥ê¡¼¥¹Ê¸¤Ï¡¢¤½¤Î¥ê¡¼¥¹¤òÍ­¸ú¤È¤¹¤ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò¼¨¤·¤Þ¤¹¡£ -¤³¤ì¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¤³¤Î¥ê¡¼¥¹¤Ï¡¢»ØÄꤵ¤ì¤¿¥¤¥ó¥¿¥Õ¥§¡¼¥¹ -¾å¤Ç¤Î¤ß»ÈÍѤµ¤ì¤Þ¤¹¡£ -¥µ¡¼¥Ð¤«¤é¥ê¡¼¥¹¤ò¼õ¤±¼è¤Ã¤¿¤È¤­¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤Ï¾ï¤Ë¤½¤Î¥ê¡¼¥¹¤ò¼õ¤±¼è¤Ã¤¿¥¤¥ó¥¿¥Õ¥§¡¼¥¹ÈÖ¹æ¤òµ­Ï¿¤·¤Þ¤¹¡£ -dhclient.conf ¥Õ¥¡¥¤¥ë¤Ç»öÁ°¤Ë¥ê¡¼¥¹¤òÄêµÁ¤·¤Æ¤¤¤ë¾ì¹ç¡¢Í׵ᤵ¤ì¤Æ¤Ê¤¤ -¤Î¤Ç¤¹¤¬¡¢¤½¤Î¥ê¡¼¥¹¤Ç¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤â¤¢¤ï¤»¤Æ»ØÄꤷ¤Ê¤±¤ì¤Ð -¤Ê¤ê¤Þ¤»¤ó¡£ +�꡼��ʸ�ϡ����Υ꡼����ͭ���Ȥ��륤�󥿥ե������ò¼¨¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +���줬���ꤵ��Ƥ����硢���Υ꡼���ϡ����ꤵ�줿���󥿥ե����� +��ǤΤ߻��Ѥ���ޤ��� +�����Ф���꡼���������ä��Ȥ��� +���饤����ȤϾ�ˤ��Υ꡼���������ä����󥿥ե������ֹ��Ͽ���ޤ��� +dhclient.conf �ե�����ǻ����˥꡼����������Ƥ����硢�׵ᤵ��Ƥʤ� +�ΤǤ��������Υ꡼���ǥ��󥿥ե������⤢�碌�ƻ��ꤷ�ʤ���� +�ʤ�ޤ��� .PP \fBfixed-address\fR \fIip-address\fR\fB;\fR .PP .B fixed-address -ʸ¤ÏÆÃÄê¤Î¥ê¡¼¥¹¤Î IP ¥¢¥É¥ì¥¹¤ò»ØÄꤹ¤ëºÝ¤Ë»È¤¤¤Þ¤¹¡£ -¤³¤ì¤Ï¤¹¤Ù¤Æ¤Î lease ʸ¤ËɬÍפǤ¹¡£ -IP ¥¢¥É¥ì¥¹¤Ï (12.34.56.78 ¤Î¤è¤¦¤Ë) ¥É¥Ã¥ÈÉÕ¤­ 4 ¤ÄÁÈ·Á¼°¤Ç -»ØÄꤷ¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ +ʸ������Υ꡼���� IP ���ɥ쥹����ꤹ��ݤ˻Ȥ��ޤ��� +����Ϥ��٤Ƥ� lease ʸ��ɬ�פǤ��� +IP ���ɥ쥹�� (12.34.56.78 �Τ褦��) �ɥå��դ� 4 ���ȷ����� +���ꤷ�ʤ���Фʤ�ޤ��� .PP \fBfilename "\fR\fIstring\fR\fB";\fR .PP .B filename -ʸ¤Ï»ÈÍѤ¹¤ë¥Ö¡¼¥È¥Õ¥¡¥¤¥ë̾¤ò»ØÄꤷ¤Þ¤¹¡£ -¤³¤ì¤Ïɸ½àŪ¤Ê¥¯¥é¥¤¥¢¥ó¥ÈÀßÄꥹ¥¯¥ê¥×¥È¤Ç¤Ï»È¤ï¤ì¤Þ¤»¤ó¤¬¡¢ -ÀâÌÀ¤Î´°Á´¤ò´ü¤¹¤¿¤á¤Ë¤³¤³¤Ë´Þ¤á¤Æ¤¢¤ê¤Þ¤¹¡£ +ʸ�ϻ��Ѥ���֡��ȥե�����̾����ꤷ�ޤ��� +�����ɸ��Ū�ʥ��饤��������ꥹ����ץȤǤϻȤ��ޤ��󤬡� +�����δ������������ˤ����˴ޤ�Ƥ���ޤ��� .PP \fBserver-name "\fR\fIstring\fR\fB";\fR .PP .B server-name -ʸ¤Ï»ÈÍѤ¹¤ë¥Ö¡¼¥È¥µ¡¼¥Ð̾¤ò»ØÄꤷ¤Þ¤¹¡£ -¤³¤ì¤âɸ½àŪ¤Ê¥¯¥é¥¤¥¢¥ó¥ÈÀßÄꥹ¥¯¥ê¥×¥È¤Ç¤Ï»È¤ï¤ì¤Þ¤»¤ó¡£ +ʸ�ϻ��Ѥ���֡��ȥ�����̾����ꤷ�ޤ��� +�����ɸ��Ū�ʥ��饤��������ꥹ����ץȤǤϻȤ��ޤ��� .PP \fBoption\fR \fIoption-declaration\fR\fB;\fR .PP .B option -ʸ¤Ï¡¢¥µ¡¼¥Ð¤«¤éÄ󶡤µ¤ì¤ë¥ª¥×¥·¥ç¥ó¤ÎÃͤò»ØÄꤹ¤ë¤Î¤Ë»È¤¤¤Þ¤¹¡£ -¤¢¤ë¤¤¤Ï¡¢dhclient.conf ¤Ç»öÁ°ÄêµÁ¥ê¡¼¥¹¤¬Àë¸À¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢ -¤½¤Î»öÁ°ÄêµÁ¥ê¡¼¥¹¤¬»È¤ï¤ì¤ëºÝ¤Ë¥¯¥é¥¤¥¢¥ó¥ÈÀßÄꥹ¥¯¥ê¥×¥È¤Ç»ÈÍѤ·¤Æ -Íߤ·¤¤Ãͤò»ØÄꤷ¤Þ¤¹¡£ +ʸ�ϡ������Ф����󶡤���륪�ץ������ͤ���ꤹ��Τ˻Ȥ��ޤ��� +���뤤�ϡ�dhclient.conf �ǻ�������꡼�����������Ƥ�����ˤϡ� +���λ�������꡼�����Ȥ���ݤ˥��饤��������ꥹ����ץȤǻ��Ѥ��� +�ߤ����ͤ���ꤷ�ޤ��� .PP \fBscript "\fIscript-name\fB";\fR .PP .B script -ʸ¤Ï dhcp ¥¯¥é¥¤¥¢¥ó¥ÈÀßÄꥹ¥¯¥ê¥×¥È¤Î¥Ñ¥¹Ì¾¤ò»ØÄꤹ¤ë¤Î¤Ë»È¤¤¤Þ¤¹¡£ -¤³¤Î¥¹¥¯¥ê¥×¥È¤Ï¡¢¥¢¥É¥ì¥¹¤òÍ׵ᤷ¤¿¤ê¡¢°ÊÁ°¤ËÄ󶡤µ¤ì¤¿¥¢¥É¥ì¥¹¤ò -»î¤·¤¿¤ê¡¢ -¥ê¡¼¥¹¤ò¼èÆÀ¤·¤Æ¤«¤é¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÎºÇ½ªÀßÄê¤ò¹Ô¤Ã¤¿¤ê¤¹¤ëÁ°¤Ë¡¢ -dhcp ¥¯¥é¥¤¥¢¥ó¥È¤¬³Æ¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î½é´üÀßÄê¤ò¹Ô¤¦¤Î¤Ë»È¤¤¤Þ¤¹¡£ -¥ê¡¼¥¹¤¬¼èÆÀ¤Ç¤­¤Ê¤«¤Ã¤¿¾ì¹ç¤Ë¤Ï¡¢ -»öÁ°ÄêµÁ¥ê¡¼¥¹¤¬Â¸ºß¤¹¤ë¾ì¹ç¡¢¤½¤ì¤é¤ò»î¤¹¤¿¤á¤Ë¤³¤Î¥¹¥¯¥ê¥×¥È¤¬»È¤ï¤ì¤Þ¤¹¡£ -¤Þ¤¿¡¢Í­¸ú¤Ê¥ê¡¼¥¹¤¬¤Ò¤È¤Ä¤âÆÀ¤é¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¤Ç¤â¡¢¤³¤Î¥¹¥¯¥ê¥×¥È¤Ï¡¢ -1 ²ó¤Ï¸Æ¤Ó½Ð¤µ¤ì¤Þ¤¹¡£ -¤è¤ê¾Ü¤·¤¯¤Ï¡¢ +ʸ�� dhcp ���饤��������ꥹ����ץȤΥѥ�̾����ꤹ��Τ˻Ȥ��ޤ��� +���Υ�����ץȤϡ����ɥ쥹���׵ᤷ���ꡢ�������󶡤��줿���ɥ쥹�� +����ꡢ +�꡼����������Ƥ��饤�󥿥ե������κǽ������Ԥä��ꤹ�����ˡ� +dhcp ���饤����Ȥ��ƥ��󥿥ե������ν�������Ԥ��Τ˻Ȥ��ޤ��� +�꡼���������Ǥ��ʤ��ä����ˤϡ� +��������꡼����¸�ߤ����硢����������ˤ��Υ�����ץȤ��Ȥ��ޤ��� +�ޤ���ͭ���ʥ꡼�����ҤȤĤ������ʤ��ä����Ǥ⡢���Υ�����ץȤϡ� +1 ��ϸƤӽФ���ޤ��� +���ܤ����ϡ� .B dhclient-script(8) -¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ +�ò»²¾È¤ï¿½ï¿½Æ¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ .PP \fBvendor option space "\fIname\fB";\fR .PP .B vendor option space -ʸ¤Ï¡¢vendor-encapsulate-options ¥ª¥×¥·¥ç¥ó¤ò¼õ¿®¤·¤¿¾ì¹ç¡¢ -Éü¹æ²½¤Ë¤É¤Î¥ª¥×¥·¥ç¥ó¶õ´Ö¤ò»ÈÍѤ¹¤ë¤Ù¤­¤«¤ò»ØÄꤹ¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£ -¥µ¡¼¥Ð¤«¤é¤Î¥Ù¥ó¥À¥ª¥×¥·¥ç¥ó¤ÎÆÃÄê¤Î¥¯¥é¥¹¤òÍ׵᤹¤ë¤¿¤á¤Ë¡¢ -\fIdhcp-vendor-identifier\fR ¤ò»ÈÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ -¾ÜºÙ¤Ï +ʸ�ϡ�vendor-encapsulate-options ���ץ��������������硢 +���沽�ˤɤΥ��ץ������֤���Ѥ���٤�������ꤹ�뤿��˻��Ѥ���ޤ��� +�����Ф���Υ٥�����ץ���������Υ��饹���׵᤹�뤿��ˡ� +\fIdhcp-vendor-identifier\fR ����Ѥ��뤳�Ȥ��Ǥ��ޤ��� +�ܺ٤� .B dhcp-options(5) -¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ +�ò»²¾È¤ï¿½ï¿½Æ¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ .PP \fBmedium "\fImedia setup\fB";\fR .PP .B medium -ʸ¤Ï¡¢Àܳ¤µ¤ì¤Æ¤¤¤ë¥Í¥Ã¥È¥ï¡¼¥¯¤Î¥¿¥¤¥×¤ò¥Í¥Ã¥È¥ï¡¼¥¯¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤¬ -¼«Æ°Åª¤ËȽÃǤǤ­¤Ê¤¤¤è¤¦¤Ê¥·¥¹¥Æ¥à¤Ç»È¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ -ʸ»úÎó media setup ¤Ï¥·¥¹¥Æ¥à°Í¸¤Î¥Ñ¥é¥á¡¼¥¿¤Ç¡¢ -¥¤¥ó¥¿¥Õ¥§¡¼¥¹½é´ü²½¤ÎºÝ¤Ë dhcp ¥¯¥é¥¤¥¢¥ó¥ÈÀßÄꥹ¥¯¥ê¥×¥È¤ËÅϤµ¤ì¤Þ¤¹¡£ -Unix ¤ª¤è¤Ó Unix É÷¤Î¥·¥¹¥Æ¥à¤Ç¤Ï¡¢ -¤³¤Î°ú¿ô¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÀßÄꤹ¤ë¤È¤­¤Ë ifconfig ¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë -ÅϤµ¤ì¤Þ¤¹¡£ -.PP -¥ê¡¼¥¹¤òÆÀ¤ë¤¿¤á¤Ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÀßÄꤹ¤ë -ºÝ¤Ë¡¢dhcp ¥¯¥é¥¤¥¢¥ó¥È¤¬¥á¥Ç¥£¥¢¥¿¥¤¥× ( +ʸ�ϡ���³����Ƥ���ͥåȥ���Υ����פ�ͥåȥ�����󥿥ե������� +��ưŪ��Ƚ�ǤǤ��ʤ��褦�ʥ����ƥ�ǻȤ����Ȥ��Ǥ��ޤ��� +ʸ���� media setup �ϥ����ƥ��¸�Υѥ�᡼���ǡ� +���󥿥ե�����������κݤ� dhcp ���饤��������ꥹ����ץȤ��Ϥ���ޤ��� +Unix ����� Unix ���Υ����ƥ�Ǥϡ� +���ΰ����ϥ��󥿥ե����������ꤹ��Ȥ��� ifconfig ���ޥ�ɥ饤��� +�Ϥ���ޤ��� +.PP +�꡼�������뤿��˥��󥿥ե����������ꤹ�� +�ݤˡ�dhcp ���饤����Ȥ���ǥ��������� ( .B media -ʸ¤ò»²¾È) ¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢dhcp ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢¤³¤Î¥Ñ¥é¥á¡¼¥¿¤ò -¼«Æ°Åª¤ËÀë¸À¤·¤Þ¤¹¡£¥Í¥Ã¥È¥ï¡¼¥¯¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤¬¥á¥Ç¥£¥¢¥¿¥¤¥×¤Î -ÀßÄê¤òɬÍפȤ¹¤ë¾ì¹ç¤Ï (¤¹¤ë¾ì¹ç¤Ë¸Â¤ê)¡¢¤³¤Îʸ¤ò»öÁ°ÄêµÁ¥ê¡¼¥¹¤Ç -»ÈÍѤ·¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ +ʸ�ò»²¾ï¿½) ����Ѥ����硢dhcp ���饤����Ȥϡ����Υѥ�᡼���� +��ưŪ��������ޤ����ͥåȥ�����󥿥ե���������ǥ��������פ� +�����ɬ�פȤ������ (������˸¤�)������ʸ���������꡼���� +���Ѥ��ʤ���Фʤ�ޤ��� .PP \fBrenew\fR \fIdate\fB;\fR .PP @@ -450,86 +450,86 @@ Unix .PP \fBexpire\fR \fIdate\fB;\fR .PP -\fBrenew\fR ʸ¤Ï¡¢¸½ºß»ÈÍÑÃæ¤Î¥ê¡¼¥¹¤ò¹¹¿· (renew) ¤¹¤ë¤¿¤á¤Ë¡¢ -dhcp ¥¯¥é¥¤¥¢¥ó¥È¤¬»ÈÍÑÃæ¤Î¥ê¡¼¥¹¤òÄ󶡤·¤Æ¤¯¤ì¤¿¥µ¡¼¥Ð¤Ø¤Î¥¢¥¯¥»¥¹¤Î -»î¤ß¤ò³«»Ï¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤Æü»þ¤òÄêµÁ¤·¤Þ¤¹¡£\fBrebind\fR ʸ¤Ï¡¢ -¥ê¡¼¥¹¤ò¹¹¿·¤¹¤ë¤¿¤á¤Ë¡¢dhcp ¥¯¥é¥¤¥¢¥ó¥È¤¬ \fI¤¤¤º¤ì¤«¤Î\fR dhcp -¥µ¡¼¥Ð¤Ø¤Î¥¢¥¯¥»¥¹¤Î»î¤ß¤ò³«»Ï¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤Æü»þ¤òÄêµÁ¤·¤Þ¤¹¡£ -\fBexpire\fR ʸ¤Ï¡¢¥ê¡¼¥¹¤Î¹¹¿·¤Î¤¿¤á¤Ë¥µ¡¼¥Ð¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Ê¤«¤Ã¤¿¾ì¹ç¡¢ -dhcp ¥¯¥é¥¤¥¢¥ó¥È¤¬¤½¤Î¥ê¡¼¥¹¤Î»ÈÍѤòÄä»ß¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤Æü»þ¤ò -ÄêµÁ¤·¤Þ¤¹¡£ +\fBrenew\fR ʸ�ϡ����߻�����Υ꡼���ò¹¹¿ï¿½ (renew) ���뤿��ˡ� +dhcp ���饤����Ȥ�������Υ꡼�����󶡤��Ƥ��줿�����ФؤΥ��������� +��ߤò³«»Ï¤ï¿½ï¿½Ê¤ï¿½ï¿½ï¿½Ð¤Ê¤ï¿½Ê¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½\fBrebind\fR ʸ�ϡ� +�꡼���ò¹¹¿ï¿½ï¿½ï¿½ï¿½ë¤¿ï¿½ï¿½Ë¡ï¿½dhcp ���饤����Ȥ� \fI�����줫��\fR dhcp +�����ФؤΥ��������λ�ߤò³«»Ï¤ï¿½ï¿½Ê¤ï¿½ï¿½ï¿½Ð¤Ê¤ï¿½Ê¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +\fBexpire\fR ʸ�ϡ��꡼���ι����Τ���˥����Ф˥��������Ǥ��ʤ��ä���硢 +dhcp ���饤����Ȥ����Υ꡼���λ��Ѥ���ߤ��ʤ���Фʤ�ʤ������� +������ޤ��� .PP -¤³¤ì¤é¤ÎÀë¸À¤Ï¡¢DHCP ¥¯¥é¥¤¥¢¥ó¥È¤¬ÆÀ¤¿¥ê¡¼¥¹Ãæ¤Ç¤Ï¼«Æ°Åª¤ËÀßÄꤵ¤ì¤Þ¤¹¡£ -»öÁ°ÄêµÁ¥ê¡¼¥¹¤Î¤¦¤Á¡¢DHCP ¥¯¥é¥¤¥¢¥ó¥È¤ËÍ­¸ú´ü¸Â¤¬²á¤®¤¿¤â¤Î¤ò»ÈÍѤ·¤Æ -Íߤ·¤¯¤Ê¤¤¤â¤Î¤ÎÃæ¤Ç¤Ï¡¢¤³¤ì¤é¤ÎÀë¸À¤òÀßÄꤷ¤Æ¤ª¤¯É¬Íפ¬¤¢¤ê¤Þ¤¹¡£ +����������ϡ�DHCP ���饤����Ȥ������꡼����Ǥϼ�ưŪ�����ꤵ��ޤ��� +��������꡼���Τ�����DHCP ���饤����Ȥ�ͭ�����¤��᤮����Τ���Ѥ��� +�ߤ����ʤ���Τ���Ǥϡ���������������ꤷ�Ƥ���ɬ�פ�����ޤ��� .PP -date ¤Ï°Ê²¼¤Î¤è¤¦¤Ë»ØÄꤷ¤Þ¤¹¡£ +date �ϰʲ��Τ褦�˻��ꤷ�ޤ��� .PP \fI \fB/\fI\fB/\fI \fB:\fI\fB:\fI\fR .PP -weekday ¤Ï¡¢¿Í´Ö¤¬¸«¤Æ¥ê¡¼¥¹´ü¸Â¤ò¤ï¤«¤ê¤ä¤¹¤¯¤¹¤ë¤¿¤á¤Ë¸ºß¤·¤Þ¤¹¡£ -¤³¤ì¤Ï¡¢0 ¤«¤é 6 ¤Þ¤Ç¤Î¿ô»ú¤Ç»ØÄꤷ¤Þ¤¹¡£0 ¤ÏÆüÍËÆü¤Ç¤¹¡£year ¤ÏÀ¤µª -¹þ¤ß¤Ç»ØÄꤷ¤Þ¤¹¡£¤Ç¤¹¤«¤é¡¢ËÜÅö¤ËŤ¤¥ê¡¼¥¹¤òÊ̤ˤ¹¤ë¤È¡¢É¬¤º 4 ·å¤Ë -¤Ê¤ë¤Ï¤º¤Ç¤¹¡£month ¤Ï 1 (1 ·î¤òɽ¤·¤Þ¤¹) ¤«¤é»Ï¤Þ¤ë¿ô»ú¤Ç»ØÄꤷ¤Þ¤¹¡£ -day ¤ÏƱÍÍ¤Ë 1 ¤«¤é»Ï¤Þ¤ë (·î¤Ë¤ª¤±¤ë) Æü¤È¤·¤Æ»ØÄꤷ¤Þ¤¹¡£hour ¤Ï¡¢ -0 ¤«¤é 23 ¤Î´Ö¤Î¿ô»ú¤Ç¤¹¡£minute ¤È second ¤Ï¤È¤â¤Ë 0 ¤«¤é 59 ¤Î´Ö¤Î -¿ô»ú¤ò»ØÄꤷ¤Þ¤¹¡£ -.SH ¥¨¥¤¥ê¥¢¥¹Àë¸À +weekday �ϡ��ʹ֤����ƥ꡼�����¤�狼��䤹�����뤿���¸�ߤ��ޤ��� +����ϡ�0 ���� 6 �ޤǤο����ǻ��ꤷ�ޤ���0 ���������Ǥ���year ������ +���ߤǻ��ꤷ�ޤ����Ǥ����顢������Ĺ���꡼�����̤ˤ���ȡ�ɬ�� 4 ��� +�ʤ�Ϥ��Ǥ���month �� 1 (1 ���ɽ���ޤ�) ����Ϥޤ�����ǻ��ꤷ�ޤ��� +day ��Ʊ�ͤ� 1 ����Ϥޤ� (��ˤ�����) ���Ȥ��ƻ��ꤷ�ޤ���hour �ϡ� +0 ���� 23 �δ֤ο����Ǥ���minute �� second �ϤȤ�� 0 ���� 59 �δ֤� +��������ꤷ�ޤ��� +.SH �����ꥢ����� \fBalias { \fI declarations ... \fB}\fR .PP -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤¬ TCP/IP ¥í¡¼¥ß¥ó¥° (roaming) ¥×¥í¥È¥³¥ë¤ò¼Â¹Ô¤·¤Æ -¤¤¤ë¾ì¹ç¡¢DHCP ¤òÍѤ¤¤ÆÆÀ¤é¤ì¤ë¥ê¡¼¥¹¤À¤±¤Ç¤Ê¤¯¡¢»öÁ°¤ËÄêµÁ¤µ¤ì¤¿ -IP ¥¨¥¤¥ê¥¢¥¹¤â¡¢¼«Ê¬¤¬»ÈÍѤ¹¤ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ËÀßÄꤹ¤ëɬÍפ¬¤¢¤ë -¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£Internet Systems Consortium ÈÇ DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢ -¸ÇÄꥢ¥É¥ì¥¹Ä¾ÀÜ»ØÄê¤Î¥í¡¼¥ß¥ó¥°¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤»¤ó¤¬¡¢¤½¤Î¼ï¤Î¼Â¸³ -¤¬¤Ç¤­¤ë¤è¤¦¤Ë¡¢¤³¤Î dhcp ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢ +DHCP ���饤����Ȥ� TCP/IP �����ߥ� (roaming) �ץ��ȥ����¹Ԥ��� +�����硢DHCP ���Ѥ���������꡼�������Ǥʤ���������������줿 +IP �����ꥢ���⡢��ʬ�����Ѥ��륤�󥿥ե����������ꤹ��ɬ�פ����� +��礬����ޤ���Internet Systems Consortium �� DHCP ���饤����Ȥϡ� +���ꥢ�ɥ쥹ľ�ܻ���Υ����ߥ󥰤ò¥µ¥Ý¡ï¿½ï¿½È¤ï¿½ï¿½Æ¤ï¿½ï¿½Þ¤ï¿½ï¿½ó¤¬¡ï¿½ï¿½ï¿½ï¿½Î¼ï¿½Î¼Â¸ï¿½ +���Ǥ���褦�ˡ����� dhcp ���饤����Ȥϡ� .B alias -Àë¸À¤ò»È¤Ã¤Æ IP ¥¨¥¤¥ê¥¢¥¹¤òÀßÄꤹ¤ë½àÈ÷¤Ï¤Ç¤­¤Æ¤¤¤Þ¤¹¡£ -.PP -alias Àë¸À¤Ï lease Àë¸À¤Ë»÷¤Æ¤¤¤Þ¤¹¡£Ã¢¤·¡¢É¸½à¤Î -¥¯¥é¥¤¥¢¥ó¥ÈÀßÄꥹ¥¯¥ê¥×¥È¤Ç¤Ï¡¢subnet-mask ¥ª¥×¥·¥ç¥ó°Ê³°¤Î -¥ª¥×¥·¥ç¥ó¤È¡¢³Æ¼ïÍ­¸ú´ü¸Â (expiry times) ¤¬Ìµ»ë¤µ¤ì¤ëÅÀ¤¬°Û¤Ê¤ê¤Þ¤¹¡£ -ÉáÄ̤Πalias Àë¸À¤Ç¤Ï¡¢ interface Àë¸À¡¢IP ¥¨¥¤¥ê¥¢¥¹¤Î¤¿¤á¤Î -¸ÇÄꥢ¥É¥ì¥¹Àë¸À¡¢subnet-mask ¥ª¥×¥·¥ç¥ó¤ò´Þ¤ß¤Þ¤¹¡£alias Àë¸À¤Ë¤Ï -medium ʸ¤Ï·è¤·¤Æ´Þ¤Þ¤ì¤Æ¤Ï¤Ê¤ê¤Þ¤»¤ó¡£ -.SH ¤½¤Î¾¤ÎÀë¸À +�����Ȥä� IP �����ꥢ�������ꤹ������ϤǤ��Ƥ��ޤ��� +.PP +alias ����� lease ����˻��Ƥ��ޤ���â����ɸ��� +���饤��������ꥹ����ץȤǤϡ�subnet-mask ���ץ����ʳ��� +���ץ����ȡ��Ƽ�ͭ������ (expiry times) ��̵�뤵��������ۤʤ�ޤ��� +���̤� alias ����Ǥϡ� interface �����IP �����ꥢ���Τ���� +���ꥢ�ɥ쥹�����subnet-mask ���ץ�����ޤߤޤ���alias ����ˤ� +medium ʸ�Ϸ褷�ƴޤޤ�ƤϤʤ�ޤ��� +.SH ����¾����� \fBreject \fIip-address\fB;\fR .PP .B reject -ʸ¤Ë¤è¤ê¡¢DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï»ØÄꤷ¤¿¥¢¥É¥ì¥¹¤ò¥µ¡¼¥Ð¼±Ê̻ҤȤ·¤Æ»ÈÍѤ¹¤ë -¥µ¡¼¥Ð¤«¤é¤ÎÄ󶡿½¤·½Ð¤òµñÈݤ¹¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£É¸½à¤Ë½àµò¤·¤Ê¤¤ dhcp -¥µ¡¼¥Ð¤äÀßÄê¤ò´Ö°ã¤¨¤Æ¤¤¤ë dhcp ¥µ¡¼¥Ð¤Ë¤è¤Ã¤Æ¥¯¥é¥¤¥¢¥ó¥È¤¬ÀßÄꤵ¤ì¤Ê¤¤ -¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Ë¡¢¤³¤Îʸ¤ò»ÈÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤·¤«¤·¤Ê¤¬¤é¡¢¤³¤ì¤Ï -ºÇ¸å¤ÎÉð´ï¤È¤¹¤ë¤Ù¤­¤Ç¤¹¡£¤³¤ì¤ËÀèΩ¤Á¡¢Éå¤Ã¤¿ DHCP ¥µ¡¼¥Ð¤òÄɤ¤¤«¤±¤Æ -¤½¤ì¤òľ¤¹Êý¤¬¤è¤¤¤Ç¤¹¡£ +ʸ�ˤ�ꡢDHCP ���饤����Ȥϻ��ꤷ�����ɥ쥹�ò¥µ¡ï¿½ï¿½Ð¼ï¿½ï¿½Ì»Ò¤È¤ï¿½ï¿½Æ»ï¿½ï¿½Ñ¤ï¿½ï¿½ï¿½ +�����Ф�����󶡿����Ф���ݤ���褦�ˤʤ�ޤ���ɸ��˽�ò¤·¤Ê¤ï¿½ dhcp +�����Ф������ְ㤨�Ƥ��� dhcp �����Фˤ�äƥ��饤����Ȥ����ꤵ��ʤ� +�褦�ˤ��뤿��ˡ�����ʸ����Ѥ��뤳�Ȥ��Ǥ��ޤ����������ʤ��顢����� +�Ǹ�����Ȥ���٤��Ǥ����������Ω������ä� DHCP �����Ф��ɤ������� +�����ľ�������褤�Ǥ��� .PP \fBinterface "\fIname\fB" { \fIdeclarations ... \fB } .PP -Ê£¿ô¤Î¥Í¥Ã¥È¥ï¡¼¥¯¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò»ý¤Ä¥¯¥é¥¤¥¢¥ó¥È¤Î¾ì¹ç¡¢DHCP ¤Ç -ÀßÄꤵ¤ì¤ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ë¤è¤Ã¤Æ°Û¤Ê¤ëÆ°ºî¤ò¤µ¤»¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤¬ -¤¢¤ê¤Þ¤¹¡£lease Àë¸À¤È alias Àë¸À¤ò½ü¤¯¤¹¤Ù¤Æ¤Î¥¿¥¤¥ß¥ó¥°¥Ñ¥é¥á¡¼¥¿ -¤ÈÀë¸À¤ò¡¢interface Àë¸À¤Ç°Ï¤à¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤½¤Î¾ì¹ç¡¢°Ï¤Þ¤ì¤¿ -¥Ñ¥é¥á¡¼¥¿¤Ï»ØÄꤷ¤¿Ì¾Á°¤Ë¹çÃפ¹¤ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ë¤Î¤ßŬÍѤµ¤ì¤Þ¤¹¡£ -interface Àë¸À¤ò»ý¤¿¤Ê¤¤¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï¡¢¤¹¤Ù¤Æ¤Î interface Àë¸À¤Î -³°Â¦¤ÇÀë¸À¤µ¤ì¤¿¥Ñ¥é¥á¡¼¥¿¡¢¤â¤·¤¯¤Ï¥Ç¥Õ¥©¥ë¥È¤ÎÀßÄ꤬ŬÍѤµ¤ì¤Þ¤¹¡£ +ʣ���Υͥåȥ�����󥿥ե���������ĥ��饤����Ȥξ�硢DHCP �� +���ꤵ��륤�󥿥ե������ˤ�äưۤʤ�ư��ò¤µ¤ï¿½ï¿½ï¿½É¬ï¿½×¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ç¤¬ +����ޤ���lease ����� alias �����������٤ƤΥ����ߥ󥰥ѥ�᡼�� +�������interface ����ǰϤळ�Ȥ��Ǥ��ޤ������ξ�硢�Ϥޤ줿 +�ѥ�᡼���ϻ��ꤷ��̾���˹��פ��륤�󥿥ե������ˤΤ�Ŭ�Ѥ���ޤ��� +interface ���������ʤ����󥿥ե������ϡ����٤Ƥ� interface ����� +��¦��������줿�ѥ�᡼�����⤷���ϥǥե���Ȥ����꤬Ŭ�Ѥ���ޤ��� .PP \fBpseudo "\fIname\fR" "\fIreal-name\fB" { \fIdeclarations ... \fB } .PP -¾õ¶·¤Ë¤è¤Ã¤Æ¤Ï²¾ÁÛ¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÀë¸À¤·¡¢ -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤¬¤³¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¤¿¤á¤ÎÀßÄê¤ò¼èÆÀ¤¹¤ë¤è¤¦¤Ë¤¹¤ë¤È -ÊØÍø¤Ë¤Ê¤êÆÀ¤Þ¤¹¡£ -Ä̾ï DHCP ¥¯¥é¥¤¥¢¥ó¥È¤¬¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë³Æ¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï¡¢ -¤½¤Î¥ê¡¼¥¹¤ò³ÍÆÀ¤·´ÉÍý¤¹¤ë¤¿¤á¤Ë¡¢ -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Î¾õÂÖµ¡³£¤ò¼Â¹Ô¤·¤Æ¤¤¤Þ¤¹¡£ -²¾ÁÛ¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï¡¢\fIreal-name\fR ¤È̾ÉÕ¤±¤é¤ì¤¿¥¤¥ó¥¿¥Õ¥§¡¼¥¹¾å¤Ç -²ÔƯ¤·¤Æ¤¤¤ë¡¢¤Þ¤µ¤·¤¯¤â¤¦°ì¤Ä¤Î¾õÂÖµ¡³£¤Ç¤¹¡£ -¤³¤Îµ¡Ç½¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢ -²¾ÁÛ¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤È¼ÂºÝ¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÎξÊý¤ËÂФ·¤Æ -¥¯¥é¥¤¥¢¥ó¥È¼±Ê̻ҤòÄ󶡤·¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ -¤Þ¤¿¡¢»ÈÍѤ·¤¿¤¤ IP ¥¢¥É¥ì¥¹¤ËÂФ¹¤ë²¾ÁÛ¥¤¥ó¥¿¥Õ¥§¡¼¥¹ÍÑ¤Ë -ʬΥ¤µ¤ì¤¿¥¯¥é¥¤¥¢¥ó¥È¥¹¥¯¥ê¥×¥È¤òÄ󶡤·¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ -Î㤨¤Ð¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹: +�����ˤ�äƤϲ��ۥ��󥿥ե�������������� +DHCP ���饤����Ȥ����Υ��󥿥ե������Τ����������������褦�ˤ���� +�����ˤʤ����ޤ��� +�̾� DHCP ���饤����Ȥ����ݡ��Ȥ��Ƥ���ƥ��󥿥ե������ϡ� +���Υ꡼����������������뤿��ˡ� +DHCP ���饤����Ȥξ��ֵ�����¹Ԥ��Ƥ��ޤ��� +���ۥ��󥿥ե������ϡ�\fIreal-name\fR ��̾�դ���줿���󥿥ե�������� +��Ư���Ƥ��롢�ޤ������⤦��Ĥξ��ֵ����Ǥ��� +���ε�ǽ����Ѥ����硢 +���ۥ��󥿥ե������ȼºݤΥ��󥿥ե�������ξ�����Ф��� +���饤����ȼ��̻Ҥ��󶡤��ʤ���Фʤ�ޤ��� +�ޤ������Ѥ����� IP ���ɥ쥹���Ф��벾�ۥ��󥿥ե������Ѥ� +ʬΥ���줿���饤����ȥ�����ץȤ��󶡤��ʤ���Фʤ�ޤ��� +�㤨�м��Τ褦�ˤʤ�ޤ�: .PP .nf interface "ep0" { @@ -541,38 +541,38 @@ DHCP } .fi .PP -²¾ÁÛ¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¤¿¤á¤Î¥¯¥é¥¤¥¢¥ó¥È¥¹¥¯¥ê¥×¥È¤Ï -¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÍ­¸ú¤Ë¤·¤¿¤ê̵¸ú¤Ë¤·¤¿¤ê¤¹¤ëÀßÄê¤ò¤¹¤ë¤Ù¤­¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£ -Æäˡ¢¥ê¡¼¥¹¤Î³ÍÆÀ¤ä¹¹¿·¤Î¾õÂÖ¡¢¤½¤·¤Æ¥ê¡¼¥¹¤Î´ü¸ÂÀÚ¤ì¤Î¾õÂÖ¤ò -¼è¤ê°·¤¦¤¿¤á¤Ë¤Ï¡¢¤½¤Î¤³¤È¤¬É¬ÍפǤ¹¡£ -¾ÜºÙ¤Ï \fBdhclient-script(8)\fR ¤ò»²¾È¤·¤Æ²¼¤µ¤¤¡£ +���ۥ��󥿥ե������Τ���Υ��饤����ȥ�����ץȤ� +���󥿥ե�������ͭ���ˤ�����̵���ˤ����ꤹ������ò¤¹¤ï¿½Ù¤ï¿½ï¿½Ç¤Ï¤ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +�äˡ��꡼���γ����乹���ξ��֡������ƥ꡼���δ����ڤ�ξ��֤� +��갷������ˤϡ����Τ��Ȥ�ɬ�פǤ��� +�ܺ٤� \fBdhclient-script(8)\fR �ò»²¾È¤ï¿½ï¿½Æ²ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ .PP \fBmedia "\fImedia setup\fB"\fI [ \fB, "\fImedia setup\fB", \fI... ]\fB;\fR .PP .B media -ʸ¤Ï¡¢IP ¥¢¥É¥ì¥¹¼èÆÀÃæ¤Ë»ÈÍѤ¬»î¤ß¤é¤ì¤ë¡¢¥á¥Ç¥£¥¢ÀßÄê¥Ñ¥é¥á¡¼¥¿¤ò 1 ¤Ä -°Ê¾åÄêµÁ¤·¤Þ¤¹¡£dhcp ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢¥ê¥¹¥ÈÃæ¤Î³Æ media setup ʸ»úÎó¤ò -½ç¼¡»ÈÍѤ·¡¢¤¢¤ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò¤½¤ì¤ÇÀßÄꤷ¡¢¥Ö¡¼¥È¤ò»î¤ß¤Þ¤¹¡£ -ÂÌÌܤʤé¤Ð¼¡¤Î media setup ʸ»úÎó¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Îʸ¤Ï¡¢ -¥á¥Ç¥£¥¢¥¿¥¤¥×¤ò¸¡½Ð¤¹¤ëǽÎϤò»ý¤¿¤Ê¤¤¥Í¥Ã¥È¥ï¡¼¥¯¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ë -ÂФ·¤ÆÍøÍѤǤ­¤Þ¤¹¡£¥µ¡¼¥Ð¤Ø¤Î¥ê¥¯¥¨¥¹¥È¤¬¤Ç¤­±þÅú¤¬ÆÀ¤é¤ì¤ë¤â¤Î -¤Ê¤é¤Ð¡¢¤É¤Î¤è¤¦¤Ê¥á¥Ç¥£¥¢¥¿¥¤¥×¤Ç¤â¤¿¤Ö¤óÀµÅö¤Ç¤¹ (ÊݾڤϤ·¤Þ¤»¤ó¤¬)¡£ -.PP -media setup ¤Ï¥¢¥É¥ì¥¹¼èÆÀ¤Î½é´ü¥Õ¥§¡¼¥º (DHCPDISCOVER ¥Ñ¥±¥Ã¥È¤È -DHCPOFFER ¥Ñ¥±¥Ã¥È)¤Ç¤Î¤ß»ÈÍѤµ¤ì¤Þ¤¹¡£¤Ò¤È¤¿¤Ó¥¢¥É¥ì¥¹¤¬¼èÆÀ¤µ¤ì¤ë¤È¡¢ -dhcp ¥¯¥é¥¤¥¢¥ó¥È¤Ï¤½¤Î¥¢¥É¥ì¥¹¤ò¥ê¡¼¥¹¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ëµ­Ï¿¤·¡¢ -¤½¤Î¥¢¥É¥ì¥¹¤òÆÀ¤ëºÝ¤ËÍѤ¤¤¿¥á¥Ç¥£¥¢¥¿¥¤¥×¤òµ­Ï¿¤·¤Þ¤¹¡£¥¯¥é¥¤¥¢¥ó¥È¤¬ -¥ê¡¼¥¹¤ò¹¹¿·¤·¤è¤¦¤È¤¹¤ëºÝ¤Ë¤Ï¾ï¤Ë¡¢¤½¤ì¤ÈƱ¤¸¥á¥Ç¥£¥¢¥¿¥¤¥×¤ò»ÈÍѤ·¤Þ¤¹¡£ -¥ê¡¼¥¹¤ò´ü¸ÂÀÚ¤ì¤Ë¤·¤Æ¤Ï¤¸¤á¤Æ¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ï¥á¥Ç¥£¥¢¥¿¥¤¥×¤ò½ç¤Ë»î¤¹ -¾õÂÖ¤ËÌá¤ê¤Þ¤¹¡£ -.\"X .SH SAMPLE ... man-jp ɸ½à¤Ï¤Ê¤ó¤À¤Ã¤¿¤Ã¤± -.SH »ÈÍÑÎã -°Ê²¼¤ÎÀßÄê¥Õ¥¡¥¤¥ë¤Ï¡¢NetBSD 1.3 ¤ò¼Â¹Ô¤¹¤ë¤¢¤ë¥é¥Ã¥×¥È¥Ã¥×¥Þ¥·¥ó¤Ç -»ÈÍѤµ¤ì¤Æ¤¤¤ë¤â¤Î¤Ç¤¹¡£¤³¤Î¥Þ¥·¥ó¤Ï¡¢IP ¥¨¥¤¥ê¥¢¥¹¤È¤·¤Æ 192.5.5.213¡¢ -¥¤¥ó¥¿¥Õ¥§¡¼¥¹ ep0 (3Com 3C589C) ¤ò¤Ò¤È¤Ä»ý¤Ã¤Æ¤¤¤Þ¤¹¡£¤³¤Î¥¯¥é¥¤¥¢¥ó¥È -¤Ï¡¢DHCP ³èÆ°¤¬¤Û¤È¤ó¤É¤Ê¤¤¥Í¥Ã¥È¥ï¡¼¥¯¤Ç»þ´Ö¤ÎÂçÉôʬ¤ò¾ÃÈñ¤¹¤ë¤³¤È¤¬ -¤ï¤«¤Ã¤Æ¤¤¤ë¤Î¤Ç¡¢¥Ö¡¼¥È´Ö³Ö¤Ï¥Ç¥Õ¥©¥ë¥ÈÃͤ«¤é¤¤¤¯¤Ö¤ó¾®¤µ¤¯¤·¤Æ -¤¢¤ê¤Þ¤¹¡£¤³¤Î¥Þ¥·¥ó¤ÏÊ£¿ô¥Í¥Ã¥È¥ï¡¼¥¯´Ö¤Ç¥í¡¼¥ß¥ó¥° (°ÜÆ°) ¤·¤Þ¤¹¡£ +ʸ�ϡ�IP ���ɥ쥹������˻��Ѥ���ߤ��롢��ǥ�������ѥ�᡼���� 1 �� +�ʾ�������ޤ���dhcp ���饤����Ȥϡ��ꥹ����γ� media setup ʸ����� +�缡���Ѥ������륤�󥿥ե������ò¤½¤ï¿½ï¿½ï¿½ï¿½ï¿½ê¤·ï¿½ï¿½ï¿½Ö¡ï¿½ï¿½È¤ï¿½ï¿½ß¤Þ¤ï¿½ï¿½ï¿½ +���ܤʤ�м��� media setup ʸ�������Ѥ��ޤ�������ʸ�ϡ� +��ǥ��������פò¸¡½Ð¤ï¿½ï¿½ï¿½Ç½ï¿½Ï¤ï¿½ï¿½ï¿½ï¿½ï¿½Ê¤ï¿½ï¿½Í¥Ã¥È¥ï¡¼ï¿½ï¿½ï¿½ï¿½ï¿½ó¥¿¥Õ¥ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ +�Ф������ѤǤ��ޤ��������ФؤΥꥯ�����Ȥ��Ǥ��������������� +�ʤ�С��ɤΤ褦�ʥ�ǥ��������פǤ⤿�֤������Ǥ� (�ݾڤϤ��ޤ���)�� +.PP +media setup �ϥ��ɥ쥹�����ν���ե����� (DHCPDISCOVER �ѥ��åȤ� +DHCPOFFER �ѥ��å�)�ǤΤ߻��Ѥ���ޤ����ҤȤ��ӥ��ɥ쥹�����������ȡ� +dhcp ���饤����ȤϤ��Υ��ɥ쥹��꡼���ǡ����١����˵�Ͽ���� +���Υ��ɥ쥹������ݤ��Ѥ�����ǥ��������פ�Ͽ���ޤ������饤����Ȥ� +�꡼���ò¹¹¿ï¿½ï¿½ï¿½ï¿½è¤¦ï¿½È¤ï¿½ï¿½ï¿½Ý¤Ë¤Ï¾ï¿½Ë¡ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Æ±ï¿½ï¿½ï¿½ï¿½Ç¥ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½×¤ï¿½ï¿½ï¿½Ñ¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +�꡼��������ڤ�ˤ��ƤϤ���ơ����饤����Ȥϥ�ǥ��������פ��˻ +���֤����ޤ��� +.\"X .SH SAMPLE ... man-jp ɸ��Ϥʤ���ä��ä� +.SH ������ +�ʲ�������ե�����ϡ�NetBSD 1.3 ��¹Ԥ��뤢���åץȥåץޥ���� +���Ѥ���Ƥ����ΤǤ������Υޥ���ϡ�IP �����ꥢ���Ȥ��� 192.5.5.213�� +���󥿥ե����� ep0 (3Com 3C589C) ��ҤȤĻ��äƤ��ޤ������Υ��饤����� +�ϡ�DHCP ��ư���ۤȤ�ɤʤ��ͥåȥ���ǻ��֤�����ʬ����ñ¤¹¤ë¤³ï¿½È¤ï¿½ +�狼�äƤ���Τǡ��֡��ȴֳ֤ϥǥե�����ͤ��餤���֤󾮤������� +����ޤ������Υޥ����ʣ���ͥåȥ���֤ǥ����ߥ� (��ư) ���ޤ��� .nf @@ -602,17 +602,17 @@ alias { option subnet-mask 255.255.255.255; } .fi -¤³¤ì¤Ï dhclient.conf ¥Õ¥¡¥¤¥ë¤È¤·¤Æ¤ÏÈó¾ï¤ËÊ£»¨¤Ê¤â¤Î¤Ç¤¹¡£°ìÈ̤ˡ¢ -³§¤µ¤ó¤¬»ÈÍѤ¹¤ë¤â¤Î¤Ï¤Ï¤ë¤«¤Ë´Êñ¤Ê¤Ï¤º¤Ç¤¹¡£Â¿¤¯¤Î¾ì¹ç¡¢dhclient.conf -¥Õ¥¡¥¤¥ë¤È¤·¤Æ¶õ¤Î¥Õ¥¡¥¤¥ë¤òÀ¸À®¤¹¤ë¤À¤±¤Ç½½Ê¬¤Ê¤Ï¤º¤Ç¤¹¡£ -¤Ä¤Þ¤ê¡¢¥Ç¥Õ¥©¥ë¥ÈÃͤǤ褤¤Î¤¬ÉáÄ̤Ǥ¹¡£ -.SH ´ØÏ¢¹àÌÜ +����� dhclient.conf �ե�����Ȥ��Ƥ�����ʣ���ʤ�ΤǤ������̤ˡ� +�����󤬻��Ѥ����ΤϤϤ뤫�˴�ñ�ʤϤ��Ǥ���¿���ξ�硢dhclient.conf +�ե�����Ȥ��ƶ��Υե������������������ǽ�ʬ�ʤϤ��Ǥ��� +�Ĥޤꡢ�ǥե�����ͤǤ褤�Τ����̤Ǥ��� +.SH ��Ϣ���� dhcp-options(5), dhclient.leases(5), dhclient(8), RFC2132, RFC2131 -.SH ºî¼Ô +.SH ��� .B dhclient(8) -¤Ï Vixie Labs ¤È¤Î·ÀÌó¤Î¤â¤È¤Ç Ted Lemon ¤¬½ñ¤­¤Þ¤·¤¿¡£ -ËÜ¥×¥í¥¸¥§¥¯¥È¤Î´ð¶â¤Ï Internet Systems Consortium ¤¬Ä󶡤·¤Þ¤·¤¿¡£ -Internet Systems Consortium ¤Ë´Ø¤¹¤ë¾ðÊó¤Ï¡¢ +�� Vixie Labs �Ȥη���Τ�Ȥ� Ted Lemon ���ñ¤­¤Þ¤ï¿½ï¿½ï¿½ï¿½ï¿½ +�ܥץ��������Ȥδ��� Internet Systems Consortium ���󶡤��ޤ����� +Internet Systems Consortium �˴ؤ������ϡ� .B https://www.isc.org -¤Ë¤¢¤ê¤Þ¤¹¡£ +�ˤ���ޤ��� diff --git a/doc/ja_JP.eucJP/dhclient.leases.5 b/doc/ja_JP.eucJP/dhclient.leases.5 index d88a9d94..7e0ebfd2 100644 --- a/doc/ja_JP.eucJP/dhclient.leases.5 +++ b/doc/ja_JP.eucJP/dhclient.leases.5 @@ -16,8 +16,8 @@ .\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Internet Systems Consortium, Inc. -.\" 950 Charter Street -.\" Redwood City, CA 94063 +.\" PO Box 360 +.\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ .\" @@ -25,31 +25,31 @@ .\" .\" $FreeBSD: doc/ja_JP.eucJP/man/man5/dhclient.leases.5,v 1.6 2002/05/05 20:40:23 horikawa Exp $ .TH dhclient.leases 5 -.SH ̾¾Î -dhclient.leases - DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Î¥ê¡¼¥¹¥Ç¡¼¥¿¥Ù¡¼¥¹ -.SH ²òÀâ -Internet Systems Consortium ¤Î DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢ -³ÍÆÀ¤·¤¿¥ê¡¼¥¹¤Î¤¦¤Á¤Þ¤ÀÍ­¸ú¤Ç¤¢¤ë¤â¤Î¤ò´ÉÍý¤¹¤ë¤¿¤á¤Î¡¢ -±Ê³Ū¤Ê¥Ç¡¼¥¿¥Ù¡¼¥¹¤òÊÝ»ý¤·¤Þ¤¹¡£ -¤³¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ï¡¢¼«Í³·Á¼°¤Î ASCII ¥Õ¥¡¥¤¥ë¤Ç¤¢¤ê¡¢ -¥ê¡¼¥¹ 1 ¤Ä¤Ë¤Ä¤­Í­¸ú¤ÊÀë¸À¤ò 1 ¤Ä´Þ¤ß¤Þ¤¹¡£ -¤¢¤ë¥ê¡¼¥¹¤ËÂФ·¤ÆÊ£¿ô¤ÎÀë¸À¤¬Åо줹¤ë¾ì¹ç¡¢ -¥Õ¥¡¥¤¥ëÃæ¤ÎºÇ¸å¤Î¤â¤Î¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£ -¤³¤Î¥Õ¥¡¥¤¥ë¤Ï¥í¥°¤È¤·¤Æ½ñ¤­¹þ¤Þ¤ì¤Þ¤¹¤Î¤Ç¡¢ -¤³¤Î¤è¤¦¤Ê¾õÂ֤ˤʤ뤳¤È¤Ï°Û¾ï¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£ +.SH ̾�� +dhclient.leases - DHCP ���饤����ȤΥ꡼���ǡ����١��� +.SH ���� +Internet Systems Consortium �� DHCP ���饤����Ȥϡ� +���������꡼���Τ����ޤ�ͭ���Ǥ����Τ�������뤿��Ρ� +��³Ū�ʥǡ����١������ݻ����ޤ��� +���Υǡ����١����ϡ���ͳ������ ASCII �ե�����Ǥ��ꡢ +�꡼�� 1 �ĤˤĤ�ͭ��������� 1 �Ĵޤߤޤ��� +����꡼�����Ф���ʣ����������о줹���硢 +�ե�������κǸ�Τ�Τ����Ѥ���ޤ��� +���Υե�����ϥ����Ȥ��ƽñ¤­¹ï¿½ï¿½Þ¤ï¿½Þ¤ï¿½ï¿½Î¤Ç¡ï¿½ +���Τ褦�ʾ��֤ˤʤ뤳�Ȥϰ۾�ǤϤ���ޤ��� .PP -¥ê¡¼¥¹Àë¸À¤Î½ñ¼°¤Ï¡¢ +�꡼������νñ¼°¤Ï¡ï¿½ .B dhclient.conf(5) -¤Ëµ­½Ò¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ -.SH ´ØÏ¢¥Õ¥¡¥¤¥ë +�˵��Ҥ���Ƥ��ޤ��� +.SH ��Ϣ�ե����� .B DBDIR/dhclient.leases -.SH ´ØÏ¢¹àÌÜ +.SH ��Ϣ���� dhclient(8), dhcp-options(5), dhclient.conf(5), RFC2132, RFC2131 -.SH ºî¼Ô +.SH ��� .B dhclient(8) -¤Ï¡¢Vixie Labs ¤È¤Î·ÀÌó¤Î¤â¤È¤Ç¡¢Ted Lemon ¤¬µ­½Ò¤·¤Þ¤·¤¿¡£ -ËÜ¥×¥í¥¸¥§¥¯¥È¤Î»ñ¶â¤Ï¡¢Internet Systems Consortium ¤¬Ä󶡤·¤Þ¤·¤¿¡£ -Internet Systems Consortium ¤Ë´Ø¤¹¤ë¾ðÊó¤Ï¡¢ +�ϡ�Vixie Labs �Ȥη���Τ�Ȥǡ�Ted Lemon �����Ҥ��ޤ����� +�ܥץ��������Ȥλ��ϡ�Internet Systems Consortium ���󶡤��ޤ����� +Internet Systems Consortium �˴ؤ������ϡ� .B https://www.isc.org -¤Ë¤¢¤ê¤Þ¤¹¡£ +�ˤ���ޤ��� diff --git a/doc/ja_JP.eucJP/dhcp-eval.5 b/doc/ja_JP.eucJP/dhcp-eval.5 index 5ec22951..ef2d7d2e 100644 --- a/doc/ja_JP.eucJP/dhcp-eval.5 +++ b/doc/ja_JP.eucJP/dhcp-eval.5 @@ -16,280 +16,280 @@ .\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Internet Systems Consortium, Inc. -.\" 950 Charter Street -.\" Redwood City, CA 94063 +.\" PO Box 360 +.\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ .\" .\" $FreeBSD: doc/ja_JP.eucJP/man/man5/dhcp-eval.5,v 1.2 2002/05/23 04:17:13 horikawa Exp $ .TH dhcp-eval 5 -.SH ̾¾Î -dhcp-eval - ISC DHCP ¤Ë¤ª¤±¤ë¾ò·ïÉÕ¤­É¾²Á -.SH ²òÀâ -Internet Systems Consortium ¤Î DHCP ¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¤Ï¡¢¤É¤Á¤é¤â -¼õ¿®¤¹¤ë¥Ñ¥±¥Ã¥È¤Ë°Í¸¤·¤¿¾ò·ïÉÕ¤­Æ°ºî¤ò¹Ô¤¦Ç½ÎϤò»ý¤Á¤Þ¤¹¡£ -¾ò·ïÉÕ¤­Æ°ºî¤Îʸˡ¤ò¤³¤³¤Ë¼¨¤·¤Þ¤¹¡£ -.SH »²¾È: ¾ò·ïÉÕ¤­Æ°ºî -¾ò·ïÉÕ¤­Æ°ºî¤Ï¡¢if, else, elsif ʸ¤ò»ÈÍѤ·¤Æ»ØÄꤷ¤Þ¤¹¡£ -¾ò·ïʸ¤Ï¡¢Ä̾ïʸ (option ʸ) ¤¬Åоì²Äǽ¤Ê¾ì½ê¤Ï¤É¤³¤Ë¤Ç¤âÅоì²Äǽ¤Ç¤¢¤ê¡¢ -¤Þ¤¿¤³¤Î¤è¤¦¤Êʸ¤ò³ç¤ë¤³¤È¤â²Äǽ¤Ç¤¹¡£ -¥µ¡¼¥Ð¤Ë¤ª¤±¤ë¾ò·ïʸ¤Ï¼¡¤Î¤è¤¦¤Ë¤Ê¤ë¤³¤È¤¬Â¿¤¤¤Ç¤·¤ç¤¦: +.SH ̾�� +dhcp-eval - ISC DHCP �ˤ��������դ�ɾ�� +.SH ���� +Internet Systems Consortium �� DHCP ���饤����Ȥȥ����Фϡ��ɤ���� +��������ѥ��åȤ˰�¸��������դ�ư���Ԥ�ǽ�Ϥ�����ޤ��� +����դ�ư���ʸˡ�ò¤³¤ï¿½ï¿½Ë¼ï¿½ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +.SH ����: ����դ�ư�� +����դ�ư��ϡ�if, else, elsif ʸ����Ѥ��ƻ��ꤷ�ޤ��� +���ʸ�ϡ��̾�ʸ (option ʸ) ���о��ǽ�ʾ��Ϥɤ��ˤǤ��о��ǽ�Ǥ��ꡢ +�ޤ����Τ褦��ʸ���뤳�Ȥ��ǽ�Ǥ��� +�����Фˤ�������ʸ�ϼ��Τ褦�ˤʤ뤳�Ȥ�¿���Ǥ��礦: .PP .nf if option dhcp-user-class = "accounting" { max-lease-time 17600; option domain-name "accounting.example.org"; - option domain-name-servers ns1.accounting.example.org, + option domain-name-servers ns1.accounting.example.org, ns2.accounting.example.org; } elsif option dhcp-user-class = "sales" { max-lease-time 17600; option domain-name "sales.example.org"; - option domain-name-servers ns1.sales.example.org, + option domain-name-servers ns1.sales.example.org, ns2.sales.example.org; } elsif option dhcp-user-class = "engineering" { max-lease-time 17600; option domain-name "engineering.example.org"; - option domain-name-servers ns1.engineering.example.org, + option domain-name-servers ns1.engineering.example.org, ns2.engineering.example.org; } else { max-lease-time 600; option domain-name "misc.example.org"; - option domain-name-servers ns1.misc.example.org, + option domain-name-servers ns1.misc.example.org, ns2.misc.example.org; } .fi .PP -¥¯¥é¥¤¥¢¥ó¥È¦¤Ç¤Ï¡¢¾ò·ïÉÕ¤­É¾²Á¤ÎÎã¤Ï¼¡¤Î¤è¤¦¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦: +���饤�����¦�Ǥϡ�����դ�ɾ������ϼ��Τ褦�ˤʤ�Ǥ��礦: .PP .nf -# example.org ¤Ï¥Õ¥¡¥¤¥ä¥¦¥©¡¼¥ë¤Ç DNS ¤ò¥Õ¥£¥ë¥¿¤¹¤ë¤Î¤Ç¡¢ -# example.org ¥Í¥Ã¥È¥ï¡¼¥¯¤Ë·Ò¤¬¤ë¤È¤­¤Î¤ß¡¢¤½¤Î DNS ¥µ¡¼¥Ð¤ò»ÈÍѤ·¤Þ¤¹¡£ -# example.org ¤Ë·Ò¤¬¤ë¤Î¤Ç¤Ï¤Ê¤¤¾ì¹ç¡¢¼«¸Ê¤Î DNS ¥µ¡¼¥Ð¤òÍ¥Àè»ÈÍѤ·¤Þ¤¹¡£ +# example.org �ϥե����䥦������� DNS ��ե��륿����Τǡ� +# example.org �ͥåȥ���˷Ҥ���Ȥ��Τߡ����� DNS �����Ф���Ѥ��ޤ��� +# example.org �˷Ҥ���ΤǤϤʤ���硢���ʤ� DNS �����Ф�ͥ����Ѥ��ޤ��� if not option domain-name = "example.org" { prepend domain-name-servers 127.0.0.1; } -.fi +.fi .PP .B if -ʸ¤È +ʸ�� .B elsif -·Ñ³ʸ¤Ï¡¢°ú¿ô¤È¤·¤Æ¥Ö¡¼¥ë¼°¤ò¼è¤ê¤Þ¤¹¡£ -¤Ä¤Þ¤ê¡¢¤³¤ì¤é¤Îʸ¤Ï¡¢É¾²Á¤µ¤ì¤ë¤È¥Ö¡¼¥ëÃͤηë²Ì¤òÀ¸À®¤¹¤ë¼°¤ò¼è¤ê¤Þ¤¹¡£ -¼°¤Îɾ²Á·ë²Ì¤¬¿¿¤Ë¤Ê¤ë¤È¡¢ +��³ʸ�ϡ������Ȥ��ƥ֡��뼰����ޤ��� +�Ĥޤꡢ������ʸ�ϡ�ɾ�������ȥ֡����ͤη�̤��������뼰����ޤ��� +����ɾ����̤����ˤʤ�ȡ� .B if -ʸ¤Îľ¸å¤Î¥Ö¥ì¡¼¥¹¤Ç³ç¤é¤ì¤¿Ê¸¤¬¼Â¹Ô¤µ¤ì¡¢¸å³¤¹¤ë +ʸ��ľ��Υ֥졼���dz��줿ʸ���¹Ԥ��졢��³���� .B elsif -¤È +�� .B else -¤ÎÀá¤Ï¥¹¥­¥Ã¥×¤µ¤ì¤Þ¤¹¡£ -¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¡¢É¾²Á·ë²Ì¤¬¿¿¤Ë¤Ê¤ë elsif Àá¤Ë½Ð²ñ¤¦¤Þ¤Ç¡¢¸å³¤¹¤ë³Æ +����ϥ����åפ���ޤ��� +�����Ǥʤ���硢ɾ����̤����ˤʤ� elsif ��˽вñ¤¦¤Þ¤Ç¡ï¿½ï¿½ï¿½Â³ï¿½ï¿½ï¿½ï¿½ï¿½ .B elsif -Àá¤Î¼°¤¬¥Á¥§¥Ã¥¯¤µ¤ì¤Þ¤¹¡£ -¤½¤Î¤è¤¦¤ÊÀ᤬¸«ÉÕ¤«¤ë¤È¡¢Ä¾¸å¤Î¥Ö¥ì¡¼¥¹Ãæ¤Îʸ¤¬¼Â¹Ô¤µ¤ì¡¢¸å³¤¹¤ë +��μ��������å�����ޤ��� +���Τ褦���᤬���դ���ȡ�ľ��Υ֥졼�����ʸ���¹Ԥ��졢��³���� .B elsif -¤È +�� .B else -¤ÎÀá¤Ï¥¹¥­¥Ã¥×¤µ¤ì¤Þ¤¹¡£ -¤¹¤Ù¤Æ¤Î +����ϥ����åפ���ޤ��� +���٤Ƥ� .B if -¤ª¤è¤Ó +����� .B elsif -¤ÎÀ᤬¥Á¥§¥Ã¥¯¤µ¤ì¤¿¤â¤Î¤Î¤É¤Î¼°¤â¿¿¤Ë¤Ê¤é¤Ê¤¤¾ì¹ç¤Ç¡¢ +���᤬�����å����줿��ΤΤɤμ��⿿�ˤʤ�ʤ����ǡ� .B else -À᤬¸ºß¤¹¤ë¾ì¹ç¡¢ +�᤬¸�ߤ����硢 .B else -¤Îľ¸å¤Î¥Ö¥ì¡¼¥¹Ãæ¤Îʸ¤¬É¾²Á¤µ¤ì¤Þ¤¹¡£ -¾ò·ï¤Ë¤ª¤¤¤Æ¤Ï¡¢É¾²Á·ë²Ì¤¬¶õ¤Ë¤Ê¤ë¥Ö¡¼¥ë¼°¤Ïµ¶¤È¤·¤Æ°·¤ï¤ì¤Þ¤¹¡£ -.SH ¥Ö¡¼¥ë¼° -°Ê²¼¤Ï¡¢DHCP ÇÛÉÛʪ¤Ç¸½ºß¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë¥Ö¡¼¥ë¼°¤Î°ìÍ÷¤Ç¤¹¡£ +��ľ��Υ֥졼�����ʸ��ɾ������ޤ��� +���ˤ����Ƥϡ�ɾ����̤����ˤʤ�֡��뼰�ϵ��Ȥ��ư����ޤ��� +.SH �֡��뼰 +�ʲ��ϡ�DHCP ����ʪ�Ǹ��ߥ��ݡ��Ȥ���Ƥ���֡��뼰�ΰ����Ǥ��� .PP .I data-expression-1 \fB=\fI data-expression-2\fR .RS 0.25i .PP -\fB=\fR ¥ª¥Ú¥ì¡¼¥¿¤Ï¡¢2 ¸Ä¤Î¥Ç¡¼¥¿¼°¤òÈæ³Ó¤·¡¢Î¾¼Ô¤¬Æ±¤¸¾ì¹ç¤Ï¿¿¤òÊÖ¤·¡¢ -Ʊ°ì¤Ç¤Ê¤¤¾ì¹ç¤Ïµ¶¤òÊÖ¤·¤Þ¤¹¡£ -º¸Êդ⤷¤¯¤Ï±¦ÊդΤ¤¤º¤ì¤«¤¬¶õ¤Î¾ì¹ç¡¢·ë²Ì¤Ï¶õ¤Ë¤Ê¤ê¤Þ¤¹¡£ +\fB=\fR ���ڥ졼���ϡ�2 �ĤΥǡ���������Ӥ���ξ�Ԥ�Ʊ�����Ͽ����֤��� +Ʊ��Ǥʤ����ϵ����֤��ޤ��� +���դ⤷���ϱ��դΤ����줫�����ξ�硢��̤϶��ˤʤ�ޤ��� .RE .PP .I boolean-expression-1 \fBand\fI boolean-expression-2\fR .PP .RS 0.25i -\fBand\fR ¥ª¥Ú¥ì¡¼¥¿¤Ï¡¢º¸ÊդΥ֡¼¥ë¼°¤È±¦ÊդΥ֡¼¥ë¼°¤ÎξÊý¤Îɾ²Á·ë²Ì¤¬ -¿¿¤Î¾ì¹ç¡¢¿¿¤Èɾ²Á¤µ¤ì¤Þ¤¹¡£ -¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¡¢µ¶¤Èɾ²Á¤µ¤ì¤Þ¤¹¡£ -º¸Êդ⤷¤¯¤Ï±¦ÊդΤ¤¤º¤ì¤«¤¬¶õ¤Î¾ì¹ç¡¢·ë²Ì¤Ï¶õ¤Ë¤Ê¤ê¤Þ¤¹¡£ +\fBand\fR ���ڥ졼���ϡ����դΥ֡��뼰�ȱ��դΥ֡��뼰��ξ����ɾ����̤� +���ξ�硢����ɾ������ޤ��� +�����Ǥʤ���硢����ɾ������ޤ��� +���դ⤷���ϱ��դΤ����줫�����ξ�硢��̤϶��ˤʤ�ޤ��� .RE .PP .I boolean-expression-1 \fBor\fI boolean-expression-2\fR .PP .RS 0.25i -\fBor\fR ¥ª¥Ú¥ì¡¼¥¿¤Ï¡¢º¸ÊդΥ֡¼¥ë¼°¤È±¦ÊդΥ֡¼¥ë¼°¤Î¤¤¤º¤ì¤«¤Îɾ²Á·ë²Ì¤¬ -¿¿¤Î¾ì¹ç¡¢¿¿¤Èɾ²Á¤µ¤ì¤Þ¤¹¡£ -¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¡¢µ¶¤Èɾ²Á¤µ¤ì¤Þ¤¹¡£ -º¸Êդ⤷¤¯¤Ï±¦ÊդΤ¤¤º¤ì¤«¤¬¶õ¤Î¾ì¹ç¡¢·ë²Ì¤Ï¶õ¤Ë¤Ê¤ê¤Þ¤¹¡£ +\fBor\fR ���ڥ졼���ϡ����դΥ֡��뼰�ȱ��դΥ֡��뼰�Τ����줫��ɾ����̤� +���ξ�硢����ɾ������ޤ��� +�����Ǥʤ���硢����ɾ������ޤ��� +���դ⤷���ϱ��դΤ����줫�����ξ�硢��̤϶��ˤʤ�ޤ��� .RE .PP .B not \fIboolean-expression .PP .RS 0.25i -\fBnot\fR ¥ª¥Ú¥ì¡¼¥¿¤Ï¡¢\fIboolean-expression\fR ¤Îɾ²Á·ë²Ì¤¬µ¶¤Î¾ì¹ç¡¢ -¿¿¤Èɾ²Á¤µ¤ì¤Þ¤¹¡£ -¤Þ¤¿¡¢\fIboolean-expression\fR ¤Îɾ²Á·ë²Ì¤¬¿¿¤Î¾ì¹ç¡¢µ¶¤Èɾ²Á¤µ¤ì¤Þ¤¹¡£ -\fIboolean-expression\fR ¤Îɾ²Á·ë²Ì¤¬¶õ¤Î¾ì¹ç¡¢·ë²Ì¤â¤Þ¤¿¶õ¤Ë¤Ê¤ê¤Þ¤¹¡£ +\fBnot\fR ���ڥ졼���ϡ�\fIboolean-expression\fR ��ɾ����̤����ξ�硢 +����ɾ������ޤ��� +�ޤ���\fIboolean-expression\fR ��ɾ����̤����ξ�硢����ɾ������ޤ��� +\fIboolean-expression\fR ��ɾ����̤����ξ�硢��̤�ޤ����ˤʤ�ޤ��� .RE .PP .B exists \fIoption-name\fR .PP .RS 0.25i -\fBexists\fR ¼°¤Ï¡¢½èÍýÂоݤÎÆþÎÏ DCHP ¥Ñ¥±¥Ã¥ÈÃæ¤Ë¡¢ -»ØÄꤵ¤ì¤¿¥ª¥×¥·¥ç¥ó¤¬Â¸ºß¤¹¤ë¾ì¹ç¡¢¿¿¤òÊÖ¤·¤Þ¤¹¡£ +\fBexists\fR ���ϡ������оݤ����� DCHP �ѥ��å���ˡ� +���ꤵ�줿���ץ����¸�ߤ����硢�����֤��ޤ��� .RE .B known .PP .RS 0.25i -\fBknown\fR ¼°¤Ï¡¢Í×µáÂбþÃæ¤Î¥¯¥é¥¤¥¢¥ó¥È¤¬´ûÃΤξì¹ç¡¢ -¤¹¤Ê¤ï¤Á¥Û¥¹¥ÈÀë¸À¤¬¤¢¤ë¾ì¹ç¡¢¿¿¤òÊÖ¤·¤Þ¤¹¡£ +\fBknown\fR ���ϡ��׵��б���Υ��饤����Ȥ����Τξ�硢 +���ʤ���ۥ�������������硢�����֤��ޤ��� .RE .B static .PP .RS 0.25i -\fBstatic\fR ¼°¤Ï¡¢Í×µáÂбþÃæ¤Î¥¯¥é¥¤¥¢¥ó¥È¤Ø¤Î¥ê¡¼¥¹³ä¤êÅö¤Æ¤¬¡¢ -ÀÅŪ¥¢¥É¥ì¥¹³ä¤êÅö¤Æ¤Ë¤è¤ë¤â¤Î¤Ç¤¢¤Ã¤¿¾ì¹ç¡¢¿¿¤òÊÖ¤·¤Þ¤¹¡£ +\fBstatic\fR ���ϡ��׵��б���Υ��饤����ȤؤΥ꡼��������Ƥ��� +��Ū���ɥ쥹������Ƥˤ���ΤǤ��ä���硢�����֤��ޤ��� .RE -.SH ¥Ç¡¼¥¿¼° -Á°½Ò¤Î¥Ö¡¼¥ë¼°¤Ï¡¢¥Ç¡¼¥¿¼°¤Îɾ²Á·ë²Ì¤Ë°Í¸¤·¤Þ¤¹¡£ -¥Ç¡¼¥¿¼°¤ò¤³¤³¤Ë¼¨¤·¤Þ¤¹¡£ +.SH �ǡ����� +���ҤΥ֡��뼰�ϡ��ǡ�������ɾ����̤˰�¸���ޤ��� +�ǡ������ò¤³¤ï¿½ï¿½Ë¼ï¿½ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ .PP .B substring (\fIdata-expr\fB, \fIoffset\fB, \fIlength\fB)\fR .PP .RS 0.25i -\fBsubstring\fR ¥ª¥Ú¥ì¡¼¥¿¤Ï¡¢¥Ç¡¼¥¿¼°¤òɾ²Á¤·¡¢ -ɾ²Á·ë²ÌÃæ¤Î \fIoffset\fR ¥Ð¥¤¥È¤«¤é³«»Ï¤·¤Æ \fIlength\fR ¥Ð¥¤¥È·Ñ³¤¹¤ë -¥µ¥Ö¥¹¥È¥ê¥ó¥°¤òÊÖ¤·¤Þ¤¹¡£ -\fIoffset\fR ¤È \fIlength\fR ¤Ï¶¦¤Ë¿ôÃͼ°¤Ç¤¹¡£ -\fIdata-expr\fR, \fIoffset\fR, \fIlength\fR ¤Î¤¤¤º¤ì¤«¤¬¶õ¤Èɾ²Á¤µ¤ì¤ë¾ì¹ç¡¢ -·ë²Ì¤â¤Þ¤¿¶õ¤Ë¤Ê¤ê¤Þ¤¹¡£ -\fIoffset\fR ¤¬¡¢É¾²Á¤µ¤ì¤¿¥Ç¡¼¥¿¤ÎŤµ°Ê¾å¤Ç¤¢¤ë¾ì¹ç¡¢ -Ťµ 0 ¤Î¥Ç¡¼¥¿Ê¸»úÎó¤¬ÊÖ¤µ¤ì¤Þ¤¹¡£ -\fIlength\fI ¤¬¡¢É¾²Á¤µ¤ì¤¿¥Ç¡¼¥¿¤Î \fIoffset\fR ¤è¤ê¸å¤ÎŤµ¤è¤êÂ礭¤¤¾ì¹ç¡¢ -ɾ²Á¤µ¤ì¤¿¥Ç¡¼¥¿¤Î \fIoffset\fR ¤«¤é½ªÃ¼¤Þ¤Ç¤ÎÁ´¥Ç¡¼¥¿¤ò´Þ¤à -¥Ç¡¼¥¿Ê¸»úÎó¤¬ÊÖ¤µ¤ì¤Þ¤¹¡£ +\fBsubstring\fR ���ڥ졼���ϡ��ǡ�������ɾ������ +ɾ�������� \fIoffset\fR �Х��Ȥ��鳫�Ϥ��� \fIlength\fR �Х��ȷ�³���� +���֥��ȥ�󥰤��֤��ޤ��� +\fIoffset\fR �� \fIlength\fR �϶��˿��ͼ��Ǥ��� +\fIdata-expr\fR, \fIoffset\fR, \fIlength\fR �Τ����줫������ɾ��������硢 +��̤�ޤ����ˤʤ�ޤ��� +\fIoffset\fR ����ɾ�����줿�ǡ�����Ĺ���ʾ�Ǥ����硢 +�� 0 �Υǡ���ʸ�����֤���ޤ��� +\fIlength\fI ����ɾ�����줿�ǡ����� \fIoffset\fR �����Ĺ������礭����硢 +ɾ�����줿�ǡ����� \fIoffset\fR ���齪ü�ޤǤ����ǡ�����ޤ� +�ǡ���ʸ�����֤���ޤ��� .RE .PP .B suffix (\fIdata-expr\fB, \fIlength\fB)\fR .PP .RS 0.25i -\fBsuffix\fR ¥ª¥Ú¥ì¡¼¥¿¤Ï¡¢\fIdata-expr\fR ¤òɾ²Á¤·¡¢ -ɾ²Á·ë²Ì¤ÎºÇ¸å¤Î \fIlength\fR ¥Ð¥¤¥È¤òÊÖ¤·¤Þ¤¹¡£ -\fIlength\fR ¤Ï¿ôÃͼ°¤Ç¤¹¡£ -\fIdata-expr\fR ¤Þ¤¿¤Ï \fIlength\fR ¤Îɾ²Á·ë²Ì¤¬¶õ¤Î¾ì¹ç¡¢ -·ë²Ì¤â¤Þ¤¿¶õ¤Ë¤Ê¤ê¤Þ¤¹¡£ +\fBsuffix\fR ���ڥ졼���ϡ�\fIdata-expr\fR ��ɾ������ +ɾ����̤κǸ�� \fIlength\fR �Х��Ȥ��֤��ޤ��� +\fIlength\fR �Ͽ��ͼ��Ǥ��� +\fIdata-expr\fR �ޤ��� \fIlength\fR ��ɾ����̤����ξ�硢 +��̤�ޤ����ˤʤ�ޤ��� \fIsuffix\fR -(ÌõÃí: \fIlength\fR ¤¬Àµ¤·¤¤¤È»×¤ï¤ì¤Þ¤¹) -¤Îɾ²Á·ë²Ì¤¬É¾²Á¤µ¤ì¤¿¥Ç¡¼¥¿¤ÎŤµ¤è¤êÂ礭¤¤¾ì¹ç¡¢ -ɾ²Á¤µ¤ì¤¿¥Ç¡¼¥¿¤¬ÊÖ¤µ¤ì¤Þ¤¹¡£ +(����: \fIlength\fR ���������Ȼפ��ޤ�) +��ɾ����̤�ɾ�����줿�ǡ�����Ĺ������礭����硢 +ɾ�����줿�ǡ������֤���ޤ��� .\" horikawa@jp.FreeBSD.org 2002/04/29 .RE .PP .B option \fIoption-name\fR .PP .RS 0.25i -\fBoption\fR ¥ª¥Ú¥ì¡¼¥¿¤Ï¡¢¥µ¡¼¥Ð¤¬±þÅú½èÍýÃæ¤Î¥Ñ¥±¥Ã¥È¤ÎÃæ¤Î¡¢ -»ØÄꤷ¤¿¥ª¥×¥·¥ç¥ó¤ÎÆâÍƤòÊÖ¤·¤Þ¤¹¡£ +\fBoption\fR ���ڥ졼���ϡ������Ф�����������Υѥ��åȤ���Ρ� +���ꤷ�����ץ��������Ƥ��֤��ޤ��� .RE .PP .B config-option \fIoption-name\fR .PP .RS 0.25i -\fBconfig-option\fR ¥ª¥Ú¥ì¡¼¥¿¤Ï¡¢»ØÄꤷ¤¿¥ª¥×¥·¥ç¥ó¤ËÂФ·¡¢ -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Þ¤¿¤Ï¥µ¡¼¥Ð¤¬Á÷½Ð¤¹¤ë¤è¤¦ÀßÄꤵ¤ì¤¿ÃͤòÊÖ¤·¤Þ¤¹¡£ +\fBconfig-option\fR ���ڥ졼���ϡ����ꤷ�����ץ������Ф��� +DHCP ���饤����Ȥޤ��ϥ����Ф����Ф���褦���ꤵ�줿�ͤ��֤��ޤ��� .RE .PP .B hardware .PP .RS 0.25i -\fBhardware\fR ¥ª¥Ú¥ì¡¼¥¿¤Ï¡¢¥Ç¡¼¥¿¥¹¥È¥ê¥ó¥°¤òÊÖ¤·¤Þ¤¹¡£ -¥Ç¡¼¥¿¥¹¥È¥ê¥ó¥°¤ÎºÇ½é¤ÎÍ×ÁǤϡ¢ -Âоݥѥ±¥Ã¥È¤¬¼¨¤¹¥Í¥Ã¥È¥ï¡¼¥¯¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥¿¥¤¥×¤Ç¤¢¤ê¡¢ -¸å³¤¹¤ëÍ×ÁǤϡ¢¥¯¥é¥¤¥¢¥ó¥È¤Î¥ê¥ó¥¯ÁØ¥¢¥É¥ì¥¹¤Ç¤¹¡£ -¥Ñ¥±¥Ã¥È¤¬Â¸ºß¤·¤Ê¤¤¾ì¹ç¤â¤·¤¯¤Ï RFC2131 \fIhlen\fR ¥Õ¥£¡¼¥ë¥É¤¬Ìµ¸ú¤Ê¾ì¹ç¡¢ -·ë²Ì¤Ï¶õ¤Ë¤Ê¤ê¤Þ¤¹¡£ -¥Ï¡¼¥É¥¦¥§¥¢¥¿¥¤¥×¤Ë¤Ï¡¢¥¤¡¼¥µ¥Í¥Ã¥È (1)¡¢¥È¡¼¥¯¥ó¥ê¥ó¥° (6)¡¢ -FDDI (8) ¤¬´Þ¤Þ¤ì¤Þ¤¹¡£ -¥Ï¡¼¥É¥¦¥§¥¢¥¿¥¤¥×¤Ï IETF ¤Ë¤è¤Ã¤Æµ¬Äꤵ¤ì¡¢ -¤É¤Î¤è¤¦¤Ë¥¿¥¤¥×¤Î¿ôÃͤ¬ÄêµÁ¤µ¤ì¤ë¤«¤Î¾ÜºÙ¤Ï RFC2131 -(ISC DHCP ÇÛÉÛʪ¤Ç¤Ï¡¢doc/ ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ê¤Þ¤¹) ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ +\fBhardware\fR ���ڥ졼���ϡ��ǡ������ȥ�󥰤��֤��ޤ��� +�ǡ������ȥ�󥰤κǽ�����Ǥϡ� +�оݥѥ��åȤ������ͥåȥ�����󥿥ե������Υ����פǤ��ꡢ +��³�������Ǥϡ����饤����ȤΥ���إ��ɥ쥹�Ǥ��� +�ѥ��åȤ�¸�ߤ��ʤ����⤷���� RFC2131 \fIhlen\fR �ե�����ɤ�̵���ʾ�硢 +��̤϶��ˤʤ�ޤ��� +�ϡ��ɥ����������פˤϡ��������ͥå� (1)���ȡ������� (6)�� +FDDI (8) ���ޤޤ�ޤ��� +�ϡ��ɥ����������פ� IETF �ˤ�äƵ��ꤵ�졢 +�ɤΤ褦�˥����פο��ͤ��������뤫�ξܺ٤� RFC2131 +(ISC DHCP ����ʪ�Ǥϡ�doc/ ���֥ǥ��쥯�ȥ�ˤ���ޤ�) �ò»²¾È¤ï¿½ï¿½Æ¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ .RE .PP .B packet (\fIoffset\fB, \fIlength\fB)\fR .PP .RS 0.25i -\fBpacket\fR ¥ª¥Ú¥ì¡¼¥¿¤Ï¡¢Âоݥѥ±¥Ã¥È¤Î»ØÄêÉôʬ¤òÊÖ¤¹¤«¡¢ -Âоݥѥ±¥Ã¥È¤¬Ìµ¤¤Ê¸Ì®¤Ç¤Ï¶õ¤òÊÖ¤·¤Þ¤¹¡£ -\fIoffset\fR ¤È \fIlength\fR ¤Ï¡¢ -\fBsubstring\fR ¥ª¥Ú¥ì¡¼¥¿¤ÈƱÍͤˡ¢¥Ñ¥±¥Ã¥È¤ÎÆâÍƤËŬÍѤµ¤ì¤Þ¤¹¡£ +\fBpacket\fR ���ڥ졼���ϡ��оݥѥ��åȤλ�����ʬ���֤����� +�оݥѥ��åȤ�̵��ʸ̮�Ǥ϶����֤��ޤ��� +\fIoffset\fR �� \fIlength\fR �ϡ� +\fBsubstring\fR ���ڥ졼����Ʊ�ͤˡ��ѥ��åȤ����Ƥ�Ŭ�Ѥ���ޤ��� .RE .PP .I string .PP .RS 0.25i -¥¯¥©¡¼¥È¤Ç³ç¤é¤ì¤¿¥¹¥È¥ê¥ó¥°¤Ï¥Ç¡¼¥¿¼°¤È¤·¤Æ»ØÄê²Äǽ¤Ç¤¢¤ê¡¢ -¥¯¥©¡¼¥È¤Î´Ö¤ò ASCII ¥¨¥ó¥³¡¼¥É¤·¤¿¤Î¥Æ¥­¥¹¥È¤òÊÖ¤·¤Þ¤¹¡£ -¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å ('\\') ʸ»ú¤Ï C ¥×¥í¥°¥é¥à¤Î¤è¤¦¤ËÆÃÊÌ°·¤¤¤µ¤ì¤Þ¤¹: -¤¹¤Ê¤ï¤Á '\\t' ¤Ï¥¿¥Ö¤ò¡¢'\\r' ¤ÏÉü²þ¤ò¡¢'\\n' ¤Ï²þ¹Ô¤ò¡¢'\\b' ¤Ï¥Ù¥ë¤ò -°ÕÌ£¤·¤Þ¤¹¡£ -8 ¿Ê¿ôÃÍ¤Ï '\\nnn' ¤Ç»ØÄê²Äǽ¤Ç¤¢¤ê¡¢nnn ¤Ï 0 °Ê¾å 0377 °Ê²¼¤Î 8 ¿Ê¿ôÃͤǤ¹¡£ -16 ¿Ê¿ôÃÍ¤Ï '\\xnn' ¤Ç»ØÄê²Äǽ¤Ç¤¢¤ê¡¢nn ¤Ï 0 °Ê¾å 0xff °Ê²¼¤Î 16 ¿Ê¿ôÃͤǤ¹¡£ -.\" ÃͤÎÈϰϤθí¤ê¤Ë¤Ä¤¤¤Æ¤Ï¡¢Murray ·Ðͳ¤Ç¥ì¥Ý¡¼¥ÈºÑ +�������Ȥdz��줿���ȥ�󥰤ϥǡ������Ȥ��ƻ����ǽ�Ǥ��ꡢ +�������Ȥδ֤� ASCII ���󥳡��ɤ����Υƥ����Ȥ��֤��ޤ��� +�Хå�����å��� ('\\') ʸ���� C �ץ������Τ褦�����̰�������ޤ�: +���ʤ�� '\\t' �ϥ��֤�'\\r' ��������'\\n' �ϲ��Ԥ�'\\b' �ϥ٥�� +��̣���ޤ��� +8 �ʿ��ͤ� '\\nnn' �ǻ����ǽ�Ǥ��ꡢnnn �� 0 �ʾ� 0377 �ʲ��� 8 �ʿ��ͤǤ��� +16 �ʿ��ͤ� '\\xnn' �ǻ����ǽ�Ǥ��ꡢnn �� 0 �ʾ� 0xff �ʲ��� 16 �ʿ��ͤǤ��� +.\" �ͤ��ϰϤθ���ˤĤ��Ƥϡ�Murray ��ͳ�ǥ�ݡ��Ⱥ� .\" horikawa@jp.FreeBSD.org 2002/05/01 .RE .PP .I colon-separated hexadecimal list .PP .RS 0.25i -¥³¥í¥ó¤Ç¶èÀÚ¤é¤ì¤¿ 16 ¿Ê¿ô¤Î¥ª¥¯¥Æ¥Ã¥ÈÃͤΥꥹ¥È¤ò¡¢ -¥Ç¡¼¥¿¼°¤È¤·¤Æ»ØÄê²Äǽ¤Ç¤¹¡£ +������Ƕ��ڤ�줿 16 �ʿ��Υ����ƥå��ͤΥꥹ�Ȥ� +�ǡ������Ȥ��ƻ����ǽ�Ǥ��� .RE .PP .B concat (\fIdata-expr1\fB, ..., \fIdata-exprN\fB)\fR .RS 0.25i -¼°¤¬É¾²Á¤µ¤ì¡¢³Æɾ²Á·ë²Ì¤¬¥µ¥Ö¼°¤Î½çÈÖ¤ËÏ¢·ë¤µ¤ì¤Þ¤¹¡£ -¥µ¥Ö¼°¤Î¤¤¤º¤ì¤«¤Îɾ²Á·ë²Ì¤¬¶õ¤Ë¤Ê¤ë¾ì¹ç¡¢Ï¢·ë¤Î·ë²Ì¤Ï¶õ¤Ë¤Ê¤ê¤Þ¤¹¡£ +����ɾ�����졢��ɾ����̤����ּ��ν��֤�Ϣ�뤵��ޤ��� +���ּ��Τ����줫��ɾ����̤����ˤʤ��硢Ϣ��η�̤϶��ˤʤ�ޤ��� .RE .PP .B reverse (\fInumeric-expr1\fB, \fIdata-expr2\fB)\fR .RS 0.25i -2 ¸Ä¤Î¼°¤¬É¾²Á¤µ¤ì¡¢¥Ç¡¼¥¿¼°¤Îɾ²Á·ë²Ì¤¬¤½¤Î¾ì¤Çȿž¤µ¤ì¤Þ¤¹¡£ -ȿž¤Ï¡¢¿ôÃͼ°¤Ç»ØÄꤵ¤ì¤ëÂ礭¤µ¤Îñ°Ì¤Ç¹Ô¤ï¤ì¤Þ¤¹¡£ -Î㤨¤Ð¡¢¿ôÃͼ°¤Îɾ²Á·ë²Ì¤¬ 4 ¤Î¾ì¹ç¤Ç¡¢ -¥Ç¡¼¥¿¼°¤Îɾ²Á·ë²Ì¤¬ 12 ¥Ð¥¤¥È¤Ë¤Ê¤ë¾ì¹ç¡¢ -reverse ¼°¤Îɾ²Á·ë²Ì¤Ï¡¢¼¡¤Î¤è¤¦¤Ê 12 ¥Ð¥¤¥È¤Î¥Ç¡¼¥¿¤Ë¤Ê¤ê¤Þ¤¹¡£ -¤¹¤Ê¤ï¤Á¡¢ÆþÎϤκǸå¤Î 4 ¥Ð¥¤¥È¡¢¿¿Ãæ¤Î 4¥Ð¥¤¥È¡¢ºÇ½é¤Î 4 ¥Ð¥¤¥È¤Î -½ç¤Ë¤Ê¤ê¤Þ¤¹¡£ +2 �Ĥμ���ɾ�����졢�ǡ�������ɾ����̤����ξ��ȿž����ޤ��� +ȿž�ϡ����ͼ��ǻ��ꤵ����礭����ñ�̤ǹԤ��ޤ��� +�㤨�С����ͼ���ɾ����̤� 4 �ξ��ǡ� +�ǡ�������ɾ����̤� 12 �Х��Ȥˤʤ��硢 +reverse ����ɾ����̤ϡ����Τ褦�� 12 �Х��ȤΥǡ����ˤʤ�ޤ��� +���ʤ�������ϤκǸ�� 4 �Х��ȡ������ 4�Х��ȡ��ǽ�� 4 �Х��Ȥ� +��ˤʤ�ޤ��� .RE .PP .B leased-address .RS 0.25i -¤¤¤«¤Ê¤ëʸ̮¤Ë¤ª¤¤¤Æ¤â¡¢ -Í×µá½èÍýÂоݤȤʤäƤ¤¤ë¥¯¥é¥¤¥¢¥ó¥È¤Ë IP ¥¢¥É¥ì¥¹¤¬³ä¤êÅö¤ÆºÑ¤Î¾ì¹ç¡¢ -¤½¤Î IP ¥¢¥É¥ì¥¹¤¬ÊÖ¤µ¤ì¤Þ¤¹¡£ +�����ʤ�ʸ̮�ˤ����Ƥ⡢ +�׵�����оݤȤʤäƤ��륯�饤����Ȥ� IP ���ɥ쥹��������ƺѤξ�硢 +���� IP ���ɥ쥹���֤���ޤ��� .RE .PP .B binary-to-ascii (\fInumeric-expr1\fB, \fInumeric-expr2\fB, .B \fIdata-expr1\fB,\fR \fIdata-expr2\fB)\fR .RS 0.25i -data-expr2 ¤Îɾ²Á·ë²Ì¤ò¥Æ¥­¥¹¥È¥¹¥È¥ê¥ó¥°¤ËÊÑ´¹¤·¤Þ¤¹¡£ -¤³¤Î¥Æ¥­¥¹¥È¥¹¥È¥ê¥ó¥°Ãæ¤Ç¤Ï¡¢ -data-expr2 ¤Îɾ²Á·ë²Ì¤Î³ÆÍ×ÁǤ¬¡¢1 ¸Ä¤Î¿ôÃͤˤʤê¤Þ¤¹¡£ -³Æ¿ôÃͤϡ¢¤½¤ì¤¾¤ì¡¢data-expr1 ¤Îɾ²Á·ë²Ì¤Ë¤è¤Ã¤Æ¶èÀÚ¤é¤ì¤Þ¤¹¡£ -numeric-expr1 ¤Îɾ²Á·ë²Ì¤Ï¡¢´ð¿ô (2 ¤«¤é 16) ¤Ç¤¢¤ê¡¢ -¤³¤Î´ð¿ô¤Ë¿ôÃͤ¬ÊÑ´¹¤µ¤ì¤Þ¤¹¡£ -numeric-expr2 ¤Îɾ²Á·ë²Ì¤Ï¡¢³Æ¿ôÃͤΥӥåÈÉý¤Ç¤¢¤ê¡¢ -8, 16, 32 ¤Î¤¤¤º¤ì¤«¤Ç¤¹¡£ -.PP -ºÇ½é¤Î 3 ¸Ä¤Î¥¿¥¤¥×¤Î¼°¤ÎÎã¤È¤·¤Æ¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤Ë³ä¤êÅö¤Æ¤é¤ì¤¿ IP ¥¢¥É¥ì¥¹ÍѤΠ-PTR ¥ì¥³¡¼¥É¤Î̾Á°¤òÀ¸À®¤¹¤ë¤¿¤á¤Ë»ÈÍѲÄǽ¤Ê¼°¤ò¼¨¤·¤Þ¤¹ +data-expr2 ��ɾ����̤�ƥ����ȥ��ȥ�󥰤��Ѵ����ޤ��� +���Υƥ����ȥ��ȥ����Ǥϡ� +data-expr2 ��ɾ����̤γ����Ǥ���1 �Ĥο��ͤˤʤ�ޤ��� +�ƿ��ͤϡ����줾�졢data-expr1 ��ɾ����̤ˤ�äƶ��ڤ��ޤ��� +numeric-expr1 ��ɾ����̤ϡ���� (2 ���� 16) �Ǥ��ꡢ +���δ���˿��ͤ��Ѵ�����ޤ��� +numeric-expr2 ��ɾ����̤ϡ��ƿ��ͤΥӥå����Ǥ��ꡢ +8, 16, 32 �Τ����줫�Ǥ��� +.PP +�ǽ�� 3 �ĤΥ����פμ�����Ȥ��ơ� +���饤����Ȥ˳�����Ƥ�줿 IP ���ɥ쥹�Ѥ� +PTR �쥳���ɤ�̾�����������뤿��˻��Ѳ�ǽ�ʼ��ò¼¨¤ï¿½ï¿½Þ¤ï¿½ .RE .PP .nf @@ -301,182 +301,182 @@ PTR .PP .B encode-int (\fInumeric-expr\fB, \fIwidth\fB)\fR .RS 0.25i -¿ôÃͼ°¤¬É¾²Á¤µ¤ì¡¢»ØÄꤵ¤ì¤¿Éý¤Î¥Ç¡¼¥¿¥¹¥È¥ê¥ó¥°¤Ë -¥Í¥Ã¥È¥ï¡¼¥¯¥Ð¥¤¥È½ç (ºÇ¾å°Ì¥Ð¥¤¥È¤¬ºÇ½é) ¤Ç¥¨¥ó¥³¡¼¥É¤µ¤ì¤Þ¤¹¡£ -¿ôÃͼ°¤Îɾ²Á·ë²Ì¤¬¶õ¤ÎÃͤˤʤë¾ì¹ç¡¢·ë²Ì¤â¤Þ¤¿¶õ¤Ç¤¹¡£ +���ͼ���ɾ�����졢���ꤵ�줿���Υǡ������ȥ�󥰤� +�ͥåȥ���Х��Ƚ� (�Ǿ�̥Х��Ȥ��ǽ�) �ǥ��󥳡��ɤ���ޤ��� +���ͼ���ɾ����̤������ͤˤʤ��硢��̤�ޤ����Ǥ��� .RE -.\" ¤³¤Î ".RE" ¤¬Ìµ¤¤¤È¡¢¥¤¥ó¥Ç¥ó¥È¤¬Àµ¤·¤¯¤Ê¤¤¤Ç¤¹ +.\" ���� ".RE" ��̵���ȡ�����ǥ�Ȥ��������ʤ��Ǥ� .\" horikawa@jp.FreeBSD.org 2002/04/29 .PP .B pick-first-value (\fIdata-expr1\fR [ ... \fIexpr\fRn ] \fB)\fR .RS 0.25i -pick-first-value ´Ø¿ô¤Ï¡¢Ç¤°Õ¸Ä¤Î¥Ç¡¼¥¿¼°¤ò¼è¤êÆÀ¤Þ¤¹¡£ -¥ê¥¹¥È¤ÎÀèƬ¤«¤é³Æ¼°¤¬É¾²Á¤µ¤ì¡¢ -ɾ²Á·ë²Ì¤¬¶õ¤Ç¤Ï¤Ê¤¤¼°¤¬¸«ÉÕ¤«¤ë¤Þ¤Ç¤³¤ì¤¬Â³¤­¤Þ¤¹¡£ -¤³¤Î¼°¤¬ÊÖ¤µ¤ì¡¢¤³¤Î¼°¤Ë¸å³¤¹¤ë¼°¤Ïɾ²Á¤µ¤ì¤Þ¤»¤ó¡£ -¤¹¤Ù¤Æ¤Î¼°¤Îɾ²Á·ë²Ì¤¬¶õ¤Î¾ì¹ç¡¢¶õ¤ÎÃͤ¬ÊÖ¤µ¤ì¤Þ¤¹¡£ +pick-first-value �ؿ��ϡ�Ǥ�ոĤΥǡ������������ޤ��� +�ꥹ�Ȥ���Ƭ����Ƽ���ɾ�����졢 +ɾ����̤����ǤϤʤ��������դ���ޤǤ��줬³���ޤ��� +���μ����֤��졢���μ��˸�³���뼰��ɾ������ޤ��� +���٤Ƥμ���ɾ����̤����ξ�硢�����ͤ��֤���ޤ��� .RE .PP .B host-decl-name .RS 0.25i -host-decl-name ´Ø¿ô¤Ï¡¢¸½ºßÍ×µá½èÍýÂоݤȤʤäƤ¤¤ë¥¯¥é¥¤¥¢¥ó¥È¤Ë¥Þ¥Ã¥Á¤¹¤ë¡¢ -¥Û¥¹¥ÈÀë¸À¤Î̾Á°¤òÊÖ¤·¤Þ¤¹¡£ -¤É¤Î¥Û¥¹¥ÈÀë¸À¤â¥Þ¥Ã¥Á¤·¤Ê¤¤¾ì¹ç¡¢·ë²Ì¤Ï¶õ¤Ë¤Ê¤ê¤Þ¤¹¡£ +host-decl-name �ؿ��ϡ������׵�����оݤȤʤäƤ��륯�饤����Ȥ˥ޥå����롢 +�ۥ��������̾�����֤��ޤ��� +�ɤΥۥ��������ޥå����ʤ���硢��̤϶��ˤʤ�ޤ��� .RE -.SH ¿ôÃͼ° -¿ôÃͼ°¤Ï¡¢É¾²Á·ë²Ì¤¬À°¿ô¤Ë¤Ê¤ë¼°¤Ç¤¹¡£ -°ìÈ̤ˡ¢À°¿ô¤ÎºÇÂ祵¥¤¥º¤¬ 32 ¥Ó¥Ã¥È̤Ëþ¤Ç¤¢¤ë¤È²¾Äꤹ¤Ù¤­¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¢ -À°¿ô¤ÎÀºÅÙ¤¬ 32 ¥Ó¥Ã¥È¤ò±Û¤¨¤ë¤³¤È¤Ï¤¢¤êÆÀ¤Þ¤¹¡£ +.SH ���ͼ� +���ͼ��ϡ�ɾ����̤������ˤʤ뼰�Ǥ��� +���̤ˡ������κ��祵������ 32 �ӥå�̤���Ǥ���Ȳ��ꤹ�٤��ǤϤ���ޤ��󤬡� +���������٤� 32 �ӥåȤ�ۤ��뤳�ȤϤ������ޤ��� .PP .B extract-int (\fIdata-expr\fB, \fIwidth\fB)\fR .PP .RS 0.25i -\fBextract-int\fR ¥ª¥Ú¥ì¡¼¥¿¤Ï¡¢¥Í¥Ã¥È¥ï¡¼¥¯¥Ð¥¤¥È½ç¤ÎÀ°¿ô¤ò¡¢ -»ØÄꤷ¤¿¥Ç¡¼¥¿¼°¤Îɾ²Á·ë²Ì¤«¤é¼è¤ê½Ð¤·¤Þ¤¹¡£ -Éý¤Ï¡¢¼è¤ê½Ð¤¹À°¿ô¤Î¥Ó¥Ã¥ÈÉý¤Ç¤¹¡£ -¸½ºß¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ëÉý¤Ï 8, 16, 32 ¤Î¤¤¤º¤ì¤«¤Ç¤¹¡£ -¥Ç¡¼¥¿¼°¤Îɾ²Á·ë²Ì¤¬¡¢»ØÄꤷ¤¿Â礭¤µ¤ÎÀ°¿ô¤È¼è¤ê½Ð¤¹¤Î¤Ë -½½Ê¬¤Ê¥Ó¥Ã¥È¤òÄ󶡤·¤Ê¤¤¾ì¹ç¡¢¶õ¤ÎÃͤ¬ÊÖ¤µ¤ì¤Þ¤¹¡£ +\fBextract-int\fR ���ڥ졼���ϡ��ͥåȥ���Х��Ƚ�������� +���ꤷ���ǡ�������ɾ����̤�����Ф��ޤ��� +���ϡ����Ф������Υӥå����Ǥ��� +���ߡ����ݡ��Ȥ���Ƥ������� 8, 16, 32 �Τ����줫�Ǥ��� +�ǡ�������ɾ����̤������ꤷ���礭���������ȼ��Ф��Τ� +��ʬ�ʥӥåȤ��󶡤��ʤ���硢�����ͤ��֤���ޤ��� .RE .PP .B lease-time .PP .RS 0.25i -¸½ºß¤Î¥ê¡¼¥¹¤Î´ü´Ö¤Ç¤¹¡£ -¤¹¤Ê¤ï¤Á¡¢¸½ºß¤Î»þ¹ï¤È¥ê¡¼¥¹¤Î´ü¸Â¤¬ÀÚ¤ì¤ë»þ¹ï¤È¤Îº¹¤Ç¤¹¡£ +���ߤΥ꡼���δ��֤Ǥ��� +���ʤ�������ߤλ���ȥ꡼���δ��¤��ڤ�����Ȥκ��Ǥ��� .RE .PP .I number .PP .RS 0.25i -0 ¤«¤éɽ¸½²Äǽ¤ÊºÇÂ祵¥¤¥º¤ÎÈϰϤÎǤ°Õ¤Î¿ôÃͤò¡¢¿ôÃͼ°¤È¤·¤Æ»ØÄê²Äǽ¤Ç¤¹¡£ +0 ����ɽ����ǽ�ʺ��祵�������ϰϤ�Ǥ�դο��ͤò¡¢¿ï¿½ï¿½Í¼ï¿½ï¿½È¤ï¿½ï¿½Æ»ï¿½ï¿½ï¿½ï¿½Ç½ï¿½Ç¤ï¿½ï¿½ï¿½ .RE .PP .B client-state .PP .RS 0.25i -½èÍýÂоݤΥ¯¥é¥¤¥¢¥ó¥È¤Î¸½ºß¤Î¾õÂ֤Ǥ¹¡£ -DHCP ¥¯¥é¥¤¥¢¥ó¥ÈÀßÄê¥Õ¥¡¥¤¥ë¤Ë¤ª¤¤¤Æ¤Î¤ßÍ­ÍѤǤ¹¡£ -¼è¤êÆÀ¤ëÃͤϼ¡¤ÎÄ̤ê¤Ç¤¹: +�����оݤΥ��饤����Ȥθ��ߤξ��֤Ǥ��� +DHCP ���饤���������ե�����ˤ����ƤΤ�ͭ�ѤǤ��� +��������ͤϼ����̤�Ǥ�: .TP 2 .I \(bu -Booting - DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï INIT ¾õÂ֤Ǥ¢¤ê¡¢ -IP ¥¢¥É¥ì¥¹¤ò¤Þ¤À»ý¤Á¤Þ¤»¤ó¡£ -¼¡¤ËÁ÷¿®¤µ¤ì¤ë¥á¥Ã¥»¡¼¥¸¤Ï DHCPDISCOVER ¤Ç¤¢¤ê¡¢ -¤³¤ì¤Ï¥Ö¥í¡¼¥É¥­¥ã¥¹¥È¤µ¤ì¤Þ¤¹¡£ +Booting - DHCP ���饤����Ȥ� INIT ���֤Ǥ��ꡢ +IP ���ɥ쥹��ޤ������ޤ��� +�������������������� DHCPDISCOVER �Ǥ��ꡢ +����ϥ֥����ɥ��㥹�Ȥ���ޤ��� .TP .I \(bu -Reboot - DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï INIT-REBOOT ¾õÂ֤Ǥ¹¡£ -IP ¥¢¥É¥ì¥¹¤ò»ý¤Á¤Þ¤¹¤¬¤Þ¤À»ÈÍѤ·¤Æ¤¤¤Þ¤»¤ó¡£ -¼¡¤ËÁ÷¿®¤µ¤ì¤ë¥á¥Ã¥»¡¼¥¸¤Ï DHCPREQUEST ¤Ç¤¢¤ê¡¢ -¤³¤ì¤Ï¥Ö¥í¡¼¥É¥­¥ã¥¹¥È¤µ¤ì¤Þ¤¹¡£ -±þÅú¤¬²¿¤âʹ¤³¤¨¤Ê¤¤¤È¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ï¤³¤Î¥¢¥É¥ì¥¹¤Ë¥Ð¥¤¥ó¥É¤·¡¢ -BOUND ¾õÂÖ¤ËÁ«°Ü¤·¤Þ¤¹¡£ +Reboot - DHCP ���饤����Ȥ� INIT-REBOOT ���֤Ǥ��� +IP ���ɥ쥹������ޤ����ޤ����Ѥ��Ƥ��ޤ��� +�������������������� DHCPREQUEST �Ǥ��ꡢ +����ϥ֥����ɥ��㥹�Ȥ���ޤ��� +����������ʹ�����ʤ��ȡ����饤����ȤϤ��Υ��ɥ쥹�˥Х���ɤ��� +BOUND ���֤����ܤ��ޤ��� .TP .I \(bu -Select - DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï SELECTING ¾õÂ֤Ǥ¹¡£ -¾¯¤Ê¤¯¤È¤â 1 ¸Ä¤Î DHCPOFFER ¥á¥Ã¥»¡¼¥¸¤Ï¼õ¿®¤·¤Þ¤·¤¿¤¬¡¢ -¾¤Î DHCPOFFER ¥á¥Ã¥»¡¼¥¸¤ò¾¤Î¥µ¡¼¥Ð¤«¤é¼õ¤±¼è¤ë¤«¤É¤¦¤«ÂԤäƤ¤¤Þ¤¹¡£ -SELECTING ¾õÂ֤Ǥϥá¥Ã¥»¡¼¥¸¤ÏÁ÷¿®¤µ¤ì¤Þ¤»¤ó¡£ +Select - DHCP ���饤����Ȥ� SELECTING ���֤Ǥ��� +���ʤ��Ȥ� 1 �Ĥ� DHCPOFFER ��å������ϼ������ޤ������� +¾�� DHCPOFFER ��å�������¾�Υ����Ф��������뤫�ɤ����ԤäƤ��ޤ��� +SELECTING ���֤Ǥϥ�å���������������ޤ��� .TP .I \(bu -Request - DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï REQUESTING ¾õÂ֤Ǥ¹¡£ -¾¯¤Ê¤¯¤È¤â 1 ¸Ä¤Î DHCPOFFER ¥á¥Ã¥»¡¼¥¸¤ò¼õ¿®¤·¡¢ -¤½¤Î¤¦¤Á¤Î¤É¤ì¤òÍ׵᤹¤ë¤«ÁªÂò¤·¤Þ¤·¤¿¡£ -¼¡¤ËÁ÷¿®¤µ¤ì¤ë¥á¥Ã¥»¡¼¥¸¤Ï DHCPREQUEST ¥á¥Ã¥»¡¼¥¸¤Ç¤¢¤ê¡¢ -¤³¤ì¤Ï¥Ö¥í¡¼¥É¥­¥ã¥¹¥È¤µ¤ì¤Þ¤¹¡£ +Request - DHCP ���饤����Ȥ� REQUESTING ���֤Ǥ��� +���ʤ��Ȥ� 1 �Ĥ� DHCPOFFER ��������������� +���Τ����Τɤ���׵᤹�뤫���ò¤·¤Þ¤ï¿½ï¿½ï¿½ï¿½ï¿½ +�������������������� DHCPREQUEST ��å������Ǥ��ꡢ +����ϥ֥����ɥ��㥹�Ȥ���ޤ��� .TP .I \(bu -Bound - DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï BOUND ¾õÂ֤Ǥ¹¡£ -IP ¥¢¥É¥ì¥¹¤ò½êÍ­¤·¤Æ¤¤¤Þ¤¹¡£ -¤³¤Î¾õÂ֤Ǥϥá¥Ã¥»¡¼¥¸¤ÏÁ÷¿®¤µ¤ì¤Þ¤»¤ó¡£ +Bound - DHCP ���饤����Ȥ� BOUND ���֤Ǥ��� +IP ���ɥ쥹���ͭ���Ƥ��ޤ��� +���ξ��֤Ǥϥ�å���������������ޤ��� .TP .I \(bu -Renew - DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï RENEWING ¾õÂ֤Ǥ¹¡£ -IP ¥¢¥É¥ì¥¹¤ò½êÍ­¤·¤Æ¤ª¤ê¡¢¤³¤ì¤ò¹¹¿·¤¹¤ë¤¿¤á¤Ë¥µ¡¼¥Ð¤ËÀܳ¤ò»î¤ß¤Æ¤¤¤Þ¤¹¡£ -¼¡¤ËÁ÷¿®¤µ¤ì¤ë¥á¥Ã¥»¡¼¥¸¤Ï DHCPREQUEST ¥á¥Ã¥»¡¼¥¸¤Ç¤¢¤ê¡¢ -¤³¤ì¤Ï¥µ¡¼¥Ð¤ËľÀÜ¥æ¥Ë¥­¥ã¥¹¥È¤µ¤ì¤Þ¤¹¡£ +Renew - DHCP ���饤����Ȥ� RENEWING ���֤Ǥ��� +IP ���ɥ쥹���ͭ���Ƥ��ꡢ����ò¹¹¿ï¿½ï¿½ï¿½ï¿½ë¤¿ï¿½ï¿½Ë¥ï¿½ï¿½ï¿½ï¿½Ð¤ï¿½ï¿½ï¿½Â³ï¿½ï¿½ï¿½ß¤Æ¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +�������������������� DHCPREQUEST ��å������Ǥ��ꡢ +����ϥ����Ф�ľ�ܥ�˥��㥹�Ȥ���ޤ��� .TP .I \(bu -Rebind - DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï REBINDING ¾õÂ֤Ǥ¹¡£ -IP ¥¢¥É¥ì¥¹¤ò½êÍ­¤·¤Æ¤ª¤ê¡¢ -¤³¤ì¤ò¹¹¿·¤¹¤ë¤¿¤á¤ËǤ°Õ¤Î¥µ¡¼¥Ð¤ËÀܳ¤ò»î¤ß¤Æ¤¤¤Þ¤¹¡£ -¼¡¤ËÁ÷¿®¤µ¤ì¤ë¥á¥Ã¥»¡¼¥¸¤Ï DHCPREQUEST ¥á¥Ã¥»¡¼¥¸¤Ç¤¢¤ê¡¢ -¤³¤ì¤Ï¥Ö¥í¡¼¥É¥­¥ã¥¹¥È¤µ¤ì¤Þ¤¹¡£ +Rebind - DHCP ���饤����Ȥ� REBINDING ���֤Ǥ��� +IP ���ɥ쥹���ͭ���Ƥ��ꡢ +����ò¹¹¿ï¿½ï¿½ï¿½ï¿½ë¤¿ï¿½ï¿½ï¿½Ç¤ï¿½Õ¤Î¥ï¿½ï¿½ï¿½ï¿½Ð¤ï¿½ï¿½ï¿½Â³ï¿½ï¿½ï¿½ß¤Æ¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +�������������������� DHCPREQUEST ��å������Ǥ��ꡢ +����ϥ֥����ɥ��㥹�Ȥ���ޤ��� .RE -.SH »²¾È: ¥í¥° -¥í¥°Ê¸¤ò»ÈÍѤ·¤Æ¡¢É¸½à¥í¥°¥Á¥ã¥Í¥ë¤Ë¾ðÊó¤òÁ÷¿®²Äǽ¤Ç¤¹¡£ -¥í¥°Ê¸¤Ï¡¢¾Êά²Äǽ¤Ê priority -(\fBfatal\fR, \fBerror\fR, \fBinfo\fR, \fBdebug\fR ¤Î¤¤¤º¤ì¤«) ¤È¡¢ -¥Ç¡¼¥¿¼°¤ò¼è¤ê¤Þ¤¹¡£ +.SH ����: ���� +����ʸ����Ѥ��ơ�ɸ���������ͥ�˾����������ǽ�Ǥ��� +����ʸ�ϡ���ά��ǽ�� priority +(\fBfatal\fR, \fBerror\fR, \fBinfo\fR, \fBdebug\fR �Τ����줫) �ȡ� +�ǡ���������ޤ��� .PP .B log (\fIpriority\fB, \fIdata-expr\fB)\fR -.\" "\FB" ¤Ï "\fB" ¤¬Àµ¤·¤¤ +.\" "\FB" �� "\fB" �������� .\" horikawa@jp.FreeBSD.org 2002/04/29 .PP -¥í¥°Ê¸¤Ï¡¢Ã±°ì¤Î¥Ç¡¼¥¿¼°°ú¿ô¤Î¤ß¼è¤ê¤Þ¤¹¡£ -Ê£¿ô¤Î¥Ç¡¼¥¿Ãͤò½ÐÎϤ·¤¿¤¤¾ì¹ç¡¢ -\fBconcat\fR ¥ª¥Ú¥ì¡¼¥¿¤ò»ÈÍѤ·¤Æ¤½¤ì¤é¤òÏ¢·ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ +����ʸ�ϡ�ñ��Υǡ����������Τ߼��ޤ��� +ʣ���Υǡ����ͤ���Ϥ�������硢 +\fBconcat\fR ���ڥ졼������Ѥ��Ƥ�����Ϣ�뤹��ɬ�פ�����ޤ��� .RE -.SH »²¾È: ưŪ¤Ê DNS ¹¹¿· -.PP -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¤Ï¡¢ -ưŪ¤Ë¥É¥á¥¤¥ó¥Í¡¼¥à¥·¥¹¥Æ¥à¤ò¹¹¿·¤¹¤ëǽÎϤ¬¤¢¤ê¤Þ¤¹¡£ -ÀßÄê¥Õ¥¡¥¤¥ëÃæ¤Ë¡¢¤É¤Î¤è¤¦¤Ë¥É¥á¥¤¥ó¥Í¡¼¥à¥·¥¹¥Æ¥à¤ò¹¹¿·¤·¤ÆÍߤ·¤¤¤«¡¢ -ÄêµÁ²Äǽ¤Ç¤¹¡£ -¹¹¿·¤Ï RFC 2136 ¤Ë½¾¤Ã¤Æ¤¤¤ë¤¿¤á¡¢ -RFC 2136 ¤ò¥µ¥Ý¡¼¥È¤¹¤ë DNS ¥µ¡¼¥Ð¤Ï¡¢ -DHCP ¥µ¡¼¥Ð¤«¤é¤Î¹¹¿·¤ò¼õ¤±ÉÕ¤±²Äǽ¤È»×¤ï¤ì¤Þ¤¹¡£ -.SH ¥»¥­¥å¥ê¥Æ¥£ -TSIG ¤ª¤è¤Ó DNSSEC ¤Ï¤Þ¤À¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£ -DHCP ¥µ¡¼¥Ð¤Þ¤¿¤Ï¥¯¥é¥¤¥¢¥ó¥È¤«¤é¤Î¹¹¿·¤ò¼õ¤±ÉÕ¤±¤ë¤è¤¦¤Ë -DNS ¥µ¡¼¥Ð¤òÀßÄꤹ¤ë¾ì¹ç¡¢¸¢¸Â¤Î̵¤¤¹¹¿·¤ËÂФ·¤Æ -DNS ¥µ¡¼¥Ð¤ò»¯¤¹¤³¤È¤Ë¤Ê¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡£ -¤³¤ì¤òÈò¤±¤ë¤¿¤á¤Ëº£¤¹¤°¤Ç¤­¤ëºÇÎɤÎÊýË¡¤Ï¡¢ -IP ¥¢¥É¥ì¥¹¥Ù¡¼¥¹¤Î¥Ñ¥±¥Ã¥È¥Õ¥£¥ë¥¿¤ò»ÈÍѤ·¤Æ¡¢ -¸¢¸Â¤Î̵¤¤¥Û¥¹¥È¤«¤é¤Î¹¹¿·Í×µáȯ¹Ô¤òÍ޻ߤ¹¤ë¤³¤È¤Ç¤¹¡£ -ÌÀ¤é¤«¤Ë¡¢¸½¾õ¤Ç¤Ï¥¯¥é¥¤¥¢¥ó¥È¤Î¹¹¿·¤ËÂФ¹¤ë¥»¥­¥å¥ê¥Æ¥£¤òÄ󶡤¹¤ëÊýË¡¤Ï -¤¢¤ê¤Þ¤»¤ó¡£ -¤³¤Î¤¿¤á¤Ë¤Ï TSIG ¤« DNSSEC ¤¬É¬ÍפǤ¹¤¬¡¢ -¤³¤Î DHCP ÇÛÉÛʪ¤Ë¤Ï¤Þ¤À´Þ¤Þ¤ì¤Æ¤¤¤Þ¤»¤ó¡£ -.PP -ưŪ DNS (DDNS) ¹¹¿·¤Ï¡¢\fBdns-update\fR ¼°¤ò»ÈÍѤ¹¤ë¤³¤È¤Ç¼Â¹Ô¤µ¤ì¤Þ¤¹¡£ -\fBdns-update\fR ¼°¤Ï¡¢¥Ö¡¼¥ë¼°¤Ç¤¢¤ê¡¢4 ¸Ä¤Î¥Ñ¥é¥á¡¼¥¿¤ò¼è¤ê¤Þ¤¹¡£ -¹¹¿·¤ËÀ®¸ù¤¹¤ë¤È¡¢·ë²Ì¤Ï¿¿¤Ë¤Ê¤ê¤Þ¤¹¡£ -¼ºÇÔ¤¹¤ë¤È¡¢·ë²Ì¤Ïµ¶¤Ë¤Ê¤ê¤Þ¤¹¡£ -4 ¸Ä¤Î¥Ñ¥é¥á¡¼¥¿¤Ï¡¢¥ê¥½¡¼¥¹¥ì¥³¡¼¥É¥¿¥¤¥× (RR)¡¢ -RR ¤Îº¸ÊÕ¡¢RR ¤Î±¦ÊÕ¡¢¥ì¥³¡¼¥É¤ËŬÍѤµ¤ì¤ë¤Ù¤­ ttl ¤Ç¤¹¡£ -¤³¤Î´Ø¿ô¤ÎºÇ¤â´Êñ¤Ê»ÈÍÑÎã¤Ï¡¢dhcpd.conf ¥Õ¥¡¥¤¥ë¤Î»²¾ÈÀá¤Ë¤¢¤ê¡¢ -¤Ê¤Ë¤¬µ¯¤­¤ë¤«µ­½Ò¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ -¤³¤ÎÎã¤Ç¤Ï¡¢Ê£¿ô¤Î¼°¤¬»ÈÍѤµ¤ì¤Æ¡¢ -\fBdns-update\fR ÍѤΰú¿ô¤¬ºîÀ®¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ -.PP -Îã¤ÎÃæ¤Ç¤Ï¡¢ºÇ½é¤Î \fBdns-update\fR ¼°¤Ø¤Î 1 ÈÖÌܤΰú¿ô¤Ï¡¢ -A RR ¥¿¥¤¥×¤Ëɾ²Á¤µ¤ì¤ë¥Ç¡¼¥¿¼°¤Ç¤¹¡£ -2 ÈÖÌܤΰú¿ô¤Ï¡¢DHCP host-name ¥ª¥×¥·¥ç¥ó¤È -¥í¡¼¥«¥ë¥É¥á¥¤¥ó¡¢¤³¤Î¾ì¹ç "ssd.example.net"¡¢ -¤ò´Þ¤à¥Æ¥­¥¹¥È¥¹¥È¥ê¥ó¥°¤òÏ¢·ë¤¹¤ë¤³¤È¤Ç¡¢¹½ÃÛ¤µ¤ì¤Þ¤¹¡£ -3 ÈÖÌܤΰú¿ô¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ë³ä¤êÅö¤Æ¤é¤ì¤¿¥¢¥É¥ì¥¹¤ò¡¢ -32 ¥Ó¥Ã¥È¤Î¿ôÃͤ«¤é³Æ¥Ð¥¤¥È¤ò "." ¤Ç¶èÀڤä¿ ASCII ʸ»úÎó¤ËÊÑ´¹¤¹¤ë¤³¤È¤Ç¡¢ -¹½ÃÛ¤µ¤ì¤Þ¤¹¡£ -4 ÈÖÌܤΰú¿ô TTL ¤Ï¡¢¥ê¡¼¥¹¤Î»Ä¤ê»þ´Ö¤Ç¤¹ -(¤³¤ì¤ÏËÜÅö¤ÏÀµ¤·¤¯¤¢¤ê¤Þ¤»¤ó¡£ -¤Ê¤¼¤Ê¤é DNS ¥µ¡¼¥Ð¤Ï¡¢Í×µá¤ËÂФ·¤Æ¤¤¤Ä¤â¤³¤Î TTL Ãͤò½ÐÎϤ·¤Æ¤·¤Þ¤¦¤«¤é¤Ç¤¹¡£ -¤³¤ì¤Ï¡¢¥ê¡¼¥¹´ü¸ÂÀÚ¤ì¤Î¿ôÉÃÁ°¤Ç¤¢¤Ã¤Æ¤â¤Ç¤¹)¡£ -.PP -ºÇ½é¤Î \fBdns-update\fR ʸ¤¬À®¸ù¤¹¤ë¤È¡¢ -°ú¤­Â³¤¤¤Æ 2 ÈÖÌܤι¹¿·¤Ë¤è¤ê PTR RR ¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Þ¤¹¡£ -PTR ¥ì¥³¡¼¥É¤Î¥¤¥ó¥¹¥È¡¼¥ë¤Ï¡¢A RR ¤Î¥¤¥ó¥¹¥È¡¼¥ë¤ÈƱÍͤǤ¹¤¬¡¢ -¥ì¥³¡¼¥É¤Îº¸Êդϥ꡼¥¹¤µ¤ì¤¿¥¢¥É¥ì¥¹¤òµÕ¤Ë¤·¤Æ ".in-addr.arpa" ¤È -·ë¹ç¤µ¤ì¤¿¤â¤Î¤Ç¤¹¡£ -±¦Êդϡ¢¥¢¥É¥ì¥¹¤Î¥ê¡¼¥¹Äó¶¡À襯¥é¥¤¥¢¥ó¥È¤Î¡¢´°Á´¤Ê·Á¤Ç¤Î¥É¥á¥¤¥ó̾¤Ç¤¹¡£ -.SH ´ØÏ¢¹àÌÜ +.SH ����: ưŪ�� DNS ���� +.PP +DHCP ���饤����Ȥȥ����Фϡ� +ưŪ�˥ɥᥤ��͡��ॷ���ƥ�ò¹¹¿ï¿½ï¿½ï¿½ï¿½ï¿½Ç½ï¿½Ï¤ï¿½ï¿½ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +����ե�������ˡ��ɤΤ褦�˥ɥᥤ��͡��ॷ���ƥ�ò¹¹¿ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ß¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ +�����ǽ�Ǥ��� +������ RFC 2136 �˽��äƤ��뤿�ᡢ +RFC 2136 �ò¥µ¥Ý¡ï¿½ï¿½È¤ï¿½ï¿½ï¿½ DNS �����Фϡ� +DHCP �����Ф���ι���������դ���ǽ�Ȼפ��ޤ��� +.SH �������ƥ� +TSIG ����� DNSSEC �Ϥޤ����ݡ��Ȥ���Ƥ��ޤ��� +DHCP �����Фޤ��ϥ��饤����Ȥ���ι���������դ���褦�� +DNS �����Ф����ꤹ���硢���¤�̵���������Ф��� +DNS �����Фò»¯¤ï¿½ï¿½ï¿½ï¿½È¤Ë¤Ê¤ë¤«ï¿½â¤·ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +������ò¤±¤ë¤¿ï¿½ï¿½Ëºï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ç¤ï¿½ï¿½ï¿½ï¿½ï¿½É¤ï¿½ï¿½ï¿½Ë¡ï¿½Ï¡ï¿½ +IP ���ɥ쥹�١����Υѥ��åȥե��륿����Ѥ��ơ� +���¤�̵���ۥ��Ȥ���ι����׵�ȯ�Ԥ��޻ߤ��뤳�ȤǤ��� +���餫�ˡ������Ǥϥ��饤����Ȥι������Ф��륻�����ƥ����󶡤�����ˡ�� +����ޤ��� +���Τ���ˤ� TSIG �� DNSSEC ��ɬ�פǤ����� +���� DHCP ����ʪ�ˤϤޤ��ޤޤ�Ƥ��ޤ��� +.PP +ưŪ DNS (DDNS) �����ϡ�\fBdns-update\fR ������Ѥ��뤳�ȤǼ¹Ԥ���ޤ��� +\fBdns-update\fR ���ϡ��֡��뼰�Ǥ��ꡢ4 �ĤΥѥ�᡼������ޤ��� +��������������ȡ���̤Ͽ��ˤʤ�ޤ��� +���Ԥ���ȡ���̤ϵ��ˤʤ�ޤ��� +4 �ĤΥѥ�᡼���ϡ��꥽�����쥳���ɥ����� (RR)�� +RR �κ��ա�RR �α��ա��쥳���ɤ�Ŭ�Ѥ����٤� ttl �Ǥ��� +���δؿ��κǤ��ñ�ʻ�����ϡ�dhcpd.conf �ե�����λ�����ˤ��ꡢ +�ʤˤ������뤫���Ҥ���Ƥ��ޤ��� +������Ǥϡ�ʣ���μ������Ѥ���ơ� +\fBdns-update\fR �Ѥΰ�������������Ƥ��ޤ��� +.PP +�����Ǥϡ��ǽ�� \fBdns-update\fR ���ؤ� 1 ���ܤΰ����ϡ� +A RR �����פ�ɾ�������ǡ������Ǥ��� +2 ���ܤΰ����ϡ�DHCP host-name ���ץ����� +��������ɥᥤ�󡢤��ξ�� "ssd.example.net"�� +��ޤ�ƥ����ȥ��ȥ�󥰤�Ϣ�뤹�뤳�Ȥǡ����ۤ���ޤ��� +3 ���ܤΰ����ϡ����饤����Ȥ˳�����Ƥ�줿���ɥ쥹�� +32 �ӥåȤο��ͤ���ƥХ��Ȥ� "." �Ƕ��ڤä� ASCII ʸ������Ѵ����뤳�Ȥǡ� +���ۤ���ޤ��� +4 ���ܤΰ��� TTL �ϡ��꡼���λĤ���֤Ǥ� +(���������������������ޤ��� +�ʤ��ʤ� DNS �����Фϡ��׵���Ф��Ƥ��Ĥ⤳�� TTL �ͤ���Ϥ��Ƥ��ޤ�����Ǥ��� +����ϡ��꡼�������ڤ�ο������Ǥ��äƤ�Ǥ�)�� +.PP +�ǽ�� \fBdns-update\fR ʸ����������ȡ� +����³���� 2 ���ܤι����ˤ�� PTR RR �����󥹥ȡ��뤵��ޤ��� +PTR �쥳���ɤΥ��󥹥ȡ���ϡ�A RR �Υ��󥹥ȡ����Ʊ�ͤǤ����� +�쥳���ɤκ��դϥ꡼�����줿���ɥ쥹��դˤ��� ".in-addr.arpa" �� +��礵�줿��ΤǤ��� +���դϡ����ɥ쥹�Υ꡼�����襯�饤����ȤΡ������ʷ��ǤΥɥᥤ��̾�Ǥ��� +.SH ��Ϣ���� dhcpd.conf(5), dhcpd.leases(5), dhclient.conf(5), dhcp-eval(5), dhcpd(8), dhclient(8), RFC2132, RFC2131 -.SH ºî¼Ô +.SH ��� Internet Systems Consortium DHCP Distribution -¤Ï¡¢Vixie Labs ¤È¤Î·ÀÌó¤Î¤â¤È¤Ç¡¢Ted Lemon ¤¬µ­½Ò¤·¤Þ¤·¤¿¡£ -ËÜ¥×¥í¥¸¥§¥¯¥È¤Î»ñ¶â¤Ï¡¢Internet Systems Consortium ¤¬Ä󶡤·¤Þ¤·¤¿¡£ -Internet Systems Consortium ¤Ë´Ø¤¹¤ë¾ðÊó¤Ï¡¢ +�ϡ�Vixie Labs �Ȥη���Τ�Ȥǡ�Ted Lemon �����Ҥ��ޤ����� +�ܥץ��������Ȥλ��ϡ�Internet Systems Consortium ���󶡤��ޤ����� +Internet Systems Consortium �˴ؤ������ϡ� .B https://www.isc.org -¤Ë¤¢¤ê¤Þ¤¹¡£ +�ˤ���ޤ��� diff --git a/doc/ja_JP.eucJP/dhcp-options.5 b/doc/ja_JP.eucJP/dhcp-options.5 index 5dcaa2d9..ecdadc74 100644 --- a/doc/ja_JP.eucJP/dhcp-options.5 +++ b/doc/ja_JP.eucJP/dhcp-options.5 @@ -16,221 +16,221 @@ .\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" Internet Systems Consortium, Inc. -.\" 950 Charter Street -.\" Redwood City, CA 94063 +.\" PO Box 360 +.\" Newmarket, NH 03857 USA .\" .\" https://www.isc.org/ .\" .\" %FreeBSD: src/contrib/isc-dhcp/common/dhcp-options.5,v 1.2.2.1 2002/04/11 10:16:46 murray Exp % .\" $FreeBSD: doc/ja_JP.eucJP/man/man5/dhcp-options.5,v 1.11 2002/05/21 03:51:52 horikawa Exp $ -.\" WORD: Dynamic Host Configuration Protocol ưŪ¥Û¥¹¥È¹½À®¥×¥í¥È¥³¥ë -.\" WORD: Path MTU Discovery ¥Ñ¥¹ MTU õº÷ -.\" WORD: Router Discovery ¥ë¡¼¥¿Ãµº÷ -.\" WORD: Router Solicitation ¥ë¡¼¥¿Í×ÀÁ -.\" WORD: Mask Discovery ¥Þ¥¹¥¯Ãµº÷ +.\" WORD: Dynamic Host Configuration Protocol ưŪ�ۥ��ȹ����ץ��ȥ��� +.\" WORD: Path MTU Discovery �ѥ� MTU õ�� +.\" WORD: Router Discovery �롼��õ�� +.\" WORD: Router Solicitation �롼������ +.\" WORD: Mask Discovery �ޥ���õ�� .\" .TH dhcp-options 5 -.SH ̾¾Î -dhcp-options - ưŪ¥Û¥¹¥È¹½À®¥×¥í¥È¥³¥ë¤Î¥ª¥×¥·¥ç¥ó -.SH ²òÀâ -ưŪ¥Û¥¹¥È¹½À®¥×¥í¥È¥³¥ë (DHCP: Dynamic Host Configuration Protocol) ¤ò -»ÈÍѤ¹¤ë¤³¤È¤Ë¤è¤ê¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ï DHCP ¥µ¡¼¥Ð¤«¤é¡¢¥Í¥Ã¥È¥ï¡¼¥¯ÀßÄê¤ä -¥Í¥Ã¥È¥ï¡¼¥¯¾å¤ÇÍøÍѲÄǽ¤ÊÍÍ¡¹¤Ê¥µ¡¼¥Ó¥¹¤Ë¤Ä¤¤¤Æµ­½Ò¤·¤Æ¤¤¤ë -.B ¥ª¥×¥·¥ç¥ó -¤ò¼õ¤±¼è¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ +.SH ̾�� +dhcp-options - ưŪ�ۥ��ȹ����ץ��ȥ���Υ��ץ���� +.SH ���� +ưŪ�ۥ��ȹ����ץ��ȥ��� (DHCP: Dynamic Host Configuration Protocol) �� +���Ѥ��뤳�Ȥˤ�ꡢ���饤����Ȥ� DHCP �����Ф��顢�ͥåȥ������� +�ͥåȥ��������Ѳ�ǽ���͡��ʥ����ӥ��ˤĤ��Ƶ��Ҥ��Ƥ��� +.B ���ץ���� +�������뤳�Ȥ��Ǥ��ޤ��� .B dhcpd(8) -¤ä +�� .B dhclient(8) -¤òÀßÄꤹ¤ë¤È¤­¤Ë¡¢¤·¤Ð¤·¤Ð¥ª¥×¥·¥ç¥ó¤òÀë¸À¤¹¤ëɬÍפ¬¤¢¤ë¤Ç¤·¤ç¤¦¡£ -¤³¤³¤Ç¤Ï¡¢¥ª¥×¥·¥ç¥ó¤òÀë¸À¤¹¤ëʸˡ¡¢ -¤½¤·¤ÆÀë¸À²Äǽ¤Ê¥ª¥×¥·¥ç¥ó¤Î̾Á°¤È½ñ¼°¤òʸ½ñ²½¤·¤Æ¤¤¤Þ¤¹¡£ -.SH ¥ê¥Õ¥¡¥ì¥ó¥¹: ¥ª¥×¥·¥ç¥óʸ +�����ꤹ��Ȥ��ˡ����Ф��Х��ץ������������ɬ�פ�����Ǥ��礦�� +�����Ǥϡ����ץ������������ʸˡ�� +�����������ǽ�ʥ��ץ�����̾���Ƚñ¼°¤ï¿½Ê¸ï¿½ñ²½¤ï¿½ï¿½Æ¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +.SH ��ե����: ���ץ����ʸ .PP -DHCP \fIoption\fR ʸ¤Ï¡¢¾ï¤Ë¥­¡¼¥ï¡¼¥É \fIoption\fR ¤Ç³«»Ï¤·¡¢ -ñ°ì¤Î¥ª¥×¥·¥ç¥ó̾¤¬Â³¤­¡¢¥ª¥×¥·¥ç¥ó¥Ç¡¼¥¿¤¬Â³¤­¤Þ¤¹¡£ -¥ª¥×¥·¥ç¥ó¤Î̾Á°¤È¥Ç¡¼¥¿¤Î½ñ¼°¤Ï¸å½Ò¤·¤Þ¤¹¡£ -¤¹¤Ù¤Æ¤Î DHCP ¥ª¥×¥·¥ç¥ó¤òÌÖÍåŪ¤Ë»ØÄꤹ¤ëɬÍפϤʤ¯¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤ËɬÍפʥª¥×¥·¥ç¥ó¤Î¤ß¤ò»ØÄꤷ¤Þ¤¹¡£ +DHCP \fIoption\fR ʸ�ϡ���˥������ \fIoption\fR �dz��Ϥ��� +ñ��Υ��ץ����̾��³�������ץ����ǡ�����³���ޤ��� +���ץ�����̾���ȥǡ����νñ¼°¤Ï¸ï¿½Ò¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +���٤Ƥ� DHCP ���ץ���������Ū�˻��ꤹ��ɬ�פϤʤ��� +���饤����Ȥ�ɬ�פʥ��ץ����Τߤ���ꤷ�ޤ��� .PP -¥ª¥×¥·¥ç¥ó¥Ç¡¼¥¿¤Ë¤Ï¡¢¼¡¤Î¤è¤¦¤ËÍÍ¡¹¤Ê½ñ¼°¤¬¤¢¤ê¤Þ¤¹: +���ץ����ǡ����ˤϡ����Τ褦���͡��ʽñ¼°¤ï¿½ï¿½ï¿½ï¿½ï¿½Þ¤ï¿½: .PP .B ip-address -¥Ç¡¼¥¿¥¿¥¤¥×¤Ï¡¢ÌÀ¼¨Åª¤Ê IP ¥¢¥É¥ì¥¹ (Î㤨¤Ð 239.254.197.10) ¤Þ¤¿¤Ï -¥É¥á¥¤¥ó̾ (Î㤨¤Ð haagen.isc.org) ¤Î¤É¤Á¤é¤Ç¤â»ØÄê²Äǽ¤Ç¤¹¡£ -¥É¥á¥¤¥ó̾¤Ç»ØÄꤹ¤ë¾ì¹ç¡¢ -¤½¤Î¥É¥á¥¤¥ó̾¤ò²ò·è¤¹¤ë¤Èñ°ì¤Î IP ¥¢¥É¥ì¥¹¤Ë¤Ê¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£ +�ǡ��������פϡ�����Ū�� IP ���ɥ쥹 (�㤨�� 239.254.197.10) �ޤ��� +�ɥᥤ��̾ (�㤨�� haagen.isc.org) �Τɤ���Ǥ�����ǽ�Ǥ��� +�ɥᥤ��̾�ǻ��ꤹ���硢 +���Υɥᥤ��̾���褹���ñ��� IP ���ɥ쥹�ˤʤ�褦�ˤ��Ƥ��������� .PP .B int32 -¥Ç¡¼¥¿¥¿¥¤¥×¤ÏÉä¹æÉÕ¤­ 32 ¥Ó¥Ã¥ÈÀ°¿ô¤ò»ØÄꤷ¤Þ¤¹¡£ +�ǡ��������פ�����դ� 32 �ӥå���������ꤷ�ޤ��� .B uint32 -¥Ç¡¼¥¿¥¿¥¤¥×¤ÏÉä¹æ̵¤· 32 ¥Ó¥Ã¥ÈÀ°¿ô¤ò»ØÄꤷ¤Þ¤¹¡£ +�ǡ��������פ����̵�� 32 �ӥå���������ꤷ�ޤ��� .B int16 -¤ª¤è¤Ó +����� .B uint16 -¤Î¥Ç¡¼¥¿¥¿¥¤¥×¤Ï¡¢Éä¹æÉÕ¤­¤ª¤è¤ÓÉä¹æ̵¤·¤Î 16 ¥Ó¥Ã¥ÈÀ°¿ô¤ò»ØÄꤷ¤Þ¤¹¡£ +�Υǡ��������פϡ�����դ���������̵���� 16 �ӥå���������ꤷ�ޤ��� .B int8 -¤ª¤è¤Ó +����� .B uint8 -¤Î¥Ç¡¼¥¿¥¿¥¤¥×¤Ï¡¢Éä¹æÉÕ¤­¤ª¤è¤ÓÉä¹æ̵¤·¤Î 8 ¥Ó¥Ã¥ÈÀ°¿ô¤ò»ØÄꤷ¤Þ¤¹¡£ -Éä¹æ̵¤· 8 ¥Ó¥Ã¥ÈÀ°¿ô¤Ï¡¢¥ª¥¯¥Æ¥Ã¥È¤È¸Æ¤Ð¤ì¤ë¤³¤È¤â¤¢¤ê¤Þ¤¹¡£ +�Υǡ��������פϡ�����դ���������̵���� 8 �ӥå���������ꤷ�ޤ��� +���̵�� 8 �ӥå������ϡ������ƥåȤȸƤФ�뤳�Ȥ⤢��ޤ��� .PP .B text -¥Ç¡¼¥¿¥¿¥¤¥×¤Ï NVT ASCII ʸ»úÎó¤ò»ØÄꤷ¤Þ¤¹¡£ -ʸ»úÎó¤Ï¥À¥Ö¥ë¥¯¥©¡¼¥È¤Ç³ç¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ -Î㤨¤Ð root-path ¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ëʸˡ¤Ï¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£ +�ǡ��������פ� NVT ASCII ʸ�������ꤷ�ޤ��� +ʸ����ϥ��֥륯�����Ȥdz��ɬ�פ�����ޤ��� +�㤨�� root-path ���ץ�������ꤹ��ʸˡ�ϡ����Τ褦�ˤʤ�ޤ��� .nf .sp 1 option root-path "10.0.1.4:/var/tmp/rootfs"; .fi .PP .B domain-name -¥Ç¡¼¥¿¥¿¥¤¥×¤Ï¥É¥á¥¤¥ó̾¤ò»ØÄꤷ¤Þ¤¹¡£ -ʸ»úÎó¤ò¥À¥Ö¥ë¥¯¥©¡¼¥È¤Ç³ç¤Ã¤Æ¤¤¤±¤Þ¤»¤ó¡£ -¤³¤Î¥Ç¡¼¥¿¥¿¥¤¥×¤Ï¡¢Â¾¤Î´û¸¤Î DHCP ¥ª¥×¥·¥ç¥ó¤Ë¤Ï»È¤ï¤ì¤Þ¤»¤ó¡£ -¥É¥á¥¤¥ó̾¤Ï¡¢text ¥ª¥×¥·¥ç¥ó¤Ç¤¢¤ë¤«¤Î¤è¤¦¤ËÊÝ»ý¤µ¤ì¤Þ¤¹¡£ -.\" text ¥Ç¡¼¥¿¥¿¥¤¥×¤Ç¤¢¤ë¤«¤Î¤è¤¦¤Ë? +�ǡ��������פϥɥᥤ��̾����ꤷ�ޤ��� +ʸ�������֥륯�����Ȥdz�äƤ����ޤ��� +���Υǡ��������פϡ�¾�δ�¸�� DHCP ���ץ����ˤϻȤ��ޤ��� +�ɥᥤ��̾�ϡ�text ���ץ����Ǥ��뤫�Τ褦���ݻ�����ޤ��� +.\" text �ǡ��������פǤ��뤫�Τ褦��? .\" metal .PP .B flag -¥Ç¡¼¥¿¥¿¥¤¥×¤Ï¥Ö¡¼¥ëÃͤò»ØÄꤷ¤Þ¤¹¡£ -¥Ö¡¼¥ëÃÍ¤Ï true ¤Þ¤¿¤Ï false ¤Î¤¤¤º¤ì¤«¤Ç¤¹ -(¤â¤·¤¯¤Ï¡¢on ¤Þ¤¿¤Ï off ¤ÎÊý¤¬Ê¬¤«¤ê¤ä¤¹¤±¤ì¤Ð¡¢¤³¤Á¤é¤Ç¤â¤«¤Þ¤¤¤Þ¤»¤ó)¡£ +�ǡ��������פϥ֡����ͤ���ꤷ�ޤ��� +�֡����ͤ� true �ޤ��� false �Τ����줫�Ǥ� +(�⤷���ϡ�on �ޤ��� off ������ʬ����䤹����С�������Ǥ⤫�ޤ��ޤ���)�� .PP .B string -¥Ç¡¼¥¿¥¿¥¤¥×¤Ï¡¢¥À¥Ö¥ë¥¯¥©¡¼¥È¤Ç³ç¤é¤ì¤ë NVT ASCII ʸ»úÎ󤫡¢ -¥³¥í¥ó¶èÀÚ¤ê¤Î 16 ¿Ê¿ô¤Ç»ØÄꤵ¤ì¤ë¥ª¥¯¥Æ¥Ã¥È¤ÎϢ³¤Î¤¤¤º¤ì¤«¤ò»ØÄꤷ¤Þ¤¹¡£ -Î㤨¤Ð¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹: +�ǡ��������פϡ����֥륯�����Ȥdz���� NVT ASCII ʸ���󤫡� +��������ڤ�� 16 �ʿ��ǻ��ꤵ��륪���ƥåȤ�Ϣ³�Τ����줫����ꤷ�ޤ��� +�㤨�м��Τ褦�ˤʤ�ޤ�: .nf .sp 1 option dhcp-client-identifier "CLIENT-FOO"; -¤â¤·¤¯¤Ï +�⤷���� option dhcp-client-identifier 43:4c:49:45:54:2d:46:4f:4f; .fi -.SH ¼°¤òÍѤ¤¤¿¥ª¥×¥·¥ç¥óÃͤÎÀßÄê +.SH �����Ѥ������ץ�����ͤ����� .\" metal -¥¯¥é¥¤¥¢¥ó¥È¤¬Á÷½Ð¤¹¤ë¤¤¤¯¤Ä¤«¤ÎÃͤò¡¢DHCP ¥ª¥×¥·¥ç¥ó¤ÎÃͤòÀßÄꤹ¤ë¤Î¤Ë -»È¤¨¤ë¤ÈÊØÍø¤Ê¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£ -¤³¤ì¤ò¤¹¤ë¤Ë¤Ï¼°¤Îɾ²Á¤¬ÍøÍѤǤ­¤Þ¤¹¡£ +���饤����Ȥ����Ф��뤤���Ĥ����ͤ�DHCP ���ץ������ͤ����ꤹ��Τ� +�Ȥ���������ʤ��Ȥ�����ޤ��� +����ò¤¹¤ï¿½Ë¤Ï¼ï¿½ï¿½ï¿½É¾ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ñ¤Ç¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ .B dhcp-eval(5) -¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤Ë¼°¤Î½ñ¤­Êý¤¬½Ò¤Ù¤é¤ì¤Æ¤¤¤Þ¤¹¡£ -ɾ²Á¤Î·ë²Ì¤ò¥ª¥×¥·¥ç¥ó¤ËÂåÆþ¤¹¤ë¤Ë¤Ï¡¢¥ª¥×¥·¥ç¥ó¤ò¼¡¤Î¤è¤¦¤ËÄêµÁ¤·¤Þ¤¹: +�ޥ˥奢��ڡ����˼��ν������Ҥ٤��Ƥ��ޤ��� +ɾ���η�̤ò¥ª¥×¥ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ë¤Ï¡ï¿½ï¿½ï¿½ï¿½×¥ï¿½ï¿½ï¿½ï¿½ò¼¡¤Î¤è¤¦ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Þ¤ï¿½: .nf .sp 1 \fBoption \fImy-option \fB= \fIexpression \fB;\fR .fi .PP -Î㤨¤Ð¼¡¤Î¤è¤¦¤Ë¤·¤Þ¤¹: +�㤨�м��Τ褦�ˤ��ޤ�: .nf .sp 1 option hostname = binary-to-ascii (16, 8, "-", substring (hardware, 1, 6)); .fi -.SH ɸ½à DHCP ¥ª¥×¥·¥ç¥ó -¼¡¤Ë¼¨¤¹ÍÍ¡¹¤Ê¥ª¥×¥·¥ç¥ó¤Ë´Ø¤¹¤ëµ­½Ò¤Ï¡¢ -DHCP ¥ª¥×¥·¥ç¥ó¤Ë´Ø¤¹¤ëºÇ¿·¤Î IETF ¥É¥é¥Õ¥Èʸ½ñ¤«¤é¤Î¤â¤Î¤Ç¤¹¡£ -̾Á°¤¬·ÇºÜ¤µ¤ì¤Æ¤¤¤Ê¤¤¥ª¥×¥·¥ç¥ó¤Ï¡¢¤Þ¤À¼ÂÁõ¤µ¤ì¤Æ¤¤¤Ê¤¤¤«¤â¤·¤ì¤Þ¤»¤ó¤¬¡¢ -ÀßÄê¥Õ¥¡¥¤¥ë¤ËÄêµÁ¤¹¤ë¤³¤È¤Ç¡¢¤½¤Î¤è¤¦¤Ê¥ª¥×¥·¥ç¥ó¤ò»È¤¨¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡£ -¾Ü¤·¤¯¤Ï¡¢¤³¤ÎÀè¤Î¡Ö¿·µ¬¥ª¥×¥·¥ç¥ó¤ÎÄêµÁ¡×¤«¤é³¤¯µ­½Ò¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ -.PP -¤³¤³¤Ëµ­½Ò¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥ó¤Î¤¦¤Á¤Î¤¤¤¯¤Ä¤«¤Ï¡¢DHCP ¥µ¡¼¥Ð¤â¤·¤¯¤Ï -¥¯¥é¥¤¥¢¥ó¥È¤Ë¤è¤Ã¤Æ¼«Æ°Åª¤ËÀ¸À®¤µ¤ì¤ë¤â¤Î¤Ç¡¢¥æ¡¼¥¶¤Ë¤ÏÀßÄê¤Ç¤­¤Þ¤»¤ó¡£ -¤½¤Î¤è¤¦¤Ê¥ª¥×¥·¥ç¥ó¤ÎÃͤϡ¢¼õ¿®Â¦¤Î DHCP ¥×¥í¥È¥³¥ë¥¨¡¼¥¸¥§¥ó¥È -(¥µ¡¼¥Ð¤â¤·¤¯¤Ï¥¯¥é¥¤¥¢¥ó¥È) ¤ÎÀßÄê¥Õ¥¡¥¤¥ëÃæ¤Î¡¢Î㤨¤Ð¾ò·ï¼°¤Ê¤É¤Ç -»È¤ï¤ì¤Þ¤¹¡£ -¤·¤«¤·¤³¤Î¥ª¥×¥·¥ç¥ó¤ÎÃͤϡ¢Á÷¿®Â¦¤Î¥¨¡¼¥¸¥§¥ó¥È¤ÎÀßÄê¥Õ¥¡¥¤¥ëÃæ¤Ç¤Ï -»È¤ï¤ì¤ë¤³¤È¤Ï¤¢¤ê¤Þ¤»¤ó¡£ -¤È¤¤¤¦¤Î¤â¡¢¤½¤ÎÃͤϡ¢ÀßÄê¥Õ¥¡¥¤¥ë¤¬½èÍý¤µ¤ì¤¿¸å¤Ë·èÄꤵ¤ì¤ë¤«¤é¤Ç¤¹¡£ -°Ê¹ß¤Îµ­½Ò¤Ë¤ª¤¤¤Æ¡¢¤½¤Î¤è¤¦¤Ê¥ª¥×¥·¥ç¥ó¤Ë¤Ï -¡Ö¥æ¡¼¥¶¤¬ÀßÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡×¤Èµ­¤µ¤ì¤Þ¤¹¡£ -.PP -ɸ½à¥ª¥×¥·¥ç¥ó¤ò¼¨¤·¤Þ¤¹: +.SH ɸ�� DHCP ���ץ���� +���˼����͡��ʥ��ץ����˴ؤ��뵭�Ҥϡ� +DHCP ���ץ����˴ؤ���ǿ��� IETF �ɥ�ե�ʸ�ñ¤«¤ï¿½Î¤ï¿½Î¤Ç¤ï¿½ï¿½ï¿½ +̾�����Ǻܤ���Ƥ��ʤ����ץ����ϡ��ޤ���������Ƥ��ʤ����⤷��ޤ��󤬡� +����ե������������뤳�Ȥǡ����Τ褦�ʥ��ץ�����Ȥ��뤫�⤷��ޤ��� +�ܤ����ϡ�������Ρֿ������ץ���������פ���³�����Ҥò»²¾È¤ï¿½ï¿½Æ¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ +.PP +�����˵��Ҥ���Ƥ��륪�ץ����Τ����Τ����Ĥ��ϡ�DHCP �����Ф⤷���� +���饤����Ȥˤ�äƼ�ưŪ������������Τǡ��桼���ˤ�����Ǥ��ޤ��� +���Τ褦�ʥ��ץ������ͤϡ�����¦�� DHCP �ץ��ȥ��륨��������� +(�����Ф⤷���ϥ��饤�����) ������ե�������Ρ��㤨�о�P�ʤɤ� +�Ȥ��ޤ��� +���������Υ��ץ������ͤϡ�����¦�Υ���������Ȥ�����ե�������Ǥ� +�Ȥ��뤳�ȤϤ���ޤ��� +�Ȥ����Τ⡢�����ͤϡ�����ե����뤬�������줿��˷��ꤵ��뤫��Ǥ��� +�ʹߤε��Ҥˤ����ơ����Τ褦�ʥ��ץ����ˤ� +�֥桼�������ꤹ�뤳�ȤϤǤ��ޤ���פȵ�����ޤ��� +.PP +ɸ�४�ץ����ò¼¨¤ï¿½ï¿½Þ¤ï¿½: .PP .B option \fBall-subnets-local\fR \fIflag\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬Àܳ¤µ¤ì¤Æ¤¤¤ë IP ¥Í¥Ã¥È¥ï¡¼¥¯¤ÎÁ´¥µ¥Ö¥Í¥Ã¥È¤¬ -»ÈÍѤ¹¤ë MTU ¤¬¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬Ä¾ÀÜÀܳ¤µ¤ì¤Æ¤¤¤ë¥µ¥Ö¥Í¥Ã¥È¤Î MTU ¤È -Ʊ¤¸¤Ç¤¢¤ë¤È¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬²¾Äꤷ¤Æ¤è¤¤¤«¤ò»ØÄꤷ¤Þ¤¹¡£ -ÃÍ true ¤Ï¡¢Á´¥µ¥Ö¥Í¥Ã¥È¤ÏƱ°ì¤Î MTU ¤Ç¤¢¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£ -ÃÍ false ¤Ï¡¢Ä¾ÀÜÀܳ¤µ¤ì¤Æ¤¤¤ë¥Í¥Ã¥È¥ï¡¼¥¯¤Î¥µ¥Ö¥Í¥Ã¥È¤Ë¤Ï¡¢¤è¤ê¾®¤µ¤Ê MTU ¤ò -»ý¤Ä¤â¤Î¤¬¤¢¤ë¤È¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬²¾Äꤹ¤Ù¤­¤Ç¤¢¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£ +�ܥ��ץ����ϡ����饤����Ȥ���³����Ƥ��� IP �ͥåȥ���������֥ͥåȤ� +���Ѥ��� MTU �������饤����Ȥ�ľ����³����Ƥ��륵�֥ͥåȤ� MTU �� +Ʊ���Ǥ���ȡ����饤����Ȥ����ꤷ�Ƥ褤������ꤷ�ޤ��� +�� true �ϡ������֥ͥåȤ�Ʊ��� MTU �Ǥ��뤳�Ȥ��̣���ޤ��� +�� false �ϡ�ľ����³����Ƥ���ͥåȥ���Υ��֥ͥåȤˤϡ���꾮���� MTU �� +���Ĥ�Τ�����ȡ����饤����Ȥ����ꤹ�٤��Ǥ��뤳�Ȥ��̣���ޤ��� .RE .PP .B option \fBarp-cache-timeout\fR \fIuint32\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢ARP ¥­¥ã¥Ã¥·¥å¥¨¥ó¥È¥ê¤Î¥¿¥¤¥à¥¢¥¦¥È¤òÉÿô¤Ç»ØÄꤷ¤Þ¤¹¡£ +�ܥ��ץ����ϡ�ARP ����å��奨��ȥ�Υ����ॢ���Ȥ��ÿ��ǻ��ꤷ�ޤ��� .RE .PP .B option \fBbootfile-name\fR \fItext\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢µ¯Æ°¥Õ¥¡¥¤¥ë¤ò»ØÄꤹ¤ë¤¿¤á¤Ë»ÈÍѤ·¤Þ¤¹¡£ -¥¯¥é¥¤¥¢¥ó¥È¤Ë¤è¤Ã¤Æ¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢ -¤³¤ì¤Ï \fBfilename\fR Àë¸À¤ÈƱ¤¸¸ú²Ì¤ò»ý¤Á¤Þ¤¹¡£ -BOOTP ¥¯¥é¥¤¥¢¥ó¥È¤Ç¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë¤â¤Î¤Ï¾¯¤Ê¤¤¤Ç¤·¤ç¤¦¡£ -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ë¤è¤Ã¤Æ¤Ï¥µ¥Ý¡¼¥È¤¹¤ë¤â¤Î¤¬¤¢¤ê¡¢ -¼ÂºÝɬ¿Ü¤È¤·¤Æ¤¤¤ë¤â¤Î¤¬¤¢¤ê¤Þ¤¹¡£ +�ܥ��ץ����ϡ���ư�ե��������ꤹ�뤿��˻��Ѥ��ޤ��� +���饤����Ȥˤ�äƥ��ݡ��Ȥ���Ƥ����硢 +����� \fBfilename\fR �����Ʊ�����̤�����ޤ��� +BOOTP ���饤����Ȥǡ����Υ��ץ����ò¥µ¥Ý¡ï¿½ï¿½È¤ï¿½ï¿½Æ¤ï¿½ï¿½ï¿½ï¿½Î¤Ï¾ï¿½ï¿½Ê¤ï¿½ï¿½Ç¤ï¿½ï¿½ç¤¦ï¿½ï¿½ +DHCP ���饤����Ȥˤ�äƤϥ��ݡ��Ȥ����Τ����ꡢ +�º�ɬ�ܤȤ��Ƥ����Τ�����ޤ��� .RE .PP .B option \fBboot-size\fR \fIuint16\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥ÈÍѤΥǥե©¥ë¥È¤Î¥Ö¡¼¥È¥¤¥á¡¼¥¸¤ÎŤµ¤ò¡¢ -512 ¥ª¥¯¥Æ¥Ã¥È¥Ö¥í¥Ã¥¯¿ô¤Ç»ØÄꤷ¤Þ¤¹¡£ +�ܥ��ץ����ϡ����饤������ѤΥǥե���ȤΥ֡��ȥ��᡼����Ĺ���� +512 �����ƥåȥ֥��å����ǻ��ꤷ�ޤ��� .RE .PP .B option \fBbroadcast-address\fR \fIip-address\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤Î¥µ¥Ö¥Í¥Ã¥È¤Ç»ÈÍѤµ¤ì¤Æ¤¤¤ë -¥Ö¥í¡¼¥É¥­¥ã¥¹¥È¥¢¥É¥ì¥¹¤ò»ØÄꤷ¤Þ¤¹¡£ -ÀµÅö¤Ê¥Ö¥í¡¼¥É¥­¥ã¥¹¥È¥¢¥É¥ì¥¹¤ÎÃͤϡ¢STD 3 (RFC1122) ¤Î 3.2.1.3 Àá¤Ë -µ¬Äꤵ¤ì¤Æ¤¤¤Þ¤¹¡£ +�ܥ��ץ����ϡ����饤����ȤΥ��֥ͥåȤǻ��Ѥ���Ƥ��� +�֥����ɥ��㥹�ȥ��ɥ쥹����ꤷ�ޤ��� +�����ʥ֥����ɥ��㥹�ȥ��ɥ쥹���ͤϡ�STD 3 (RFC1122) �� 3.2.1.3 ��� +���ꤵ��Ƥ��ޤ��� .RE .PP .B option \fBcookie-servers\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -¥¯¥Ã¥­¡¼¥µ¡¼¥Ð¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê -RFC 865 ¥¯¥Ã¥­¡¼¥µ¡¼¥Ð¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +���å��������Х��ץ����ϡ����饤����Ȥ����Ѳ�ǽ�� +RFC 865 ���å��������ФΥꥹ�Ȥ���ꤷ�ޤ��� +�����Фϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .B option \fBdefault-ip-ttl\fR \fIuint8;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¥Ç¡¼¥¿¥°¥é¥à¤òÁ÷½Ð¤¹¤ë¤È¤­¤Ë»ÈÍѤ¹¤Ù¤­¡¢ -¥Ç¥Õ¥©¥ë¥È¤ÎÀ¸Â¸»þ´Ö (TTL) ¤ò»ØÄꤷ¤Þ¤¹¡£ +�ܥ��ץ����ϡ����饤����Ȥ��ǡ������������Ф���Ȥ��˻��Ѥ��٤��� +�ǥե���Ȥ���¸���� (TTL) ����ꤷ�ޤ��� .RE .PP .B option \fBdefault-tcp-ttl\fR \fIuint8\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ TCP ¥»¥°¥á¥ó¥È¤òÁ÷½Ð¤¹¤ë¤È¤­¤Ë»ÈÍѤ¹¤Ù¤­¡¢ -¥Ç¥Õ¥©¥ë¥È¤Î TTL ¤ò»ØÄꤷ¤Þ¤¹¡£ -ºÇ¾®ÃÍ¤Ï 1 ¤Ç¤¹¡£ +�ܥ��ץ����ϡ����饤����Ȥ� TCP �������Ȥ����Ф���Ȥ��˻��Ѥ��٤��� +�ǥե���Ȥ� TTL ����ꤷ�ޤ��� +�Ǿ��ͤ� 1 �Ǥ��� .RE .PP .B option \fBdhcp-client-identifier\fR \fIstring\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤ò»È¤Ã¤Æ¡¢¥Û¥¹¥ÈÀë¸ÀÃæ¤Ç DHCP ¥¯¥é¥¤¥¢¥ó¥È¼±Ê̻Ҥò -»ØÄꤹ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ -¤³¤Î¥¯¥é¥¤¥¢¥ó¥È¼±Ê̻ҤǾȹç¤ò¹Ô¤¦¤³¤È¤Ç¡¢ -dhcpd ¤Ï¤½¤Î¥Û¥¹¥È¤Î¥ì¥³¡¼¥É¤òȯ¸«¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ +�ܥ��ץ�����Ȥäơ��ۥ��������� DHCP ���饤����ȼ��̻Ҥ� +���ꤹ�뤳�Ȥ��Ǥ��ޤ��� +���Υ��饤����ȼ��̻ҤǾȹ��Ԥ����Ȥǡ� +dhcpd �Ϥ��Υۥ��ȤΥ쥳���ɤ�ȯ�����뤳�Ȥ��Ǥ��ޤ��� .PP .\" metal -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤ÎÃæ¤Ë¤Ï¡¢ASCII ¥Æ¥­¥¹¥È¤Ë¤è¤Ã¤Æ¥¯¥é¥¤¥¢¥ó¥È¼±Ê̻Ҥ¬ -ÀßÄꤵ¤ì¤¿¾ì¹ç¡¢¤½¤Î ASCII ¥Æ¥­¥¹¥È¤ÎÀèƬ¤Ë 0 ¤ò¤Ä¤±¤ë¤â¤Î¤¬¤¢¤ë¤³¤È¤Ë -Ãí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£ -¤½¤Î¾ì¹ç¡¢ +DHCP ���饤����Ȥ���ˤϡ�ASCII �ƥ����Ȥˤ�äƥ��饤����ȼ��̻Ҥ� +���ꤵ�줿��硢���� ASCII �ƥ����Ȥ���Ƭ�� 0 ��Ĥ����Τ����뤳�Ȥ� +���դ��Ƥ��������� +���ξ�硢 .nf option dhcp-client-identifier "foo"; -¤Ç¤Ï¤Ê¤¯¡¢°Ê²¼¤Î¤è¤¦¤Ëµ­½Ò¤¹¤ëɬÍפ¬¤¢¤ë¤Ç¤·¤ç¤¦¡£ +�ǤϤʤ����ʲ��Τ褦�˵��Ҥ���ɬ�פ�����Ǥ��礦�� option dhcp-client-identifier "\\0foo"; .fi @@ -240,47 +240,47 @@ DHCP .RS 0.25i .PP .\" metal -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥ÈÍ×µá (DHCPDISCOVER ¤Þ¤¿¤Ï DHCPREQUEST) ¤ÎÃæ¤Ç¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤¬ IP ¥¢¥É¥ì¥¹¤Î¥ê¡¼¥¹»þ´Ö¤òÍ׵᤹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£ -¤Þ¤¿¥µ¡¼¥Ð±þÅú (DHCPOFFER) ¤ÎÃæ¤Ç¡¢DHCP ¥µ¡¼¥Ð¤¬Ä󼨤·¤¿¤¤¥ê¡¼¥¹»þ´Ö¤ò -»ØÄꤹ¤ë¤Î¤Ë¤â¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï»È¤ï¤ì¤Þ¤¹¡£ +�ܥ��ץ����ϡ����饤������׵� (DHCPDISCOVER �ޤ��� DHCPREQUEST) ����ǡ� +���饤����Ȥ� IP ���ɥ쥹�Υ꡼�����֤��׵᤹�뤿��˻��Ѥ���ޤ��� +�ޤ������б��� (DHCPOFFER) ����ǡ�DHCP �����Ф��󼨤������꡼�����֤� +���ꤹ��Τˤ⡢���Υ��ץ����ϻȤ��ޤ��� .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥µ¡¼¥Ð¤Ç¤Ï¥æ¡¼¥¶¤¬Ä¾ÀÜÀßÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£ +�ܥ��ץ����ϡ������ФǤϥ桼����ľ�����ꤹ�뤳�ȤϤǤ��ޤ��� .B dhcpd.conf(5) -¤Î \fImax-lease-time\fR ¤È \fidefault-lease-time\fR ¥µ¡¼¥Ð¥ª¥×¥·¥ç¥ó¤ò -»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ +�� \fImax-lease-time\fR �� \fidefault-lease-time\fR �����Х��ץ����� +���Ȥ��Ƥ��������� .RE .PP .B option \fBdhcp-max-message-size\fR \fIuint16\fR\fB;\fR .RS 0.25i .PP .\" metal -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤«¤éÁ÷½Ð¤µ¤ì¤¿¾ì¹ç¡¢¥µ¡¼¥Ð¤¬¥¯¥é¥¤¥¢¥ó¥È¤Ë -Á÷½Ð¤¹¤ë¤¹¤Ù¤Æ¤Î±þÅú¤ÎºÇÂ祵¥¤¥º¤ò»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤ÇÀßÄꤵ¤ì¤¿¾ì¹ç¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ dhcp-max-message-size ¥ª¥×¥·¥ç¥ó¤ò -Á÷¿®¤·¤Æ¤³¤Ê¤«¤Ã¤¿ºÝ¤Ë¡¢¤³¤Î¥µ¡¼¥Ð¤ÇÀßÄꤵ¤ì¤¿Ãͤ¬»ÈÍѤµ¤ì¤Þ¤¹¡£ -¤³¤ì¤Ï¡¢BOOTP ±þÅú¤Ç¤â DHCP ±þÅú¤ÈƱÍͤËÆ°ºî¤·¤Þ¤¹¡£ +�ܥ��ץ����ϡ����饤����Ȥ������Ф��줿��硢�����Ф����饤����Ȥ� +���Ф��뤹�٤Ƥα����κ��祵��������ꤷ�ޤ��� +�����Ф����ꤵ�줿��硢���饤����Ȥ� dhcp-max-message-size ���ץ����� +�������Ƥ��ʤ��ä��ݤˡ����Υ����Ф����ꤵ�줿�ͤ����Ѥ���ޤ��� +����ϡ�BOOTP �����Ǥ� DHCP ������Ʊ�ͤ�ư��ޤ��� .RE .PP .B option \fBdhcp-message\fR \fItext\fR\fB;\fR .RS 0.25i .PP .\" metal -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¾ã³²¤¬µ¯¤­¤¿»þ¤Ë¡¢DHCP ¥µ¡¼¥Ð¤¬ DHCPNAK ¥á¥Ã¥»¡¼¥¸Ãæ¤Ç -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ø¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤òÄ󶡤¹¤ë¤Î¤Ë»ÈÍѤ·¤Þ¤¹¡£ -¤Þ¤¿¥¯¥é¥¤¥¢¥ó¥È¤¬¡¢Ä󼨤µ¤ì¤¿¥Ñ¥é¥á¡¼¥¿¤òµñÈݤ·¤¿Íýͳ¤ò¼¨¤¹¤¿¤á¤Ë¡¢ -DHCPDECLINE ¥á¥Ã¥»¡¼¥¸Ãæ¤ÇËÜ¥ª¥×¥·¥ç¥ó¤ò»È¤¦¤³¤È¤â¤¢¤ê¤Þ¤¹¡£ +�ܥ��ץ����ϡ��㳲�����������ˡ�DHCP ������ DHCPNAK ��������� +DHCP ���饤����Ȥإ��顼��å��������󶡤���Τ˻��Ѥ��ޤ��� +�ޤ����饤����Ȥ����󼨤��줿�ѥ�᡼������ݤ�����ͳ�ò¼¨¤ï¿½ï¿½ï¿½ï¿½ï¿½Ë¡ï¿½ +DHCPDECLINE ��å���������ܥ��ץ�����Ȥ����Ȥ⤢��ޤ��� .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥æ¡¼¥¶¤¬ÀßÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£ +�ܥ��ץ����ϡ��桼�������ꤹ�뤳�ȤϤǤ��ޤ��� .RE .PP .B option \fBdhcp-message-type\fR \fIuint8\fR\fB;\fR .RS 0.25i .PP .\" metal -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¤Îξ¼Ô¤«¤éÁ÷½Ð¤µ¤ì¡¢ -DHCP ¥Ñ¥±¥Ã¥È¤¬´Þ¤ó¤Ç¤¤¤ë DHCP ¥á¥Ã¥»¡¼¥¸¤Î¥¿¥¤¥×¤ò»ØÄꤷ¤Þ¤¹¡£ -ËÜ¥ª¥×¥·¥ç¥ó¤¬¼è¤êÆÀ¤ëÃͤϡ¢°Ê²¼¤Î¤È¤ª¤ê¤Ç¤¹ (RFC2132 ¤è¤ê¤½¤Î¤Þ¤ÞÈ´¿è)¡£ +�ܥ��ץ����ϡ����饤����Ȥȥ����Ф�ξ�Ԥ������Ф��졢 +DHCP �ѥ��åȤ��ޤ�Ǥ��� DHCP ��å������Υ����פ���ꤷ�ޤ��� +�ܥ��ץ���󤬼�������ͤϡ��ʲ��ΤȤ���Ǥ� (RFC2132 ��ꤽ�Τޤ�ȴ��)�� .PP .nf 1 DHCPDISCOVER @@ -290,34 +290,34 @@ DHCP 5 DHCPACK 6 DHCPNAK 7 DHCPRELEASE - 8 DHCPINFORM + 8 DHCPINFORM .fi .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥æ¡¼¥¶¤¬ÀßÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£ +�ܥ��ץ����ϡ��桼�������ꤹ�뤳�ȤϤǤ��ޤ��� .PP .RE .B option \fBdhcp-option-overload\fR \fIuint8\fR\fB;\fR .RS 0.25i .PP .\" metal -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢DHCP 'sname' ¤â¤·¤¯¤Ï 'file' ¥Õ¥£¡¼¥ë¥É¤¬¡¢ -DHCP ¥ª¥×¥·¥ç¥ó¤òÊÝ»ý¤¹¤ë¤¿¤á¤ËµÍ¤á¹þ¤ß²á¤®¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤³¤È¤ò -¼¨¤¹¤Î¤Ë»È¤ï¤ì¤Þ¤¹¡£ -DHCP ¥µ¡¼¥Ð¤Ï¡¢ÊֵѤµ¤ì¤¿¥Ñ¥é¥á¡¼¥¿¤¬¡¢¥ª¥×¥·¥ç¥ó¤ËÄ̾ï³ä¤êÅö¤Æ¤é¤ì¤¿ -¶õ´Ö¤òĶ²á¤·¤¿¾ì¹ç¡¢ËÜ¥ª¥×¥·¥ç¥ó¤òÁÞÆþ¤·¤Þ¤¹¡£ +�ܥ��ץ����ϡ�DHCP 'sname' �⤷���� 'file' �ե�����ɤ��� +DHCP ���ץ������ݻ����뤿��˵ͤ���߲᤮�ˤʤäƤ��뤳�Ȥ� +�����Τ˻Ȥ��ޤ��� +DHCP �����Фϡ��ֵѤ��줿�ѥ�᡼���������ץ������̾������Ƥ�줿 +���֤�Ķ�ᤷ����硢�ܥ��ץ������������ޤ��� .PP -ËÜ¥ª¥×¥·¥ç¥ó¤¬Â¸ºß¤·¤¿¾ì¹ç¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢É¸½à¤Î¥ª¥×¥·¥ç¥ó¥Õ¥£¡¼¥ë¥É¤Î -²ò¼á¤¬½ªÎ»¤·¤¿¸å¡¢»ØÄꤵ¤ì¤¿Éղåե£¡¼¥ë¥É¤Î²ò¼á¤ò¹Ô¤¤¤Þ¤¹¡£ +�ܥ��ץ����¸�ߤ�����硢���饤����Ȥϡ�ɸ��Υ��ץ����ե�����ɤ� +��᤬��λ�����塢���ꤵ�줿�ղåե�����ɤβ���Ԥ��ޤ��� .PP -ËÜ¥ª¥×¥·¥ç¥ó¤ÎÀµÅö¤ÊÃͤϡ¢°Ê²¼¤ÎÄ̤ê¤Ç¤¹: +�ܥ��ץ������������ͤϡ��ʲ����̤�Ǥ�: .PP .nf - 1 'file' ¥Õ¥£¡¼¥ë¥É¤¬¡¢¥ª¥×¥·¥ç¥óÊÝ»ý¤Ë»ÈÍѤµ¤ì¤Æ¤Þ¤¹ - 2 'sname' ¥Õ¥£¡¼¥ë¥É¤¬¡¢¥ª¥×¥·¥ç¥óÊÝ»ý¤Ë»ÈÍѤµ¤ì¤Æ¤Þ¤¹ - 3 ξÊý¤Î¥Õ¥£¡¼¥ë¥É¤¬¡¢¥ª¥×¥·¥ç¥óÊÝ»ý¤Ë»ÈÍѤµ¤ì¤Æ¤Þ¤¹ + 1 'file' �ե�����ɤ������ץ�����ݻ��˻��Ѥ���Ƥޤ� + 2 'sname' �ե�����ɤ������ץ�����ݻ��˻��Ѥ���Ƥޤ� + 3 ξ���Υե�����ɤ������ץ�����ݻ��˻��Ѥ���Ƥޤ� .fi .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥æ¡¼¥¶¤¬ÀßÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£ +�ܥ��ץ����ϡ��桼�������ꤹ�뤳�ȤϤǤ��ޤ��� .PP .RE .PP @@ -325,27 +325,27 @@ DHCP .RS 0.25i .PP .\" metal -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤«¤éÁ÷½Ð¤µ¤ì¤¿¾ì¹ç¡¢ -¥µ¡¼¥Ð¤ËÊÖÅú¤ò´õ˾¤¹¤ë¥ª¥×¥·¥ç¥ó¤ò¥¯¥é¥¤¥¢¥ó¥È¤¬»ØÄꤷ¤Þ¤¹¡£ -Ä̾ï ISC DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ç¤Ï¡¢\fIrequest\fR ʸ¤òÍѤ¤¤Æ¹Ô¤ï¤ì¤Þ¤¹¡£ -ËÜ¥ª¥×¥·¥ç¥ó¤¬¥¯¥é¥¤¥¢¥ó¥È¤«¤é»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢Ä̾ï DHCP ¥µ¡¼¥Ð¤Ï¡¢ -¥¹¥³¡¼¥×Æâ¤ÇÍ­¸ú¤«¤Ä±þÅú¤Ë¼ý¤Þ¤ë¤¹¤Ù¤Æ¤Î¥ª¥×¥·¥ç¥ó¤òÊÖ¤·¤Þ¤¹¡£ -ËÜ¥ª¥×¥·¥ç¥ó¤¬¥µ¡¼¥Ð¾å¤Ç»ØÄꤵ¤ì¤¿¾ì¹ç¡¢¥µ¡¼¥Ð¤Ï¤½¤Î»ØÄꤵ¤ì¤¿¥ª¥×¥·¥ç¥ó¤ò -ÊÖ¤·¤Þ¤¹¡£ -¤³¤ì¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬Í׵ᤷ¤Ê¤«¤Ã¤¿¥ª¥×¥·¥ç¥ó¤ò¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ë -¶¯À©¤¹¤ë¤Î¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£ -¤Þ¤¿¡¢Ä̾掠¡¼¥Ð¤¬ÊÖ¤¹¥ª¥×¥·¥ç¥ó¤Î¥»¥Ã¥È¤ò¤µ¤é¤ËÀ©¸Â¤¹¤ëɬÍפΤ¢¤ë -¥¯¥é¥¤¥¢¥ó¥È¤ËÂФ·¤Æ¡¢DHCP ¥µ¡¼¥Ð¤Î±þÅú¤òÄ´À°¤¹¤ë¤Î¤Ë¤â»ÈÍѤµ¤ì¤Þ¤¹¡£ +�ܥ��ץ����ϡ����饤����Ȥ������Ф��줿��硢 +�����Ф��������˾���륪�ץ����ò¥¯¥é¥¤ï¿½ï¿½ï¿½ï¿½È¤ï¿½ï¿½ï¿½ï¿½ê¤·ï¿½Þ¤ï¿½ï¿½ï¿½ +�̾� ISC DHCP ���饤����ȤǤϡ�\fIrequest\fR ʸ���Ѥ��ƹԤ��ޤ��� +�ܥ��ץ���󤬥��饤����Ȥ�����ꤵ��ʤ��ä���硢�̾� DHCP �����Фϡ� +�����������ͭ�����ı����˼��ޤ뤹�٤ƤΥ��ץ������֤��ޤ��� +�ܥ��ץ���󤬥����о�ǻ��ꤵ�줿��硢�����ФϤ��λ��ꤵ�줿���ץ����� +�֤��ޤ��� +����ϡ����饤����Ȥ��׵ᤷ�ʤ��ä����ץ����ò¡¢¥ï¿½ï¿½é¥¤ï¿½ï¿½ï¿½ï¿½È¤ï¿½ +��������Τ˻��Ѥ���ޤ��� +�ޤ����̾掠���Ф��֤����ץ����Υ��åȤò¤µ¤ï¿½ï¿½ï¿½ï¿½ï¿½Â¤ï¿½ï¿½ï¿½É¬ï¿½×¤Î¤ï¿½ï¿½ï¿½ +���饤����Ȥ��Ф��ơ�DHCP �����Фα�����Ĵ������Τˤ���Ѥ���ޤ��� .RE .PP .B option \fBdhcp-rebinding-time\fR \fIuint32\fR\fB;\fR .RS 0.25i .PP .\" metal -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¥¢¥É¥ì¥¹¤ò¼èÆÀ¤·¤Æ¤«¤é REBINDING ¾õÂÖ¤Ë -°Ü¹Ô¤¹¤ë¤Þ¤Ç¤Î»þ´Ö¤òÉÿô¤Ç»ØÄꤷ¤Þ¤¹¡£ +�ܥ��ץ����ϡ����饤����Ȥ����ɥ쥹��������Ƥ��� REBINDING ���֤� +�ܹԤ���ޤǤλ��֤��ÿ��ǻ��ꤷ�ޤ��� .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥æ¡¼¥¶¤¬ÀßÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£ +�ܥ��ץ����ϡ��桼�������ꤹ�뤳�ȤϤǤ��ޤ��� .PP .RE .PP @@ -353,10 +353,10 @@ DHCP .RS 0.25i .PP .\" metal -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¥¢¥É¥ì¥¹¤ò¼èÆÀ¤·¤Æ¤«¤é RENEWING ¾õÂÖ¤Ë -°Ü¹Ô¤¹¤ë¤Þ¤Ç¤Î»þ´Ö¤òÉÿô¤Ç»ØÄꤷ¤Þ¤¹¡£ +�ܥ��ץ����ϡ����饤����Ȥ����ɥ쥹��������Ƥ��� RENEWING ���֤� +�ܹԤ���ޤǤλ��֤��ÿ��ǻ��ꤷ�ޤ��� .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥æ¡¼¥¶¤¬ÀßÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£ +�ܥ��ץ����ϡ��桼�������ꤹ�뤳�ȤϤǤ��ޤ��� .PP .RE .PP @@ -364,10 +364,10 @@ DHCP .RS 0.25i .PP .\" metal -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¡¢DHCPDISCOVER Æâ¤ÇÆÃÄê¤Î IP ¥¢¥É¥ì¥¹¤¬ -³ä¤êÅö¤Æ¤é¤ì¤ë¤³¤È¤òÍ׵᤹¤ë¤Î¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£ +�ܥ��ץ����ϡ����饤����Ȥ���DHCPDISCOVER �������� IP ���ɥ쥹�� +������Ƥ��뤳�Ȥ��׵᤹��Τ˻��Ѥ���ޤ��� .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥æ¡¼¥¶¤¬ÀßÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£ +�ܥ��ץ����ϡ��桼�������ꤹ�뤳�ȤϤǤ��ޤ��� .PP .RE .PP @@ -375,362 +375,362 @@ DHCP .RS 0.25i .PP .\" metal -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢DHCPOFFER ¤È DHCPREQUEST ¥á¥Ã¥»¡¼¥¸Ãæ¤Ç»ÈÍѤµ¤ì¡¢ -¤Þ¤¿ DHCPACK ¤È DHCPNAK ¥á¥Ã¥»¡¼¥¸Ãæ¤Ë¤â´Þ¤Þ¤ì¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£ -DHCP ¥µ¡¼¥Ð¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ (ÌõÃí: Ê£¿ô¥µ¡¼¥Ð¤«¤é¤Î) ¥ê¡¼¥¹¤ÎÄ󼨤ò -¶èÊ̤Ǥ­¤ë¤è¤¦¡¢DHCPOFFER ¤ËËÜ¥ª¥×¥·¥ç¥ó¤ò´Þ¤á¤Þ¤¹¡£ -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢DHCP ¥µ¡¼¥Ð¤Ø¥æ¥Ë¥­¥ã¥¹¥È¤¹¤ë¤¹¤Ù¤Æ¤Î DHCP ¥á¥Ã¥»¡¼¥¸¤Î -°¸À襢¥É¥ì¥¹¤È¤·¤Æ 'server identifier' ¥Õ¥£¡¼¥ë¥É¤ÎÆâÍƤò»ÈÍѤ·¤Þ¤¹¡£ -¤Þ¤¿ DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢DHCPREQUEST ¥á¥Ã¥»¡¼¥¸Ãæ¤ËËÜ¥ª¥×¥·¥ç¥ó¤ò´Þ¤á¡¢ -Ê£¿ô¤Î¥ê¡¼¥¹¤ÎÄ󼨤Τɤì¤ò¼õ¤±Æþ¤ì¤¿¤«¤ò¼¨¤·¤Þ¤¹¡£ -.PP -ËÜ¥ª¥×¥·¥ç¥ó¤ÎÃͤϡ¢¥µ¡¼¥Ð¤Î IP ¥¢¥É¥ì¥¹¤Ç¤¹¡£ -.PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥æ¡¼¥¶¤¬Ä¾ÀÜÀßÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£ +�ܥ��ץ����ϡ�DHCPOFFER �� DHCPREQUEST ��å�������ǻ��Ѥ��졢 +�ޤ� DHCPACK �� DHCPNAK ��å�������ˤ�ޤޤ�뤳�Ȥ�����ޤ��� +DHCP �����Фϡ����饤����Ȥ� (����: ʣ�������Ф����) �꡼�����󼨤� +���̤Ǥ���褦��DHCPOFFER ���ܥ��ץ�����ޤ�ޤ��� +DHCP ���饤����Ȥϡ�DHCP �����Фإ�˥��㥹�Ȥ��뤹�٤Ƥ� DHCP �������� +���襢�ɥ쥹�Ȥ��� 'server identifier' �ե�����ɤ����Ƥ���Ѥ��ޤ��� +�ޤ� DHCP ���饤����Ȥϡ�DHCPREQUEST ��å���������ܥ��ץ�����ޤᡢ +ʣ���Υ꡼�����󼨤Τɤ��������줿���ò¼¨¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +.PP +�ܥ��ץ������ͤϡ������Ф� IP ���ɥ쥹�Ǥ��� +.PP +�ܥ��ץ����ϡ��桼����ľ�����ꤹ�뤳�ȤϤǤ��ޤ��� .B \fIdhcpd.conf(5) -¤Î \fIserver-identifier\fR ¥µ¡¼¥Ð¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ +�� \fIserver-identifier\fR �����Х��ץ����ò»²¾È¤ï¿½ï¿½Æ¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ .PP .RE .PP .B option \fBdomain-name\fR \fItext\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥É¥á¥¤¥ó¥Í¡¼¥à¥·¥¹¥Æ¥à¤ò»ÈÍѤ·¤Æ¥Û¥¹¥È̾¤ò²ò·è¤¹¤ë¤È¤­¤Ë -¥¯¥é¥¤¥¢¥ó¥È¤¬»ÈÍѤ¹¤Ù¤­¥É¥á¥¤¥ó̾¤ò»ØÄꤷ¤Þ¤¹¡£ +�ܥ��ץ����ϡ��ɥᥤ��͡��ॷ���ƥ����Ѥ��ƥۥ���̾���褹��Ȥ��� +���饤����Ȥ����Ѥ��٤��ɥᥤ��̾����ꤷ�ޤ��� .RE .PP .B option \fBdomain-name-servers\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -domain-name-servers ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê -¥É¥á¥¤¥ó¥Í¡¼¥à¥·¥¹¥Æ¥à (STD 13, RFC 1035) ¤Î¥Í¡¼¥à¥µ¡¼¥Ð¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +domain-name-servers ���ץ����ϡ����饤����Ȥ����Ѳ�ǽ�� +�ɥᥤ��͡��ॷ���ƥ� (STD 13, RFC 1035) �Υ͡��ॵ���ФΥꥹ�Ȥ���ꤷ�ޤ��� +�����Фϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .B option \fBextensions-path\fR \fItext\fR\fB;\fR .RS 0.25i .PP .\" metal -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢Äɲ媥ץ·¥ç¥ó¤ò´Þ¤à¥Õ¥¡¥¤¥ë¤Î¥Õ¥¡¥¤¥ë̾¤ò»ØÄꤷ¤Þ¤¹¡£ -¤³¤ÎÄɲ媥ץ·¥ç¥ó¤Ï¡¢RFC2132 ¤Çµ¬Äꤵ¤ì¤Æ¤¤¤ë DHCP ¥ª¥×¥·¥ç¥ó¤Î½ñ¼°¤Ë±è¤Ã¤Æ -²ò¼á¤µ¤ì¤Þ¤¹¡£ +�ܥ��ץ����ϡ��ɲå��ץ�����ޤ�ե�����Υե�����̾����ꤷ�ޤ��� +�����ɲå��ץ����ϡ�RFC2132 �ǵ��ꤵ��Ƥ��� DHCP ���ץ����νñ¼°¤Ë±ï¿½Ã¤ï¿½ +��ᤵ��ޤ��� .RE .PP .B option \fBfinger-server\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -Finger ¥µ¡¼¥Ð¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê Finger ¤Î¥ê¥¹¥È¤ò -»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +Finger �����Х��ץ����ϡ����饤����Ȥ����Ѳ�ǽ�� Finger �Υꥹ�Ȥ� +���ꤷ�ޤ��� +�����Фϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .B option \fBfont-servers\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê X Window System ¥Õ¥©¥ó¥È¥µ¡¼¥Ð¤ò -»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +�ܥ��ץ����ϡ����饤����Ȥ����Ѳ�ǽ�� X Window System �ե���ȥ����Ф� +���ꤷ�ޤ��� +�����Фϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .B option \fBhost-name\fR \fIstring\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤Î̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£ -¤³¤Î̾Á°¤Ï¡¢¥í¡¼¥«¥ë¥É¥á¥¤¥ó̾¤Ë½¤¾þ¤µ¤ì¤Æ¤¤¤Æ¤â¡¢¤¤¤Ê¤¯¤Æ¤â¤«¤Þ¤¤¤»¤ó -(¥É¥á¥¤¥ó̾¤ò»ØÄꤹ¤ë¤Ë¤Ï¡¢domain-name ¥ª¥×¥·¥ç¥ó¤Î»ÈÍѤò¤ª´«¤á¤·¤Þ¤¹)¡£ -ʸ»ú½¸¹ç¤ÎÀ©Ìó¤Ë¤Ä¤¤¤Æ¤Ï RFC 1035 ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ -¥¯¥é¥¤¥¢¥ó¥È¥Þ¥·¥ó¤Î¥Û¥¹¥È̾¤¬ÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç (¤¹¤Ê¤ï¤Á +�ܥ��ץ����ϡ����饤����Ȥ�̾������ꤷ�ޤ��� +����̾���ϡ���������ɥᥤ��̾�˽�������Ƥ��Ƥ⡢���ʤ��Ƥ⤫�ޤ����� +(�ɥᥤ��̾����ꤹ��ˤϡ�domain-name ���ץ����λ��Ѥò¤ª´ï¿½ï¿½á¤·ï¿½Þ¤ï¿½)�� +ʸ�����������ˤĤ��Ƥ� RFC 1035 �ò»²¾È¤ï¿½ï¿½Æ¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ +���饤����ȥޥ���Υۥ���̾�����ꤵ��Ƥ��ʤ���� (���ʤ�� .B rc.conf(5) -¤Ç¶õʸ»úÎó¤ËÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç) ¤Î¤ß¡¢ +�Ƕ�ʸ��������ꤵ��Ƥ�����) �Τߡ� .B dhclient-script(8) -¤¬ËÜ¥ª¥×¥·¥ç¥ó¤òº½Å¤·¤Þ¤¹¡£ +���ܥ��ץ�����º�Ť��ޤ��� .RE .PP .B option \fBieee802-3-encapsulation\fR \fIflag\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤¬¥¤¡¼¥µ¥Í¥Ã¥È¤Ç¤¢¤ë¾ì¹ç¤Ë¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤¬¥¤¡¼¥µ¥Í¥Ã¥È¥Ð¡¼¥¸¥ç¥ó 2 (RFC 894) ¤È -IEEE 802.3 (RFC 1042) ¤Î¤É¤Á¤é¤Î¥«¥×¥»¥ë²½¤ò»ÈÍѤ¹¤Ù¤­¤«¤ò»ØÄꤷ¤Þ¤¹¡£ -ÃÍ false ¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ RFC 894 ¤Î¥«¥×¥»¥ë²½¤ò»ÈÍѤ¹¤Ù¤­¤Ç¤¢¤ë¤³¤È¤ò -°ÕÌ£¤·¤Þ¤¹¡£ -ÃÍ true ¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ RFC 1042 ¤Î¥«¥×¥»¥ë²½¤ò»ÈÍѤ¹¤Ù¤­¤Ç¤¢¤ë¤³¤È¤ò -°ÕÌ£¤·¤Þ¤¹¡£ +�ܥ��ץ����ϡ����󥿥ե��������������ͥåȤǤ�����ˡ� +���饤����Ȥ��������ͥåȥС������ 2 (RFC 894) �� +IEEE 802.3 (RFC 1042) �Τɤ���Υ��ץ��벽����Ѥ��٤�������ꤷ�ޤ��� +�� false �ϡ����饤����Ȥ� RFC 894 �Υ��ץ��벽����Ѥ��٤��Ǥ��뤳�Ȥ� +��̣���ޤ��� +�� true �ϡ����饤����Ȥ� RFC 1042 �Υ��ץ��벽����Ѥ��٤��Ǥ��뤳�Ȥ� +��̣���ޤ��� .RE .PP .B option \fBien116-name-servers\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]; .RS 0.25i .PP -ien116-name-servers ¥ª¥×¥·¥ç¥ó¤Ï¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê IEN 116 ¥Í¡¼¥à¥µ¡¼¥Ð¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +ien116-name-servers ���ץ����ϡ� +���饤����Ȥ����Ѳ�ǽ�� IEN 116 �͡��ॵ���ФΥꥹ�Ȥ���ꤷ�ޤ��� +�����Фϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .B option \fBimpress-servers\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -impress-server ¥ª¥×¥·¥ç¥ó¤Ï¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê Imagen Impress ¥µ¡¼¥Ð¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +impress-server ���ץ����ϡ� +���饤����Ȥ����Ѳ�ǽ�� Imagen Impress �����ФΥꥹ�Ȥ���ꤷ�ޤ��� +�����Фϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .B option \fBinterface-mtu\fR \fIuint16\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¤³¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ËÂФ·¤Æ»ÈÍѤ¹¤ë MTU ¤ò»ØÄꤷ¤Þ¤¹¡£ -MTU ¤ËÂФ¹¤ëºÇ¾®¤ÎÀµÅöÃÍ¤Ï 68 ¤Ç¤¹¡£ +�ܥ��ץ����ϡ����Υ��󥿥ե��������Ф��ƻ��Ѥ��� MTU ����ꤷ�ޤ��� +MTU ���Ф���Ǿ��������ͤ� 68 �Ǥ��� .RE .PP .B option \fBip-forwarding\fR \fIflag\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¡¢¥Ñ¥±¥Ã¥È¤òžÁ÷¤¹¤ë¤è¤¦¤Ë -¼«Ê¬¤Î IP ÁؤòÀßÄꤹ¤Ù¤­¤«¤ò»ØÄꤷ¤Þ¤¹¡£ -ÃÍ false ¤Ï IP žÁ÷¤ò̵¸ú¤Ë¤¹¤ë¤³¤È¤ò°ÕÌ£¤·¡¢ -ÃÍ true ¤Ï IP žÁ÷¤òÍ­¸ú¤Ë¤¹¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£ +�ܥ��ץ����ϡ����饤����Ȥ����ѥ��åȤ�ž������褦�� +��ʬ�� IP �ؤ����ꤹ�٤�������ꤷ�ޤ��� +�� false �� IP ž����̵���ˤ��뤳�Ȥ��̣���� +�� true �� IP ž����ͭ���ˤ��뤳�Ȥ��̣���ޤ��� .RE .PP .B option \fBirc-server\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -IRC ¥µ¡¼¥Ð¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê IRC ¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +IRC �����Х��ץ����ϡ����饤����Ȥ����Ѳ�ǽ�� IRC �Υꥹ�Ȥ���ꤷ�ޤ��� +�����Фϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .B option \fBlog-servers\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -log-server ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê MIT-LCS UDP ¥í¥°¥µ¡¼¥Ð¤Î -¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +log-server ���ץ����ϡ����饤����Ȥ����Ѳ�ǽ�� MIT-LCS UDP ���������� +�ꥹ�Ȥ���ꤷ�ޤ��� +�����Фϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .B option \fBlpr-servers\fR \fIip-address \fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -LPR ¥µ¡¼¥Ð¥ª¥×¥·¥ç¥ó¤Ï¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê RFC 1179 ¥é¥¤¥ó¥×¥ê¥ó¥¿¥µ¡¼¥Ð¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +LPR �����Х��ץ����ϡ� +���饤����Ȥ����Ѳ�ǽ�� RFC 1179 �饤��ץ�󥿥����ФΥꥹ�Ȥ���ꤷ�ޤ��� +�����Фϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .B option \fBmask-supplier\fR \fIflag\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢ICMP ¤ò»ÈÍѤ·¤¿¥µ¥Ö¥Í¥Ã¥È¥Þ¥¹¥¯Í×µá¤ËÂФ·¤Æ¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤¬±þÅú¤¹¤Ù¤­¤«¤ò»ØÄꤷ¤Þ¤¹¡£ -ÃÍ false ¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬±þÅú¤¹¤Ù¤­¤Ç¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£ -ÃÍ true ¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬±þÅú¤¹¤Ù¤­¤Ç¤¢¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£ +�ܥ��ץ����ϡ�ICMP ����Ѥ������֥ͥåȥޥ����׵���Ф��ơ� +���饤����Ȥ��������٤�������ꤷ�ޤ��� +�� false �ϡ����饤����Ȥ��������٤��Ǥʤ����Ȥ��̣���ޤ��� +�� true �ϡ����饤����Ȥ��������٤��Ǥ��뤳�Ȥ��̣���ޤ��� .RE .PP .B option \fBmax-dgram-reassembly\fR \fIuint16\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ºÆÁȤßΩ¤Æ¤Î½àÈ÷¤ò¤¹¤Ù¤­ -ºÇÂç¥Ç¡¼¥¿¥°¥é¥à¥µ¥¤¥º¤ò»ØÄꤷ¤Þ¤¹¡£ -ºÇ¾®¤ÎÀµÅöÃÍ¤Ï 576 ¤Ç¤¹¡£ +�ܥ��ץ����ϡ����饤����Ȥ����Ȥ�Ω�Ƥν����ò¤¹¤Ù¤ï¿½ +����ǡ�������ॵ��������ꤷ�ޤ��� +�Ǿ��������ͤ� 576 �Ǥ��� .\" The minimum value legal value is 576. -.\" The minimum legal value is 576. ¤«¤Ê (horikawa@jp.freebsd.org 19990404) +.\" The minimum legal value is 576. ���� (horikawa@jp.freebsd.org 19990404) .RE .PP .B option \fBmerit-dump\fR \fItext\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¥¯¥é¥Ã¥·¥å¤¹¤ë¤È¤­¤Î -¥¯¥é¥¤¥¢¥ó¥È¤Î¥³¥¢¥¤¥á¡¼¥¸¤¬¥À¥ó¥×¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹Ì¾¤ò»ØÄꤷ¤Þ¤¹¡£ -¥Ñ¥¹¤Î½ñ¼°¤Ï¡¢NVT ASCII ʸ»ú½¸¹ç¤Îʸ»ú¤«¤é¤Ê¤ëʸ»úÎó¤Ç¤¹¡£ +�ܥ��ץ����ϡ����饤����Ȥ�����å��夹��Ȥ��� +���饤����ȤΥ������᡼��������פ����ե�����Υѥ�̾����ꤷ�ޤ��� +�ѥ��νñ¼°¤Ï¡ï¿½NVT ASCII ʸ�������ʸ������ʤ�ʸ����Ǥ��� .RE .PP .B option \fBmobile-ip-home-agent\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê¥â¥Ð¥¤¥ë IP ¥Û¡¼¥à¥¨¡¼¥¸¥§¥ó¥È¤Î -IP ¥¢¥É¥ì¥¹¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¥¨¡¼¥¸¥§¥ó¥È¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ -¤¿¤À¤·¡¢Ä̾泌¡¼¥¸¥§¥ó¥È¤Ï 1 ¤Ä¤Ç¤·¤ç¤¦¡£ +�ܥ��ץ����ϡ����饤����Ȥ����Ѳ�ǽ�ʥ�Х��� IP �ۡ��२��������Ȥ� +IP ���ɥ쥹�Υꥹ�Ȥ���ꤷ�ޤ��� +����������Ȥϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� +���������̾泌��������Ȥ� 1 �ĤǤ��礦�� .RE .PP .B option \fBnds-context\fR \fIstring\fR\fB;\fR .RS 0.25i .PP .\" metal -nds-context ¥ª¥×¥·¥ç¥ó¤Ï¡¢NDS ¥¯¥é¥¤¥¢¥ó¥È¤Î¤¿¤á¤ÎºÇ½é¤Î -NetWare ¥Ç¥£¥ì¥¯¥È¥ê¥µ¡¼¥Ó¥¹¤Î̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£ +nds-context ���ץ����ϡ�NDS ���饤����ȤΤ���κǽ�� +NetWare �ǥ��쥯�ȥꥵ���ӥ���̾������ꤷ�ޤ��� .RE .PP .B option \fBnds-servers\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP .\" metal -nds-servers ¥ª¥×¥·¥ç¥ó¤Ï¡¢NDS ¥µ¡¼¥Ð¤Î IP ¥¢¥É¥ì¥¹¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ +nds-servers ���ץ����ϡ�NDS ������ IP ���ɥ쥹�Υꥹ�Ȥ���ꤷ�ޤ��� .RE .PP .B option \fBnds-tree-name\fR \fIstring\fR\fB;\fR .RS 0.25i .PP .\" metal -nds-tree-name ¥ª¥×¥·¥ç¥ó¤Ï¡¢NDS ¥¯¥é¥¤¥¢¥ó¥È¤¬»ÈÍѤ¹¤Ù¤­ NDS ¥Ä¥ê¡¼¤Î -̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£ +nds-tree-name ���ץ����ϡ�NDS ���饤����Ȥ����Ѥ��٤� NDS �ĥ꡼�� +̾������ꤷ�ޤ��� .RE .PP .B option \fBnetbios-dd-server\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -NetBIOS ¥Ç¡¼¥¿¥°¥é¥àÇÛÉÛ¥µ¡¼¥Ð (NBDD) ¥ª¥×¥·¥ç¥ó¤Ï¡¢ -RFC 1001/1002 ¤Î NBDD ¥µ¡¼¥Ð¤Î¥ê¥¹¥È¤ò¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë»ØÄꤷ¤Þ¤¹¡£ +NetBIOS �ǡ�����������ۥ����� (NBDD) ���ץ����ϡ� +RFC 1001/1002 �� NBDD �����ФΥꥹ�Ȥ�ͥ�褵����Τ����˻��ꤷ�ޤ��� .RE .PP .B option \fBnetbios-name-servers\fR \fIip-address\fR [\fB,\fR \fIip-address\fR...]\fB;\fR .RS 0.25i .PP -NetBIOS ¥Í¡¼¥à¥µ¡¼¥Ð (NBNS) ¥ª¥×¥·¥ç¥ó¤Ï¡¢ RFC 1001/1002 ¤Î -NBNS ¥Í¡¼¥à¥µ¡¼¥Ð¤Î¥ê¥¹¥È¤ò¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë»ØÄꤷ¤Þ¤¹¡£ -¸½ºß¤Ç¤Ï¡¢NetBIOS ¥Í¡¼¥à¥µ¡¼¥Ó¥¹¤Ï WINS ¤È¸Æ¤Ð¤ì¤ë¤³¤È¤ÎÊý¤¬Â¿¤¤¤Ç¤¹¡£ -netbios-name-servers ¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢WINS ¥µ¡¼¥Ð¤ò»ØÄê²Äǽ¤Ç¤¹¡£ +NetBIOS �͡��ॵ���� (NBNS) ���ץ����ϡ� RFC 1001/1002 �� +NBNS �͡��ॵ���ФΥꥹ�Ȥ�ͥ�褵����Τ����˻��ꤷ�ޤ��� +���ߤǤϡ�NetBIOS �͡��ॵ���ӥ��� WINS �ȸƤФ�뤳�Ȥ�����¿���Ǥ��� +netbios-name-servers ���ץ�������Ѥ��ơ�WINS �����Ф�����ǽ�Ǥ��� .RE .PP .B option \fBnetbios-node-type\fR \fIuint8\fR\fB;\fR .RS 0.25i .PP -NetBIOS ¥Î¡¼¥É¥¿¥¤¥×¥ª¥×¥·¥ç¥ó¤Ï¡¢ -ÀßÄê²Äǽ¤Ê NetBIOS over TCP/IP ¥¯¥é¥¤¥¢¥ó¥È¤ò¡¢ -RFC 1001/1002 ¤Ëµ­½Ò¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤ËÀßÄꤷ¤Þ¤¹¡£ -ÃͤÏñ°ì¤Î¥ª¥¯¥Æ¥Ã¥È¤È¤·¤Æ»ØÄꤵ¤ì¡¢¥¯¥é¥¤¥¢¥ó¥È¥¿¥¤¥×¤ò°ÕÌ£¤·¤Þ¤¹¡£ +NetBIOS �Ρ��ɥ����ץ��ץ����ϡ� +�����ǽ�� NetBIOS over TCP/IP ���饤����Ȥ� +RFC 1001/1002 �˵��Ҥ���Ƥ���褦�����ꤷ�ޤ��� +�ͤ�ñ��Υ����ƥåȤȤ��ƻ��ꤵ�졢���饤����ȥ����פ��̣���ޤ��� .PP -»ÈÍѲÄǽ¤Ê¥Î¡¼¥É¥¿¥¤¥×¤Ï¼¡¤ÎÄ̤ê¤Ç¤¹: +���Ѳ�ǽ�ʥΡ��ɥ����פϼ����̤�Ǥ�: .PP .TP 5 .I 1 -B ¥Î¡¼¥É: ¥Ö¥í¡¼¥É¥­¥ã¥¹¥È - WINS ̵¤· +B ����: �֥����ɥ��㥹�� - WINS ̵�� .TP .I 2 -P ¥Î¡¼¥É: ¥Ô¥¢ - WINS ¤Î¤ß +P ����: �ԥ� - WINS �Τ� .TP .I 4 -M ¥Î¡¼¥É: ¥ß¥Ã¥¯¥¹ - ¥Ö¥í¡¼¥É¥­¥ã¥¹¥È¸å¤Ë WINS +M ����: �ߥå��� - �֥����ɥ��㥹�ȸ�� WINS .TP .I 8 -H ¥Î¡¼¥É: ¥Ï¥¤¥Ö¥ê¥Ã¥É - WINS ¸å¤Ë¥Ö¥í¡¼¥É¥­¥ã¥¹¥È +H ����: �ϥ��֥�å� - WINS ��˥֥����ɥ��㥹�� .RE .PP .B option \fBnetbios-scope\fR \fIstring\fR\fB;\fR .RS 0.25i .PP -NetBIOS ¥¹¥³¡¼¥×¥ª¥×¥·¥ç¥ó¤Ï¡¢RFC 1001/1002 ¤Ëµ¬Äꤵ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤Î NetBIOS over TCP/IP ¥¹¥³¡¼¥×¥Ñ¥é¥á¡¼¥¿¤ò»ØÄꤷ¤Þ¤¹¡£ -ʸ»ú½¸¹ç¤ÎÀ©Ìó¤Ë¤Ä¤¤¤Æ¤Ï RFC1001, RFC1002, RFC1035 ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ +NetBIOS �������ץ��ץ����ϡ�RFC 1001/1002 �˵��ꤵ��Ƥ���褦�ˡ� +���饤����Ȥ� NetBIOS over TCP/IP �������ץѥ�᡼������ꤷ�ޤ��� +ʸ�����������ˤĤ��Ƥ� RFC1001, RFC1002, RFC1035 �ò»²¾È¤ï¿½ï¿½Æ¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ .RE .PP .B option \fBnis-domain\fR \fItext\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤Î NIS (Sun Network Information Services) -¥É¥á¥¤¥ó¤ò»ØÄꤷ¤Þ¤¹¡£ -¥É¥á¥¤¥ó¤Î½ñ¼°¤Ï¡¢NVT ASCII ʸ»ú½¸¹ç¤Îʸ»ú¤«¤é¤Ê¤ëʸ»úÎó¤Ç¤¹¡£ +�ܥ��ץ����ϡ����饤����Ȥ� NIS (Sun Network Information Services) +�ɥᥤ�����ꤷ�ޤ��� +�ɥᥤ��νñ¼°¤Ï¡ï¿½NVT ASCII ʸ�������ʸ������ʤ�ʸ����Ǥ��� .RE .PP .B option \fBnis-servers\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê NIS ¥µ¡¼¥Ð¤ò¼¨¤¹ IP ¥¢¥É¥ì¥¹¤Î -¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +�ܥ��ץ����ϡ����饤����Ȥ����Ѳ�ǽ�� NIS �����Фò¼¨¤ï¿½ IP ���ɥ쥹�� +�ꥹ�Ȥ���ꤷ�ޤ��� +�����Фϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .B option \fBnisplus-domain\fR \fItext\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤Î NIS+ ¥É¥á¥¤¥ó¤Î̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£ -¥É¥á¥¤¥ó¤Î½ñ¼°¤Ï¡¢NVT ASCII ʸ»ú½¸¹ç¤Îʸ»ú¤«¤é¤Ê¤ëʸ»úÎó¤Ç¤¹¡£ +�ܥ��ץ����ϡ����饤����Ȥ� NIS+ �ɥᥤ���̾������ꤷ�ޤ��� +�ɥᥤ��νñ¼°¤Ï¡ï¿½NVT ASCII ʸ�������ʸ������ʤ�ʸ����Ǥ��� .RE .PP .B option \fBnisplus-servers\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê NIS+ ¥µ¡¼¥Ð¤ò¼¨¤¹ IP ¥¢¥É¥ì¥¹¤Î -¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +�ܥ��ץ����ϡ����饤����Ȥ����Ѳ�ǽ�� NIS+ �����Фò¼¨¤ï¿½ IP ���ɥ쥹�� +�ꥹ�Ȥ���ꤷ�ޤ��� +�����Фϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .B option \fBnntp-server\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -NNTP ¥µ¡¼¥Ð¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê NNTP ¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +NNTP �����Х��ץ����ϡ����饤����Ȥ����Ѳ�ǽ�� NNTP �Υꥹ�Ȥ���ꤷ�ޤ��� +�����Фϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .B option \fBnon-local-source-routing\fR \fIflag\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢Èó¥í¡¼¥«¥ë¤Ê»ØÄê·ÐÏ© (non-local source route) ¤ò»ý¤Ä -¥Ç¡¼¥¿¥°¥é¥à¤òžÁ÷¤¹¤ë¤è¤¦¤Ë¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¼«Ê¬¤Î IP ÁؤòÀßÄꤹ¤Ù¤­¤«¤ò -»ØÄꤷ¤Þ¤¹ (ËܹàÌܤˤĤ¤¤Æ¤Ï [4] ¤Î 3.3.5 Àá¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤)¡£ -ÃÍ false ¤Ï¤½¤Î¤è¤¦¤Ê¥Ç¡¼¥¿¥°¥é¥à¤ÎžÁ÷¤òµö²Ä¤·¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¡¢ -ÃÍ true ¤ÏžÁ÷µö²Ä¤ò°ÕÌ£¤·¤Þ¤¹¡£ +�ܥ��ץ����ϡ����������ʻ����ϩ (non-local source route) ����� +�ǡ���������ž������褦�ˡ����饤����Ȥ���ʬ�� IP �ؤ����ꤹ�٤����� +���ꤷ�ޤ� (�ܹ��ܤˤĤ��Ƥ� [4] �� 3.3.5 ��ò»²¾È¤ï¿½ï¿½Æ¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½)�� +�� false �Ϥ��Τ褦�ʥǡ���������ž������Ĥ��ʤ����Ȥ��̣���� +�� true ��ž�����Ĥ��̣���ޤ��� .RE .PP .B option \fBntp-servers\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê NTP (RFC 1035) ¥µ¡¼¥Ð¤ò¼¨¤¹ -IP ¥¢¥É¥ì¥¹¤ò»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +�ܥ��ץ����ϡ����饤����Ȥ����Ѳ�ǽ�� NTP (RFC 1035) �����Фò¼¨¤ï¿½ +IP ���ɥ쥹����ꤷ�ޤ��� +�����Фϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .B option \fBnwip-domain\fR \fIstring\fR\fB;\fR .RS 0.25i .PP .\" metal -NetWare/IP ¥¯¥é¥¤¥¢¥ó¥È¤¬»ÈÍѤ¹¤Ù¤­ NetWare/IP ¥É¥á¥¤¥ó¤Î̾Á°¤Ç¤¹¡£ +NetWare/IP ���饤����Ȥ����Ѥ��٤� NetWare/IP �ɥᥤ���̾���Ǥ��� .RE .PP .B option \fBnwip-suboptions\fR \fIstring\fR\fB;\fR .RS 0.25i .PP .\" metal -NetWare/IP ¥¯¥é¥¤¥¢¥ó¥ÈÍѤΥµ¥Ö¥ª¥×¥·¥ç¥ó¤Î¥·¡¼¥±¥ó¥¹¤Ç¤¹¡£ -¾Ü¤·¤¯¤Ï RFC2242 ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ -Ä̾ËÜ¥ª¥×¥·¥ç¥ó¤ÏÆÃÄê¤Î NetWare/IP ¥µ¥Ö¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤³¤È¤Ç -ÀßÄꤵ¤ì¤Þ¤¹¡£ -¤µ¤é¤Ê¤ë¾ðÊó¤Ï¡ÖNetWare/IP ¥µ¥Ö¥ª¥×¥·¥ç¥ó¡×¤Î¾Ï¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ +NetWare/IP ���饤������ѤΥ��֥��ץ����Υ������󥹤Ǥ��� +�ܤ����� RFC2242 �ò»²¾È¤ï¿½ï¿½Æ¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ +�̾�ܥ��ץ���������� NetWare/IP ���֥��ץ�������ꤹ�뤳�Ȥ� +���ꤵ��ޤ��� +����ʤ����ϡ�NetWare/IP ���֥��ץ����פξϤò»²¾È¤ï¿½ï¿½Æ¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ .RE .PP .B option \fBpath-mtu-aging-timeout\fR \fIuint32\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢RFC 1191 ¤ÇÄêµÁ¤µ¤ì¤ëµ¡¹½¤Çȯ¸«¤µ¤ì¤¿¥Ñ¥¹ MTU ÃͤΠ-¥¨¡¼¥¸¥ó¥°¤Ë»ÈÍѤ¹¤ë¥¿¥¤¥à¥¢¥¦¥È (ÉÃñ°Ì) ¤ò»ØÄꤷ¤Þ¤¹¡£ +�ܥ��ץ����ϡ�RFC 1191 ���������뵡����ȯ�����줿�ѥ� MTU �ͤ� +�������󥰤˻��Ѥ��륿���ॢ���� (��ñ��) ����ꤷ�ޤ��� .RE .PP .B option \fBpath-mtu-plateau-table\fR \fIuint16\fR [\fB,\fR \fIuint16\fR... ]\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢RFC 1191 ¤ÇÄêµÁ¤µ¤ì¤ë¥Ñ¥¹ MTU õº÷ (Path MTU Discovery) -¼Â»Ü»þ¤Ë»ÈÍѤµ¤ì¤ë MTU ¤Î¥µ¥¤¥º¤Îɽ¤ò»ØÄꤷ¤Þ¤¹¡£ -ɽ¤Î½ñ¼°¤Ï¡¢ºÇ¾®¤«¤é½ç¤ËºÇÂç¤Þ¤Ç¤Î¡¢16 ¥Ó¥Ã¥ÈÉä¹æ̵¤·À°¿ô¤Î¥ê¥¹¥È¤Ç¤¹¡£ -ºÇ¾® MTU ¤Ï 68 ¤è¤ê¾®¤µ¤¯¤Æ¤Ï¤Ê¤ê¤Þ¤»¤ó¡£ +�ܥ��ץ����ϡ�RFC 1191 ����������ѥ� MTU õ�� (Path MTU Discovery) +�»ܻ��˻��Ѥ���� MTU �Υ�������ɽ����ꤷ�ޤ��� +ɽ�νñ¼°¤Ï¡ï¿½ï¿½Ç¾ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ëºï¿½ï¿½ï¿½Þ¤Ç¤Î¡ï¿½16 �ӥå����̵�������Υꥹ�ȤǤ��� +�Ǿ� MTU �� 68 ��꾮�����ƤϤʤ�ޤ��� .RE .PP .B option \fBperform-mask-discovery\fR \fIflag\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ ICMP ¤ò»ÈÍѤ·¤Æ¥µ¥Ö¥Í¥Ã¥È¥Þ¥¹¥¯Ãµº÷¤ò -¼Â»Ü¤¹¤Ù¤­¤«¤ò»ØÄꤷ¤Þ¤¹¡£ -ÃÍ false ¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¥Þ¥¹¥¯Ãµº÷¤ò¼Â»Ü¤¹¤Ù¤­¤Ç¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£ -ÃÍ true ¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¥Þ¥¹¥¯Ãµº÷¤ò¼Â»Ü¤¹¤Ù¤­¤Ç¤¢¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£ +�ܥ��ץ����ϡ����饤����Ȥ� ICMP ����Ѥ��ƥ��֥ͥåȥޥ���õ���� +�»ܤ��٤�������ꤷ�ޤ��� +�� false �ϡ����饤����Ȥ��ޥ���õ����»ܤ��٤��Ǥʤ����Ȥ��̣���ޤ��� +�� true �ϡ����饤����Ȥ��ޥ���õ����»ܤ��٤��Ǥ��뤳�Ȥ��̣���ޤ��� .RE .PP .nf @@ -740,22 +740,22 @@ NetWare/IP .fi .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢Èó¥í¡¼¥«¥ë¤Ê»ØÄê·ÐÏ©À©¸æ¤ËÂФ¹¤ë¥Ý¥ê¥·¥Õ¥£¥ë¥¿¤ò»ØÄꤷ¤Þ¤¹¡£ -¥Õ¥£¥ë¥¿¤Ï¡¢IP ¥¢¥É¥ì¥¹¤È¥Þ¥¹¥¯¤ÎÁȤΥꥹ¥È¤«¤é¤Ê¤ê¡¢ -ÅþÃ夹¤ë»ØÄê·ÐÏ©À©¸æ¤µ¤ì¤¿¥Ç¡¼¥¿¥°¥é¥àÍѤΥե£¥ë¥¿¤È¤Ê¤ë -°¸Àè/¥Þ¥¹¥¯¤ÎÁȤò»ØÄꤷ¤Þ¤¹¡£ +�ܥ��ץ����ϡ����������ʻ����ϩ������Ф���ݥꥷ�ե��륿����ꤷ�ޤ��� +�ե��륿�ϡ�IP ���ɥ쥹�ȥޥ������ȤΥꥹ�Ȥ���ʤꡢ +���夹������ϩ���椵�줿�ǡ���������ѤΥե��륿�Ȥʤ� +����/�ޥ������Ȥ���ꤷ�ޤ��� .PP -¼¡¥Û¥Ã¥×¥¢¥É¥ì¥¹¤¬¥Õ¥£¥ë¥¿¤Î¤¤¤º¤ì¤Ë¤âŬ¹ç¤·¤Ê¤¤»ØÄê·ÐÏ©À©¸æ¤µ¤ì¤¿ -¥Ç¡¼¥¿¥°¥é¥à¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ÇË´þ¤¹¤Ù¤­¤Ç¤¹¡£ +���ۥåץ��ɥ쥹���ե��륿�Τ�����ˤ�Ŭ�礷�ʤ������ϩ���椵�줿 +�ǡ��������ϡ����饤����Ȥ��˴����٤��Ǥ��� .PP -¤µ¤é¤Ê¤ë¾ðÊó¤Ï STD 3 (RFC1122) ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ +����ʤ����� STD 3 (RFC1122) �ò»²¾È¤ï¿½ï¿½Æ¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ .RE .PP .B option \fBpop-server\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -POP3 ¥µ¡¼¥Ð¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê POP3 ¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +POP3 �����Х��ץ����ϡ����饤����Ȥ����Ѳ�ǽ�� POP3 �Υꥹ�Ȥ���ꤷ�ޤ��� +�����Фϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .B option \fBresource-location-servers\fR \fIip-address\fR @@ -763,40 +763,40 @@ POP3 .fi .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê -RFC 887 ¥ê¥½¡¼¥¹¥í¥±¡¼¥·¥ç¥ó¥µ¡¼¥Ð¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +�ܥ��ץ����ϡ����饤����Ȥ����Ѳ�ǽ�� +RFC 887 �꥽��������������󥵡��ФΥꥹ�Ȥ���ꤷ�ޤ��� +�����Фϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .B option \fBroot-path\fR \fItext\fB;\fR\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤Î¥ë¡¼¥È¥Ç¥£¥¹¥¯¤¬´Þ¤Þ¤ì¤ë¥Ñ¥¹Ì¾¤ò»ØÄꤷ¤Þ¤¹¡£ -¥Ñ¥¹¤Î½ñ¼°¤Ï¡¢NVT ASCII ʸ»ú½¸¹ç¤Îʸ»ú¤«¤é¤Ê¤ëʸ»úÎó¤Ç¤¹¡£ +�ܥ��ץ����ϡ����饤����ȤΥ롼�ȥǥ��������ޤޤ��ѥ�̾����ꤷ�ޤ��� +�ѥ��νñ¼°¤Ï¡ï¿½NVT ASCII ʸ�������ʸ������ʤ�ʸ����Ǥ��� .RE .PP .B option \fBrouter-discovery\fR \fIflag\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢RFC 1256 ¤ÇÄêµÁ¤µ¤ì¤ë¥ë¡¼¥¿Ãµº÷ (Router Discovery) µ¡¹½¤ò -»ÈÍѤ·¤Æ¡¢¥ë¡¼¥¿¤òÍ×ÀÁ¤¹¤Ù¤­¤«¤ò»ØÄꤷ¤Þ¤¹¡£ -ÃÍ false ¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¥ë¡¼¥¿Ãµº÷¤ò¼Â»Ü¤¹¤Ù¤­¤Ç¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£ -ÃÍ true ¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ï¥ë¡¼¥¿Ãµº÷¤ò¼Â»Ü¤¹¤Ù¤­¤Ç¤¢¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£ +�ܥ��ץ����ϡ�RFC 1256 ����������롼��õ�� (Router Discovery) ������ +���Ѥ��ơ��롼�����������٤�������ꤷ�ޤ��� +�� false �ϡ����饤����Ȥ��롼��õ����»ܤ��٤��Ǥʤ����Ȥ��̣���ޤ��� +�� true �ϡ����饤����Ȥϥ롼��õ����»ܤ��٤��Ǥ��뤳�Ȥ��̣���ޤ��� .RE .PP .B option \fBrouter-solicitation-address\fR \fIip-address\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤Î¥ë¡¼¥¿Í×ÀÁ¤ÎÁ÷½ÐÀ襢¥É¥ì¥¹¤ò»ØÄꤷ¤Þ¤¹¡£ +�ܥ��ץ����ϡ����饤����ȤΥ롼�������������襢�ɥ쥹����ꤷ�ޤ��� .RE .PP .B option routers \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -routers ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤Î¥µ¥Ö¥Í¥Ã¥È¾å¤Ë¤¢¤ë¥ë¡¼¥¿¤Î -IP ¥¢¥É¥ì¥¹¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¥ë¡¼¥¿¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +routers ���ץ����ϡ����饤����ȤΥ��֥ͥåȾ�ˤ���롼���� +IP ���ɥ쥹�Υꥹ�Ȥ���ꤷ�ޤ��� +�롼���ϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .B option slp-directory-agent \fIboolean ip-address @@ -804,51 +804,51 @@ IP .RS 0.25i .PP .\" metal -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢2 ¤Ä¤Î¹àÌܤò»ØÄꤷ¤Þ¤¹: -1 ¤Ä°Ê¾å¤Î¥µ¡¼¥Ó¥¹¥í¥±¡¼¥·¥ç¥ó¥×¥í¥È¥³¥ë¥Ç¥£¥ì¥¯¥È¥ê¥¨¡¼¥¸¥§¥ó¥È -(Service Location Protocol Directory Agent) ¤Î IP ¥¢¥É¥ì¥¹¤È¡¢ -¤³¤ì¤é¤Î¥¢¥É¥ì¥¹¤Î»ÈÍѤ¬¶¯À©Åª¤«¤É¤¦¤«¤Ç¤¹¡£ -ºÇ½é¤Î¥Ö¡¼¥ëÃͤ¬ true ¤Ç¤¢¤ì¤Ð¡¢SLP ¥¨¡¼¥¸¥§¥ó¥È¤Ï¡¢¤¿¤ÀÍ¿¤¨¤é¤ì¤¿ -IP ¥¢¥É¥ì¥¹¤Î¤ß¤ò»ÈÍѤ¹¤Ù¤­¤Ç¤¹¡£ -Ãͤ¬ false ¤Ç¤¢¤ì¤Ð¡¢SLP ¥¨¡¼¥¸¥§¥ó¥È¤Ï¡¢SLP ¥¨¡¼¥¸¥§¥ó¥È¤Î -ǽưŪ¤â¤·¤¯¤Ï¼õưŪ¤Ê¥Þ¥ë¥Á¥­¥ã¥¹¥Èõº÷¤òÄɲäǹԤäƤ⹽¤¤¤Þ¤»¤ó -(¾Ü¤·¤¯¤Ï RFC2165 ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤)¡£ -.PP -ËÜ¥ª¥×¥·¥ç¥ó¤È slp-service-scope ¥ª¥×¥·¥ç¥ó¤Ë¤ª¤¤¤Æ¡¢ -¡ÖSLP ¥¨¡¼¥¸¥§¥ó¥È¡×¤È¤Ï¡¢DHCP ¥×¥í¥È¥³¥ë¤òÍѤ¤¤ÆÀßÄꤵ¤ì¤¿¥Þ¥·¥ó¾å¤Ç -Æ°ºî¤·¤Æ¤¤¤ë¥µ¡¼¥Ó¥¹¥í¥±¡¼¥·¥ç¥ó¥×¥í¥È¥³¥ë¥¨¡¼¥¸¥§¥ó¥È¤ò»Ø¤·¤Æ¤¤¤ë¤³¤È¤Ë -Ãí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£ -.PP -¤Þ¤¿¡¢¤¤¤¯¤Ä¤«¤Î´ë¶È¤Ï SLP ¤ò NDS ¤È¸Æ¤ó¤Ç¤¤¤ë¤³¤È¤âµ¤¤òÉÕ¤±¤Æ¤¯¤À¤µ¤¤¡£ -¤â¤· NDS ¥Ç¥£¥ì¥¯¥È¥ê¥¨¡¼¥¸¥§¥ó¥È¤¬¤¢¤ê¡¢¤½¤Î¥¢¥É¥ì¥¹¤òÀßÄꤹ¤ëɬÍפ¬ -¤¢¤ë¾ì¹ç¤Ï¡¢ slp-directory-agent ¥ª¥×¥·¥ç¥ó¤¬ÍøÍѤǤ­¤ë¤Ï¤º¤Ç¤¹¡£ +�ܥ��ץ����ϡ�2 �Ĥι��ܤ���ꤷ�ޤ�: +1 �İʾ�Υ����ӥ������������ץ��ȥ���ǥ��쥯�ȥꥨ��������� +(Service Location Protocol Directory Agent) �� IP ���ɥ쥹�ȡ� +�����Υ��ɥ쥹�λ��Ѥ�����Ū���ɤ����Ǥ��� +�ǽ�Υ֡����ͤ� true �Ǥ���С�SLP ����������Ȥϡ�����Ϳ����줿 +IP ���ɥ쥹�Τߤ���Ѥ��٤��Ǥ��� +�ͤ� false �Ǥ���С�SLP ����������Ȥϡ�SLP ����������Ȥ� +ǽưŪ�⤷���ϼ�ưŪ�ʥޥ�����㥹��õ�����ɲäǹԤäƤ⹽���ޤ��� +(�ܤ����� RFC2165 �ò»²¾È¤ï¿½ï¿½Æ¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½)�� +.PP +�ܥ��ץ����� slp-service-scope ���ץ����ˤ����ơ� +��SLP ����������ȡפȤϡ�DHCP �ץ��ȥ�����Ѥ������ꤵ�줿�ޥ����� +ư��Ƥ��륵���ӥ������������ץ��ȥ��륨��������Ȥ�ؤ��Ƥ��뤳�Ȥ� +���դ��Ƥ��������� +.PP +�ޤ��������Ĥ��δ�Ȥ� SLP �� NDS �ȸƤ�Ǥ��뤳�Ȥⵤ���դ��Ƥ��������� +�⤷ NDS �ǥ��쥯�ȥꥨ��������Ȥ����ꡢ���Υ��ɥ쥹�����ꤹ��ɬ�פ� +������ϡ� slp-directory-agent ���ץ�������ѤǤ���Ϥ��Ǥ��� .RE .PP .B option slp-service-scope \fIboolean text\fR\fB;\fR .RS 0.25i .PP .\" metal -¥µ¡¼¥Ó¥¹¥í¥±¡¼¥·¥ç¥ó¥×¥í¥È¥³¥ë¤Î¥µ¡¼¥Ó¥¹¥¹¥³¡¼¥×¥ª¥×¥·¥ç¥ó¤Ï¡¢ -2 ¤Ä¤Î¹àÌܤò»ØÄꤷ¤Þ¤¹: -SLP ÍѤΥµ¡¼¥Ó¥¹¥¹¥³¡¼¥×¤Î¥ê¥¹¥È¤È¡¢¤³¤Î¥ê¥¹¥È¤Î»ÈÍѤ¬¶¯À©Åª¤«¤É¤¦¤«¤Ç¤¹¡£ -ºÇ½é¤Î¥Ö¡¼¥ëÃͤ¬ true ¤Ç¤¢¤ì¤Ð¡¢SLP ¥¨¡¼¥¸¥§¥ó¥È¤Ï¡¢ËÜ¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê -Ä󶡤µ¤ì¤ë¥¹¥³¡¼¥×¤Î¥ê¥¹¥È¤Î¤ß¤ò»ÈÍѤ¹¤Ù¤­¤Ç¤¹¡£ -¤½¤¦¤Ç¤Ê¤±¤ì¤Ð¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ÇÄ󶡤µ¤ì¤ë¥ê¥¹¥È¤ËÍ¥À褷¤Æ¡¢ -¤½¤ì¤¾¤ì¤Î¸ÇͭŪ¤ÎÀßÄê¤ò»È¤Ã¤Æ¤â¹½¤¤¤Þ¤»¤ó¡£ +�����ӥ������������ץ��ȥ���Υ����ӥ��������ץ��ץ����ϡ� +2 �Ĥι��ܤ���ꤷ�ޤ�: +SLP �ѤΥ����ӥ��������פΥꥹ�Ȥȡ����Υꥹ�Ȥλ��Ѥ�����Ū���ɤ����Ǥ��� +�ǽ�Υ֡����ͤ� true �Ǥ���С�SLP ����������Ȥϡ��ܥ��ץ����ˤ�� +�󶡤���륹�����פΥꥹ�ȤΤߤ���Ѥ��٤��Ǥ��� +�����Ǥʤ���С����Υ��ץ������󶡤����ꥹ�Ȥ�ͥ�褷�ơ� +���줾��θ�ͭŪ�������ȤäƤ⹽���ޤ��� .PP -text ʸ»úÎó¤Ï¡¢SLP ¥¨¡¼¥¸¥§¥ó¥È¤¬»ÈÍѤ¹¤Ù¤­¥¹¥³¡¼¥×¤Î¡¢¥³¥ó¥Þ¶èÀÚ¤ê¤Î -¥ê¥¹¥È¤È¤·¤Æ¤¯¤À¤µ¤¤¡£ -¤³¤ì¤Ï¾Êά²Äǽ¤Ç¡¢¤½¤Î¾ì¹ç SLP ¥¨¡¼¥¸¥§¥ó¥È¤Ï¡¢¼«Ê¬¤¬ÃΤäƤ¤¤ë -¤¹¤Ù¤Æ¤Î¥Ç¥£¥ì¥¯¥È¥ê¥¨¡¼¥¸¥§¥ó¥È¤Î¥¹¥³¡¼¥×¤Î°ì³ç¥ê¥¹¥È¤ò»È¤¤¤Þ¤¹¡£ +text ʸ����ϡ�SLP ����������Ȥ����Ѥ��٤��������פΡ�����޶��ڤ�� +�ꥹ�ȤȤ��Ƥ��������� +����Ͼ�ά��ǽ�ǡ����ξ�� SLP ����������Ȥϡ���ʬ���ΤäƤ��� +���٤ƤΥǥ��쥯�ȥꥨ��������ȤΥ������פΰ��ꥹ�Ȥ�Ȥ��ޤ��� .RE .PP .B option \fBsmtp-server\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -SMTP ¥µ¡¼¥Ð¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê SMTP ¥µ¡¼¥Ð¤Î¥ê¥¹¥È¤ò -»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +SMTP �����Х��ץ����ϡ����饤����Ȥ����Ѳ�ǽ�� SMTP �����ФΥꥹ�Ȥ� +���ꤷ�ޤ��� +�����Фϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .nf @@ -857,26 +857,26 @@ SMTP .fi .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬·ÐÏ©¥­¥ã¥Ã¥·¥å¤ËÁȤ߹þ¤à¤Ù¤­ -ÀÅŪ·ÐÏ©¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -Ʊ¤¸°¸Àè¤ËÂФ·¤ÆÊ£¿ô¤Î·ÐÏ©¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢ -Í¥ÀèÅÙ¤¬Ä㤯¤Ê¤ë½ç½ø¤Ç¥ê¥¹¥È¤µ¤ì¤Þ¤¹¡£ +�ܥ��ץ����ϡ����饤����Ȥ���ϩ����å�����Ȥ߹���٤� +��Ū��ϩ�Υꥹ�Ȥ���ꤷ�ޤ��� +Ʊ��������Ф���ʣ���η�ϩ�����ꤵ��Ƥ�����ϡ� +ͥ���٤��㤯�ʤ����ǥꥹ�Ȥ���ޤ��� .PP -·ÐÏ©¤Ï IP ¥¢¥É¥ì¥¹¤ÎÁȤΥꥹ¥È¤«¤é¤Ê¤ê¤Þ¤¹¡£ -ºÇ½é¤Î¥¢¥É¥ì¥¹¤Ï°¸À襢¥É¥ì¥¹¤Ç¤¢¤ê¡¢ -2 ÈÖÌܤΥ¢¥É¥ì¥¹¤Ï¤½¤Î°¸Àè¤ËÂФ¹¤ë¥ë¡¼¥¿¤Î¥¢¥É¥ì¥¹¤Ç¤¹¡£ +��ϩ�� IP ���ɥ쥹���ȤΥꥹ�Ȥ���ʤ�ޤ��� +�ǽ�Υ��ɥ쥹�ϰ��襢�ɥ쥹�Ǥ��ꡢ +2 ���ܤΥ��ɥ쥹�Ϥ��ΰ�����Ф���롼���Υ��ɥ쥹�Ǥ��� .PP -¥Ç¥Õ¥©¥ë¥È·ÐÏ© (0.0.0.0) ¤Ï¡¢ÀÅŪ·ÐÏ©¤ËÂФ·¤Æ¤ÏÉÔÀµ¤Ê°¸Àè¤Ç¤¹¡£ -¥Ç¥Õ¥©¥ë¥È·ÐÏ©¤ò»ØÄꤹ¤ë¤Ë¤Ï¡¢ +�ǥե���ȷ�ϩ (0.0.0.0) �ϡ���Ū��ϩ���Ф��Ƥ������ʰ���Ǥ��� +�ǥե���ȷ�ϩ����ꤹ��ˤϡ� .B routers -¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£ -¤Þ¤¿¡¢ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¹¥ì¥¹¤Ê IP ·ÐÏ©À©¸æ¤ò°Õ¿Þ¤·¤¿¤â¤Î¤Ç¤Ï -¤Ê¤¤¤³¤È¤ËÃí°Õ¤·¤Æ²¼¤µ¤¤¡£ -¤³¤ì¤Ï¥µ¥Ö¥Í¥Ã¥È¥Þ¥¹¥¯¤ò´Þ¤ó¤Ç¤¤¤Þ¤»¤ó¡£ -¸½ºß¡¢¥¯¥é¥¹¥ì¥¹¤Ê IP ·ÐÏ©À©¸æ¤Ï¡¢¤â¤Ã¤È¤â¹­¤¯Å¸³«¤µ¤ì¤Æ¤¤¤ë -·ÐÏ©À©¸æɸ½à¤Ê¤Î¤Ç¡¢ËÜ¥ª¥×¥·¥ç¥ó¤Ï¼Â¼ÁŪ¤Ë̵°ÕÌ£¤Ç¤¹¡£ -¤½¤·¤Æ¡¢¥Þ¥¤¥¯¥í¥½¥Õ¥È DHCP ¥¯¥é¥¤¥¢¥ó¥È¤ò¤Ï¤¸¤á¤È¤¹¤ë¤è¤¯ÃΤé¤ì¤¿ -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ë¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£ +���ץ�������Ѥ��Ƥ��������� +�ޤ����ܥ��ץ����ϡ����饹�쥹�� IP ��ϩ�����տޤ�����ΤǤ� +�ʤ����Ȥ����դ��Ʋ������� +����ϥ��֥ͥåȥޥ�����ޤ�Ǥ��ޤ��� +���ߡ����饹�쥹�� IP ��ϩ����ϡ���äȤ⹭��Ÿ������Ƥ��� +��ϩ����ɸ��ʤΤǡ��ܥ��ץ����ϼ¼�Ū��̵��̣�Ǥ��� +�����ơ��ޥ��������ե� DHCP ���饤����Ȥ�Ϥ���Ȥ���褯�Τ�줿 +DHCP ���饤����Ȥˤϼ�������Ƥ��ޤ��� .RE .PP .nf @@ -885,288 +885,288 @@ DHCP .fi .RS 0.25i .PP -StreetTalk Directory Assistance (STDA) ¥µ¡¼¥Ð¥ª¥×¥·¥ç¥ó¤Ï¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê STDA ¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +StreetTalk Directory Assistance (STDA) �����Х��ץ����ϡ� +���饤����Ȥ����Ѳ�ǽ�� STDA �Υꥹ�Ȥ���ꤷ�ޤ��� +�����Фϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .B option \fBstreettalk-server\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -StreetTalk ¥µ¡¼¥Ð¥ª¥×¥·¥ç¥ó¤Ï¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê StreetTalk ¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +StreetTalk �����Х��ץ����ϡ� +���饤����Ȥ����Ѳ�ǽ�� StreetTalk �Υꥹ�Ȥ���ꤷ�ޤ��� +�����Фϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .B option subnet-mask \fIip-address\fR\fB;\fR .RS 0.25i .PP -¥µ¥Ö¥Í¥Ã¥È¥Þ¥¹¥¯¥ª¥×¥·¥ç¥ó¤Ï¡¢RFC 950 ¤Ë½¾¤Ã¤Æ¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤Î¥µ¥Ö¥Í¥Ã¥È¥Þ¥¹¥¯¤ò»ØÄꤷ¤Þ¤¹¡£ -¥¹¥³¡¼¥×Ãæ¤Î¤É¤³¤Ë¤â¥µ¥Ö¥Í¥Ã¥È¥Þ¥¹¥¯¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢ -ºÇ½ª¼êÃʤȤ·¤Æ¡¢dhcpd ¤Ï¡¢¥¢¥É¥ì¥¹¤ò³ä¤êÅö¤Æ¤è¤¦¤È¤·¤Æ¤¤¤ë -¥Í¥Ã¥È¥ï¡¼¥¯¤Î¥µ¥Ö¥Í¥Ã¥ÈÀë¸À¤«¤é¡¢¥µ¥Ö¥Í¥Ã¥È¥Þ¥¹¥¯¤ò»ÈÍѤ·¤Þ¤¹¡£ -¤·¤«¤·¡¢¥¢¥É¥ì¥¹¤ò³ä¤êÅö¤Æ¤è¤¦¤È¤·¤Æ¤¤¤ë¥Í¥Ã¥È¥ï¡¼¥¯¤Î¥¹¥³¡¼¥×Ãæ¤Î -.I ¤É¤Î¤è¤¦¤Ê -¥µ¥Ö¥Í¥Ã¥È¥Þ¥¹¥¯¥ª¥×¥·¥ç¥óÀë¸À¤Ç¤¢¤Ã¤Æ¤â¡¢ -¥µ¥Ö¥Í¥Ã¥ÈÀë¸À¤Ç»ØÄꤵ¤ì¤¿¥µ¥Ö¥Í¥Ã¥È¥Þ¥¹¥¯¤ËÍ¥À褷¤Þ¤¹¡£ +���֥ͥåȥޥ������ץ����ϡ�RFC 950 �˽��äơ� +���饤����ȤΥ��֥ͥåȥޥ�������ꤷ�ޤ��� +����������Τɤ��ˤ⥵�֥ͥåȥޥ������ץ���󤬻��ꤵ��Ƥ��ʤ���硢 +�ǽ����ʤȤ��ơ�dhcpd �ϡ����ɥ쥹�������Ƥ褦�Ȥ��Ƥ��� +�ͥåȥ���Υ��֥ͥå�������顢���֥ͥåȥޥ�������Ѥ��ޤ��� +�����������ɥ쥹�������Ƥ褦�Ȥ��Ƥ���ͥåȥ���Υ���������� +.I �ɤΤ褦�� +���֥ͥåȥޥ������ץ��������Ǥ��äƤ⡢ +���֥ͥå�����ǻ��ꤵ�줿���֥ͥåȥޥ�����ͥ�褷�ޤ��� .RE .PP .B option \fBsubnet-selection\fR \fIstring\fR\fB;\fR .RS 0.25i .PP .\" metal -(Í׵᤬½Ð¤µ¤ì¤¿¥µ¥Ö¥Í¥Ã¥È¤Ë¤Ä¤Ê¤¬¤ì¤¿¥ê¥ì¡¼¥µ¡¼¥Ð¤Î¥¢¥É¥ì¥¹¤Ë´ð¤Å¤¤¤Æ) -Ä̾ïÁªÂò¤µ¤ì¤ë¤Ç¤¢¤í¤¦¤â¤Î¤Ç¤Ï¤Ê¤¤¥µ¥Ö¥Í¥Ã¥È¤Î¥¢¥É¥ì¥¹¤¬É¬Íפʾì¹ç¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤¬Á÷½Ð¤·¤Þ¤¹¡£ -RFC3011 ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ -¤³¤Î¥µ¡¼¥Ð¤Ë¤ª¤¤¤Æ»È¤ï¤ì¤ë¥ª¥×¥·¥ç¥ó¥Ê¥ó¥Ð¤Ï 118 ¤Ç¤¹¡£ -¤³¤Î¥Ê¥ó¥Ð¤Ï°ÊÁ°¤«¤é¤º¤Ã¤ÈÄêµÁ¤µ¤ì¤Æ¤¤¤¿¥Ê¥ó¥Ð¤Ç¤Ï¤Ê¤¯¡¢ -°ã¤¦Ãͤò»ÈÍѤ¹¤ë¥¯¥é¥¤¥¢¥ó¥È¤â¸ºß¤¹¤ë¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£ -¤³¤Î¥ª¥×¥·¥ç¥ó¤Î»ÈÍѤϾ¯¡¹¼Â¸³Åª¤Ç¤¢¤ë¤È¹Í¤¨¤ë¤Ù¤­¤Ç¤·¤ç¤¦! +(�׵᤬�Ф��줿���֥ͥåȤˤĤʤ��줿��졼�����ФΥ��ɥ쥹�˴�Ť���) +�̾����ò¤µ¤ï¿½ï¿½Ç¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Î¤Ç¤Ï¤Ê¤ï¿½ï¿½ï¿½ï¿½Ö¥Í¥Ã¥È¤Î¥ï¿½ï¿½É¥ì¥¹ï¿½ï¿½É¬ï¿½×¤Ê¾ï¿½ç¡¢ +���饤����Ȥ����Ф��ޤ��� +RFC3011 �ò»²¾È¤ï¿½ï¿½Æ¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ +���Υ����Фˤ����ƻȤ��륪�ץ����ʥ�Ф� 118 �Ǥ��� +���Υʥ�Фϰ������餺�ä��������Ƥ����ʥ�ФǤϤʤ��� +�㤦�ͤ���Ѥ��륯�饤����Ȥ�¸�ߤ��뤳�Ȥ����դ��Ƥ��������� +���Υ��ץ����λ��ѤϾ����¸�Ū�Ǥ���ȹͤ���٤��Ǥ��礦! .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥µ¡¼¥Ð¤Ç¤Ï¥æ¡¼¥¶¤¬ÀßÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£ +�ܥ��ץ����ϡ������ФǤϥ桼�������ꤹ�뤳�ȤϤǤ��ޤ��� .PP .RE .PP .B option \fBswap-server\fR \fIip-address\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤Î¥¹¥ï¥Ã¥×¥µ¡¼¥Ð¤Î IP ¥¢¥É¥ì¥¹¤ò»ØÄꤷ¤Þ¤¹¡£ +�ܥ��ץ����ϡ����饤����ȤΥ���åץ����Ф� IP ���ɥ쥹����ꤷ�ޤ��� .RE .PP .B option \fBtcp-keepalive-garbage\fR \fIflag\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¸Å¤¤¼ÂÁõ¤È¤Î¸ß´¹À­¤Î¤¿¤á¤Ë¡¢¥´¥ß¤Î¥ª¥¯¥Æ¥Ã¥È¤È°ì½ï¤Ë¡¢ -TCP ¥­¡¼¥×¥¢¥é¥¤¥Ö¥á¥Ã¥»¡¼¥¸¤ò¥¯¥é¥¤¥¢¥ó¥È¤¬Á÷¤ë¤Ù¤­¤«¤ò»ØÄꤷ¤Þ¤¹¡£ -ÃÍ false ¤Ï¡¢¥´¥ß¤Î¥ª¥¯¥Æ¥Ã¥È¤òÁ÷¤ë¤Ù¤­¤Ç¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£ -ÃÍ true ¤Ï¡¢¥´¥ß¤Î¥ª¥¯¥Æ¥Ã¥È¤òÁ÷¤ë¤Ù¤­¤Ç¤¢¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£ +�ܥ��ץ����ϡ��Ť������Ȥθߴ����Τ���ˡ����ߤΥ����ƥåȤȰ��ˡ� +TCP �����ץ��饤�֥�å������ò¥¯¥é¥¤ï¿½ï¿½ï¿½ï¿½È¤ï¿½ï¿½ï¿½ï¿½ï¿½Ù¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ê¤·ï¿½Þ¤ï¿½ï¿½ï¿½ +�� false �ϡ����ߤΥ����ƥåȤ�����٤��Ǥʤ����Ȥ��̣���ޤ��� +�� true �ϡ����ߤΥ����ƥåȤ�����٤��Ǥ��뤳�Ȥ��̣���ޤ��� .RE .PP .B option \fBtcp-keepalive-interval\fR \fIuint32\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤Î TCP ¤¬¥­¡¼¥×¥¢¥é¥¤¥Ö (keepalive) -¥á¥Ã¥»¡¼¥¸¤ò TCP Àܳ¾å¤ËÁ÷¿®¤¹¤ëÁ°¤ËÂԤĤ٤­´Ö³Ö (ÉÃñ°Ì) ¤ò»ØÄꤷ¤Þ¤¹¡£ -»þ´Ö¤Ï 32 ¥Ó¥Ã¥ÈÉä¹æ̵¤·À°¿ô¤Ç»ØÄꤷ¤Þ¤¹¡£ -ÃÍ 0 ¤Ï¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤¬ÌÀ¼¨Åª¤ËÍ׵ᤷ¤Ê¤¤¸Â¤ê¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ -Àܳ¾å¤Ë¥­¡¼¥×¥¢¥é¥¤¥Ö¥á¥Ã¥»¡¼¥¸¤òÀ¸À®¤¹¤Ù¤­¤Ç¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£ +�ܥ��ץ����ϡ����饤����Ȥ� TCP �������ץ��饤�� (keepalive) +�������� TCP ��³����������������ԤĤ٤��ֳ� (��ñ��) ����ꤷ�ޤ��� +���֤� 32 �ӥå����̵�������ǻ��ꤷ�ޤ��� +�� 0 �ϡ����ץꥱ�����������Ū���׵ᤷ�ʤ��¤ꡢ���饤����Ȥ� +��³��˥����ץ��饤�֥�å��������������٤��Ǥʤ����Ȥ��̣���ޤ��� .RE .PP .B option \fBtftp-server-name\fR \fItext\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï TFTP ¥µ¡¼¥Ð¤ò»ØÄꤹ¤ë¤Î¤Ë»ÈÍѤµ¤ì¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ -¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï \fBserver-name\fR Àë¸À¤ÈƱ¤¸¸ú²Ì¤ò»ý¤Á¤Þ¤¹¡£ -BOOTP ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢ËÜ¥ª¥×¥·¥ç¥ó¤ò¥µ¥Ý¡¼¥È¤·¤Ê¤¤¤Ç¤·¤ç¤¦¡£ -DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ë¤è¤Ã¤Æ¤Ï¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë¤â¤Î¤¬¤¢¤ê¡¢ -¼ÂºÝɬ¿Ü¤È¤·¤Æ¤¤¤ë¤â¤Î¤¬¤¢¤ê¤Þ¤¹¡£ +�ܥ��ץ����� TFTP �����Ф���ꤹ��Τ˻��Ѥ��졢���饤����Ȥ� +���ݡ��Ȥ��Ƥ�����ˤ� \fBserver-name\fR �����Ʊ�����̤�����ޤ��� +BOOTP ���饤����Ȥϡ��ܥ��ץ����ò¥µ¥Ý¡ï¿½ï¿½È¤ï¿½ï¿½Ê¤ï¿½ï¿½Ç¤ï¿½ï¿½ç¤¦ï¿½ï¿½ +DHCP ���饤����Ȥˤ�äƤϥ��ݡ��Ȥ��Ƥ����Τ����ꡢ +�º�ɬ�ܤȤ��Ƥ����Τ�����ޤ��� .RE .PP .B option time-offset \fIint32\fR\fB;\fR .RS 0.25i .PP -time-offset ¥ª¥×¥·¥ç¥ó¤Ï¡¢¶¨ÄêÀ¤³¦»þ (UTC) ¤ò´ðÅÀ¤È¤·¤Æ¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤Î¥µ¥Ö¥Í¥Ã¥È¤Î¥ª¥Õ¥»¥Ã¥È¤òÉäǻØÄꤷ¤Þ¤¹¡£ +time-offset ���ץ����ϡ����������� (UTC) ������Ȥ��ơ� +���饤����ȤΥ��֥ͥåȤΥ��ե��åȤ��äǻ��ꤷ�ޤ��� .RE .PP .B option time-servers \fIip-address\fR [, \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -time-server ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê RFC 868 »þ¹ï¥µ¡¼¥Ð¤Î -¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +time-server ���ץ����ϡ����饤����Ȥ����Ѳ�ǽ�� RFC 868 ���掠���Ф� +�ꥹ�Ȥ���ꤷ�ޤ��� +�����Фϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .B option \fBtrailer-encapsulation\fR \fIflag\fR\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢ARP ¥×¥í¥È¥³¥ë»ÈÍÑ»þ¤Ë¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¥È¥ì¥¤¥é»ÈÍѤΠ-¥Í¥´¥·¥¨¡¼¥·¥ç¥ó (RFC 893 [14]) ¤ò¤¹¤Ù¤­¤«¤ò»ØÄꤷ¤Þ¤¹¡£ -ÃÍ false ¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¥È¥ì¥¤¥é»ÈÍѤò»î¤ß¤ë¤Ù¤­¤Ç¤Ê¤¤¤È°ÕÌ£¤·¤Þ¤¹¡£ -ÃÍ true ¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¥È¥ì¥¤¥é»ÈÍѤò»î¤ß¤ë¤Ù¤­¤Ç¤¢¤ë¤È°ÕÌ£¤·¤Þ¤¹¡£ +�ܥ��ץ����ϡ�ARP �ץ��ȥ�����ѻ��ˡ����饤����Ȥ��ȥ쥤����Ѥ� +�ͥ������������ (RFC 893 [14]) �ò¤¹¤Ù¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ê¤·ï¿½Þ¤ï¿½ï¿½ï¿½ +�� false �ϡ����饤����Ȥ��ȥ쥤����Ѥ��ߤ�٤��Ǥʤ��Ȱ�̣���ޤ��� +�� true �ϡ����饤����Ȥ��ȥ쥤����Ѥ��ߤ�٤��Ǥ���Ȱ�̣���ޤ��� .RE .PP .B option \fBuap-servers\fR \fItext\fR\fB;\fR .RS 0.25i .PP .\" metal -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥æ¡¼¥¶Ç§¾Ú¥×¥í¥È¥³¥ë (UAP) ¤ËÊñ¤Þ¤ì¤¿Ç§¾ÚÍ×µá¤ò -½èÍý¤¹¤ëǽÎϤΤ¢¤ë¥æ¡¼¥¶Ç§¾Ú¥µ¡¼¥Ó¥¹¤ò¤½¤ì¤¾¤ì»Ø¤·¤Æ¤¤¤ë -URL ¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -UAP ¥µ¡¼¥Ð¤Ï HTTP 1.1 Àܳ¤â SSLv3 Àܳ¤â¼õ¤±¼è¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ -¥ê¥¹¥È¤Ë´Þ¤Þ¤ì¤¿ URL ¤Ë¥Ý¡¼¥ÈÉôʬ¤¬´Þ¤Þ¤ì¤Æ¤Ê¤¤¾ì¹ç¤Ï¡¢ -Ä̾ï¤Î¥Ç¥Õ¥©¥ë¥È¥Ý¡¼¥È¤¬²¾Äꤵ¤ì¤Þ¤¹ -(¤Ä¤Þ¤ê http ¤Ë¤Ï 80 ÈÖ¡¢https ¤Ë¤Ï 443 ÈÖ)¡£ -¥ê¥¹¥È¤Ë´Þ¤Þ¤ì¤¿ URL ¤Ë¥Ñ¥¹¤ÎÉôʬ¤¬´Þ¤Þ¤ì¤Æ¤Ê¤¤¾ì¹ç¤Ï¡¢ -¥Ñ¥¹¤Ï /uap ¤È²¾Äꤵ¤ì¤Þ¤¹¡£ -2 ¤Ä°Ê¾å¤Î URL ¤¬¤³¤Î¥ê¥¹¥È¤Ë»ØÄꤵ¤ì¤¿¾ì¹ç¡¢URL ¤Ï¶õÇò¤Ç¶èÀÚ¤é¤ì¤Þ¤¹¡£ +�ܥ��ץ����ϡ��桼��ǧ�ڥץ��ȥ��� (UAP) ����ޤ줿ǧ���׵�� +��������ǽ�ϤΤ���桼��ǧ�ڥ����ӥ��ò¤½¤ì¤¾ï¿½ï¿½Ø¤ï¿½ï¿½Æ¤ï¿½ï¿½ï¿½ +URL �Υꥹ�Ȥ���ꤷ�ޤ��� +UAP ������ HTTP 1.1 ��³�� SSLv3 ��³�������뤳�Ȥ��Ǥ��ޤ��� +�ꥹ�Ȥ˴ޤޤ줿 URL �˥ݡ�����ʬ���ޤޤ�Ƥʤ����ϡ� +�̾�Υǥե���ȥݡ��Ȥ����ꤵ��ޤ� +(�Ĥޤ� http �ˤ� 80 �֡�https �ˤ� 443 ��)�� +�ꥹ�Ȥ˴ޤޤ줿 URL �˥ѥ�����ʬ���ޤޤ�Ƥʤ����ϡ� +�ѥ��� /uap �Ȳ��ꤵ��ޤ��� +2 �İʾ�� URL �����Υꥹ�Ȥ˻��ꤵ�줿��硢URL �϶���Ƕ��ڤ��ޤ��� .RE .PP .B option \fBuser-class\fR \fIstring\fR\fB;\fR .RS 0.25i .PP .\" metal -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥æ¡¼¥¶¤¬¼±Ê̾ðÊó¤ò¥¯¥é¥¤¥¢¥ó¥È¤Ë»ØÄꤹ¤ë¼êÃʤȤ·¤Æ¡¢ -¤¤¤¯¤Ä¤«¤Î DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ç»È¤ï¤ì¤Þ¤¹¡£ -¤³¤ì¤Ï vendor-class-identifier ¥ª¥×¥·¥ç¥ó¤ÈƱÍͤ˻Ȥï¤ì¤Þ¤¹¤¬¡¢ -¤½¤ÎÃͤϡ¢¥Ù¥ó¥À¤Ç¤Ï¤Ê¤¯¡¢¥æ¡¼¥¶¤Ë¤è¤Ã¤Æ»ØÄꤵ¤ì¤Þ¤¹¡£ -ºÇ¶á¤Î¤Û¤È¤ó¤É¤Î DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢¤³¤Î¼±Ê̻ҤËÃͤò»ØÄꤹ¤ë¤¿¤á¤Î -¥æ¡¼¥¶¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÈ÷¤¨¤Æ¤¤¤Þ¤¹¡£ -¤³¤Î¼±Ê̻Ҥϡ¢Ä̾ï¥Æ¥­¥¹¥Èʸ»úÎó¤Ç¤¹¡£ +�ܥ��ץ����ϡ��桼�������̾���ò¥¯¥é¥¤ï¿½ï¿½ï¿½ï¿½È¤Ë»ï¿½ï¿½ê¤¹ï¿½ï¿½ï¿½ï¿½Ê¤È¤ï¿½ï¿½Æ¡ï¿½ +�����Ĥ��� DHCP ���饤����ȤǻȤ��ޤ��� +����� vendor-class-identifier ���ץ�����Ʊ�ͤ˻Ȥ��ޤ����� +�����ͤϡ��٥���ǤϤʤ����桼���ˤ�äƻ��ꤵ��ޤ��� +�Ƕ�ΤۤȤ�ɤ� DHCP ���饤����Ȥϡ����μ��̻Ҥ��ͤ���ꤹ�뤿��� +�桼�����󥿥ե������������Ƥ��ޤ��� +���μ��̻Ҥϡ��̾�ƥ�����ʸ����Ǥ��� .RE .PP .B option \fBvendor-class-identifier\fR \fIstring\fR\fB;\fR .RS 0.25i .PP .\" metal -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Ù¥ó¥À¥¿¥¤¥×¤ä¡¢²Äǽ¤Ç¤¢¤ì¤Ð DHCP ¥¯¥é¥¤¥¢¥ó¥È¤ÎÀßÄê¤ò -¼±Ê̤¹¤ë¤¿¤á¤Ë¡¢¤¤¤¯¤Ä¤«¤Î DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ç»È¤ï¤ì¤Þ¤¹¡£ -¤³¤Î¾ðÊó¤ÎÆâÍƤϡ¢¥Ù¥ó¥À¸ÇÍ­¤Î¥Ð¥¤¥Èʸ»úÎó¤Ç¡¢É¸½à¤Ç¤Ïµ¬Äꤵ¤ì¤Æ¤¤¤Þ¤»¤ó¡£ -¥¯¥é¥¤¥¢¥ó¥È¤¬Á÷½Ð¤¹¤ë¥Ù¥ó¥À¥¯¥é¥¹¼±Ê̻Ҥò³Îǧ¤¹¤ë¤Ë¤Ï¡¢ -°Ê²¼¤ÎÀßÄê¤ò DHCP ¥µ¡¼¥ÐÀßÄê¥Õ¥¡¥¤¥ë¤Ë²Ã¤¨¤Æ¤¯¤À¤µ¤¤: +�ܥ��ץ����ϡ��٥�������פ䡢��ǽ�Ǥ���� DHCP ���饤����Ȥ������ +���̤��뤿��ˡ������Ĥ��� DHCP ���饤����ȤǻȤ��ޤ��� +���ξ�������Ƥϡ��٥����ͭ�ΥХ���ʸ����ǡ�ɸ��Ǥϵ��ꤵ��Ƥ��ޤ��� +���饤����Ȥ����Ф���٥�����饹���̻Ҥ��ǧ����ˤϡ� +�ʲ�������� DHCP ����������ե�����˲ä��Ƥ�������: .nf .PP set vendor-class option vendor-class-identifier; .fi .PP -¤³¤ÎÀßÄê¤Ï¡¢DHCP ¥µ¡¼¥Ð¤Î¥ê¡¼¥¹¥Ç¡¼¥¿¥Ù¡¼¥¹¥Õ¥¡¥¤¥ëÃæ¤Î¡¢ -°Ê²¼¤Î¤è¤¦¤Ê set ʸ¤ò»ý¤Ä vendor-class-identifier ¥ª¥×¥·¥ç¥ó¤ò -Á÷¤Ã¤Æ¤¯¤ë¥¯¥é¥¤¥¢¥ó¥È¤¹¤Ù¤Æ¤Î¥¨¥ó¥È¥ê¤ËºîÍѤ·¤Þ¤¹¡£ +��������ϡ�DHCP �����ФΥ꡼���ǡ����١����ե�������Ρ� +�ʲ��Τ褦�� set ʸ����� vendor-class-identifier ���ץ����� +���äƤ��륯�饤����Ȥ��٤ƤΥ���ȥ�˺��Ѥ��ޤ��� .nf .PP set vendor-class "SUNW.Ultra-5_10"; .fi .PP -vendor-class-identifier ¥ª¥×¥·¥ç¥ó¤Ï¡¢Ä̾ï DHCP Server ¤Ë¤è¤Ã¤Æ¡¢ +vendor-class-identifier ���ץ����ϡ��̾� DHCP Server �ˤ�äơ� .B vendor-encapsulated-options -¥ª¥×¥·¥ç¥óÃæ¤ÇÊÖ¤µ¤ì¤ë¥ª¥×¥·¥ç¥ó¤ò·èÄꤹ¤ë¤Î¤Ë»È¤ï¤ì¤Þ¤¹¡£ -¤µ¤é¤Ê¤ë¾ðÊó¤Ï¡¢dhcpd.conf ¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤Î VENDOR ENCAPSULATED OPTIONS ¤Î -¾Ï¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ +���ץ��������֤���륪�ץ�������ꤹ��Τ˻Ȥ��ޤ��� +����ʤ����ϡ�dhcpd.conf �ޥ˥奢��ڡ����� VENDOR ENCAPSULATED OPTIONS �� +�Ϥò»²¾È¤ï¿½ï¿½Æ¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ .RE .PP .B option \fBvendor-encapsulated-options\fR \fIstring\fR\fB;\fR .RS 0.25i .PP .\" metal -\fBvendor-encapsulated-options\fR ¥ª¥×¥·¥ç¥ó¤Ï¡¢1 ¤Ä¤Î¥Ù¥ó¥À¸ÇÍ­ÃÍ¡¢ -¤â¤·¤¯¤Ï 1 ¤Ä¤Þ¤¿¤Ï¤½¤ì°Ê¾å¤Î¥Ù¥ó¥À¸ÇÍ­¥µ¥Ö¥ª¥×¥·¥ç¥ó¤ò´Þ¤ß¤Þ¤¹¡£ -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢Ä̾ï DHCP ¥µ¡¼¥Ð¤ÎÀßÄê¥Õ¥¡¥¤¥ë¤ÇÀßÄꤵ¤ì¤ë¤â¤Î¤Ç¤Ï -¤¢¤ê¤Þ¤»¤ó¡£ -Ä̾ï¤Ï¡¢¥Ù¥ó¥À¥¯¥é¥¹¤¬¥Ù¥ó¥ÀËè¤ËÄêµÁ¤µ¤ì¡¢ -¥Ù¥ó¥À¥¯¥é¥¹¥µ¥Ö¥ª¥×¥·¥ç¥ó¤¬ÄêµÁ¤µ¤ì¡¢¤½¤Î¥µ¥Ö¥ª¥×¥·¥ç¥ó¤ÎÃͤ¬ -ÄêµÁ¤µ¤ì¡¢DHCP ¥µ¡¼¥Ð¤Ï¤½¤ì¤é¤ò¤â¤È¤Ë±þÅú¤òÁȤ߾夲¤Þ¤¹¡£ -.PP -¤è¤¯ÃΤé¤ì¤¿ DHCP ¥¯¥é¥¤¥¢¥ó¥È¥Ù¥ó¥À (º£¤Î¤È¤³¤í Microsoft Windows -2000 DHCP ¥¯¥é¥¤¥¢¥ó¥È) ¸þ¤±¤Î¤¤¤¯¤Ä¤«¤Î¥Ç¥Õ¥©¥ë¥È¤ÎÆ°ºî¤Ç¤Ï¡¢ -¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¼«Æ°Åª¤ËÀßÄꤵ¤ì¤Þ¤¹¤¬¡¢¤½¤Î¾¤Î¤â¤Î¤Ë´Ø¤·¤Æ¤Ï¡¢ -¼êÆ°¤ÇÀßÄꤷ¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ -¾ÜºÙ¤Ï \fIdhcpd.conf\fI ¤Î VENDOR ENCAPSULATED OPTIONS ¤Î¾Ï¤ò -»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ +\fBvendor-encapsulated-options\fR ���ץ����ϡ�1 �ĤΥ٥����ͭ�͡� +�⤷���� 1 �Ĥޤ��Ϥ���ʾ�Υ٥����ͭ���֥��ץ�����ޤߤޤ��� +�ܥ��ץ����ϡ��̾� DHCP �����Ф�����ե���������ꤵ����ΤǤ� +����ޤ��� +�̾�ϡ��٥�����饹���٥�����������졢 +�٥�����饹���֥��ץ����������졢���Υ��֥��ץ������ͤ� +������졢DHCP �����ФϤ������Ȥ˱������Ȥ߾夲�ޤ��� +.PP +�褯�Τ�줿 DHCP ���饤����ȥ٥�� (���ΤȤ��� Microsoft Windows +2000 DHCP ���饤�����) �����Τ����Ĥ��Υǥե���Ȥ�ư��Ǥϡ� +���Υ��ץ����ϼ�ưŪ�����ꤵ��ޤ���������¾�Τ�Τ˴ؤ��Ƥϡ� +��ư�����ꤷ�ʤ���Фʤ�ޤ��� +�ܺ٤� \fIdhcpd.conf\fI �� VENDOR ENCAPSULATED OPTIONS �ξϤ� +���Ȥ��Ƥ��������� .RE .PP .B option \fBwww-server\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -WWW ¥µ¡¼¥Ð¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê WWW ¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +WWW �����Х��ץ����ϡ����饤����Ȥ����Ѳ�ǽ�� WWW �Υꥹ�Ȥ���ꤷ�ޤ��� +�����Фϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE .PP .B option \fBx-display-manager\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fB;\fR .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ÍøÍѲÄǽ¤Ê X Window System -¥Ç¥£¥¹¥×¥ì¥¤¥Þ¥Í¡¼¥¸¥ã¤ò¼Â¹Ô¤·¤Æ¤¤¤ë¥·¥¹¥Æ¥à¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¥¢¥É¥ì¥¹¤Ï¡¢Í¥À褵¤ì¤ë¤â¤Î¤«¤é½ç¤Ë¥ê¥¹¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ +�ܥ��ץ����ϡ����饤����Ȥ����Ѳ�ǽ�� X Window System +�ǥ����ץ쥤�ޥ͡������¹Ԥ��Ƥ��륷���ƥ�Υꥹ�Ȥ���ꤷ�ޤ��� +���ɥ쥹�ϡ�ͥ�褵����Τ����˥ꥹ�Ȥ��Ƥ��������� .RE -.SH ¥ê¥ì¡¼¥¨¡¼¥¸¥§¥ó¥È¾ðÊ󥪥ץ·¥ç¥ó +.SH ��졼����������Ⱦ��󥪥ץ���� .\" metal -IETF ¥É¥é¥Õ¥È draft-ietf-dhc-agent-options-11.txt ¤Ë¤Ï¡¢ -DHCP ¥ê¥ì¡¼¥¨¡¼¥¸¥§¥ó¥È¤¬ DHCP ¥Ñ¥±¥Ã¥È¤ò DHCP ¥µ¡¼¥Ð¤ËžÁ÷¤¹¤ëºÝ¡¢ -DHCP ¥Ñ¥±¥Ã¥È¤ËÉղ乤뤳¤È¤Î¤Ç¤­¤ë°ìÏ¢¤Î¥«¥×¥»¥ë²½¤µ¤ì¤¿¥ª¥×¥·¥ç¥ó¤¬ -ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¡¢¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ë´ð¤Å¤­¡¢¥¢¥É¥ì¥¹³äÅö¤Î·èÄê -(¤ä¡¢¤½¤Î¾¤ÎȽÃÇ) ¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ -¤Þ¤¿¥µ¡¼¥Ð¤Ï¡¢¥ê¥ì¡¼¥¨¡¼¥¸¥§¥ó¥È¤òÄ̤·¤ÆÊÖ¤µ¤ì¤ë¤É¤Î¥Ñ¥±¥Ã¥È¤Ë¤â -¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤òÆþ¤ì¤ÆÊÖ¤·¤Þ¤¹¡£ -¤³¤ì¤Ë¤è¤Ã¤Æ¥ê¥ì¡¼¥¨¡¼¥¸¥§¥ó¥È¤Ï¡¢ÇÛÁ÷¤ä¥¢¥«¥¦¥ó¥Æ¥£¥ó¥°¤Ê¤É¤ò -¹Ô¤¦¤¿¤á¤Ë¡¢¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ë´Þ¤Þ¤ì¤ë¾ðÊó¤òÍøÍѤǤ­¤Þ¤¹¡£ -.PP -¸½ºß¤Î¥É¥é¥Õ¥È¤Ë¤Ï 2 ¤Ä¤Î¥ª¥×¥·¥ç¥ó¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ -DHCP ¥µ¡¼¥Ð¤Ç¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤ò»²¾È¤¹¤ë¤Ë¤Ï¡¢¥ª¥×¥·¥ç¥ó¶õ´Ö̾ -"agent" ¤Î¤¢¤È¤Ë¥Ô¥ê¥ª¥É¤ò¤Ä¤±¡¢¤½¤Î¸å¤Ë¥ª¥×¥·¥ç¥ó̾¤ò³¤±¤Æ¤¯¤À¤µ¤¤¡£ -¥µ¡¼¥Ð¤Ç¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤ÎÃͤòÄêµÁ¤¹¤ë¤³¤È¤Ï¡¢ -Ä̾濫¤Þ¤êÍ­¸ú¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¢µöÍƤµ¤ì¤Æ¤¤¤Þ¤¹¡£ -¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£ +IETF �ɥ�ե� draft-ietf-dhc-agent-options-11.txt �ˤϡ� +DHCP ��졼����������Ȥ� DHCP �ѥ��åȤ� DHCP �����Ф�ž������ݡ� +DHCP �ѥ��åȤ��ղä��뤳�ȤΤǤ����Ϣ�Υ��ץ��벽���줿���ץ���� +�������Ƥ��ޤ��� +�����Фϡ������Υ��ץ����˴�Ť������ɥ쥹�����η��� +(�䡢����¾��Ƚ��) ��Ԥ����Ȥ��Ǥ��ޤ��� +�ޤ������Фϡ���졼����������Ȥ��̤����֤����ɤΥѥ��åȤˤ� +�����Υ��ץ�����������֤��ޤ��� +����ˤ�äƥ�졼����������Ȥϡ������䥢������ƥ��󥰤ʤɤ� +�Ԥ�����ˡ������Υ��ץ����˴ޤޤ���������ѤǤ��ޤ��� +.PP +���ߤΥɥ�եȤˤ� 2 �ĤΥ��ץ�����������Ƥ��ޤ��� +DHCP �����ФǤ����Υ��ץ����ò»²¾È¤ï¿½ï¿½ï¿½Ë¤Ï¡ï¿½ï¿½ï¿½ï¿½×¥ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ì¾ +"agent" �Τ��Ȥ˥ԥꥪ�ɤ�Ĥ������θ�˥��ץ����̾��³���Ƥ��������� +�����ФǤ����Υ��ץ������ͤ�������뤳�Ȥϡ� +�̾濫�ޤ�ͭ���ǤϤ���ޤ��󤬡����Ƥ���Ƥ��ޤ��� +�����Υ��ץ����ϡ����饤����ȤǤϥ��ݡ��Ȥ���Ƥ��ޤ��� .PP .B option \fBagent.circuit-id\fR \fIstring\fR\fB;\fR .RS 0.25i .PP -circuit-id ¥µ¥Ö¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤«¤é¥µ¡¼¥Ð¤Ø¤Î DHCP ¥Ñ¥±¥Ã¥È¤ò -¼õ¤±¼è¤Ã¤¿¥µ¡¼¥­¥Ã¥È¤ò¼¨¤¹¡¢¥¨¡¼¥¸¥§¥ó¥È¥í¡¼¥«¥ë¤Ê¥µ¡¼¥­¥Ã¥È¼±Ê̻Ҥò -¥¨¥ó¥³¡¼¥É¤·¤Æ¤¤¤Þ¤¹¡£ -¤³¤ì¤Ï¡¢DHCP ±þÅú¤òŬÀڤʥµ¡¼¥­¥Ã¥È¤Ø¤ÈÁ÷¤êÊÖ¤»¤ë¤è¤¦¡¢ -¥¨¡¼¥¸¥§¥ó¥È¤Ë¤è¤Ã¤Æ»È¤ï¤ì¤ë¤³¤È¤ò°Õ¿Þ¤·¤Æ¤¤¤Þ¤¹¡£ -¸½ºß¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Î½ñ¼°¤ÎÄêµÁ¤Ï¥Ù¥ó¥À°Í¸¤È¤Ê¤Ã¤Æ¤ª¤ê¡¢ -¿ʬ¤³¤Î¤Þ¤Þ»Ä¤µ¤ì¤ë¤Ç¤·¤ç¤¦¡£ -¤·¤«¤·¾­Í褳¤Î½ñ¼°¤¬É¸½à²½¤µ¤ì¤ë²ÄǽÀ­¤â¡¢¸½ºß¤Î¥É¥é¥Õ¥È¤Ë¤Ï»Ä¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ +circuit-id ���֥��ץ����ϡ����饤����Ȥ��饵���Фؤ� DHCP �ѥ��åȤ� +������ä��������åȤò¼¨¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½È¥ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ê¥ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ã¥È¼ï¿½ï¿½Ì»Ò¤ï¿½ +���󥳡��ɤ��Ƥ��ޤ��� +����ϡ�DHCP ������Ŭ�ڤʥ������åȤؤ������֤���褦�� +����������Ȥˤ�äƻȤ��뤳�Ȥ�տޤ��Ƥ��ޤ��� +���ߡ����Υ��ץ����νñ¼°¤ï¿½ï¿½ï¿½ï¿½ï¿½Ï¥Ù¥ï¿½ï¿½ï¿½ï¿½Â¸ï¿½È¤Ê¤Ã¤Æ¤ï¿½ï¿½ê¡¢ +¿ʬ���Τޤ޻Ĥ����Ǥ��礦�� +���������褳�νñ¼°¤ï¿½É¸ï¿½à²½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ç½ï¿½ï¿½ï¿½â¡¢ï¿½ï¿½ï¿½ß¤Î¥É¥ï¿½Õ¥È¤Ë¤Ï»Ä¤ï¿½ï¿½ï¿½Æ¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ .RE .PP .B option \fBagent.remote-id\fR \fIstring\fR\fB;\fR .RS 0.25i .PP -remote-id ¥µ¥Ö¥ª¥×¥·¥ç¥ó¤Ï¡¢¥µ¡¼¥­¥Ã¥È¤Î½ªÃ¼¤Î¥ê¥â¡¼¥È¥Û¥¹¥È¤Î -¾ðÊó¤ò¥¨¥ó¥³¡¼¥É¤·¤Æ¤¤¤Þ¤¹¡£ -¤³¤ì¤Ë´Þ¤Þ¤ì¤ë¤Ç¤¢¤í¤¦¾ðÊó¤Ï¡¢¼¡¤Î¤è¤¦¤Ê¤â¤Î¤Ç¤¹¡£ -¸Æ½Ð¸µ ID ¾ðÊ󡢥桼¥¶Ì¾¾ðÊó¡¢¥ê¥â¡¼¥È ATM ¥¢¥É¥ì¥¹¡¢¥±¡¼¥Ö¥ë¥â¥Ç¥à ID¡¢ -¤½¤Î¾¤ÎƱÍͤʾðÊó¡£ -¸¶Â§Åª¤Ë¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Î°ÕÌ£¤Ï¤Á¤ã¤ó¤ÈÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£ -¤·¤«¤·Ä̾¥µ¡¼¥­¥Ã¥È¤ÎÆÃÄê¤Î¥ê¥â¡¼¥È¥¨¥ó¥É¤ËÂФ·¤Æ°ì°Õ¤Ç¤¢¤ë¤è¤¦ -´ÉÍý¾åÊݾڤµ¤ì¤¿¡¢¤Ê¤ó¤é¤«¤Î¥ª¥Ö¥¸¥§¥¯¥È¤È¹Í¤¨¤ë¤Ù¤­¤â¤Î¤Ç¤¹¡£ +remote-id ���֥��ץ����ϡ��������åȤν�ü�Υ�⡼�ȥۥ��Ȥ� +����ò¥¨¥ó¥³¡ï¿½ï¿½É¤ï¿½ï¿½Æ¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +����˴ޤޤ��Ǥ���������ϡ����Τ褦�ʤ�ΤǤ��� +�ƽи� ID ���󡢥桼��̾���󡢥�⡼�� ATM ���ɥ쥹�������֥��ǥ� ID�� +����¾��Ʊ�ͤʾ��� +��§Ū�ˤϡ����Υ��ץ����ΰ�̣�Ϥ������������Ƥ��ޤ��� +�������̾�������åȤ�����Υ�⡼�ȥ���ɤ��Ф��ư�դǤ���褦 +�������ݾڤ��줿���ʤ�餫�Υ��֥������Ȥȹͤ���٤���ΤǤ��� .RE -.SH ¥¯¥é¥¤¥¢¥ó¥È FQDN ¥µ¥Ö¥ª¥×¥·¥ç¥ó +.SH ���饤����� FQDN ���֥��ץ���� .\" metal -¸½ºß¡¢¥¤¥ó¥¿¡¼¥Í¥Ã¥È¥É¥é¥Õ¥È draft-ietf-dhc-fqdn-option-00.txt ¤Ç -ÄêµÁ¤µ¤ì¤Æ¤¤¤ë¥¯¥é¥¤¥¢¥ó¥È FQDN ¥ª¥×¥·¥ç¥ó¤Ï¡¢¤Þ¤Àɸ½à¤È¤Ê¤Ã¤Æ¤Ï¤¤¤Þ¤»¤ó¡£ -¤·¤«¤·¤¹¤Ç¤Ë½½Ê¬¹­¤¯ÍøÍѤµ¤ì¤Æ¤ª¤ê¡¢²æ¡¹¤â¤³¤ì¤ò¼ÂÁõ¤·¤Æ¤¤¤Þ¤¹¡£ -¥ª¥×¥·¥ç¥ó¤Î½ñ¼°¤¬Ê£»¨¤Ê¤¿¤á¡¢¤³¤³¤Ç¤Ï¡¢Ã±ÆȤΥª¥×¥·¥ç¥ó¤Ç¤Ï¤Ê¤¯¡¢ -¥µ¥Ö¥ª¥×¥·¥ç¥ó¶õ´Ö¤Ë¼ÂÁõ¤·¤Æ¤¤¤Þ¤¹¡£ -°ìÈÌŪ¤Ë¤Ï¡¢ËÜ¥ª¥×¥·¥ç¥ó¤Ï¡¢¥æ¡¼¥¶¤Ë¤è¤Ã¤ÆÀßÄꤵ¤ì¤ë¤â¤Î¤Ç¤Ï¤Ê¤¯¡¢ -¼«Æ° DNS ¹¹¿·¥·¥¹¥Æ¥à¤Î°ìÉô¤È¤·¤Æ»È¤ï¤ì¤ë¤Ù¤­¤â¤Î¤Ç¤¹¡£ +���ߡ����󥿡��ͥåȥɥ�ե� draft-ietf-dhc-fqdn-option-00.txt �� +�������Ƥ��륯�饤����� FQDN ���ץ����ϡ��ޤ�ɸ��ȤʤäƤϤ��ޤ��� +���������Ǥ˽�ʬ�������Ѥ���Ƥ��ꡢ�桹�⤳���������Ƥ��ޤ��� +���ץ����νñ¼°¤ï¿½Ê£ï¿½ï¿½ï¿½Ê¤ï¿½ï¿½á¡¢ï¿½ï¿½ï¿½ï¿½ï¿½Ç¤Ï¡ï¿½Ã±ï¿½È¤Î¥ï¿½ï¿½×¥ï¿½ï¿½ï¿½ï¿½Ç¤Ï¤Ê¤ï¿½ï¿½ï¿½ +���֥��ץ������֤˼������Ƥ��ޤ��� +����Ū�ˤϡ��ܥ��ץ����ϡ��桼���ˤ�ä����ꤵ����ΤǤϤʤ��� +��ư DNS ���������ƥ�ΰ����Ȥ��ƻȤ���٤���ΤǤ��� .PP .B option fqdn.no-client-update \fIflag\fB; .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤¬¥¯¥é¥¤¥¢¥ó¥È¤«¤éÁ÷½Ð¤µ¤ì¤¿¾ì¹ç¡¢¤³¤ì¤¬ true ¤Ç¤¢¤ì¤Ð¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤Ï¼«Ê¬¤Î A ¥ì¥³¡¼¥É¤ò¹¹¿·¤·¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£ -¥µ¡¼¥Ð¤«¤é¥¯¥é¥¤¥¢¥ó¥È¤ËÁ÷½Ð¤µ¤ì¤¿¾ì¹ç¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ï -¼«Ê¬¤Î A ¥ì¥³¡¼¥É¤ò¹¹¿·¤¹¤ë \fI¤Ù¤­¤Ç¤Ï¤Ê¤¤\fR ¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£ +�ܥ��ץ���󤬥��饤����Ȥ������Ф��줿��硢���줬 true �Ǥ���С� +���饤����Ȥϼ�ʬ�� A �쥳���ɤò¹¹¿ï¿½ï¿½ï¿½ï¿½Ê¤ï¿½ï¿½ï¿½ï¿½È¤ï¿½ï¿½Ì£ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +�����Ф��饯�饤����Ȥ����Ф��줿���ϡ����饤����Ȥ� +��ʬ�� A �쥳���ɤò¹¹¿ï¿½ï¿½ï¿½ï¿½ï¿½ \fI�٤��ǤϤʤ�\fR ���Ȥ��̣���ޤ��� .RE .PP .B option fqdn.server-update \fIflag\fB; .RS 0.25i .PP -ËÜ¥ª¥×¥·¥ç¥ó¤¬¥¯¥é¥¤¥¢¥ó¥È¤«¤é¥µ¡¼¥Ð¤ËÁ÷½Ð¤µ¤ì¤¿¾ì¹ç¡¢ -¥µ¡¼¥Ð¤Ë¥¯¥é¥¤¥¢¥ó¥È¤Î A ¥ì¥³¡¼¥É¤Î¹¹¿·¤òÍ׵ᤷ¤Æ¤¤¤Þ¤¹¡£ -¥µ¡¼¥Ð¤«¤éÁ÷½Ð¤µ¤ì¤¿¾ì¹ç¡¢¥µ¡¼¥Ð¤¬¥¯¥é¥¤¥¢¥ó¥È¤Î A ¥ì¥³¡¼¥É¤ò -¹¹¿·¤·¤¿ (¤â¤·¤¯¤Ï¤â¤¦¤¹¤°¹¹¿·¤¹¤ë¤È¤³¤í) ¤Ç¤¢¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£ +�ܥ��ץ���󤬥��饤����Ȥ��饵���Ф����Ф��줿��硢 +�����Ф˥��饤����Ȥ� A �쥳���ɤι������׵ᤷ�Ƥ��ޤ��� +�����Ф������Ф��줿��硢�����Ф����饤����Ȥ� A �쥳���ɤ� +�������� (�⤷���Ϥ⤦������������Ȥ���) �Ǥ��뤳�Ȥ��̣���ޤ��� .RE .PP .B option fqdn.encoded \fIflag\fB; .RS 0.25i .PP -true ¤Ç¤¢¤Ã¤¿»þ¡¢¥ª¥×¥·¥ç¥ó¤Ë´Þ¤Þ¤ì¤ë¥É¥á¥¤¥ó̾¤¬¡¢ -¤¿¤À¤Î ASCII ¥Æ¥­¥¹¥È¤Ç¤Ï¤Ê¤¯¡¢DNS ¥ï¥¤¥ä¥Õ¥©¡¼¥Þ¥Ã¥È¤Ç -¥¨¥ó¥³¡¼¥É¤µ¤ì¤Æ¤¤¤ë¤³¤È¤ò¼¨¤·¤Æ¤Þ¤¹¡£ -¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢¼«Ê¬¤¬ FQDN ¥ª¥×¥·¥ç¥ó¤Î DNS ¥ï¥¤¥ä¥Õ¥©¡¼¥Þ¥Ã¥È¤ò -¥µ¥Ý¡¼¥È¤·¤Æ¤Ê¤¤¾ì¹ç¡¢Ä̾盧¤Î¥µ¥Ö¥ª¥×¥·¥ç¥ó¤ò false ¤ËÀßÄꤷ¤Þ¤¹¡£ -¥µ¡¼¥Ð¤Ï¾ï¤Ë¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ÀßÄꤷ¤¿¤Î¤ÈƱ¤¸ÃͤòÀßÄꤷ¤ÆÊÖ¤¹¤Ù¤­¤Ç¤¹¡£ -¤³¤ÎÃͤ¬ÀßÄê¥Õ¥¡¥¤¥ë¤ËÀßÄꤵ¤ì¤Æ¤¤¤¿»þ¤Ï¡¢\fIfqdn.fqdn\fR ¥µ¥Ö¥ª¥×¥·¥ç¥ó¤ò -¥¨¥ó¥³¡¼¥É¤¹¤ë¥Õ¥©¡¼¥Þ¥Ã¥È¤òÀ©¸æ¤·¤Þ¤¹¡£ +true �Ǥ��ä��������ץ����˴ޤޤ��ɥᥤ��̾���� +������ ASCII �ƥ����ȤǤϤʤ���DNS �磻��ե����ޥåȤ� +���󥳡��ɤ���Ƥ��뤳�Ȥò¼¨¤ï¿½ï¿½Æ¤Þ¤ï¿½ï¿½ï¿½ +���饤����Ȥϡ���ʬ�� FQDN ���ץ����� DNS �磻��ե����ޥåȤ� +���ݡ��Ȥ��Ƥʤ���硢�̾盧�Υ��֥��ץ����� false �����ꤷ�ޤ��� +�����ФϾ�ˡ����饤����Ȥ����ꤷ���Τ�Ʊ���ͤ����ꤷ���֤��٤��Ǥ��� +�����ͤ�����ե���������ꤵ��Ƥ������ϡ�\fIfqdn.fqdn\fR ���֥��ץ����� +���󥳡��ɤ���ե����ޥåȤ����椷�ޤ��� .RE .PP .B option fqdn.rcode1 \fIflag\fB; @@ -1174,127 +1174,127 @@ true .B option fqdn.rcode2 \fIflag\fB; .RS 0.25i .PP -¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¤½¤ì¤¾¤ì¡¢A ¥ì¥³¡¼¥É¤È PTR ¥ì¥³¡¼¥É¤Î¹¹¿··ë²Ì¤ò¼¨¤·¤Þ¤¹¡£ -¤³¤ì¤é¤Ï¡¢DHCP ¥µ¡¼¥Ð¤«¤é DHCP ¥¯¥é¥¤¥¢¥ó¥È¤Ø¤Î¤ßÁ÷¤é¤ì¤Þ¤¹¡£ -¤³¤ì¤é¤Î¥Õ¥£¡¼¥ë¥É¤ÎÃͤϡ¢DNS ¥×¥í¥È¥³¥ëµ¬³Ê¤Ë¤è¤êÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ +�����Υ��ץ����Ϥ��줾�졢A �쥳���ɤ� PTR �쥳���ɤι�����̤ò¼¨¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +�����ϡ�DHCP �������� DHCP ���饤����ȤؤΤ������ޤ��� +�����Υե�����ɤ��ͤϡ�DNS �ץ��ȥ��뵬�ʤˤ���������Ƥ��ޤ��� .RE .PP .B option fqdn.fqdn \fItext\fB; .RS 0.25i .PP -¥¯¥é¥¤¥¢¥ó¥È¤¬»ÈÍѤò˾¤à¥É¥á¥¤¥ó̾¤ò»ØÄꤷ¤Þ¤¹¡£ -¤³¤ì¤Ï´°Á´½¤¾þ¤µ¤ì¤¿¥É¥á¥¤¥ó̾¤Ç¤â¡¢Ã±°ì¤Î¥é¥Ù¥ë¤Ç¤â¹½¤¤¤Þ¤»¤ó¡£ -¤â¤·Ì¾Á°¤Ë '.' ʸ»ú¤¬´Þ¤Þ¤ì¤Ê¤±¤ì¤Ð¡¢¤½¤Î̾Á°¤Ï´°Á´½¤¾þ¤µ¤ì¤Æ¤ª¤é¤º¡¢ -¥µ¡¼¥Ð¤ÏÄ̾¥í¡¼¥«¥ë¤ËÄêµÁ¤µ¤ì¤¿¥É¥á¥¤¥óÃæ¤Î¤½¤Î̾Á°¤ò¹¹¿·¤·¤Þ¤¹¡£ +���饤����Ȥ����Ѥ�˾��ɥᥤ��̾����ꤷ�ޤ��� +����ϴ����������줿�ɥᥤ��̾�Ǥ⡢ñ��Υ�٥�Ǥ⹽���ޤ��� +�⤷̾���� '.' ʸ�����ޤޤ�ʤ���С�����̾���ϴ�����������Ƥ��餺�� +�����Ф��̾���������������줿�ɥᥤ����Τ���̾���ò¹¹¿ï¿½ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ .RE .PP -¤â¤·¤³¤ì¤é¤Î¥µ¥Ö¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤è¤¦¤È»×¤Ã¤Æ¤¤¤ë¤Î¤Ç¤¢¤ì¤Ð¡¢ -¥¯¥é¥¤¥¢¥ó¥È FQDN ¥ª¥×¥·¥ç¥ó¤Î¥É¥é¥Õ¥È (¤â¤·¤¯¤Ï¡¢É¸½à¤Ë¤Ê¤Ã¤¿»þ¤Ï¤½¤Îɸ½à) -¤ò»²¾È¤¹¤ë¤³¤È¤ò¶¯¤¯¿ä¾©¤·¤Þ¤¹¡£ -¤³¤Îʸ½ñ¤Ï¡¢¤½¤Î¥É¥é¥Õ¥È¤ËÈæ¤Ù¤ÆÂ绨ÇĤÇÉÔ´°Á´¤Ç¤¢¤ê¡¢ -¥¯¥é¥¤¥¢¥ó¥È FQDN ¥ª¥×¥·¥ç¥óµ¬³Ê¤ò¤¹¤Ç¤ËÍý²ò¤·¤Æ¤¤¤ë¿Í¤Ë»²¾È¤µ¤ì¤ë¤³¤È¤ò -ñ¤Ë°Õ¿Þ¤·¤Æ¤¤¤ë¤â¤Î¤Ç¤¹¡£ -.SH NetWare/IP ¥µ¥Ö¥ª¥×¥·¥ç¥ó +�⤷�����Υ��֥��ץ�������Ѥ��褦�ȻפäƤ���ΤǤ���С� +���饤����� FQDN ���ץ����Υɥ�ե� (�⤷���ϡ�ɸ��ˤʤä����Ϥ���ɸ��) +�ò»²¾È¤ï¿½ï¿½ë¤³ï¿½È¤ò¶¯¤ï¿½ï¿½ä¾©ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +����ʸ��ϡ����Υɥ�եȤ���٤��绨�Ĥ��Դ����Ǥ��ꡢ +���饤����� FQDN ���ץ���󵬳ʤò¤¹¤Ç¤ï¿½ï¿½ï¿½ï¿½ò¤·¤Æ¤ï¿½ï¿½ï¿½Í¤Ë»ï¿½ï¿½È¤ï¿½ï¿½ï¿½ë¤³ï¿½È¤ï¿½ +ñ�˰տޤ��Ƥ����ΤǤ��� +.SH NetWare/IP ���֥��ץ���� .\" metal -RFC2242 ¤Ï¡¢Novell ¤Î NetWare/IP ¥¯¥é¥¤¥¢¥ó¥ÈÍѤΥ«¥×¥»¥ë²½¤µ¤ì¤¿ -¥ª¥×¥·¥ç¥ó¤ÎÁȤòÄêµÁ¤·¤Æ¤¤¤Þ¤¹¡£ -DHCP ¥µ¡¼¥Ð¤Ë¤ª¤¤¤Æ¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢¥ª¥×¥·¥ç¥ó¶õ´Ö̾ -"nwip" ¤Î¸å¤Ë¥Ô¥ê¥ª¥É¤ò¤Ä¤±¡¢¤½¤Î¸å¤Ë¥ª¥×¥·¥ç¥ó̾¤ò³¤±¤Æ¤¯¤À¤µ¤¤¡£ -°Ê²¼¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄê¤Ç¤­¤Þ¤¹: +RFC2242 �ϡ�Novell �� NetWare/IP ���饤������ѤΥ��ץ��벽���줿 +���ץ������Ȥ�������Ƥ��ޤ��� +DHCP �����Фˤ����Ƥ����Υ��ץ�������Ѥ���ˤϡ����ץ�������̾ +"nwip" �θ�˥ԥꥪ�ɤ�Ĥ������θ�˥��ץ����̾��³���Ƥ��������� +�ʲ��Υ��ץ���󤬻���Ǥ��ޤ�: .PP .B option \fBnwip.nsq-broadcast\fR \fIflag\fR\fB;\fR .RS 0.25i .PP -true ¤Ç¤¢¤Ã¤¿¾ì¹ç¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢NetWare/IP ¥µ¡¼¥Ð¤Î°ÌÃÖ¤ò -õ¤¹¤Î¤Ë NetWare Nearest Server Query ¤ò»È¤¦¤Ù¤­¤Ç¤¹¡£ -ËÜ¥µ¥Ö¥ª¥×¥·¥ç¥ó¤¬ false ¤Ç¤¢¤Ã¤¿¾ì¹ç¡¢¤â¤·¤¯¤Ï»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¤Î -Novell ¥¯¥é¥¤¥¢¥ó¥È¤ÎÆ°ºî¤Ïµ¬Äꤵ¤ì¤Æ¤¤¤Þ¤»¤ó¡£ +true �Ǥ��ä���硢���饤����Ȥϡ�NetWare/IP �����Фΰ��֤� +õ���Τ� NetWare Nearest Server Query ��Ȥ��٤��Ǥ��� +�ܥ��֥��ץ���� false �Ǥ��ä���硢�⤷���ϻ��ꤵ��ʤ��ä����� +Novell ���饤����Ȥ�ư��ϵ��ꤵ��Ƥ��ޤ��� .PP .RE .B option \fBnwip.preferred-dss\fR \fIip-address\fR [\fB,\fR \fIip-address\fR... ]\fR\fB;\fR .RS 0.25i .PP -ËÜ¥µ¥Ö¥ª¥×¥·¥ç¥ó¤Ë¤Ï¡¢5 ¤Ä¤Þ¤Ç¤Î IP ¥¢¥É¥ì¥¹¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¤½¤ì¤¾¤ì¤Î¥¢¥É¥ì¥¹¤Ï¡¢NetWare ¥É¥á¥¤¥ó SAP/RIP ¥µ¡¼¥Ð (DSS) ¤Î -IP ¥¢¥É¥ì¥¹¤Ç¤¹¡£ +�ܥ��֥��ץ����ˤϡ�5 �ĤޤǤ� IP ���ɥ쥹�Υꥹ�Ȥ���ꤷ�ޤ��� +���줾��Υ��ɥ쥹�ϡ�NetWare �ɥᥤ�� SAP/RIP ������ (DSS) �� +IP ���ɥ쥹�Ǥ��� .RE .PP .B option \fBnwip.nearest-nwip-server\fR \fI\fIip-address\fR [\fB,\fR \fIip-address\fR...]\fR\fB;\fR .RS 0.25i .PP -ËÜ¥µ¥Ö¥ª¥×¥·¥ç¥ó¤Ë¤Ï¡¢5 ¤Ä¤Þ¤Ç¤Î IP ¥¢¥É¥ì¥¹¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£ -¤½¤ì¤¾¤ì¤Î¥¢¥É¥ì¥¹¤Ï¡¢¶áÀܤΠNetWare IP ¥µ¡¼¥Ð -(Nearest NetWare IP Server) ¤Î IP ¥¢¥É¥ì¥¹¤Ç¤¹¡£ +�ܥ��֥��ץ����ˤϡ�5 �ĤޤǤ� IP ���ɥ쥹�Υꥹ�Ȥ���ꤷ�ޤ��� +���줾��Υ��ɥ쥹�ϡ����ܤ� NetWare IP ������ +(Nearest NetWare IP Server) �� IP ���ɥ쥹�Ǥ��� .RE .PP .B option \fBnwip.autoretries\fR \fIuint8\fR\fB;\fR .RS 0.25i .PP -µ¯Æ°»þ¤Ë¡¢NetWare/IP ¥¯¥é¥¤¥¢¥ó¥È¤¬¡¢Í¿¤¨¤é¤ì¤¿ DSS ¥µ¡¼¥Ð¤È -²¿²óÄÌ¿®¤ò»î¤ß¤ë¤Ù¤­¤«¤ò»ØÄꤷ¤Þ¤¹¡£ +��ư���ˡ�NetWare/IP ���饤����Ȥ���Ϳ����줿 DSS ������ +�����̿����ߤ�٤�������ꤷ�ޤ��� .RE .PP .B option \fBnwip.autoretry-secs\fR \fIuint8\fR\fB;\fR .RS 0.25i .PP -µ¯Æ°»þ¤Ë¡¢NetWare/IP ¥¯¥é¥¤¥¢¥ó¥È¤¬¡¢Í¿¤¨¤é¤ì¤¿ DSS ¥µ¡¼¥Ð¤È -ÄÌ¿®¤ò³ÎΩ¤¹¤ë»þ¤Ë¡¢¥ê¥È¥é¥¤¤Î´Ö²¿ÉÃÂԤĤ٤­¤«¤ò»ØÄꤷ¤Þ¤¹¡£ +��ư���ˡ�NetWare/IP ���饤����Ȥ���Ϳ����줿 DSS ������ +�̿����Ω������ˡ���ȥ饤�δֲ����ԤĤ٤�������ꤷ�ޤ��� .RE .PP .B option \fBnwip.nwip-1-1\fR \fIuint8\fR\fB;\fR .RS 0.25i .PP -true ¤Ç¤¢¤Ã¤¿¾ì¹ç¡¢NetWare/IP ¥¯¥é¥¤¥¢¥ó¥È¤Ï NetWare/IP -¥Ð¡¼¥¸¥ç¥ó 1.1 ¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë¤Ù¤­¤Ç¤¹¡£ -¤³¤ì¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬ NetWare/IP ¥Ð¡¼¥¸¥ç¥ó 1.1 ¤Î¥µ¡¼¥Ð¤È -ÄÌ¿®¤¹¤ë»þ¤Î¤ßɬÍפǤ¹¡£ +true �Ǥ��ä���硢NetWare/IP ���饤����Ȥ� NetWare/IP +������� 1.1 �ò¥µ¥Ý¡ï¿½ï¿½È¤ï¿½ï¿½Æ¤ï¿½ï¿½ï¿½Ù¤ï¿½ï¿½Ç¤ï¿½ï¿½ï¿½ +����ϡ����饤����Ȥ� NetWare/IP ������� 1.1 �Υ����Ф� +�̿�������Τ�ɬ�פǤ��� .RE .PP .B option \fBnwip.primary-dss\fR \fIip-address\fR\fB;\fR .RS 0.25i .PP -NetWare/IP ¥É¥á¥¤¥ó¤Î¥×¥é¥¤¥Þ¥ê¥É¥á¥¤¥ó SAP/RIP ¥µ¡¼¥Ó¥¹¥µ¡¼¥Ð -(DSS) ¤Î IP ¥¢¥É¥ì¥¹¤ò»ØÄꤷ¤Þ¤¹¡£ -¥»¥«¥ó¥À¥ê DSS ¥µ¡¼¥Ð¤ÎÀßÄê»þ¤Ë¡¢NetWare/IP ´ÉÍý¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤Ï¡¢ -¤³¤ÎÃͤò¥×¥é¥¤¥Þ¥ê DSS ¥µ¡¼¥Ð¤È¤·¤Æ»ÈÍѤ·¤Þ¤¹¡£ +NetWare/IP �ɥᥤ��Υץ饤�ޥ�ɥᥤ�� SAP/RIP �����ӥ������� +(DSS) �� IP ���ɥ쥹����ꤷ�ޤ��� +��������� DSS �����Ф�������ˡ�NetWare/IP �����桼�ƥ���ƥ��ϡ� +�����ͤ�ץ饤�ޥ� DSS �����ФȤ��ƻ��Ѥ��ޤ��� .RE -.SH ¿·µ¬¥ª¥×¥·¥ç¥ó¤ÎÄêµÁ +.SH �������ץ�������� .\" metal -Internet Systems Consortium DHCP ¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¤Ï¡¢ -¿·µ¬¥ª¥×¥·¥ç¥ó¤òÄêµÁ¤¹¤ëµ¡¹½¤âÄ󶡤·¤Æ¤¤¤Þ¤¹¡£ -¤½¤ì¤¾¤ì¤Î DHCP ¥ª¥×¥·¥ç¥ó¤Ï¡¢Ì¾Á°¤È¥³¡¼¥É¡¢¹½Â¤¤ò»ý¤Ã¤Æ¤¤¤Þ¤¹¡£ -̾Á°¤Ï¡¢»ÈÍѼԤ¬¥ª¥×¥·¥ç¥ó¤ò»²¾È¤¹¤ë¤Î¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£ -¥³¡¼¥É¤Ï¡¢DHCP ¥µ¡¼¥Ð¤È¥¯¥é¥¤¥¢¥ó¥È¤¬¥ª¥×¥·¥ç¥ó¤ò»²¾È¤¹¤ë¤Î¤Ë -»ÈÍѤ¹¤ëÈÖ¹æ¤Ç¤¹¡£ -¹½Â¤¤Ï¡¢¥ª¥×¥·¥ç¥ó¤ÎÆâÍƤ¬¤É¤Î¤è¤¦¤Ê¤â¤Î¤«¤òµ­½Ò¤·¤Æ¤¤¤Þ¤¹¡£ -.PP -¿·µ¬¥ª¥×¥·¥ç¥ó¤òÄêµÁ¤¹¤ë¤Ë¤Ï¡¢Â¾¤Î¥ª¥×¥·¥ç¥ó¤Ç¤Ï»È¤ï¤ì¤Æ¤¤¤Ê¤¤Ì¾Á°¤ò -Áª¤ÖɬÍפ¬¤¢¤ê¤Þ¤¹¡£ -Î㤨¤Ð¡¢"host-name" ¤È¸À¤¦Ì¾Á°¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£ -¤È¤¤¤¦¤Î¤â¡¢¤³¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤Ë½Ð¤Æ¤­¤¿¤è¤¦¤Ë¡¢ -DHCP ¥×¥í¥È¥³¥ë¤¬´û¤Ë host-name ¥ª¥×¥·¥ç¥ó¤òÄêµÁ¤·¤Æ¤¤¤ë¤«¤é¤Ç¤¹¡£ -¤³¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤Ë½Ð¤Æ¤­¤Æ¤¤¤Ê¤¤¥ª¥×¥·¥ç¥ó̾¤Ê¤é¤Ð -»È¤Ã¤Æ¤â¹½¤¤¤Þ¤»¤ó¤¬¡¢¾­Íè½Ð¤Æ¤¯¤ë¥ª¥×¥·¥ç¥ó¤È½Å¤Ê¤é¤Ê¤¤¤è¤¦¤Ë¡¢ -¥ª¥×¥·¥ç¥ó̾¤ÎºÇ½é¤ËÆȼ«¤Îʸ»úÎó¤ò¤Ä¤±¤ë¤³¤È¤Ï¡¢Â¿Ê¬¤¤¤¤¹Í¤¨¤Ç¤·¤ç¤¦¡£ -Î㤨¤Ð¡¢¸ø¼°¤Î DHCP ¥ª¥×¥·¥ç¥ó¤Ë¤Ï "local" ¤Ç»Ï¤Þ¤ë¤â¤Î¤¬¤Ê¤¤¤Î¤Ç¡¢ -"local-host-name" ¤È¸À¤¦Ì¾Á°¤Ï¡¢¤¤¤¯¤é¤«°Â¿´¤·¤ÆÄêµÁ¤Ç¤­¤ë¤Ç¤·¤ç¤¦¡£ -.PP -̾Á°¤òÁªÂò¤·¤¿¤é¡¢¼¡¤Ï¥³¡¼¥É¤òÁª¤Ð¤Í¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ -DHCP ¥ª¥×¥·¥ç¥ó¤Î 128 ¤«¤é 256 ¤Þ¤Ç¤Î¥³¡¼¥É¤Ï¡¢ -¥µ¥¤¥È¥í¡¼¥«¥ë¥ª¥×¥·¥ç¥óÍѤȤ·¤ÆͽÌ󤵤ì¤Æ¤¤¤ë¤Î¤Ç¡¢ -¤³¤ÎÃæ¤Î¥³¡¼¥É¤Ê¤é¤É¤ì¤Ç¤âÁª¤Ö¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ -¼ÂºÝ¤Ë¤Ï¡¢¥×¥í¥È¥³¥ë¤ò¾¯¡¹¤¢¤¤¤Þ¤¤¤Ë²ò¼á¤·¤Æ¤¤¤ë¥Ù¥ó¥À¤¬¤¢¤ê¡¢ -128 ¤è¤êÂ礭¤¤ÃͤΥª¥×¥·¥ç¥ó¥³¡¼¥É¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£ -¤³¤ÎÌäÂê¤òËÜÅö¤Ë²óÈò¤¹¤ëÊýË¡¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¢ -¼ÂºÝ¤Ë¤Ï¤½¤¦Â礭¤ÊÌäÂê¤ò°ú¤­µ¯¤³¤¹¤â¤Î¤Ç¤Ï¤Ê¤¤¤Ç¤·¤ç¤¦¡£ -.PP -¥ª¥×¥·¥ç¥ó¤Î¹½Â¤¤È¤Ï¡¢Ã±¤Ë¥ª¥×¥·¥ç¥ó¤Î¥Ç¡¼¥¿¤¬É½¸½¤µ¤ì¤Æ¤¤¤ë·Á¼°¤Ç¤¹¡£ -¸½ºß ISC DHCP ¥µ¡¼¥Ð¤Ï¡¢À°¿ô¡¢¥Ö¡¼¥ëÃÍ¡¢Ê¸»úÎ󤽤·¤Æ IP ¥¢¥É¥ì¥¹¤È¤¤¤Ã¤¿¡¢ -¤¤¤¯¤Ä¤«¤Îñ½ã¤Ê¥Ç¡¼¥¿·¿¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤ª¤ê¡¢ -¤Þ¤¿Ã±°ì¥Ç¡¼¥¿·¿¤ÎÇÛÎó¤ä¸ÇÄê½ç¤Î¥Ç¡¼¥¿·¿Îó¤ÎÇÛÎó¤òÄêµÁ¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£ -.PP -¿·µ¬¥ª¥×¥·¥ç¥ó¤Ï¡¢°Ê²¼¤Î¤è¤¦¤ËÀë¸À¤µ¤ì¤Þ¤¹: +Internet Systems Consortium DHCP ���饤����Ȥȥ����Фϡ� +�������ץ�����������뵡�����󶡤��Ƥ��ޤ��� +���줾��� DHCP ���ץ����ϡ�̾���ȥ����ɡ���¤����äƤ��ޤ��� +̾���ϡ����ѼԤ����ץ����ò»²¾È¤ï¿½ï¿½ï¿½Î¤Ë»ï¿½ï¿½Ñ¤ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +�����ɤϡ�DHCP �����Фȥ��饤����Ȥ����ץ����ò»²¾È¤ï¿½ï¿½ï¿½Î¤ï¿½ +���Ѥ����ֹ�Ǥ��� +��¤�ϡ����ץ��������Ƥ��ɤΤ褦�ʤ�Τ��òµ­½Ò¤ï¿½ï¿½Æ¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +.PP +�������ץ������������ˤϡ�¾�Υ��ץ����ǤϻȤ��Ƥ��ʤ�̾���� +����ɬ�פ�����ޤ��� +�㤨�С�"host-name" �ȸ���̾���ϻ��ѤǤ��ޤ��� +�Ȥ����Τ⡢���Υޥ˥奢��ڡ����˽ФƤ����褦�ˡ� +DHCP �ץ��ȥ��뤬���� host-name ���ץ�����������Ƥ��뤫��Ǥ��� +���Υޥ˥奢��ڡ����˽ФƤ��Ƥ��ʤ����ץ����̾�ʤ�� +�ȤäƤ⹽���ޤ��󤬡�����ФƤ��륪�ץ����ȽŤʤ�ʤ��褦�ˡ� +���ץ����̾�κǽ���ȼ���ʸ�����Ĥ��뤳�Ȥϡ�¿ʬ�����ͤ��Ǥ��礦�� +�㤨�С������� DHCP ���ץ����ˤ� "local" �ǻϤޤ��Τ��ʤ��Τǡ� +"local-host-name" �ȸ���̾���ϡ������餫�¿���������Ǥ���Ǥ��礦�� +.PP +̾�������ò¤·¤ï¿½ï¿½é¡¢ï¿½ï¿½ï¿½Ï¥ï¿½ï¿½ï¿½ï¿½É¤ï¿½ï¿½ï¿½ï¿½Ð¤Í¤Ð¤Ê¤ï¿½Þ¤ï¿½ï¿½ï¿½ +DHCP ���ץ����� 128 ���� 256 �ޤǤΥ����ɤϡ� +�����ȥ������륪�ץ�����ѤȤ���ͽ�󤵤�Ƥ���Τǡ� +������Υ����ɤʤ�ɤ�Ǥ����֤��Ȥ��Ǥ��ޤ��� +�ºݤˤϡ��ץ��ȥ���ò¾¯¡ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½Ë²ï¿½á¤·ï¿½Æ¤ï¿½ï¿½ï¿½Ù¥ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ê¡¢ +128 ����礭���ͤΥ��ץ���󥳡��ɤ���Ѥ��Ƥ��ޤ��� +��������������˲��ò¤¹¤ï¿½ï¿½ï¿½Ë¡ï¿½Ï¤ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½ó¤¬¡ï¿½ +�ºݤˤϤ����礭������������������ΤǤϤʤ��Ǥ��礦�� +.PP +���ץ����ι�¤�Ȥϡ�ñ�˥��ץ����Υǡ�����ɽ������Ƥ�������Ǥ��� +���� ISC DHCP �����Фϡ��������֡����͡�ʸ���󤽤��� IP ���ɥ쥹�Ȥ��ä��� +�����Ĥ���ñ��ʥǡ������ò¥µ¥Ý¡ï¿½ï¿½È¤ï¿½ï¿½Æ¤ï¿½ï¿½ê¡¢ +�ޤ�ñ��ǡ����������������Υǡ�������������������뤳�Ȥ�Ǥ��ޤ��� +.PP +�������ץ����ϡ��ʲ��Τ褦���������ޤ�: .PP .B option .I new-name @@ -1305,15 +1305,15 @@ DHCP .B ; .PP .I new-name -¤È +�� .I new-code -¤ÎÃͤϡ¢¿·µ¬¥ª¥×¥·¥ç¥óÍѤˤ¢¤Ê¤¿¤¬Áª¤ó¤À¤â¤Î¤Ç¤¹¡£ +���ͤϡ��������ץ�����Ѥˤ��ʤ����������ΤǤ��� .I definition -¤Ï¡¢¥ª¥×¥·¥ç¥ó¤Î¹½Â¤¤ÎÄêµÁ¤Ç¤¹¡£ +�ϡ����ץ����ι�¤������Ǥ��� .PP -°Ê²¼¤Îñ½ã¤Ê¥ª¥×¥·¥ç¥ó¤Î·¿ÄêµÁ¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤¹: +�ʲ���ñ��ʥ��ץ����η���������ݡ��Ȥ���Ƥ��ޤ�: .PP -.B ¥Ö¡¼¥ëÃÍ +.B �֡����� .PP .B option .I new-name @@ -1323,16 +1323,16 @@ DHCP .B boolean .B ; .PP -¥Ö¡¼¥ë·¿¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢on ¤Þ¤¿¤Ï off (¤â¤·¤¯¤Ï true ¤« false) ¤ÎÃͤò -»ý¤Ä¥Õ¥é¥°¤Ç¤¹¡£ -¥Ö¡¼¥ë·¿¤Î»ÈÍÑÎã¤Ï¡¢°Ê²¼¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹: +�֡��뷿�Υ��ץ����ϡ�on �ޤ��� off (�⤷���� true �� false) ���ͤ� +���ĥե饰�Ǥ��� +�֡��뷿�λ�����ϡ��ʲ��Τ褦�ˤʤ�ޤ�: .nf option use-zephyr code 180 = boolean; option use-zephyr on; .fi -.B À°¿ô +.B ���� .PP .B option .I new-name @@ -1344,17 +1344,17 @@ option use-zephyr on; .I width .B ; .PP -\fIsign\fR ¥È¡¼¥¯¥ó¤Ï¡¢¶õÇò¡¢\fIunsigned\fR¡¢\fIsigned\fR ¤Î¤¤¤º¤ì¤«¤Ç¤¹¡£ -width ¤Ï 8, 16, 32 ¤Î¤¤¤º¤ì¤«¤Ç¡¢À°¿ô¤Î bit ¿ô¤ò¼¨¤·¤Þ¤¹¡£ -Î㤨¤Ð¡¢°Ê²¼¤Î 2 ¹Ô¤Ï¡¢sql-connection-max ¥ª¥×¥·¥ç¥ó¤ÎÄêµÁ¤È -»ÈÍÑË¡¤ò¼¨¤·¤Þ¤¹: +\fIsign\fR �ȡ�����ϡ�����\fIunsigned\fR��\fIsigned\fR �Τ����줫�Ǥ��� +width �� 8, 16, 32 �Τ����줫�ǡ������� bit ���ò¼¨¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +�㤨�С��ʲ��� 2 �Ԥϡ�sql-connection-max ���ץ���������� +����ˡ�ò¼¨¤ï¿½ï¿½Þ¤ï¿½: .nf option sql-connection-max code 192 = unsigned integer 16; option sql-connection-max 1536; .fi -.B IP ¥¢¥É¥ì¥¹ +.B IP ���ɥ쥹 .PP .B option .I new-name @@ -1364,9 +1364,9 @@ option sql-connection-max 1536; .B ip-address .B ; .PP -IP ¥¢¥É¥ì¥¹·¿¤Î¹½Â¤¤ò»ý¤Ä¥ª¥×¥·¥ç¥ó¤Ï¡¢¥É¥á¥¤¥ó̾¤â¤·¤¯¤Ï -¥É¥Ã¥È¶èÀÚ¤ê¤Î 4 À°¿ô¤Çɽ¸½¤µ¤ì¤Þ¤¹¡£ -°Ê²¼¤Ï¡¢IP ¥¢¥É¥ì¥¹·¿¤Î»ÈÍÑÎã¤Ç¤¹: +IP ���ɥ쥹���ι�¤����ĥ��ץ����ϡ��ɥᥤ��̾�⤷���� +�ɥåȶ��ڤ�� 4 ������ɽ������ޤ��� +�ʲ��ϡ�IP ���ɥ쥹���λ�����Ǥ�: .nf option sql-server-address code 193 = ip-address; @@ -1374,7 +1374,7 @@ option sql-server-address sql.example.com; .fi .PP -.B ¥Æ¥­¥¹¥È +.B �ƥ����� .PP .B option .I new-name @@ -1384,8 +1384,8 @@ option sql-server-address sql.example.com; .B text .B ; .PP -¥Æ¥­¥¹¥È·¿¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢ASCII ¥Æ¥­¥¹¥Èʸ»úÎó¤ò¥¨¥ó¥³¡¼¥É¤·¤Þ¤¹¡£ -Î㤨¤Ð: +�ƥ����ȷ��Υ��ץ����ϡ�ASCII �ƥ�����ʸ����ò¥¨¥ó¥³¡ï¿½ï¿½É¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +�㤨��: .nf option sql-default-connection-name code 194 = text; @@ -1393,7 +1393,7 @@ option sql-default-connection-name "PRODZA"; .fi .PP -.B ¥Ç¡¼¥¿Ê¸»úÎó +.B �ǡ���ʸ���� .PP .B option .I new-name @@ -1403,11 +1403,11 @@ option sql-default-connection-name "PRODZA"; .B string .B ; .PP -¥Ç¡¼¥¿Ê¸»úÎ󷿤Υª¥×¥·¥ç¥ó¤Ï¡¢ËܼÁŪ¤Ë¤Ïñ¤Ê¤ë¥Ð¥¤¥È¤Î½¸¹çÂΤǤ¹¡£ -¥Æ¥­¥¹¥È·¿¤Î¤è¤¦¤Ë¥¯¥ª¡¼¥È¤µ¤ì¤¿¥Æ¥­¥¹¥È¤Ç»ØÄꤵ¤ì¤ë¤«¡¢ -¤â¤·¤¯¤Ï¥³¥í¥ó¶èÀÚ¤ê¤Î 16 ¿Ê¿ô¤Î¥ê¥¹¥È¤Ç»ØÄꤵ¤ì¤Þ¤¹¡£ -¤³¤Î»þ¥³¥í¥ó¤Ç¶èÀÚ¤é¤ì¤¿Ãæ¿È¤Ï¡¢0 ¤«¤é FF ¤Î´Ö¤ÎÃͤǤʤ±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ -Î㤨¤Ð: +�ǡ���ʸ���󷿤Υ��ץ����ϡ��ܼ�Ū�ˤ�ñ�ʤ�Х��Ȥν����ΤǤ��� +�ƥ����ȷ��Τ褦�˥������Ȥ��줿�ƥ����Ȥǻ��ꤵ��뤫�� +�⤷���ϥ�������ڤ�� 16 �ʿ��Υꥹ�Ȥǻ��ꤵ��ޤ��� +���λ�������Ƕ��ڤ�줿��Ȥϡ�0 ���� FF �δ֤��ͤǤʤ���Фʤ�ޤ��� +�㤨��: .nf option sql-identification-token code 195 = string; @@ -1415,7 +1415,7 @@ option sql-identification-token 17:23:19:a6:42:ea:99:7c:22; .fi .PP -.B ¥«¥×¥»¥ë²½ +.B ���ץ��벽 .PP .B option .I new-name @@ -1426,11 +1426,11 @@ option sql-identification-token 17:23:19:a6:42:ea:99:7c:22; .I identifier .B ; .PP -¥«¥×¥»¥ë²½·¿¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢\fIidentifier\fR ¤Ç»ØÄꤵ¤ì¤¿ -¥ª¥×¥·¥ç¥ó¶õ´Ö¤ÎÃæ¿È¤ò¥«¥×¥»¥ë²½¤·¤Þ¤¹¡£ -¸½ºß DHCP ¥×¥í¥È¥³¥ë¤Ë¸ºß¤¹¤ë¥«¥×¥»¥ë²½¥ª¥×¥·¥ç¥ó¤ÎÎã¤Ï¡¢ -vendor-encapsulated-options ¥ª¥×¥·¥ç¥ó¡¢netware-suboptions ¥ª¥×¥·¥ç¥ó¡¢ -relay-agent-information ¥ª¥×¥·¥ç¥ó¤Ê¤É¤Ç¤¹¡£ +���ץ��벽���Υ��ץ����ϡ�\fIidentifier\fR �ǻ��ꤵ�줿 +���ץ������֤���Ȥò¥«¥×¥ï¿½ï¿½ë²½ï¿½ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +���� DHCP �ץ��ȥ����¸�ߤ��륫�ץ��벽���ץ�������ϡ� +vendor-encapsulated-options ���ץ����netware-suboptions ���ץ���� +relay-agent-information ���ץ����ʤɤǤ��� .nf option space local; @@ -1440,31 +1440,31 @@ option local.demo "demo"; .fi .PP -.B ÇÛÎó +.B ���� .PP -¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Æ¥­¥¹¥È·¿¤È¥Ç¡¼¥¿Ê¸»úÎ󷿰ʳ°¤Î¾å½Ò¤Î¤¤¤«¤Ê¤ë¥Ç¡¼¥¿·¿¤Î -ÇÛÎó¤â´Þ¤à¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ -¥Æ¥­¥¹¥È·¿¤È¥Ç¡¼¥¿Ê¸»úÎ󷿤ϡ¢¸½ºßÇÛÎó¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£ -ÇÛÎóÄêµÁ¤ÎÎã¤Ï°Ê²¼¤ÎÄ̤ê¤Ç¤¹: +���ץ����ϡ��ƥ����ȷ��ȥǡ���ʸ���󷿰ʳ��ξ�ҤΤ����ʤ�ǡ������� +�����ޤळ�Ȥ��Ǥ��ޤ��� +�ƥ����ȷ��ȥǡ���ʸ���󷿤ϡ���������Ǥϥ��ݡ��Ȥ���Ƥ��ޤ��� +�����������ϰʲ����̤�Ǥ�: .nf option kerberos-servers code 200 = array of ip-address; option kerberos-servers 10.20.10.1, 10.20.11.1; .fi -.B ¥ì¥³¡¼¥É +.B �쥳���� .PP -¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Ç¡¼¥¿·¿¤ÎÎó¤Ç¹½À®¤µ¤ì¤ë¥Ç¡¼¥¿¹½Â¤¤ò´Þ¤à¤³¤È¤â¤Ç¤­¤Þ¤¹¡£ -¤³¤ì¤Ï¤·¤Ð¤·¤Ð¥ì¥³¡¼¥É·¿¤È¸Æ¤Ð¤ì¤Þ¤¹¡£ -Î㤨¤Ð: +���ץ����ϡ��ǡ���������ǹ��������ǡ�����¤��ޤळ�Ȥ�Ǥ��ޤ��� +����Ϥ��Ф��Х쥳���ɷ��ȸƤФ�ޤ��� +�㤨��: .nf option contrived-001 code 201 = { boolean, integer 32, text }; option contrived-001 on 1772 "contrivance"; .fi -¤Þ¤¿¥ì¥³¡¼¥É¤ÎÇÛÎó¤Î¥ª¥×¥·¥ç¥ó¤ò»ý¤Ä¤³¤È¤â¤Ç¤­¤Þ¤¹¡£ -Î㤨¤Ð: +�ޤ��쥳���ɤ�����Υ��ץ�������Ĥ��Ȥ�Ǥ��ޤ��� +�㤨��: .nf option new-static-routes code 201 = array of { @@ -1474,25 +1474,25 @@ option static-routes 10.0.1.0 255.255.255.0 net-1-rtr.example.com 1, 10.2.0.0 255.255.224.0 net-2-0-rtr.example.com 3; -.fi -.SH ¥Ù¥ó¥À¥«¥×¥»¥ë²½¥ª¥×¥·¥ç¥ó +.fi +.SH �٥�����ץ��벽���ץ���� .\" metal -DHCP ¥×¥í¥È¥³¥ë¤Ë¤Ï¡¢\fB vendor-encapsulated-options\fR ¥ª¥×¥·¥ç¥ó¤¬ -ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ -¥Ù¥ó¥À¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤Æ¡¢¥Ù¥ó¥À¸ÇÍ­¤Î¥ª¥×¥·¥ç¥ó¤ò -ɸ½à DHCP ¥ª¥×¥·¥ç¥ó¤Ë´Þ¤á¤ÆÁ÷½Ð¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ +DHCP �ץ��ȥ���ˤϡ�\fB vendor-encapsulated-options\fR ���ץ���� +�������Ƥ��ޤ��� +�٥���ϡ����Υ��ץ����ˤ�äơ��٥����ͭ�Υ��ץ����� +ɸ�� DHCP ���ץ����˴ޤ�����Ф��뤳�Ȥ��Ǥ��ޤ��� .B vendor-encapsulated-options -¥ª¥×¥·¥ç¥ó¤Î½ñ¼°¤Ï¡¢½ñ¼°¤¬µ¬Äꤵ¤ì¤Æ¤¤¤Ê¤¤°ìÏ¢¤Î¥Ð¥¤¥ÈÎó¡¢ -¤â¤·¤¯¤Ï°ìÏ¢¤Î¥ª¥×¥·¥ç¥óÎó¤Ç¤¹¡£ -¥ª¥×¥·¥ç¥óÎóÃæ¤Î¤½¤ì¤¾¤ì¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢1 ¥Ð¥¤¥È¤Î¥Ù¥ó¥À¸ÇÍ­¤Î -¥ª¥×¥·¥ç¥ó¥³¡¼¥É¤Î¸å¤Ë 1 ¥Ð¥¤¥È¤Î¥Ç¡¼¥¿Ä¹¡¢ -¤½¤·¤Æ¤½¤Î¥Ç¡¼¥¿Ä¹¤Ç»ØÄꤵ¤ì¤¿Â礭¤µ¤Î¥Ç¡¼¥¿¤¬Â³¤¤¤¿¤â¤Î¤Ç¹½À®¤µ¤ì¤Þ¤¹ -(¥Ç¡¼¥¿Ä¹¤Ë¤Ï¡¢¥Ç¡¼¥¿Ä¹¼«¿È¤ä¥ª¥×¥·¥ç¥ó¥³¡¼¥É¤Ï´Þ¤Þ¤ì¤Þ¤»¤ó)¡£ -.PP -ËÜ¥ª¥×¥·¥ç¥ó¤ÎÃͤϡ¢2 ¤Ä¤ÎÊýË¡¤Î¤¤¤º¤ì¤«¤ÇÀßÄꤵ¤ì¤Þ¤¹¡£ -1 ÈÖÌܤÎÊýË¡¤Ï¡¢Ã±¤Ë¥Ç¡¼¥¿¤òľÀÜ»ØÄꤹ¤ë¤â¤Î¤Ç¤¹¡£ -¥Ç¡¼¥¿¤Î»ØÄê¤Ë¤Ï¡¢¥Æ¥­¥¹¥Èʸ»úÎ󤫥³¥í¥ó¤Ç¶èÀÚ¤é¤ì¤¿ 16 ¿Ê¿ôÃͤòÍѤ¤¤Þ¤¹¡£ -Î㤨¤Ð: +���ץ����νñ¼°¤Ï¡ï¿½ï¿½ñ¼°¤ï¿½ï¿½ï¿½ï¿½ê¤µï¿½ï¿½Æ¤ï¿½ï¿½Ê¤ï¿½ï¿½ï¿½Ï¢ï¿½Î¥Ð¥ï¿½ï¿½ï¿½ï¿½ï¿½ +�⤷���ϰ�Ϣ�Υ��ץ������Ǥ��� +���ץ��������Τ��줾��Υ��ץ����ϡ�1 �Х��ȤΥ٥����ͭ�� +���ץ���󥳡��ɤθ�� 1 �Х��ȤΥǡ���Ĺ�� +�����Ƥ��Υǡ���Ĺ�ǻ��ꤵ�줿�礭���Υǡ�����³������Τǹ�������ޤ� +(�ǡ���Ĺ�ˤϡ��ǡ���Ĺ���Ȥ䥪�ץ���󥳡��ɤϴޤޤ�ޤ���)�� +.PP +�ܥ��ץ������ͤϡ�2 �Ĥ���ˡ�Τ����줫�����ꤵ��ޤ��� +1 ���ܤ���ˡ�ϡ�ñ�˥ǡ�����ľ�ܻ��ꤹ���ΤǤ��� +�ǡ����λ���ˤϡ��ƥ�����ʸ���󤫥�����Ƕ��ڤ�줿 16 �ʿ��ͤ��Ѥ��ޤ��� +�㤨��: .PP .nf option vendor-encapsulated-options @@ -1501,25 +1501,25 @@ option vendor-encapsulated-options 4:12:2f:65:78:70:6f:72:74:2f:72:6f:6f:74:2f:69:38:36:70:63; .fi .PP -ËÜ¥ª¥×¥·¥ç¥ó¤òÀßÄꤹ¤ë 2 ÈÖÌܤÎÊýË¡¤Ï¡¢DHCP ¥µ¡¼¥Ð¤Ë -¥Ù¥ó¥À¸ÇÍ­¥ª¥×¥·¥ç¥ó¥Ð¥Ã¥Õ¥¡¤òºîÀ®¤µ¤»¤ë¤È¤¤¤¦¤â¤Î¤Ç¤¹¡£ -¤³¤ì¤ò¤¹¤ë¤Ë¤Ï¡¢°Ê²¼¤Î 4 ¤Ä¤Î¤³¤È¤ò¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹: -¥ª¥×¥·¥ç¥ó¶õ´Ö¤òÄêµÁ¤·¡¢¤½¤Î¥ª¥×¥·¥ç¥ó¶õ´ÖÆâ¤Ë¥ª¥×¥·¥ç¥ó¤òÄêµÁ¤·¡¢ -¤½¤ì¤é¤ØÃͤò³ä¤ê¿¶¤ê¡¢ºÇ¸å¤Ë¤½¤Î¥ª¥×¥·¥ç¥ó¶õ´Ö¤¬ +�ܥ��ץ��������ꤹ�� 2 ���ܤ���ˡ�ϡ�DHCP ������ +�٥����ͭ���ץ����Хåե������������Ȥ�����ΤǤ��� +����ò¤¹¤ï¿½Ë¤Ï¡ï¿½ï¿½Ê²ï¿½ï¿½ï¿½ 4 �ĤΤ��Ȥò¤¹¤ï¿½É¬ï¿½×¤ï¿½ï¿½ï¿½ï¿½ï¿½Þ¤ï¿½: +���ץ������֤�����������Υ��ץ���������˥��ץ������������ +�������ͤ��꿶�ꡢ�Ǹ�ˤ��Υ��ץ������֤� .B vendor-encapsulated-options -¥ª¥×¥·¥ç¥ó¤ÎÀ¸À®¤Ë»ÈÍѤµ¤ì¤ë¤³¤È¤ò»ØÄꤷ¤Þ¤¹¡£ +���ץ����������˻��Ѥ���뤳�Ȥ���ꤷ�ޤ��� .PP -¥Ù¥ó¥À¥ª¥×¥·¥ç¥ó¤¬³ÊǼ¤µ¤ì¤ë¥ª¥×¥·¥ç¥ó¶õ´Ö¤ò¿·µ¬¤ËÄêµÁ¤¹¤ë¤Ë¤Ï¡¢ -\fRoption space\fP ʸ¤ò»ÈÍѤ·¤Þ¤¹: +�٥�����ץ���󤬳�Ǽ����륪�ץ������֤ò¿·µï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ë¤Ï¡ï¿½ +\fRoption space\fP ʸ����Ѥ��ޤ�: .PP .B option .B space .I name .B ; .PP -¤³¤Îʸ½ñ¤Ë¤³¤ì¤Þ¤Ç½ñ¤«¤ì¤Æ¤¤¤ë¤è¤¦¤Ë¡¢ -¤³¤Î name ¤Ï¡¢¥ª¥×¥·¥ç¥óÄêµÁ¤Ç»ÈÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ -Î㤨¤Ð: +����ʸ��ˤ���ޤǽñ¤«¤ï¿½Æ¤ï¿½ï¿½ï¿½è¤¦ï¿½Ë¡ï¿½ +���� name �ϡ����ץ��������ǻ��Ѥ��뤳�Ȥ��Ǥ��ޤ��� +�㤨��: .nf option space SUNW; @@ -1528,13 +1528,13 @@ option SUNW.server-name code 3 = text; option SUNW.root-path code 4 = text; .fi -°ìÅÙ¡¢¥ª¥×¥·¥ç¥ó¶õ´Ö¤È¥ª¥×¥·¥ç¥ó¤Î½ñ¼°¤òÄêµÁ¤·¤¿¤é¡¢ -¤½¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤ÎÃͤòÄêµÁ¤¹¤ë¥¹¥³¡¼¥×¤òÀßÄê¤Ç¤­¡¢ -¤½¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤ò¤¤¤Ä»È¤¦¤«¤ò»ØÄꤹ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ -Î㤨¤Ð¡¢2 ¤Ä¤Î°Û¤Ê¤ë¥¯¥é¥¹¤Î¥¯¥é¥¤¥¢¥ó¥È¤ò°·¤¤¤¿¤¤¤È¤·¤Þ¤·¤ç¤¦¡£ -Á°½Ò¤ÎÎã¤Ç¼¨¤·¤¿¥ª¥×¥·¥ç¥ó¶õ´Ö¤ÎÄêµÁ¤ò»È¤Ã¤Æ¡¢°Ê²¼¤Î¤è¤¦¤Ë¡¢ -¥¯¥é¥¤¥¢¥ó¥È¤«¤éÁ÷¤é¤ì¤Æ¤­¤¿ vendor-class-identifier ¥ª¥×¥·¥ç¥ó¤Ë´ð¤Å¤¤¤Æ¡¢ -°Û¤Ê¤ë¥ª¥×¥·¥ç¥ó¤ÎÃͤò°Û¤Ê¤ë¥¯¥é¥¤¥¢¥ó¥È¤ËÁ÷½Ð¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ +���١����ץ������֤ȥ��ץ����νñ¼°¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½é¡¢ +�����Υ��ץ������ͤ�������륹�����פ�����Ǥ��� +�����Υ��ץ����ò¤¤¤Ä»È¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ê¤¹ï¿½ë¤³ï¿½È¤ï¿½ï¿½Ç¤ï¿½ï¿½Þ¤ï¿½ï¿½ï¿½ +�㤨�С�2 �Ĥΰۤʤ륯�饹�Υ��饤����Ȥò°·¤ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½È¤ï¿½ï¿½Þ¤ï¿½ï¿½ç¤¦ï¿½ï¿½ +���Ҥ���Ǽ��������ץ������֤������Ȥäơ��ʲ��Τ褦�ˡ� +���饤����Ȥ��������Ƥ��� vendor-class-identifier ���ץ����˴�Ť��ơ� +�ۤʤ륪�ץ������ͤ�ۤʤ륯�饤����Ȥ����Ф��뤳�Ȥ��Ǥ��ޤ��� .PP .nf class "vendor-classes" { @@ -1555,20 +1555,20 @@ subclass "vendor-classes" "SUNW.i86pc" { } .fi .PP -Àè¤ÎÎã¤Ç¸«¤¿¤è¤¦¤Ë¡¢Ä̾ï¤Î¥¹¥³¡¼¥×¥ë¡¼¥ë¤òŬÍѤ¹¤ë¤³¤È¤Ç¡¢ -¥°¥í¡¼¥Ð¥ë¤ÊÃͤò¥°¥í¡¼¥Ð¥ë¥¹¥³¡¼¥×Ãæ¤ËÄêµÁ¤Ç¤­¡¢ -ÆÃÄê¤Î¥¯¥é¥¹¤Ë¸ÇÍ­¤ÎÃͤÀ¤±¤ò¥í¡¼¥«¥ë¥¹¥³¡¼¥×¤ËÄêµÁ¤Ç¤­¤Þ¤¹¡£ -\fBvendor-option-space\fR Àë¸À¤ò»È¤¦¤³¤È¤Ç¡¢ +�����Ǹ����褦�ˡ��̾�Υ������ץ롼���Ŭ�Ѥ��뤳�Ȥǡ� +�������Х���ͤò¥°¥ï¿½ï¿½ï¿½ï¿½Ð¥ë¥¹ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ç¤ï¿½ï¿½ï¿½ +����Υ��饹�˸�ͭ���ͤ�����������륹�����פ�����Ǥ��ޤ��� +\fBvendor-option-space\fR �����Ȥ����Ȥǡ� .B vendor-encapsulated-options -¥ª¥×¥·¥ç¥ó¤ò¹½À®¤¹¤ë¤Î¤Ë¡¢SUNW ¥ª¥×¥·¥ç¥ó¶õ´ÖÆâ¤Î¥ª¥×¥·¥ç¥ó¤ò»È¤¦¤è¤¦ -DHCP ¥µ¡¼¥Ð¤Ë»Ø¼¨¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ -.SH ´ØÏ¢¹àÌÜ -dhclient.conf(5), dhcp-eval(5), +���ץ�����������Τˡ�SUNW ���ץ���������Υ��ץ�����Ȥ��褦 +DHCP �����Ф˻ؼ����뤳�Ȥ��Ǥ��ޤ��� +.SH ��Ϣ���� +dhclient.conf(5), dhcp-eval(5), dhclient(8), RFC2132, RFC2131 -.SH ºî¼Ô +.SH ��� Internet Systems Consortium DHCP Distribution -¤Ï¡¢Vixie Labs ¤È¤Î·ÀÌó¤Î¤â¤È¤Ç¡¢Ted Lemon ¤¬µ­½Ò¤·¤Þ¤·¤¿¡£ -ËÜ¥×¥í¥¸¥§¥¯¥È¤Î»ñ¶â¤Ï¡¢Internet Systems Consortium ¤¬Ä󶡤·¤Þ¤·¤¿¡£ -Internet Systems Consortium ¤Ë´Ø¤¹¤ë¾ðÊó¤Ï¡¢ +�ϡ�Vixie Labs �Ȥη���Τ�Ȥǡ�Ted Lemon �����Ҥ��ޤ����� +�ܥץ��������Ȥλ��ϡ�Internet Systems Consortium ���󶡤��ޤ����� +Internet Systems Consortium �˴ؤ������ϡ� .B https://www.isc.org -¤Ë¤¢¤ê¤Þ¤¹¡£ +�ˤ���ޤ��� diff --git a/includes/arpa/nameser.h b/includes/arpa/nameser.h index 69ed5c92..54ddb5dc 100644 --- a/includes/arpa/nameser.h +++ b/includes/arpa/nameser.h @@ -1,7 +1,7 @@ /* * Copyright (c) 1983, 1989, 1993 * The Regents of the University of California. All rights reserved. - * + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -13,7 +13,7 @@ * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. - * + * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE diff --git a/includes/cdefs.h b/includes/cdefs.h index 59f16a5a..1a96b2ea 100644 --- a/includes/cdefs.h +++ b/includes/cdefs.h @@ -61,7 +61,7 @@ #endif /* This macro is defined to avoid unused-but-set-variable warning - * that is enabled in gcc 4.6 + * that is enabled in gcc 4.6 */ #define IGNORE_UNUSED(x) { x = x; } diff --git a/includes/ctrace.h b/includes/ctrace.h index d21bd2e2..b87505c7 100644 --- a/includes/ctrace.h +++ b/includes/ctrace.h @@ -61,7 +61,7 @@ void trace_inpacket_stop (trace_type_t *); void trace_outpacket_input (trace_type_t *, unsigned, char *); void trace_outpacket_stop (trace_type_t *); ssize_t trace_packet_send (struct interface_info *, - struct packet *, struct dhcp_packet *, size_t, + struct packet *, struct dhcp_packet *, size_t, struct in_addr, struct sockaddr_in *, struct hardware *); void trace_icmp_input_input (trace_type_t *, unsigned, char *); diff --git a/includes/dhcp.h b/includes/dhcp.h index ae621c15..8f181bbe 100644 --- a/includes/dhcp.h +++ b/includes/dhcp.h @@ -202,4 +202,3 @@ struct dhcp_packet { #define VENDOR_ISC_SUBOPTIONS 2495 #endif /* DHCP_H */ - diff --git a/includes/dhcpd.h b/includes/dhcpd.h index 372062d3..d7c8e9cd 100644 --- a/includes/dhcpd.h +++ b/includes/dhcpd.h @@ -3910,4 +3910,3 @@ void lc_delete_all(struct leasechain *lc); #define FIND_POND6_PERCENT(count, percent) \ ((count) > (POND_TRACK_MAX / 100) ? \ ((count) / 100) * (percent) : ((count) * (percent)) / 100) - diff --git a/includes/inet.h b/includes/inet.h index b68d94d0..4fe2cade 100644 --- a/includes/inet.h +++ b/includes/inet.h @@ -56,7 +56,7 @@ struct iaddrmatch { }; /* its list ... */ - + struct iaddrmatchlist { struct iaddrmatchlist *next; struct iaddrmatch match; @@ -76,4 +76,3 @@ struct iaddrcidrnetlist { struct iaddrcidrnetlist *next; struct iaddrcidrnet cidrnet; }; - diff --git a/includes/ldap_casa.h b/includes/ldap_casa.h index d0a86a50..3408425b 100644 --- a/includes/ldap_casa.h +++ b/includes/ldap_casa.h @@ -1,31 +1,31 @@ /* ldap_casa.h - + Definition for CASA modules... */ /* Copyright (c) 2006 Novell, Inc. * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * 1.Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * 2.Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * 3.Neither the name of ISC, ISC DHCP, nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * 1.Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * 2.Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * 3.Neither the name of ISC, ISC DHCP, nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. - * THIS SOFTWARE IS PROVIDED BY INTERNET SYSTEMS CONSORTIUM AND CONTRIBUTORS + * THIS SOFTWARE IS PROVIDED BY INTERNET SYSTEMS CONSORTIUM AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, - * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ISC OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN - * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ISC OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * This file was written by S Kalyanasundaram @@ -69,7 +69,7 @@ SSCS_TYPEDEF_LIBCALL(int, CASA_GetCredential_T) SSCS_SECRET_ID_T *sharedSecretID, uint32_t *credentialType, void *credential, - SSCS_EXT_T *ext + SSCS_EXT_T *ext ); SSCS_TYPEDEF_LIBCALL(int, CASA_SetCredential_T) ( @@ -99,4 +99,3 @@ int load_uname_pwd_from_miCASA(char **, char **); #endif /* __LDAP_CASA_H__ */ #endif /* LDAP_CASA_AUTH */ - diff --git a/includes/omapip/buffer.h b/includes/omapip/buffer.h index 693432f0..4970e1dd 100644 --- a/includes/omapip/buffer.h +++ b/includes/omapip/buffer.h @@ -52,7 +52,7 @@ typedef struct _omapi_buffer { u_int16_t head, tail; /* Buffers are organized in a ring. */ char buf [OMAPI_BUF_SIZE]; /* The actual buffer is included in the buffer data structure. */ -} omapi_buffer_t; +} omapi_buffer_t; #define BUFFER_BYTES_FREE(x) \ ((x) -> tail > (x) -> head \ @@ -74,4 +74,3 @@ isc_result_t omapi_connection_get_uint32 (omapi_object_t *, u_int32_t *); isc_result_t omapi_connection_put_uint32 (omapi_object_t *, u_int32_t); isc_result_t omapi_connection_get_uint16 (omapi_object_t *, u_int16_t *); isc_result_t omapi_connection_put_uint16 (omapi_object_t *, u_int32_t); - diff --git a/includes/omapip/omapip.h b/includes/omapip/omapip.h index 0b7bd04e..9bcd9cb7 100644 --- a/includes/omapip/omapip.h +++ b/includes/omapip/omapip.h @@ -93,7 +93,7 @@ typedef struct { typedef struct __omapi_object_type_t { const char *name; struct __omapi_object_type_t *next; - + isc_result_t (*set_value) (omapi_object_t *, omapi_object_t *, omapi_data_string_t *, omapi_typed_data_t *); @@ -284,7 +284,7 @@ isc_result_t omapi_protocol_set_value (omapi_object_t *, omapi_object_t *, omapi_typed_data_t *); isc_result_t omapi_protocol_get_value (omapi_object_t *, omapi_object_t *, omapi_data_string_t *, - omapi_value_t **); + omapi_value_t **); isc_result_t omapi_protocol_stuff_values (omapi_object_t *, omapi_object_t *, omapi_object_t *); @@ -303,7 +303,7 @@ isc_result_t omapi_protocol_listener_set_value (omapi_object_t *, isc_result_t omapi_protocol_listener_get_value (omapi_object_t *, omapi_object_t *, omapi_data_string_t *, - omapi_value_t **); + omapi_value_t **); isc_result_t omapi_protocol_listener_destroy (omapi_object_t *, const char *, int); isc_result_t omapi_protocol_listener_signal (omapi_object_t *, @@ -334,7 +334,7 @@ isc_result_t omapi_connection_set_value (omapi_object_t *, omapi_object_t *, omapi_typed_data_t *); isc_result_t omapi_connection_get_value (omapi_object_t *, omapi_object_t *, omapi_data_string_t *, - omapi_value_t **); + omapi_value_t **); isc_result_t omapi_connection_destroy (omapi_object_t *, const char *, int); isc_result_t omapi_connection_signal_handler (omapi_object_t *, const char *, va_list); @@ -365,7 +365,7 @@ isc_result_t omapi_listener_set_value (omapi_object_t *, omapi_object_t *, omapi_typed_data_t *); isc_result_t omapi_listener_get_value (omapi_object_t *, omapi_object_t *, omapi_data_string_t *, - omapi_value_t **); + omapi_value_t **); isc_result_t omapi_listener_destroy (omapi_object_t *, const char *, int); isc_result_t omapi_listener_signal_handler (omapi_object_t *, const char *, va_list); @@ -393,7 +393,7 @@ isc_result_t omapi_io_set_value (omapi_object_t *, omapi_object_t *, omapi_data_string_t *, omapi_typed_data_t *); isc_result_t omapi_io_get_value (omapi_object_t *, omapi_object_t *, - omapi_data_string_t *, omapi_value_t **); + omapi_data_string_t *, omapi_value_t **); isc_result_t omapi_io_destroy (omapi_object_t *, const char *, int); isc_result_t omapi_io_signal_handler (omapi_object_t *, const char *, va_list); isc_result_t omapi_io_stuff_values (omapi_object_t *, @@ -411,7 +411,7 @@ isc_result_t omapi_generic_set_value (omapi_object_t *, omapi_object_t *, omapi_typed_data_t *); isc_result_t omapi_generic_get_value (omapi_object_t *, omapi_object_t *, omapi_data_string_t *, - omapi_value_t **); + omapi_value_t **); isc_result_t omapi_generic_destroy (omapi_object_t *, const char *, int); isc_result_t omapi_generic_signal_handler (omapi_object_t *, const char *, va_list); @@ -426,7 +426,7 @@ isc_result_t omapi_message_set_value (omapi_object_t *, omapi_object_t *, omapi_typed_data_t *); isc_result_t omapi_message_get_value (omapi_object_t *, omapi_object_t *, omapi_data_string_t *, - omapi_value_t **); + omapi_value_t **); isc_result_t omapi_message_destroy (omapi_object_t *, const char *, int); isc_result_t omapi_message_signal_handler (omapi_object_t *, const char *, va_list); @@ -448,7 +448,7 @@ isc_result_t omapi_auth_key_lookup (omapi_object_t **, omapi_object_t *); isc_result_t omapi_auth_key_get_value (omapi_object_t *, omapi_object_t *, omapi_data_string_t *, - omapi_value_t **); + omapi_value_t **); isc_result_t omapi_auth_key_stuff_values (omapi_object_t *, omapi_object_t *, omapi_object_t *); @@ -520,9 +520,9 @@ isc_result_t omapi_set_string_value (omapi_object_t *, omapi_object_t *, const char *, const char *); isc_result_t omapi_get_value (omapi_object_t *, omapi_object_t *, omapi_data_string_t *, - omapi_value_t **); + omapi_value_t **); isc_result_t omapi_get_value_str (omapi_object_t *, omapi_object_t *, - const char *, omapi_value_t **); + const char *, omapi_value_t **); isc_result_t omapi_stuff_values (omapi_object_t *, omapi_object_t *, omapi_object_t *); diff --git a/includes/omapip/omapip_p.h b/includes/omapip/omapip_p.h index fbbd1182..b744a5ce 100644 --- a/includes/omapip/omapip_p.h +++ b/includes/omapip/omapip_p.h @@ -134,7 +134,7 @@ typedef struct __omapi_remote_auth { typedef struct __omapi_protocol_object { OMAPI_OBJECT_PREAMBLE; - u_int32_t header_size; + u_int32_t header_size; u_int32_t protocol_version; u_int32_t next_xid; diff --git a/includes/omapip/result.h b/includes/omapip/result.h index b38c748f..7edf0c45 100644 --- a/includes/omapip/result.h +++ b/includes/omapip/result.h @@ -84,36 +84,36 @@ #ifdef INCLUDE_OLD_DHCP_ISC_ERROR_CODES #define ISC_R_HOSTUNKNOWN DHCP_R_HOSTUNKNOWN #define ISC_R_VERSIONMISMATCH DHCP_R_VERSIONMISMATCH -#define ISC_R_PROTOCOLERROR DHCP_R_PROTOCOLERROR -#define ISC_R_INVALIDARG DHCP_R_INVALIDARG -#define ISC_R_NOTYET DHCP_R_NOTYET -#define ISC_R_UNCHANGED DHCP_R_UNCHANGED -#define ISC_R_KEYCONFLICT DHCP_R_KEYCONFLICT -#define ISC_R_BADPARSE DHCP_R_BADPARSE -#define ISC_R_NOKEYS DHCP_R_NOKEYS -#define ISC_R_KEY_UNKNOWN DHCP_R_KEY_UNKNOWN -#define ISC_R_INVALIDKEY DHCP_R_INVALIDKEY -#define ISC_R_INCOMPLETE DHCP_R_INCOMPLETE -#define ISC_R_FORMERR DHCP_R_FORMERR -#define ISC_R_SERVFAIL DHCP_R_SERVFAIL -#define ISC_R_NXDOMAIN DHCP_R_NXDOMAIN -#define ISC_R_NOTIMPL DHCP_R_NOTIMPL -#define ISC_R_REFUSED DHCP_R_REFUSED -#define ISC_R_YXDOMAIN DHCP_R_YXDOMAIN -#define ISC_R_YXRRSET DHCP_R_YXRRSET -#define ISC_R_NXRRSET DHCP_R_NXRRSET -#define ISC_R_NOTAUTH DHCP_R_NOTAUTH -#define ISC_R_NOTZONE DHCP_R_NOTZONE -#define ISC_R_BADSIG DHCP_R_BADSIG -#define ISC_R_BADKEY DHCP_R_BADKEY -#define ISC_R_BADTIME DHCP_R_BADTIME -#define ISC_R_NOROOTZONE DHCP_R_NOROOTZONE -#define ISC_R_DESTADDRREQ DHCP_R_DESTADDRREQ -#define ISC_R_CROSSZONE DHCP_R_CROSSZONE -#define ISC_R_NO_TSIG DHCP_R_NO_TSIG -#define ISC_R_NOT_EQUAL DHCP_R_NOT_EQUAL -#define ISC_R_CONNRESET DHCP_R_CONNRESET -#define ISC_R_UNKNOWNATTRIBUTE DHCP_R_UNKNOWNATTRIBUTE +#define ISC_R_PROTOCOLERROR DHCP_R_PROTOCOLERROR +#define ISC_R_INVALIDARG DHCP_R_INVALIDARG +#define ISC_R_NOTYET DHCP_R_NOTYET +#define ISC_R_UNCHANGED DHCP_R_UNCHANGED +#define ISC_R_KEYCONFLICT DHCP_R_KEYCONFLICT +#define ISC_R_BADPARSE DHCP_R_BADPARSE +#define ISC_R_NOKEYS DHCP_R_NOKEYS +#define ISC_R_KEY_UNKNOWN DHCP_R_KEY_UNKNOWN +#define ISC_R_INVALIDKEY DHCP_R_INVALIDKEY +#define ISC_R_INCOMPLETE DHCP_R_INCOMPLETE +#define ISC_R_FORMERR DHCP_R_FORMERR +#define ISC_R_SERVFAIL DHCP_R_SERVFAIL +#define ISC_R_NXDOMAIN DHCP_R_NXDOMAIN +#define ISC_R_NOTIMPL DHCP_R_NOTIMPL +#define ISC_R_REFUSED DHCP_R_REFUSED +#define ISC_R_YXDOMAIN DHCP_R_YXDOMAIN +#define ISC_R_YXRRSET DHCP_R_YXRRSET +#define ISC_R_NXRRSET DHCP_R_NXRRSET +#define ISC_R_NOTAUTH DHCP_R_NOTAUTH +#define ISC_R_NOTZONE DHCP_R_NOTZONE +#define ISC_R_BADSIG DHCP_R_BADSIG +#define ISC_R_BADKEY DHCP_R_BADKEY +#define ISC_R_BADTIME DHCP_R_BADTIME +#define ISC_R_NOROOTZONE DHCP_R_NOROOTZONE +#define ISC_R_DESTADDRREQ DHCP_R_DESTADDRREQ +#define ISC_R_CROSSZONE DHCP_R_CROSSZONE +#define ISC_R_NO_TSIG DHCP_R_NO_TSIG +#define ISC_R_NOT_EQUAL DHCP_R_NOT_EQUAL +#define ISC_R_CONNRESET DHCP_R_CONNRESET +#define ISC_R_UNKNOWNATTRIBUTE DHCP_R_UNKNOWNATTRIBUTE #endif isc_result_t diff --git a/includes/omapip/trace.h b/includes/omapip/trace.h index e0493c5e..3e14a08b 100644 --- a/includes/omapip/trace.h +++ b/includes/omapip/trace.h @@ -29,7 +29,7 @@ #define TRACEFILE_MAGIC 0x64484370UL /* dHCp */ #define TRACEFILE_VERSION 1 -/* The first thing in a trace file is the header, which basically just +/* The first thing in a trace file is the header, which basically just defines the version of the file. */ typedef struct { u_int32_t magic; /* Magic number for trace file. */ diff --git a/includes/statement.h b/includes/statement.h index 18d44599..71f27d32 100644 --- a/includes/statement.h +++ b/includes/statement.h @@ -102,4 +102,3 @@ struct executable_statement { } execute; } data; }; - diff --git a/includes/tree.h b/includes/tree.h index 47e9b2e0..b0574fb1 100644 --- a/includes/tree.h +++ b/includes/tree.h @@ -47,7 +47,7 @@ struct enumeration { const char *name; unsigned width; struct enumeration_value *values; -}; +}; /* Tree node types... */ #define TREE_CONCAT 1 @@ -69,7 +69,7 @@ struct buffer { XXX ephemeral by default and be made a persistent reference explicitly. */ /* XXX on the other hand, it seems to work pretty nicely, so maybe the XXX above comment is meshuggenah. */ -/* XXX I think the above comment tries to say this: +/* XXX I think the above comment tries to say this: XXX http://tinyurl.com/2tjqre */ /* A string of data bytes, possibly accompanied by a larger buffer. */ @@ -281,7 +281,7 @@ struct expression { } data; int flags; # define EXPR_EPHEMERAL 1 -}; +}; /* DNS host entry structure... */ struct dns_host_entry { diff --git a/keama/conflex.c b/keama/conflex.c index 09f147f8..9a635732 100644 --- a/keama/conflex.c +++ b/keama/conflex.c @@ -186,7 +186,7 @@ get_char(struct parse *cfile) if (!cfile->ugflag) { if (c == EOL) { - if (cfile->cur_line == cfile->line1) { + if (cfile->cur_line == cfile->line1) { cfile->cur_line = cfile->line2; cfile->prev_line = cfile->line1; } else { @@ -224,11 +224,11 @@ unget_char(struct parse *cfile, int c) { /* * GENERAL NOTE ABOUT TOKENS * - * We normally only want non-whitespace tokens. There are some + * We normally only want non-whitespace tokens. There are some * circumstances where we *do* want to see whitespace (for example * when parsing IPv6 addresses). * - * Generally we use the next_token() function to read tokens. This + * Generally we use the next_token() function to read tokens. This * in turn calls get_next_token, which does *not* return tokens for * whitespace. Rather, it skips these. * @@ -254,7 +254,7 @@ get_raw_token(struct parse *cfile) { p = cfile->lpos; c = get_char(cfile); - if (!((c == '\n') && cfile->eol_token) && + if (!((c == '\n') && cfile->eol_token) && isascii(c) && isspace(c)) { ttok = read_whitespace(c, cfile); break; @@ -301,12 +301,12 @@ get_raw_token(struct parse *cfile) { * The get_next_token() function consumes the next token and * returns it to the caller. * - * Since the code is almost the same for "normal" and "raw" + * Since the code is almost the same for "normal" and "raw" * input, we pass a flag to alter the way it works. */ -static enum dhcp_token -get_next_token(const char **rval, unsigned *rlen, +static enum dhcp_token +get_next_token(const char **rval, unsigned *rlen, struct parse *cfile, isc_boolean_t raw) { int rv; @@ -328,7 +328,7 @@ get_next_token(const char **rval, unsigned *rlen, cfile->token_line = cfile->cur_line; } } - + if (rval) *rval = cfile->tval; if (rlen) @@ -339,10 +339,10 @@ get_next_token(const char **rval, unsigned *rlen, /* * Get the next token from cfile and return it. * - * If rval is non-NULL, set the pointer it contains to + * If rval is non-NULL, set the pointer it contains to * the contents of the token. * - * If rlen is non-NULL, set the integer it contains to + * If rlen is non-NULL, set the integer it contains to * the length of the token. */ @@ -367,8 +367,8 @@ next_raw_token(const char **rval, unsigned *rlen, struct parse *cfile) { * The do_peek_token() function checks the next token without * consuming it, and returns it to the caller. * - * Since the code is almost the same for "normal" and "raw" - * input, we pass a flag to alter the way it works. (See the + * Since the code is almost the same for "normal" and "raw" + * input, we pass a flag to alter the way it works. (See the * warning in the GENERAL NOTES ABOUT TOKENS above though.) */ @@ -405,15 +405,15 @@ do_peek_token(const char **rval, unsigned int *rlen, /* - * Get the next token from cfile and return it, leaving it for a + * Get the next token from cfile and return it, leaving it for a * subsequent call to next_token(). * * Note that it WILL consume whitespace tokens. * - * If rval is non-NULL, set the pointer it contains to + * If rval is non-NULL, set the pointer it contains to * the contents of the token. * - * If rlen is non-NULL, set the integer it contains to + * If rlen is non-NULL, set the integer it contains to * the length of the token. */ @@ -484,7 +484,7 @@ read_whitespace(int c, struct parse *cfile) { c = get_char(cfile); if (c == EOF) return END_OF_FILE; - } while (!((c == '\n') && cfile->eol_token) && + } while (!((c == '\n') && cfile->eol_token) && isascii(c) && isspace(c)); /* @@ -648,7 +648,7 @@ read_number(int c, struct parse *cfile) goto end_read; default: - parse_error(cfile, + parse_error(cfile, "read_number(): impossible case"); } @@ -936,7 +936,7 @@ intern(char *atom, enum dhcp_token dfv) { } break; case 'e': - if (isascii(atom [1]) && + if (isascii(atom [1]) && tolower((unsigned char)atom[1]) == 'x') { if (!strcasecmp(atom + 2, "tract-int")) return EXTRACT_INT; @@ -1035,15 +1035,15 @@ intern(char *atom, enum dhcp_token dfv) { } break; case 'i': - if (!strcasecmp(atom+1, "a-na")) + if (!strcasecmp(atom+1, "a-na")) return IA_NA; - if (!strcasecmp(atom+1, "a-ta")) + if (!strcasecmp(atom+1, "a-ta")) return IA_TA; - if (!strcasecmp(atom+1, "a-pd")) + if (!strcasecmp(atom+1, "a-pd")) return IA_PD; - if (!strcasecmp(atom+1, "aaddr")) + if (!strcasecmp(atom+1, "aaddr")) return IAADDR; - if (!strcasecmp(atom+1, "aprefix")) + if (!strcasecmp(atom+1, "aprefix")) return IAPREFIX; if (!strcasecmp(atom + 1, "nclude")) return INCLUDE; @@ -1332,11 +1332,11 @@ intern(char *atom, enum dhcp_token dfv) { case 's': if (!strcasecmp(atom + 1, "cript")) return SCRIPT; - if (isascii(atom[1]) && + if (isascii(atom[1]) && tolower((unsigned char)atom[1]) == 'e') { if (!strcasecmp(atom + 2, "arch")) return SEARCH; - if (isascii(atom[2]) && + if (isascii(atom[2]) && tolower((unsigned char)atom[2]) == 'c') { if (!strncasecmp(atom + 3, "ond", 3)) { if (!strcasecmp(atom + 6, "ary")) @@ -1366,7 +1366,7 @@ intern(char *atom, enum dhcp_token dfv) { return TOKEN_SERVER; if (atom[6] == '-') { if (!strcasecmp(atom + 7, - "duid")) + "duid")) return SERVER_DUID; if (!strcasecmp(atom + 7, "name")) @@ -1386,7 +1386,7 @@ intern(char *atom, enum dhcp_token dfv) { return TOKEN_SET; break; } - if (isascii(atom[1]) && + if (isascii(atom[1]) && tolower((unsigned char)atom[1]) == 'h') { if (!strcasecmp(atom + 2, "ared-network")) return SHARED_NETWORK; @@ -1394,7 +1394,7 @@ intern(char *atom, enum dhcp_token dfv) { return SHUTDOWN; break; } - if (isascii(atom[1]) && + if (isascii(atom[1]) && tolower((unsigned char)atom[1]) == 'i') { if (!strcasecmp(atom + 2, "addr")) return SIADDR; @@ -1404,9 +1404,9 @@ intern(char *atom, enum dhcp_token dfv) { return SIZE; break; } - if (isascii(atom[1]) && + if (isascii(atom[1]) && tolower((unsigned char)atom[1]) == 'p') { - if (isascii(atom[2]) && + if (isascii(atom[2]) && tolower((unsigned char)atom[2]) == 'a') { if (!strcasecmp(atom + 3, "ce")) return SPACE; @@ -1418,9 +1418,9 @@ intern(char *atom, enum dhcp_token dfv) { return SPLIT; break; } - if (isascii(atom[1]) && + if (isascii(atom[1]) && tolower((unsigned char)atom[1]) == 't') { - if (isascii(atom[2]) && + if (isascii(atom[2]) && tolower((unsigned char)atom[2]) == 'a') { if (!strncasecmp(atom + 3, "rt", 2)) { if (!strcasecmp(atom + 5, "s")) @@ -1453,7 +1453,7 @@ intern(char *atom, enum dhcp_token dfv) { return SUBSTRING; break; } - if (isascii(atom[1]) && + if (isascii(atom[1]) && tolower((unsigned char)atom[1]) == 'u') { if (!strcasecmp(atom + 2, "ffix")) return SUFFIX; @@ -1547,4 +1547,3 @@ intern(char *atom, enum dhcp_token dfv) { } return dfv; } - diff --git a/keama/confparse.c b/keama/confparse.c index 95d4ebea..d77503af 100644 --- a/keama/confparse.c +++ b/keama/confparse.c @@ -607,7 +607,7 @@ parse_statement(struct parse *cfile, int type, isc_boolean_t declaration) read_conf_file(cfile, val, type); parse_semi(cfile); return 1; - + case HOST: skip_token(&val, NULL, cfile); if (type != HOST_DECL && type != CLASS_DECL) @@ -924,7 +924,7 @@ parse_statement(struct parse *cfile, int type, isc_boolean_t declaration) failover_once = ISC_FALSE; skip_to_semi(cfile); break; - + case SERVER_DUID: if (local_family != AF_INET6) goto unknown; @@ -966,7 +966,7 @@ parse_statement(struct parse *cfile, int type, isc_boolean_t declaration) } if (mapSize(et) == 0) return declaration; - + et->skip = ISC_TRUE; cfile->issue_counter++; mapSet(cfile->stack[cfile->stack_top], et, "statement"); @@ -976,12 +976,12 @@ parse_statement(struct parse *cfile, int type, isc_boolean_t declaration) } /*! - * + * * \brief Parse allow and deny statements * * This function handles the common processing code for permit and deny * statements in the parse_pool_statement and parse_pool6_statement functions. - * + * * The allow or deny token should already be consumed, this function expects * one of the following: * known-clients; @@ -1019,7 +1019,7 @@ get_permit(struct parse *cfile, struct element *permit_head) negative = ISC_TRUE; alias = makeString(-1, "unknown clients"); break; - + case KNOWN_CLIENTS: need_clients = ISC_FALSE; permit = CLASS_KNOWN; @@ -1037,7 +1037,7 @@ get_permit(struct parse *cfile, struct element *permit_head) permit = CLASS_KNOWN; alias = makeString(-1, "known clients"); break; - + case AUTHENTICATED: permit = CLASS_ALL; alias = makeString(-1, "authenticated clients"); @@ -1046,7 +1046,7 @@ get_permit(struct parse *cfile, struct element *permit_head) comment = createComment("/// [un]authenticated-clients is " "not supported by ISC DHCP and Kea"); break; - + case UNAUTHENTICATED: permit = CLASS_ALL; alias = makeString(-1, "unauthenticated clients"); @@ -1057,7 +1057,7 @@ get_permit(struct parse *cfile, struct element *permit_head) permit = CLASS_ALL; alias = makeString(-1, "all clients"); break; - + case DYNAMIC: /* bootp is not supported by Kea so the dynamic bootp * client set is the empty set. */ @@ -1192,7 +1192,7 @@ parse_pool_statement(struct parse *cfile, int type) skip_token(&val, NULL, cfile); get_permit(cfile, prohibit); break; - + case RBRACE: skip_token(&val, NULL, cfile); done = ISC_TRUE; @@ -1412,7 +1412,7 @@ parse_host_declaration(struct parse *cfile) host_id = makeString(-1, val); appendString(host_id, " "); if (token == V6RELOPT) { - token = next_token(&val, NULL, cfile); + token = next_token(&val, NULL, cfile); if (token != NUMBER) parse_error(cfile, @@ -1428,7 +1428,7 @@ parse_host_declaration(struct parse *cfile) if (relays > MAX_V6RELAY_HOPS) relays = MAX_V6RELAY_HOPS + 1; } else if (token != OPTION) - parse_error(cfile, + parse_error(cfile, "host-identifier must be an option" " or v6relopt"); known = ISC_FALSE; @@ -1571,7 +1571,7 @@ static void add_host_reservation_identifiers(struct parse *, const char *); * in fact: * (CLASS) NAME(STRING) LBRACE ... RBRACE * (SUBCLASS) SUPER(STRING) DATA/HASH(STRING | ) [BRACE ... RBRACE] - * + * * class "name" { MATCH IF }: direct: belong when true * class "name" { MATCH }: indirect: use subclasses * class "name" { MATCH SPAWN WITH }: indirect: @@ -1600,7 +1600,7 @@ parse_class_declaration(struct parse *cfile, int type) isc_boolean_t lose = ISC_FALSE; isc_boolean_t matchedonce = ISC_FALSE; isc_boolean_t submatchedonce = ISC_FALSE; - + token = next_token(&val, NULL, cfile); if (token != STRING) parse_error(cfile, "Expecting class name"); @@ -1708,7 +1708,7 @@ parse_class_declaration(struct parse *cfile, int type) } } } - + /* Note the class declaration in the enclosing group */ if (group_classes != classes) { struct element *gc; @@ -2536,12 +2536,12 @@ parse_group_declaration(struct parse *cfile) token = peek_token(&val, NULL, cfile); if (is_identifier(token) || token == STRING) { skip_token(&val, NULL, cfile); - + name = makeString(-1, val); if (!name) parse_error(cfile, "no memory for group decl name %s", val); - } + } parse_lbrace(cfile); @@ -3208,7 +3208,7 @@ parse_address_range(struct parse *cfile, int type, size_t where) | ip-address6 SLASH number SEMI | ip-address6 [SLASH number] TEMPORARY SEMI */ -void +void parse_address_range6(struct parse *cfile, int type, size_t where) { struct string *low, *high, *range; @@ -3234,7 +3234,7 @@ parse_address_range6(struct parse *cfile, int type, size_t where) range = allocString(); concatString(range, low); - /* + /* * See if we we're using range or CIDR notation or TEMPORARY */ token = peek_token(&val, NULL, cfile); @@ -3260,7 +3260,7 @@ parse_address_range6(struct parse *cfile, int type, size_t where) appendString(range, " "); appendString(range, val); skip_token(NULL, NULL, cfile); - } + } } else if (token == TEMPORARY) { /* * temporary (RFC 4941) @@ -3271,7 +3271,7 @@ parse_address_range6(struct parse *cfile, int type, size_t where) skip_token(NULL, NULL, cfile); } else { /* - * No '/', so we are looking for the end address of + * No '/', so we are looking for the end address of * the IPv6 pool. */ high = parse_ip6_addr_txt(cfile); @@ -3329,7 +3329,7 @@ parse_address_range6(struct parse *cfile, int type, size_t where) /* prefix6-declaration :== ip-address6 ip-address6 SLASH number SEMI */ -void +void parse_prefix6(struct parse *cfile, int type, size_t where) { struct string *lo, *hi; @@ -3528,7 +3528,7 @@ parse_pool6_statement(struct parse *cfile, int type) skip_token(NULL, NULL, cfile); get_permit(cfile, prohibit); break; - + case RBRACE: skip_token(&val, NULL, cfile); done = ISC_TRUE; @@ -3786,7 +3786,7 @@ parse_allow_deny(struct parse *cfile, int flag) * server-duid ll ethernet|ieee802|fddi 00:16:6F:49:7D:9B; * server-duid en 2495 "enterprise-specific-identifier-1234"; */ -void +void parse_server_duid_conf(struct parse *cfile) { enum dhcp_token token; const char *val; @@ -3809,7 +3809,7 @@ parse_server_duid_conf(struct parse *cfile) { */ token = next_token(&val, NULL, cfile); - /* + /* * Enterprise is the easiest - enterprise number and raw data * are required. */ @@ -3837,7 +3837,7 @@ parse_server_duid_conf(struct parse *cfile) { mapSet(duid, item, "identifier"); } - /* + /* * Next easiest is the link-layer DUID. It consists only of * the LL directive, or optionally the specific value to use. * @@ -3878,7 +3878,7 @@ parse_server_duid_conf(struct parse *cfile) { } } - /* + /* * Finally the link-layer DUID plus time. It consists only of * the LLT directive, or optionally the specific value to use. * @@ -3932,7 +3932,7 @@ parse_server_duid_conf(struct parse *cfile) { * * In this case, they have to put in the complete value. * - * This also works for existing DUID types of course. + * This also works for existing DUID types of course. */ else if (token == NUMBER) { item = createString(makeString(-1, val)); diff --git a/keama/data.c b/keama/data.c index 3aef5507..d63c2cb9 100644 --- a/keama/data.c +++ b/keama/data.c @@ -199,7 +199,7 @@ makeStringExt(int l, const char *s, char fmt) case 'I': { /* IPv4 address to text */ - char buf[40 /* INET_ADDRSTRLEN == 26 */]; + char buf[40 /* INET_ADDRSTRLEN == 26 */]; assert(l > 3); assert(inet_ntop(AF_INET, s, buf, sizeof(buf)) != NULL); @@ -263,7 +263,7 @@ makeStringExt(int l, const char *s, char fmt) assert(0); } } - + struct string * makeStringArray(int l, const char *s, char fmt) { @@ -542,7 +542,7 @@ resetInt(struct element *e, int64_t i) e->type = ELEMENT_INTEGER; e->value.int_value = i; } - + void resetDouble(struct element *e, double d) { @@ -677,7 +677,7 @@ listSet(struct element *l, struct element *e, int i) TAILQ_INSERT_HEAD(&l->value.list_value, e); } else { struct element *prev; - + prev = TAILQ_FIRST(&l->value.list_value); assert(prev != NULL); assert(prev->key == NULL); @@ -964,7 +964,7 @@ addIndent(FILE *fp, int skip, unsigned indent) } else for (sp = 0; sp < indent; ++sp) fprintf(fp, " "); -} +} void printList(FILE *fp, const struct list *l, isc_boolean_t skip, unsigned indent) diff --git a/keama/eval.c b/keama/eval.c index bd738933..91ba4fd0 100644 --- a/keama/eval.c +++ b/keama/eval.c @@ -456,7 +456,7 @@ eval_boolean_expression(struct element *expr, isc_boolean_t *modifiedp) * data_expression :== SUBSTRING LPAREN data-expression COMMA * numeric-expression COMMA * numeric-expression RPAREN | - * CONCAT LPAREN data-expression COMMA + * CONCAT LPAREN data-expression COMMA * data-expression RPAREN * SUFFIX LPAREN data_expression COMMA * numeric-expression RPAREN | @@ -1155,7 +1155,7 @@ eval_data_expression(struct element *expr, isc_boolean_t *modifiedp) fmt = "%x"; break; } - + for (i = 0; i < buf->length; i++) { uint8_t val; char num[4]; @@ -1172,7 +1172,7 @@ eval_data_expression(struct element *expr, isc_boolean_t *modifiedp) if ((buf->length % 2) != 0) return expr; - + switch (b) { case 8: fmt = "%o"; @@ -1185,11 +1185,11 @@ eval_data_expression(struct element *expr, isc_boolean_t *modifiedp) fmt = "%x"; break; } - + for (i = 0; i < buf->length; i += 2) { uint16_t val; char num[8]; - + if (i != 0) concatString(r, sep); memcpy(&val, buf->content + i, 2); @@ -1203,7 +1203,7 @@ eval_data_expression(struct element *expr, isc_boolean_t *modifiedp) if ((buf->length % 4) != 0) return expr; - + switch (b) { case 8: fmt = "%llo"; @@ -1216,11 +1216,11 @@ eval_data_expression(struct element *expr, isc_boolean_t *modifiedp) fmt = "%llx"; break; } - + for (i = 0; i < buf->length; i += 4) { uint32_t val; char num[40]; - + if (i != 0) concatString(r, sep); memcpy(&val, buf->content + i, 4); diff --git a/keama/keama.c b/keama/keama.c index 1df3c551..401ddf2c 100644 --- a/keama/keama.c +++ b/keama/keama.c @@ -63,7 +63,7 @@ isc_boolean_t json = ISC_FALSE; static const char use_noarg[] = "No argument for command: %s"; static const char bad_resolve[] = "Bad -r argument: %s"; -int +int main(int argc, char **argv) { int i, fd; char *inbuf = NULL; @@ -107,7 +107,7 @@ main(int argc, char **argv) { if (++i == argc) usage(use_noarg, argv[i - 1]); output_file = argv[i]; - } else + } else usage("Unknown command: %s", argv[i]); } @@ -201,10 +201,10 @@ parse_error(struct parse *cfile, const char *fmt, ...) char mbuf[1024]; char fbuf[1024]; unsigned i, lix; - + snprintf(fbuf, sizeof(fbuf), "%s line %d: %s", cfile->tlname, cfile->lexline, fmt); - + va_start(list, fmt); vsnprintf(mbuf, sizeof(mbuf), fbuf, list); va_end(list); diff --git a/keama/keama.h b/keama/keama.h index 54f887fe..4b971396 100644 --- a/keama/keama.h +++ b/keama/keama.h @@ -31,7 +31,7 @@ #include /* Resolution of FQDNs into IPv4 addresses */ -enum resolve { +enum resolve { perform = 0, /* resolve */ fatal, /* raise a fatal error */ pass /* pass the string wth a warning */ diff --git a/keama/options.c b/keama/options.c index ec8c47ce..e615ece4 100644 --- a/keama/options.c +++ b/keama/options.c @@ -1061,7 +1061,7 @@ get_config_comments(unsigned code) log_threshold: comment = createComment("/// Reference Kea #222"); TAILQ_INSERT_TAIL(&comments, comment); - break; + break; case 84: /* log-threshold-high */ comment = createComment("/// log-threshold-high is not (yet?) " diff --git a/keama/parse.c b/keama/parse.c index 3297e80e..9d00d44c 100644 --- a/keama/parse.c +++ b/keama/parse.c @@ -88,7 +88,7 @@ skip_to_semi(struct parse *cfile) statement foo bar { } statement foo bar { statement { } } statement} - + ...et cetera. */ void skip_to_rbrace(struct parse *cfile, int brace_count) @@ -176,7 +176,7 @@ parse_host_name(struct parse *cfile) const char *val; enum dhcp_token token; struct string *s = NULL; - + /* Read a dotted hostname... */ do { /* Read a token, which should be an identifier. */ @@ -204,7 +204,7 @@ parse_host_name(struct parse *cfile) /* ip-addr-or-hostname :== ip-address | hostname ip-address :== NUMBER DOT NUMBER DOT NUMBER DOT NUMBER - + Parse an ip address or a hostname. Note that RFC1123 permits hostnames to consist of all digits, @@ -282,7 +282,7 @@ parse_ip_addr_or_hostname(struct parse *cfile, isc_boolean_t check_multi) return makeStringExt(bin->length, bin->content, 'I'); } - + /* * ip-address :== NUMBER DOT NUMBER DOT NUMBER DOT NUMBER */ @@ -294,7 +294,7 @@ parse_ip_addr(struct parse *cfile) unsigned len = sizeof(addr); return parse_numeric_aggregate(cfile, addr, &len, DOT, 10, 8); -} +} /* * Return true if every character in the string is hexadecimal. @@ -316,7 +316,7 @@ is_hex_string(const char *s) * * See section 2.2 of RFC 1884 for details. * - * We are lazy for this. We pull numbers, names, colons, and dots + * We are lazy for this. We pull numbers, names, colons, and dots * together and then throw the resulting string at the inet_pton() * function. */ @@ -332,7 +332,7 @@ parse_ip6_addr(struct parse *cfile) int v6_len; /* - * First token is non-raw. This way we eat any whitespace before + * First token is non-raw. This way we eat any whitespace before * our IPv6 address begins, like one would expect. */ token = peek_token(&val, NULL, cfile); @@ -655,7 +655,7 @@ parse_option_name(struct parse *cfile, if (!is_identifier(token)) parse_error(cfile, "expecting identifier after option keyword."); - + uname = strdup(val); if (!uname) parse_error(cfile, "no memory for uname information."); @@ -792,7 +792,7 @@ parse_option_space_decl(struct parse *cfile) universe->old = strdup(val); universe->name = universe->old; push_space(universe); - + do { token = next_token(&val, NULL, cfile); switch(token) { @@ -951,7 +951,7 @@ parse_option_code_definition(struct parse *cfile, struct option *option) struct string *saved; struct string *format; struct element *optdef; - + if (option->space->status == special) { parse_vendor_code_definition(cfile, option); return; @@ -1451,7 +1451,7 @@ parse_base64(struct parse *cfile) struct string *t; struct string *r; isc_boolean_t valid_base64; - + r = allocString(); /* It's possible for a + or a / to cause a base64 quantity to be @@ -1582,7 +1582,7 @@ parse_executable_statements(struct element *statements, } if (!*lose) return ISC_TRUE; - + return ISC_FALSE; } @@ -1731,7 +1731,7 @@ parse_executable_statement(struct element *result, case ON: skip_token(&val, NULL, cfile); return parse_on_statement(result, cfile, lose); - + case SWITCH: skip_token(&val, NULL, cfile); return parse_switch_statement(result, cfile, lose); @@ -1755,7 +1755,7 @@ parse_executable_statement(struct element *result, cfile->issue_counter++; mapSet(result, st, "default"); return ISC_TRUE; - + case DEFINE: case TOKEN_SET: skip_token(&val, NULL, cfile); @@ -2028,7 +2028,7 @@ parse_executable_statement(struct element *result, if (!parse_zone(zone, cfile)) goto badzone; return ISC_TRUE; - + /* Also not really a statement, but same idea as above. */ case KEY: skip_token(&val, NULL, cfile); @@ -2116,7 +2116,7 @@ parse_zone(struct element *zone, struct parse *cfile) values = createList(); mapSet(zone, values, "primary"); goto consemup; - + case SECONDARY: if (mapContains(zone, "secondary")) parse_error(cfile, "more than one secondary."); @@ -2183,7 +2183,7 @@ parse_zone(struct element *zone, struct parse *cfile) mapSet(zone, createString(key_name), "key"); parse_semi(cfile); break; - + default: done = 1; break; @@ -2256,7 +2256,7 @@ parse_key(struct element* result, struct parse *cfile) if (!s) appendString(alg, ".SIG-ALG.REG.INT."); /* If there is no trailing '.', hack one in. */ - else + else appendString(alg, "."); mapSet(key, createString(alg), "algorithm"); break; @@ -2329,7 +2329,7 @@ parse_on_statement(struct element *result, case COMMIT: case RELEASE: case TRANSMISSION: - appendString(cond, val); + appendString(cond, val); break; default: @@ -2339,7 +2339,7 @@ parse_on_statement(struct element *result, if (token == OR) appendString(cond, " or "); } while (token == OR); - + mapSet(statement, createString(cond), "condition"); /* Semicolon means no statements. */ @@ -2567,7 +2567,7 @@ parse_if_statement(struct element *result, } mapSet(statement, branch, "else"); } - + return ISC_TRUE; } @@ -2581,7 +2581,7 @@ parse_if_statement(struct element *result, * boolean-expression OR boolean-expression * EXISTS OPTION-NAME */ - + isc_boolean_t parse_boolean_expression(struct element *expr, struct parse *cfile, @@ -2625,7 +2625,7 @@ parse_boolean(struct parse *cfile) * data_expression :== SUBSTRING LPAREN data-expression COMMA * numeric-expression COMMA * numeric-expression RPAREN | - * CONCAT LPAREN data-expression COMMA + * CONCAT LPAREN data-expression COMMA * data-expression RPAREN * SUFFIX LPAREN data_expression COMMA * numeric-expression RPAREN | @@ -3181,14 +3181,14 @@ parse_non_binary(struct element *expr, if (token != RPAREN) goto norparen; break; - + case STRING: skip_token(&val, &len, cfile); resetString(expr, makeString(len, val)); break; case EXTRACT_INT: - skip_token(&val, NULL, cfile); + skip_token(&val, NULL, cfile); nexp = createMap(); nexp->skip = ISC_TRUE; cfile->issue_counter++; @@ -3232,9 +3232,9 @@ parse_non_binary(struct element *expr, if (token != RPAREN) parse_error(cfile, "right parenthesis expected."); break; - + case ENCODE_INT: - skip_token(&val, NULL, cfile); + skip_token(&val, NULL, cfile); nexp = createMap(); nexp->skip = ISC_TRUE; cfile->issue_counter++; @@ -3274,7 +3274,7 @@ parse_non_binary(struct element *expr, if (token != RPAREN) parse_error(cfile, "right parenthesis expected."); break; - + case NUMBER: /* If we're in a numeric context, this should just be a number, by itself. */ @@ -3535,7 +3535,7 @@ parse_non_binary(struct element *expr, nexp->skip = ISC_TRUE; cfile->issue_counter++; mapSet(expr, nexp, "v6relay"); - + token = next_token(&val, NULL, cfile); if (token != LPAREN) goto nolparen; @@ -3736,7 +3736,7 @@ new_rhs: resetBy(expr, rhs); return ISC_TRUE; } - + lhs = rhs; rhs = NULL; binop = next_op; @@ -3775,7 +3775,7 @@ new_rhs: rhs_context = expression_context(rhs); lhs_context = expression_context(lhs); - if ((rhs_context != context_any) && + if ((rhs_context != context_any) && (lhs_context != context_any) && (rhs_context != lhs_context)) parse_error(cfile, "illegal expression relating " @@ -3876,20 +3876,20 @@ new_rhs: /* Now combine the LHS and the RHS using binop. */ tmp = createMap(); tmp->skip = ISC_TRUE; - + /* Store the LHS and RHS. */ mapSet(tmp, lhs, "left"); mapSet(tmp, rhs, "right"); lhs = createMap(); mapSet(lhs, tmp, binop_name); - + tmp = NULL; rhs = NULL; binop = next_op; goto new_rhs; -} +} /* Escape embedded commas, detected heading and leading space */ struct string * @@ -4296,7 +4296,7 @@ parse_option_statement(struct element *result, if ((token == SEMI) && (option->format[0] != 'Z')) { /* Eat the semicolon... */ /* - * XXXSK: I'm not sure why we should ever get here, but we + * XXXSK: I'm not sure why we should ever get here, but we * do during our startup. This confuses things if * we are parsing a zero-length option, so don't * eat the semicolon token in that case. @@ -4335,7 +4335,7 @@ parse_option_statement(struct element *result, r = makeStringExt(s->length, s->content, 'X'); data = createString(r); - mapSet(opt_data, data, "data"); + mapSet(opt_data, data, "data"); } else if ((expr->type == ELEMENT_MAP) && mapContains(expr, "const-data")) { struct element *value; @@ -4819,7 +4819,7 @@ parse_config_data(struct element *expr, parse_error(cfile, "Bad format '%c' in parse_config_data.", option->format[0]); } - + mapSet(expr, elem, "value"); return ISC_TRUE; @@ -4888,7 +4888,7 @@ parse_config_statement(struct element *result, if ((token == SEMI) && (option->format[0] != 'Z')) { /* Eat the semicolon... */ /* - * XXXSK: I'm not sure why we should ever get here, but we + * XXXSK: I'm not sure why we should ever get here, but we * do during our startup. This confuses things if * we are parsing a zero-length option, so don't * eat the semicolon token in that case. diff --git a/keama/print.c b/keama/print.c index 41fbd293..8cfd0097 100644 --- a/keama/print.c +++ b/keama/print.c @@ -44,7 +44,7 @@ print_expression(struct element *expr, isc_boolean_t *lose) return print_numeric_expression(expr, lose); if (expr->type == ELEMENT_STRING) return print_data_expression(expr, lose); - + if (is_boolean_expression(expr)) return print_boolean_expression(expr, lose); if (is_numeric_expression(expr)) @@ -821,7 +821,7 @@ print_data_expression(struct element *expr, isc_boolean_t *lose) struct element *width; struct element *separator; struct element *buffer; - + appendString(result, "binary-to-ascii("); arg = mapGet(expr, "binary-to-ascii"); if ((arg == NULL) || (arg->type != ELEMENT_MAP)) { @@ -877,7 +877,7 @@ print_data_expression(struct element *expr, isc_boolean_t *lose) struct element *arg; struct element *width; struct element *buffer; - + appendString(result, "reverse("); arg = mapGet(expr, "reverse"); if ((arg == NULL) || (arg->type != ELEMENT_MAP)) { @@ -986,7 +986,7 @@ print_data_expression(struct element *expr, isc_boolean_t *lose) struct element *arg; struct element *relay; struct element *option; - + appendString(result, "v6relay("); arg = mapGet(expr, "v6relay"); diff --git a/keama/reduce.c b/keama/reduce.c index e85a1a23..9c796458 100644 --- a/keama/reduce.c +++ b/keama/reduce.c @@ -355,7 +355,7 @@ reduce_boolean_expression(struct element *expr) * data_expression :== SUBSTRING LPAREN data-expression COMMA * numeric-expression COMMA * numeric-expression RPAREN | - * CONCAT LPAREN data-expression COMMA + * CONCAT LPAREN data-expression COMMA * data-expression RPAREN * SUFFIX LPAREN data_expression COMMA * numeric-expression RPAREN | @@ -504,7 +504,7 @@ reduce_data_expression(struct element *expr) concatString(result, stringValue(string)); snprintf(buf, sizeof(buf), ",-%u,all)", (unsigned)len); appendString(result, buf); - return createString(result); + return createString(result); } /* lowercase */ diff --git a/omapip/alloc.c b/omapip/alloc.c index e68aa605..6569f431 100644 --- a/omapip/alloc.c +++ b/omapip/alloc.c @@ -141,7 +141,7 @@ dmalloc(size_t size, const char *file, int line) { return bar; } -void +void dfree(void *ptr, const char *file, int line) { if (!ptr) { log_error ("dfree %s(%d): free on null pointer.", file, line); @@ -208,7 +208,7 @@ dfree(void *ptr, const char *file, int line) { /* For allocation functions that keep their own free lists, we want to account for the reuse of the memory. */ -void +void dmalloc_reuse(void *foo, const char *file, int line, int justref) { struct dmalloc_preamble *dp; @@ -333,7 +333,7 @@ void dmalloc_dump_outstanding () if (!inhistory) #endif log_info (" %s(%d): %ld", - dp -> file, dp -> line, + dp -> file, dp -> line, (long) dp -> size); } #endif @@ -535,11 +535,11 @@ isc_result_t omapi_object_allocate (omapi_object_t **o, tsize = (*type -> sizer) (size); else tsize = type -> size; - + /* Sanity check. */ if (tsize < sizeof (omapi_object_t)) return DHCP_R_INVALIDARG; - + foo = dmalloc (tsize, file, line); if (!foo) return ISC_R_NOMEMORY; @@ -610,7 +610,7 @@ isc_result_t omapi_object_dereference (omapi_object_t **h, return DHCP_R_INVALIDARG; #endif } - + if ((*h) -> refcnt <= 0) { #if defined (POINTER_DEBUG) log_error ("%s(%d): dereference of pointer with refcnt of zero!", @@ -624,7 +624,7 @@ isc_result_t omapi_object_dereference (omapi_object_t **h, return DHCP_R_INVALIDARG; #endif } - + /* See if this object's inner object refers to it, but don't count this as a reference if we're being asked to free the reference from the inner object. */ @@ -695,7 +695,7 @@ isc_result_t omapi_object_dereference (omapi_object_t **h, rc_register (file, line, h, hp, 0, 1, hp -> type -> rc_flag); if (handle_reference) { - if (omapi_handle_clear(hp->handle) != + if (omapi_handle_clear(hp->handle) != ISC_R_SUCCESS) { log_debug("Attempt to clear null " "handle pointer"); @@ -729,7 +729,7 @@ isc_result_t omapi_buffer_new (omapi_buffer_t **h, { omapi_buffer_t *t; isc_result_t status; - + t = (omapi_buffer_t *)dmalloc (sizeof *t, file, line); if (!t) return ISC_R_NOMEMORY; @@ -777,7 +777,7 @@ isc_result_t omapi_buffer_dereference (omapi_buffer_t **h, return DHCP_R_INVALIDARG; #endif } - + if ((*h) -> refcnt <= 0) { #if defined (POINTER_DEBUG) log_error ("%s(%d): dereference of pointer with refcnt of zero!", @@ -912,7 +912,7 @@ isc_result_t omapi_typed_data_dereference (omapi_typed_data_t **h, return DHCP_R_INVALIDARG; #endif } - + if ((*h) -> refcnt <= 0) { #if defined (POINTER_DEBUG) log_error ("%s(%d): dereference of pointer with refcnt of zero!", @@ -926,7 +926,7 @@ isc_result_t omapi_typed_data_dereference (omapi_typed_data_t **h, return DHCP_R_INVALIDARG; #endif } - + --((*h) -> refcnt); rc_register (file, line, h, *h, (*h) -> refcnt, 1, RC_MISC); if ((*h) -> refcnt <= 0 ) { @@ -999,7 +999,7 @@ isc_result_t omapi_data_string_dereference (omapi_data_string_t **h, return DHCP_R_INVALIDARG; #endif } - + if ((*h) -> refcnt <= 0) { #if defined (POINTER_DEBUG) log_error ("%s(%d): dereference of pointer with refcnt of zero!", @@ -1071,7 +1071,7 @@ isc_result_t omapi_value_dereference (omapi_value_t **h, return DHCP_R_INVALIDARG; #endif } - + if ((*h) -> refcnt <= 0) { #if defined (POINTER_DEBUG) log_error ("%s(%d): dereference of pointer with refcnt of zero!", @@ -1085,7 +1085,7 @@ isc_result_t omapi_value_dereference (omapi_value_t **h, return DHCP_R_INVALIDARG; #endif } - + --((*h) -> refcnt); rc_register (file, line, h, *h, (*h) -> refcnt, 1, RC_MISC); if ((*h) -> refcnt == 0) { @@ -1153,7 +1153,7 @@ isc_result_t omapi_addr_list_dereference (omapi_addr_list_t **h, return DHCP_R_INVALIDARG; #endif } - + if ((*h) -> refcnt <= 0) { #if defined (POINTER_DEBUG) log_error ("%s(%d): dereference of pointer with zero refcnt!", @@ -1176,4 +1176,3 @@ isc_result_t omapi_addr_list_dereference (omapi_addr_list_t **h, *h = 0; return ISC_R_SUCCESS; } - diff --git a/omapip/array.c b/omapip/array.c index 83d7cf30..760b80ee 100644 --- a/omapip/array.c +++ b/omapip/array.c @@ -122,7 +122,7 @@ isc_result_t omapi_array_set (omapi_array_t *array, void *ptr, int index, if (array -> data [index]) { status = ((*array -> deref) (&array -> data [index], file, line)); - + if (status != ISC_R_SUCCESS) return status; } @@ -153,4 +153,3 @@ isc_result_t omapi_array_lookup (char **ptr, omapi_array_t *array, int index, array -> data [index], file, line); return ISC_R_NOTFOUND; } - diff --git a/omapip/auth.c b/omapip/auth.c index 894f93e8..1641a8cb 100644 --- a/omapip/auth.c +++ b/omapip/auth.c @@ -66,7 +66,7 @@ isc_result_t omapi_auth_key_destroy (omapi_object_t *h, omapi_data_string_dereference(&a->key, MDL); if (a->tsec_key != NULL) dns_tsec_destroy(&a->tsec_key); - + return ISC_R_SUCCESS; } @@ -100,7 +100,7 @@ isc_result_t omapi_auth_key_enter (omapi_auth_key_t *a) /* * If possible create a tsec structure for this key, - * if we can't create the structure we put out a warning + * if we can't create the structure we put out a warning * and continue. */ status = isclib_make_dst_key(a->name, a->algorithm, diff --git a/omapip/buffer.c b/omapip/buffer.c index 041be497..e521a435 100644 --- a/omapip/buffer.c +++ b/omapip/buffer.c @@ -146,7 +146,7 @@ static isc_result_t omapi_connection_reader_trace (omapi_object_t *h, int read_status; omapi_connection_object_t *c; unsigned bytes_to_read; - + if (!h || h -> type != omapi_type_connection) return DHCP_R_INVALIDARG; c = (omapi_connection_object_t *)h; @@ -421,7 +421,7 @@ isc_result_t omapi_connection_copyout (unsigned char *buf, buffer -> head = first_byte + bytes_this_copy - 1; c -> in_bytes -= bytes_this_copy; } - + if (!BYTES_IN_BUFFER (buffer)) buffer = buffer -> next; } @@ -516,14 +516,14 @@ isc_result_t omapi_connection_writer (omapi_object_t *h) isc_result_t status; trace_iov_t iov [2]; int32_t connect_index; - + connect_index = htonl (c -> index); - + iov [0].buf = (char *)&connect_index; iov [0].len = sizeof connect_index; iov [1].buf = &buffer -> buf [buffer -> tail]; iov [1].len = bytes_written; - + status = (trace_write_packet_iov (trace_connection_input, 2, iov, MDL)); @@ -545,11 +545,11 @@ isc_result_t omapi_connection_writer (omapi_object_t *h) if (bytes_written != bytes_this_write) return ISC_R_INPROGRESS; } - + if (!BYTES_IN_BUFFER (buffer)) buffer = buffer -> next; } - + /* Get rid of any output buffers we emptied. */ buffer = (omapi_buffer_t *)0; while (c -> outbufs && @@ -598,7 +598,7 @@ isc_result_t omapi_connection_put_uint32 (omapi_object_t *c, u_int32_t inbuf; inbuf = htonl (value); - + return omapi_connection_copyin (c, (unsigned char *)&inbuf, sizeof inbuf); } @@ -624,7 +624,7 @@ isc_result_t omapi_connection_put_uint16 (omapi_object_t *c, u_int16_t inbuf; inbuf = htons (value); - + return omapi_connection_copyin (c, (unsigned char *)&inbuf, sizeof inbuf); } @@ -740,4 +740,3 @@ isc_result_t omapi_connection_put_named_uint32 (omapi_object_t *c, status = omapi_connection_put_uint32(c, value); return (status); } - diff --git a/omapip/connection.c b/omapip/connection.c index 000f6d57..68baa660 100644 --- a/omapip/connection.c +++ b/omapip/connection.c @@ -163,7 +163,7 @@ isc_result_t omapi_connect_list (omapi_object_t *c, local_sin.sin_family = AF_INET; memset (&local_sin.sin_zero, 0, sizeof local_sin.sin_zero); - + if (bind (obj -> socket, (struct sockaddr *)&local_sin, sizeof local_sin) < 0) { omapi_connection_object_t **objp = &obj; @@ -196,7 +196,7 @@ isc_result_t omapi_connect_list (omapi_object_t *c, omapi_connection_dereference (&obj, MDL); return ISC_R_UNEXPECTED; } - + /* Set the file to nonblocking mode. */ if (fcntl (obj -> socket, F_SETFL, O_NONBLOCK) < 0) { omapi_connection_dereference (&obj, MDL); @@ -213,7 +213,7 @@ isc_result_t omapi_connect_list (omapi_object_t *c, (char *)&flag, sizeof(flag)) < 0) { omapi_connection_dereference (&obj, MDL); return ISC_R_UNEXPECTED; - } + } #endif status = (omapi_register_io_object @@ -285,7 +285,7 @@ void omapi_connection_register (omapi_connection_object_t *obj, #if defined (TRACING) if (trace_record ()) { /* Connection registration packet: - + int32_t index int32_t listener_index [-1 means no listener] u_int16_t remote_port @@ -365,7 +365,7 @@ static void trace_connect_input (trace_type_t *ttype, omapi_listener_reference (&listener, lp, MDL); omapi_listener_dereference (&lp, MDL); break; - } + } } omapi_array_foreach_end (trace_listeners, omapi_listener_object_t, lp); if (!listener) { @@ -411,7 +411,7 @@ static void trace_connect_input (trace_type_t *ttype, } } omapi_array_foreach_end (omapi_connections, omapi_connection_object_t, lp); - + log_error ("Spurious traced connect - index %ld, addr %s, port %d", (long int)connect_index, inet_ntoa (remote.sin_addr), ntohs (remote.sin_port)); @@ -428,7 +428,7 @@ static void trace_disconnect_input (trace_type_t *ttype, log_error ("trace disconnect: wrong length %d", length); return; } - + index = (int32_t *)buf; omapi_array_foreach_begin (omapi_connections, @@ -613,7 +613,7 @@ isc_result_t omapi_connection_connect (omapi_object_t *h) * pass it on as a signal. */ status = omapi_connection_connect_internal (h); - if (status == ISC_R_INPROGRESS) + if (status == ISC_R_INPROGRESS) return ISC_R_INPROGRESS; if (status != ISC_R_SUCCESS) @@ -705,7 +705,7 @@ static isc_result_t omapi_connection_connect_internal (omapi_object_t *h) } c -> state = omapi_connection_connected; } - + /* I don't know why this would fail, so I'm tempted not to test the return value. */ sl = sizeof (c -> local_addr); @@ -970,7 +970,7 @@ isc_result_t omapi_connection_set_value (omapi_object_t *h, return ISC_R_SUCCESS; } - + if (h -> inner && h -> inner -> type -> set_value) return (*(h -> inner -> type -> set_value)) (h -> inner, id, name, value); @@ -1013,7 +1013,7 @@ isc_result_t omapi_connection_get_value (omapi_object_t *h, status = dst_key_sigsize(c->in_key, &sigsize); if (status != ISC_R_SUCCESS) { return(status); - } + } return omapi_make_int_value(value, name, sigsize, MDL); @@ -1040,11 +1040,11 @@ isc_result_t omapi_connection_get_value (omapi_object_t *h, status = dst_key_sigsize(c->out_key, &sigsize); if (status != ISC_R_SUCCESS) { return(status); - } + } return omapi_make_int_value(value, name, sigsize, MDL); } - + if (h -> inner && h -> inner -> type -> get_value) return (*(h -> inner -> type -> get_value)) (h -> inner, id, name, value); @@ -1081,7 +1081,7 @@ isc_result_t omapi_connection_signal_handler (omapi_object_t *h, #ifdef DEBUG_PROTOCOL log_debug ("omapi_connection_signal_handler(%s)", name); #endif - + if (h -> inner && h -> inner -> type -> signal_handler) return (*(h -> inner -> type -> signal_handler)) (h -> inner, name, ap); diff --git a/omapip/dispatch.c b/omapip/dispatch.c index 0fd8ed34..426455ef 100644 --- a/omapip/dispatch.c +++ b/omapip/dispatch.c @@ -53,14 +53,14 @@ register_eventhandler(struct eventqueue **queue, void (*handler)(void *)) return; /* handler already registered */ t = q; } - + q = ((struct eventqueue *)dmalloc(sizeof(struct eventqueue), MDL)); if (!q) log_fatal("register_eventhandler: no memory!"); memset(q, 0, sizeof *q); if (t) t->next = q; - else + else *queue = q; q->handler = handler; return; @@ -70,7 +70,7 @@ void unregister_eventhandler(struct eventqueue **queue, void (*handler)(void *)) { struct eventqueue *t, *q; - + /* traverse to end of list */ t= NULL; for (q = *queue ; q ; q = q->next) { @@ -93,7 +93,7 @@ trigger_event(struct eventqueue **queue) struct eventqueue *q; for (q=*queue ; q ; q=q->next) { - if (q->handler) + if (q->handler) (*q->handler)(NULL); } } @@ -102,7 +102,7 @@ trigger_event(struct eventqueue **queue) * Callback routine to connect the omapi I/O object and socket with * the isc socket code. The isc socket code will call this routine * which will then call the correct local routine to process the bytes. - * + * * Currently we are always willing to read more data, this should be modified * so that on connections we don't read more if we already have enough. * @@ -159,13 +159,13 @@ omapi_iscsock_cb(isc_task_t *task, if (obj->closed == ISC_TRUE) { return(0); } -#endif +#endif if ((flags == ISC_SOCKFDWATCH_READ) && (obj->reader != NULL) && (obj->inner != NULL)) { status = obj->reader(obj->inner); - /* + /* * If we are shutting down (basically tried to * read and got no bytes) we don't need to try * again. @@ -218,7 +218,7 @@ isc_result_t omapi_register_io_object (omapi_object_t *h, omapi_io_states.refcnt = 1; omapi_io_states.type = omapi_type_io_object; } - + obj = (omapi_io_object_t *)0; status = omapi_io_allocate (&obj, MDL); if (status != ISC_R_SUCCESS) @@ -239,7 +239,7 @@ isc_result_t omapi_register_io_object (omapi_object_t *h, } /* - * Attach the I/O object to the isc socket library via the + * Attach the I/O object to the isc socket library via the * fdwatch function. This allows the socket library to watch * over a socket that we built. If there are both a read and * a write socket we asssume they are the same socket. @@ -317,7 +317,7 @@ isc_result_t omapi_reregister_io_object (omapi_object_t *h, if ((!h -> outer) || (h -> outer -> type != omapi_type_io_object)) { /* - * If we don't have an object or if the type isn't what + * If we don't have an object or if the type isn't what * we expect do the normal registration (which will overwrite * an incorrect type, that's what we did historically, may * want to change that) @@ -348,7 +348,7 @@ isc_result_t omapi_reregister_io_object (omapi_object_t *h, } isc_socket_fdwatchpoke(obj->fd, fd_flags); - + return (ISC_R_SUCCESS); } @@ -356,7 +356,7 @@ isc_result_t omapi_unregister_io_object (omapi_object_t *h) { omapi_io_object_t *obj, *ph; #if SOCKDELETE - omapi_io_object_t *p, *last; + omapi_io_object_t *p, *last; #endif if (!h -> outer || h -> outer -> type != omapi_type_io_object) @@ -440,7 +440,7 @@ isc_result_t omapi_wait_for_completion (omapi_object_t *object, omapi_waiter_dereference (&waiter, MDL); return status; } - + status = omapi_object_reference (&inner -> inner, (omapi_object_t *)waiter, MDL); @@ -470,7 +470,7 @@ isc_result_t omapi_wait_for_completion (omapi_object_t *object, } if (waiter -> inner) omapi_object_dereference (&waiter -> inner, MDL); - + status = waiter -> waitstatus; omapi_waiter_dereference (&waiter, MDL); return status; @@ -503,7 +503,7 @@ isc_result_t omapi_one_dispatch (omapi_object_t *wo, if (now.tv_sec > t -> tv_sec || (now.tv_sec == t -> tv_sec && now.tv_usec >= t -> tv_usec)) return ISC_R_TIMEDOUT; - + /* We didn't time out, so figure out how long until we do. */ to.tv_sec = t -> tv_sec - now.tv_sec; @@ -520,12 +520,12 @@ isc_result_t omapi_one_dispatch (omapi_object_t *wo, if (to.tv_sec > (60 * 60 * 24)) to.tv_sec = 60 * 60 * 24; } - + /* If the object we're waiting on has reached completion, return now. */ if (waiter && waiter -> ready) return ISC_R_SUCCESS; - + again: /* If we have no I/O state, we can't proceed. */ if (!(io = omapi_io_states.next)) @@ -545,7 +545,7 @@ isc_result_t omapi_one_dispatch (omapi_object_t *wo, if (desc > max) max = desc; } - + /* Same deal for write fdets. */ if (io -> writefd && io -> inner && (desc = (*(io -> writefd)) (io -> inner)) >= 0) { @@ -555,17 +555,17 @@ isc_result_t omapi_one_dispatch (omapi_object_t *wo, } } - /* poll if all reader are dry */ + /* poll if all reader are dry */ now.tv_sec = 0; now.tv_usec = 0; - rr=r; - ww=w; + rr=r; + ww=w; xx=x; /* poll once */ count = select(max + 1, &r, &w, &x, &now); - if (!count) { - /* We are dry now */ + if (!count) { + /* We are dry now */ trigger_event(&rw_queue_empty); /* Wait for a packet or a timeout... XXX */ r = rr; @@ -648,7 +648,7 @@ isc_result_t omapi_one_dispatch (omapi_object_t *wo, goto again; } } - + FD_ZERO (&r); FD_ZERO (&w); t0.tv_sec = t0.tv_usec = 0; @@ -670,7 +670,7 @@ isc_result_t omapi_one_dispatch (omapi_object_t *wo, } if (prev) omapi_io_dereference (&prev, MDL); - + } for (io = omapi_io_states.next; io; io = io -> next) { @@ -684,7 +684,7 @@ isc_result_t omapi_one_dispatch (omapi_object_t *wo, if (FD_ISSET (desc, &r)) ((*(io -> reader)) (tmp)); } - + /* Same deal for write descriptors. */ if (io -> writefd && (desc = (*(io -> writefd)) (tmp)) >= 0) @@ -703,9 +703,9 @@ isc_result_t omapi_one_dispatch (omapi_object_t *wo, omapi_io_reference(&io, omapi_io_states.next, MDL); } while (io != NULL) { - if ((io->inner == NULL) || - ((io->reaper != NULL) && - ((io->reaper)(io->inner) != ISC_R_SUCCESS))) + if ((io->inner == NULL) || + ((io->reaper != NULL) && + ((io->reaper)(io->inner) != ISC_R_SUCCESS))) { omapi_io_object_t *tmp = NULL; @@ -721,7 +721,7 @@ isc_result_t omapi_one_dispatch (omapi_object_t *wo, omapi_io_reference(&prev->next, tmp, MDL); } else { - omapi_io_dereference(&omapi_io_states.next, + omapi_io_dereference(&omapi_io_states.next, MDL); if (tmp != NULL) omapi_io_reference @@ -773,7 +773,7 @@ isc_result_t omapi_io_set_value (omapi_object_t *h, { if (h -> type != omapi_type_io_object) return DHCP_R_INVALIDARG; - + if (h -> inner && h -> inner -> type -> set_value) return (*(h -> inner -> type -> set_value)) (h -> inner, id, name, value); @@ -787,7 +787,7 @@ isc_result_t omapi_io_get_value (omapi_object_t *h, { if (h -> type != omapi_type_io_object) return DHCP_R_INVALIDARG; - + if (h -> inner && h -> inner -> type -> get_value) return (*(h -> inner -> type -> get_value)) (h -> inner, id, name, value); @@ -808,7 +808,7 @@ isc_result_t omapi_io_destroy (omapi_object_t *h, const char *file, int line) if (h -> type != omapi_type_io_object) return DHCP_R_INVALIDARG; - + /* remove from the list of I/O states */ for (p = omapi_io_states.next; p; p = p -> next) { if (p == (omapi_io_object_t *)h) { @@ -839,7 +839,7 @@ isc_result_t omapi_io_signal_handler (omapi_object_t *h, { if (h -> type != omapi_type_io_object) return DHCP_R_INVALIDARG; - + if (h -> inner && h -> inner -> type -> signal_handler) return (*(h -> inner -> type -> signal_handler)) (h -> inner, name, ap); @@ -866,7 +866,7 @@ isc_result_t omapi_waiter_signal_handler (omapi_object_t *h, if (h -> type != omapi_type_waiter) return DHCP_R_INVALIDARG; - + if (!strcmp (name, "ready")) { waiter = (omapi_waiter_object_t *)h; waiter -> ready = 1; diff --git a/omapip/generic.c b/omapip/generic.c index af95d57a..87d10a23 100644 --- a/omapip/generic.c +++ b/omapip/generic.c @@ -98,7 +98,7 @@ isc_result_t omapi_generic_set_value (omapi_object_t *h, /* Notice a free slot if we pass one. */ else if (vfree == -1 && !g -> values [i]) vfree = i; - } + } /* If the name isn't already attached to this object, see if an inner object has it. */ @@ -176,7 +176,7 @@ isc_result_t omapi_generic_get_value (omapi_object_t *h, if (h -> type != omapi_type_generic) return DHCP_R_INVALIDARG; g = (omapi_generic_object_t *)h; - + /* Look up the specified name in our list of objects. */ for (i = 0; i < g -> nvalues; i++) { if (!g -> values[i]) @@ -191,7 +191,7 @@ isc_result_t omapi_generic_get_value (omapi_object_t *h, return omapi_value_reference (value, g -> values [i], MDL); } - } + } if (h -> inner && h -> inner -> type -> get_value) return (*(h -> inner -> type -> get_value)) @@ -208,7 +208,7 @@ isc_result_t omapi_generic_destroy (omapi_object_t *h, if (h -> type != omapi_type_generic) return ISC_R_UNEXPECTED; g = (omapi_generic_object_t *)h; - + if (g -> values) { for (i = 0; i < g -> nvalues; i++) { if (g -> values [i]) @@ -230,7 +230,7 @@ isc_result_t omapi_generic_signal_handler (omapi_object_t *h, { if (h -> type != omapi_type_generic) return DHCP_R_INVALIDARG; - + if (h -> inner && h -> inner -> type -> signal_handler) return (*(h -> inner -> type -> signal_handler)) (h -> inner, name, ap); @@ -251,7 +251,7 @@ isc_result_t omapi_generic_stuff_values (omapi_object_t *c, if (g -> type != omapi_type_generic) return DHCP_R_INVALIDARG; src = (omapi_generic_object_t *)g; - + for (i = 0; i < src -> nvalues; i++) { if (src -> values [i] && src -> values [i] -> name -> len && src -> changed [i]) { @@ -270,7 +270,7 @@ isc_result_t omapi_generic_stuff_values (omapi_object_t *c, if (status != ISC_R_SUCCESS) return status; } - } + } if (g -> inner && g -> inner -> type -> stuff_values) return (*(g -> inner -> type -> stuff_values)) (c, id, diff --git a/omapip/handle.c b/omapip/handle.c index aa368522..225104b2 100644 --- a/omapip/handle.c +++ b/omapip/handle.c @@ -47,7 +47,7 @@ next handle should go, and if necessary create additional nodes in the tree to contain the new handle. The pointer to the object is then stored in the correct position. - + Theoretically, we could have some code here to free up handle tables as they go out of use, but by and large handle tables won't go out of use, so this is being skipped for now. It shouldn't be @@ -77,7 +77,7 @@ isc_result_t omapi_object_handle (omapi_handle_t *h, omapi_object_t *o) *h = o -> handle; return ISC_R_SUCCESS; } - + if (!omapi_handle_table) { omapi_handle_table = dmalloc (sizeof *omapi_handle_table, MDL); if (!omapi_handle_table) @@ -96,7 +96,7 @@ isc_result_t omapi_object_handle (omapi_handle_t *h, omapi_object_t *o) while (omapi_next_handle >= omapi_handle_table -> limit) { omapi_handle_table_t *new; - + new = dmalloc (sizeof *new, MDL); if (!new) return ISC_R_NOMEMORY; @@ -145,7 +145,7 @@ static isc_result_t omapi_object_handle_in_table (omapi_handle_t h, if (table -> first > h || table -> limit <= h) return ISC_R_NOSPACE; - + /* If this is a leaf table, just stash the object in the appropriate place. */ if (table -> leafp) { @@ -249,7 +249,7 @@ static isc_result_t omapi_handle_lookup_in (omapi_object_t **o, if (!table || table->first > h || table->limit <= h) return(ISC_R_NOTFOUND); - + /* If this is a leaf table, just grab the object. */ if (table->leafp) { /* Not there? */ diff --git a/omapip/hash.c b/omapip/hash.c index 9ca0a013..09a44167 100644 --- a/omapip/hash.c +++ b/omapip/hash.c @@ -149,7 +149,7 @@ void relinquish_hash_bucket_hunks () if (!n) p = &c -> next; } - + for (c = hash_bucket_hunks; c; c = n) { n = c -> next; if (c -> len != 126) { @@ -300,7 +300,7 @@ do_id_hash(const void *name, unsigned len, unsigned size) * The switch handles our starting conditions, then we hash the * remaining bytes in groups of 3 */ - + switch (len % 3) { case 0: break; @@ -386,7 +386,7 @@ hash_report(struct hash_table *table) maxlen > 2147483647) return (unsigned char *) "Report out of range for display."; - sprintf((char *)retbuf, + sprintf((char *)retbuf, "Contents/Size (%%): %u/%u (%u%%). Min/max: %u/%u", contents, table->hash_count, pct, minlen, maxlen); @@ -536,7 +536,7 @@ int casecmp (const void *v1, const void *v2, size_t len) size_t i; const unsigned char *s = v1; const unsigned char *t = v2; - + for (i = 0; i < len; i++) { int c1, c2; diff --git a/omapip/isclib.c b/omapip/isclib.c index f014bd8e..f726fb7e 100644 --- a/omapip/isclib.c +++ b/omapip/isclib.c @@ -40,7 +40,7 @@ int shutdown_signal = 0; * It may be moved to be part of the dns client code instead * of being in the DHCP code */ -isc_result_t +isc_result_t dhcp_dns_client_setservers(void) { isc_result_t result; @@ -183,7 +183,7 @@ dhcp_context_create(int flags, } memset(&dhcp_gbl_ctx, 0, sizeof (dhcp_gbl_ctx)); - + isc_lib_register(); /* get the current time for use as the random seed */ @@ -318,7 +318,7 @@ dhcp_isc_name(unsigned char *namestr, isc_buffer_t b; isc_result_t result; - namelen = strlen((char *)namestr); + namelen = strlen((char *)namestr); isc_buffer_init(&b, namestr, namelen); isc_buffer_add(&b, namelen); dns_fixedname_init(namefix); diff --git a/omapip/listener.c b/omapip/listener.c index 828970ce..f7a07f09 100644 --- a/omapip/listener.c +++ b/omapip/listener.c @@ -181,7 +181,7 @@ isc_result_t omapi_listen_addr (omapi_object_t *h, error_exit: if (obj != NULL) { if (h->outer == (omapi_object_t *)obj) { - omapi_object_dereference((omapi_object_t **)&h->outer, + omapi_object_dereference((omapi_object_t **)&h->outer, MDL); } if (obj->inner == h) { @@ -205,7 +205,7 @@ int omapi_listener_readfd (omapi_object_t *h) if (h -> type != omapi_type_listener) return -1; l = (omapi_listener_object_t *)h; - + return l -> socket; } @@ -287,7 +287,7 @@ isc_result_t omapi_listener_connect (omapi_connection_object_t **obj, #ifdef DEBUG_PROTOCOL log_debug ("omapi_accept()"); #endif - + /* Get the handle. */ status = omapi_connection_allocate (obj, MDL); if (status != ISC_R_SUCCESS) @@ -417,7 +417,7 @@ isc_result_t omapi_listener_set_value (omapi_object_t *h, { if (h -> type != omapi_type_listener) return DHCP_R_INVALIDARG; - + if (h -> inner && h -> inner -> type -> set_value) return (*(h -> inner -> type -> set_value)) (h -> inner, id, name, value); @@ -431,7 +431,7 @@ isc_result_t omapi_listener_get_value (omapi_object_t *h, { if (h -> type != omapi_type_listener) return DHCP_R_INVALIDARG; - + if (h -> inner && h -> inner -> type -> get_value) return (*(h -> inner -> type -> get_value)) (h -> inner, id, name, value); @@ -450,7 +450,7 @@ isc_result_t omapi_listener_destroy (omapi_object_t *h, #ifdef DEBUG_PROTOCOL log_debug ("omapi_listener_destroy()"); #endif - + if (l -> socket != -1) { close (l -> socket); l -> socket = -1; @@ -463,7 +463,7 @@ isc_result_t omapi_listener_signal_handler (omapi_object_t *h, { if (h -> type != omapi_type_listener) return DHCP_R_INVALIDARG; - + if (h -> inner && h -> inner -> type -> signal_handler) return (*(h -> inner -> type -> signal_handler)) (h -> inner, name, ap); @@ -485,4 +485,3 @@ isc_result_t omapi_listener_stuff_values (omapi_object_t *c, l -> inner); return ISC_R_SUCCESS; } - diff --git a/omapip/message.c b/omapip/message.c index 254061a0..42b88b6d 100644 --- a/omapip/message.c +++ b/omapip/message.c @@ -158,7 +158,7 @@ isc_result_t omapi_message_set_value (omapi_object_t *h, if (status == ISC_R_SUCCESS) return status; } - + return ISC_R_NOTFOUND; } @@ -232,7 +232,7 @@ isc_result_t omapi_message_signal_handler (omapi_object_t *h, if (h -> type != omapi_type_message) return DHCP_R_INVALIDARG; m = (omapi_message_object_t *)h; - + if (!strcmp (name, "status")) { if (m -> notify_object && m -> notify_object -> type -> signal_handler) @@ -271,7 +271,7 @@ isc_result_t omapi_message_register (omapi_object_t *mo) if (mo -> type != omapi_type_message) return DHCP_R_INVALIDARG; m = (omapi_message_object_t *)mo; - + /* Already registered? */ if (m -> prev || m -> next || omapi_registered_messages == m) return DHCP_R_INVALIDARG; @@ -300,7 +300,7 @@ isc_result_t omapi_message_unregister (omapi_object_t *mo) if (mo -> type != omapi_type_message) return DHCP_R_INVALIDARG; m = (omapi_message_object_t *)mo; - + /* Not registered? */ if (!m -> prev && omapi_registered_messages != m) return DHCP_R_INVALIDARG; @@ -550,7 +550,7 @@ omapi_message_process_internal (omapi_object_t *mo, omapi_object_t *po) (po, message -> id_object, ISC_R_NOTFOUND, message -> id, "no object matches specification"); - } + } /* If we found an object, we're supposed to be creating an object, and we're not supposed to have found an object, @@ -622,7 +622,7 @@ omapi_message_process_internal (omapi_object_t *mo, omapi_object_t *po) "can't select authenticator"); } } - + /* Now send the new contents of the object back in response. */ goto send; @@ -636,7 +636,7 @@ omapi_message_process_internal (omapi_object_t *mo, omapi_object_t *po) status, message -> id, "no matching handle"); } - send: + send: status = omapi_protocol_send_update (po, message -> id_object, message -> id, object); omapi_object_dereference (&object, MDL); @@ -666,7 +666,7 @@ omapi_message_process_internal (omapi_object_t *mo, omapi_object_t *po) status, message -> id, "cannot update authenticator"); } - + status = omapi_protocol_add_auth (po, object, message -> h); } else { diff --git a/omapip/omapi.3 b/omapip/omapi.3 index d5de2a61..5edf6275 100644 --- a/omapip/omapi.3 +++ b/omapip/omapi.3 @@ -49,7 +49,7 @@ act as surrogates for the real objects in the server. For example a client will create a handle for a lease object, and will request the server to fill the lease handle's state. The client application can then pull details such as the lease expiration time from the lease -handle. +handle. .PP Modifications can be made to the server state by creating handles to new objects, or by modifying attributes of handles to existing @@ -58,8 +58,8 @@ the changes made. .SH USAGE .PP The client application must always call dhcpctl_initialize() before -making calls to any other dhcpctl functions. This initializes -various internal data structures. +making calls to any other dhcpctl functions. This initializes +various internal data structures. .PP To create the connection to the server the client must use dhcpctl_connect() function. As well as making the physical connection @@ -194,7 +194,7 @@ Get the attribute named ``ends'' from the lease handle. This is a will expire. .PP .nf - + memcpy(&thetime, value->value, value->len); dhcpctl_data_string_dereference(&value, MDL); @@ -213,7 +213,7 @@ the connection the user must call dhcpctl_new_authenticator. const char *algorithm = "hmac-md5"; const char *secret = "a-shared-secret"; - dhcpctl_new_authenticator (&authenticator, + dhcpctl_new_authenticator (&authenticator, keyname, algorithm, secret, @@ -246,4 +246,3 @@ dhcpctl(3), omshell(1), dhcpd(8), dhclient(8), dhcpd.conf(5), dhclient.conf(5). is maintained by ISC. To learn more about Internet Systems Consortium, see .B https://www.isc.org - diff --git a/omapip/protocol.c b/omapip/protocol.c index ea93d0f1..f259a291 100644 --- a/omapip/protocol.c +++ b/omapip/protocol.c @@ -338,7 +338,7 @@ isc_result_t omapi_protocol_send_message (omapi_object_t *po, } return ISC_R_SUCCESS; } - + isc_result_t omapi_protocol_signal_handler (omapi_object_t *h, const char *name, va_list ap) @@ -439,7 +439,7 @@ isc_result_t omapi_protocol_signal_handler (omapi_object_t *h, byte order. */ omapi_connection_get_uint32 (c, &p -> protocol_version); omapi_connection_get_uint32 (c, &p -> header_size); - + /* We currently only support the current protocol version. */ if (p -> protocol_version != OMAPI_PROTOCOL_VERSION) { omapi_disconnect (c, 1); @@ -538,7 +538,7 @@ isc_result_t omapi_protocol_signal_handler (omapi_object_t *h, (0, c, (p -> header_size - sizeof (omapi_protocol_header_t))); } - + /* XXX must compute partial signature across the XXX preceding bytes. Also, if authenticator specifies encryption as well as signing, we may @@ -602,7 +602,7 @@ isc_result_t omapi_protocol_signal_handler (omapi_object_t *h, if (omapi_connection_require (c, nlen) != ISC_R_SUCCESS) break; /* If it's already here, fall through. */ - + case omapi_protocol_name_wait: omapi_connection_copyout (p -> name -> value, c, p -> name -> len); @@ -633,7 +633,7 @@ isc_result_t omapi_protocol_signal_handler (omapi_object_t *h, if (omapi_connection_require (c, vlen) != ISC_R_SUCCESS) break; /* If it's already here, fall through. */ - + case omapi_protocol_value_wait: omapi_connection_copyout (p -> value -> u.buffer.value, c, p -> value -> u.buffer.len); @@ -697,7 +697,7 @@ isc_result_t omapi_protocol_signal_handler (omapi_object_t *h, &p -> message -> authenticator, omapi_datatype_data, p -> message -> authlen); - + if (status != ISC_R_SUCCESS) { if (signature != NULL) { omapi_value_dereference (&signature, MDL); @@ -756,7 +756,7 @@ isc_result_t omapi_protocol_signal_handler (omapi_object_t *h, previous_outstanding = 0xDEADBEEF; #endif /* Now wait for the next message. */ - goto to_header_wait; + goto to_header_wait; default: /* XXX should never get here. Assertion? */ @@ -899,7 +899,7 @@ isc_result_t omapi_protocol_get_value (omapi_object_t *h, return omapi_make_object_value (value, name, p -> default_auth -> a, MDL); } - + if (h -> inner && h -> inner -> type -> get_value) return (*(h -> inner -> type -> get_value)) (h -> inner, id, name, value); @@ -989,7 +989,7 @@ isc_result_t omapi_protocol_configure_security (omapi_object_t *h, return DHCP_R_INVALIDARG; } } - + /* Set up a listener for the omapi protocol. The handle stored points to a listener object, not a protocol object. */ @@ -1092,7 +1092,7 @@ isc_result_t omapi_protocol_listener_set_value (omapi_object_t *h, { if (h -> type != omapi_type_protocol_listener) return DHCP_R_INVALIDARG; - + if (h -> inner && h -> inner -> type -> set_value) return (*(h -> inner -> type -> set_value)) (h -> inner, id, name, value); @@ -1106,7 +1106,7 @@ isc_result_t omapi_protocol_listener_get_value (omapi_object_t *h, { if (h -> type != omapi_type_protocol_listener) return DHCP_R_INVALIDARG; - + if (h -> inner && h -> inner -> type -> get_value) return (*(h -> inner -> type -> get_value)) (h -> inner, id, name, value); @@ -1298,8 +1298,8 @@ isc_result_t omapi_protocol_send_update (omapi_object_t *po, omapi_message_dereference (&message, MDL); return status; } - } - + } + status = omapi_set_object_value (mo, (omapi_object_t *)0, "object", object); if (status != ISC_R_SUCCESS) { diff --git a/omapip/result.c b/omapip/result.c index c6e467bc..901be3c9 100644 --- a/omapip/result.c +++ b/omapip/result.c @@ -1,7 +1,7 @@ /* result.c */ -/* +/* * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * diff --git a/omapip/support.c b/omapip/support.c index 6ad625a3..f3791de0 100644 --- a/omapip/support.c +++ b/omapip/support.c @@ -745,18 +745,18 @@ isc_result_t omapi_make_object_value (omapi_value_t **vp, const char *file, int line) { isc_result_t status; - + status = omapi_value_new (vp, file, line); if (status != ISC_R_SUCCESS) return status; - + status = omapi_data_string_reference (&(*vp) -> name, name, file, line); if (status != ISC_R_SUCCESS) { omapi_value_dereference (vp, file, line); return status; } - + if (value) { status = omapi_typed_data_new (file, line, &(*vp) -> value, omapi_datatype_object, value); @@ -765,7 +765,7 @@ isc_result_t omapi_make_object_value (omapi_value_t **vp, return status; } } - + return ISC_R_SUCCESS; } diff --git a/omapip/trace.c b/omapip/trace.c index 4fa6397c..2a1527d6 100644 --- a/omapip/trace.c +++ b/omapip/trace.c @@ -157,7 +157,7 @@ isc_result_t trace_begin (const char *filename, tfh.version = htonl (TRACEFILE_VERSION); tfh.hlen = htonl (sizeof (tracefile_header_t)); tfh.phlen = htonl (sizeof (tracepacket_t)); - + status = write (traceoutfile, &tfh, sizeof tfh); if (status < 0) { log_error ("%s(%d): trace_begin write failed: %m", file, line); @@ -184,7 +184,7 @@ isc_result_t trace_begin (const char *filename, } } } - + return ISC_R_SUCCESS; } @@ -222,7 +222,7 @@ isc_result_t trace_write_packet_iov (trace_type_t *ttype, file ? file : "", line); return DHCP_R_INVALIDARG; } - + /* Compute the total length of the iov. */ length = 0; for (i = 0; i < count; i++) @@ -266,7 +266,7 @@ isc_result_t trace_write_packet_iov (trace_type_t *ttype, if (length % 8) { static char zero [] = { 0, 0, 0, 0, 0, 0, 0 }; unsigned padl = 8 - (length % 8); - + status = write (traceoutfile, zero, padl); if (status < 0) { log_error ("%s(%d): trace_write_packet write failed: %m", @@ -330,7 +330,7 @@ trace_type_t *trace_type_register (const char *name, strcpy (ttmp -> name, name); ttmp -> have_packet = have_packet; ttmp -> stop_tracing = stop_tracing; - + if (traceoutfile) { status = trace_type_record (ttmp, slen, file, line); if (status != ISC_R_SUCCESS) { @@ -345,7 +345,7 @@ trace_type_t *trace_type_register (const char *name, return ttmp; } - + static isc_result_t trace_type_record (trace_type_t *ttmp, unsigned slen, const char *file, int line) { @@ -403,7 +403,7 @@ void trace_index_map_input (trace_type_t *ttype, unsigned length, char *buf) } prev = &tptr -> next; } - + log_error ("No registered trace type for type name %.*s", (int)length - TRACE_INDEX_MAPPING_SIZE, tmap -> name); return; @@ -544,7 +544,7 @@ isc_result_t trace_get_next_packet (trace_type_t **ttp, tpkt->type_index = ntohl(tpkt -> type_index); tpkt->length = ntohl(tpkt -> length); tpkt->when = ntohl(tpkt -> when); - + /* See if there's a handler for this packet type. */ if (tpkt->type_index < trace_type_count && trace_types[tpkt->type_index]) @@ -575,7 +575,7 @@ isc_result_t trace_get_next_packet (trace_type_t **ttp, "tracefile"); return DHCP_R_PROTOCOLERROR; } - + status = fsetpos(traceinfile, &curpos); if (status < 0) { log_error("fsetpos in tracefile failed: %m"); diff --git a/relay/dhcrelay.8 b/relay/dhcrelay.8 index d795030d..8879b7cf 100644 --- a/relay/dhcrelay.8 +++ b/relay/dhcrelay.8 @@ -78,7 +78,7 @@ dhcrelay - Dynamic Host Configuration Protocol Relay Agent [ .B ... .B -i -.I interfaceN +.I interfaceN ] ] [ @@ -142,7 +142,7 @@ dhcrelay - Dynamic Host Configuration Protocol Relay Agent .I lowerN ] .B -u -.I upper0 +.I upper0 [ .B ... .B -u diff --git a/server/bootp.c b/server/bootp.c index cf7b75cd..d81f4f36 100644 --- a/server/bootp.c +++ b/server/bootp.c @@ -174,7 +174,7 @@ void bootp (packet) &lease->scope, hp->group, lease->subnet->group, NULL); } - + /* Drop the request if it's not allowed for this client. */ if ((oc = lookup_option (&server_universe, options, SV_ALLOW_BOOTP)) && !evaluate_boolean_option_cache(&ignorep, packet, lease, @@ -184,7 +184,7 @@ void bootp (packet) if (!ignorep) log_info ("%s: bootp disallowed", msgbuf); goto out; - } + } if ((oc = lookup_option(&server_universe, options, SV_ALLOW_BOOTING)) && diff --git a/server/confpars.c b/server/confpars.c index 02f0d986..defa0a88 100644 --- a/server/confpars.c +++ b/server/confpars.c @@ -198,7 +198,7 @@ void trace_conf_input (trace_type_t *ttype, unsigned len, char *data) static int postconf_initialized; static int leaseconf_initialized; isc_result_t status; - + /* Do what's done above, except that we don't have to read in the data, because it's already been read for us. */ tflen = strlen (data); @@ -389,7 +389,7 @@ int parse_statement (cfile, group, type, host_decl, declaration) parse_semi (cfile); } return 1; - + case HOST: skip_token(&val, (unsigned *)0, cfile); if (type != HOST_DECL && type != CLASS_DECL) { @@ -612,7 +612,7 @@ int parse_statement (cfile, group, type, host_decl, declaration) } else if (type != SUBNET_DECL && type != SHARED_NET_DECL) { parse_warn (cfile, "pool declared outside of network"); skip_to_semi(cfile); - } else + } else parse_pool_statement (cfile, group, type); return declaration; @@ -672,7 +672,7 @@ int parse_statement (cfile, group, type, host_decl, declaration) } else if (type != SUBNET_DECL) { parse_warn (cfile, "pool6 declared outside of network"); skip_to_semi(cfile); - } else + } else parse_pool6_statement (cfile, group, type); return declaration; @@ -697,7 +697,7 @@ int parse_statement (cfile, group, type, host_decl, declaration) group -> authoritative = 1; authoritative: if (type == HOST_DECL) - parse_warn (cfile, "authority makes no sense here."); + parse_warn (cfile, "authority makes no sense here."); parse_semi (cfile); break; @@ -803,8 +803,8 @@ int parse_statement (cfile, group, type, host_decl, declaration) skip_to_semi (cfile); #endif break; - -#ifdef DHCPv6 + +#ifdef DHCPv6 case SERVER_DUID: parse_server_duid_conf(cfile); break; @@ -1116,7 +1116,7 @@ void parse_failover_peer (cfile, group, type) goto make_hba; } break; - + case LOAD: token = next_token (&val, (unsigned *)0, cfile); if (token != BALANCE) { @@ -1142,7 +1142,7 @@ void parse_failover_peer (cfile, group, type) } peer -> load_balance_max_secs = atoi (val); break; - + default: parse_warn (cfile, "invalid statement in peer declaration"); @@ -1300,11 +1300,11 @@ void parse_failover_state_declaration (struct parse *cfile, state -> mclt = atoi (val); parse_semi (cfile); break; - + default: parse_warn (cfile, "expecting state setting."); bogus: - skip_to_rbrace (cfile, 1); + skip_to_rbrace (cfile, 1); dhcp_failover_state_dereference (&state, MDL); return; } @@ -1355,23 +1355,23 @@ void parse_failover_state (cfile, state, stos) case RECOVER: state_in = recover; break; - + case RECOVER_WAIT: state_in = recover_wait; break; - + case RECOVER_DONE: state_in = recover_done; break; - + case SHUTDOWN: state_in = shut_down; break; - + case PAUSED: state_in = paused; break; - + case STARTUP: state_in = startup; break; @@ -1391,7 +1391,7 @@ void parse_failover_state (cfile, state, stos) skip_to_semi (cfile); return; } - + stos_in = parse_date (cfile); if (!stos_in) return; @@ -1405,7 +1405,7 @@ void parse_failover_state (cfile, state, stos) } #endif /* defined (FAILOVER_PROTOCOL) */ -/*! +/*! * \brief Parses an authoring-byte-order statement * * A valid statement looks like this: @@ -1516,14 +1516,14 @@ void parse_lease_id_format (struct parse *cfile) } /*! - * + * * \brief Parse allow and deny statements * * This function handles the common processing code for permit and deny * statements in the parse_pool_statement and parse_pool6_statement functions. * It reads in the configuration and constructs a new permit structure that it * attachs to the permit_head passed in from the caller. - * + * * The allow or deny token should already be consumed, this function expects * one of the following: * known-clients; @@ -1569,7 +1569,7 @@ void get_permit(cfile, permit_head, is_allow, valid_from, valid_until) case UNKNOWN: permit->type = permit_unknown_clients; break; - + case KNOWN_CLIENTS: need_clients = 0; permit->type = permit_known_clients; @@ -1583,11 +1583,11 @@ void get_permit(cfile, permit_head, is_allow, valid_from, valid_until) case KNOWN: permit->type = permit_known_clients; break; - + case AUTHENTICATED: permit->type = permit_authenticated_clients; break; - + case UNAUTHENTICATED: permit->type = permit_unauthenticated_clients; break; @@ -1595,7 +1595,7 @@ void get_permit(cfile, permit_head, is_allow, valid_from, valid_until) case ALL: permit->type = permit_all_clients; break; - + case DYNAMIC: permit->type = permit_dynamic_bootp_clients; if (next_token (&val, NULL, cfile) != TOKEN_BOOTP) { @@ -1762,7 +1762,7 @@ void parse_pool_statement (cfile, group, type) /* Inherit the failover peer from the shared network. */ if (pool->shared_network->failover_peer) dhcp_failover_state_reference - (&pool->failover_peer, + (&pool->failover_peer, pool->shared_network->failover_peer, MDL); #endif @@ -1790,7 +1790,7 @@ void parse_pool_statement (cfile, group, type) (&pool->failover_peer, MDL); #endif break; - + #if defined (FAILOVER_PROTOCOL) case FAILOVER: skip_token(&val, NULL, cfile); @@ -1837,7 +1837,7 @@ void parse_pool_statement (cfile, group, type) get_permit(cfile, &pool->prohibit_list, 0, &pool->valid_from, &pool->valid_until); break; - + case RBRACE: skip_token(&val, NULL, cfile); done = 1; @@ -2110,7 +2110,7 @@ void parse_host_declaration (cfile, group) skip_token(&val, NULL, cfile); token = next_token(&val, NULL, cfile); if (token == V6RELOPT) { - token = next_token(&val, NULL, cfile); + token = next_token(&val, NULL, cfile); if (token != NUMBER) { parse_warn(cfile, "host-identifier v6relopt " @@ -2127,7 +2127,7 @@ void parse_host_declaration (cfile, group) break; } } else if (token != OPTION) { - parse_warn(cfile, + parse_warn(cfile, "host-identifier must be an option" " or v6relopt"); skip_to_rbrace(cfile, 1); @@ -2141,7 +2141,7 @@ void parse_host_declaration (cfile, group) } if (!known) { parse_warn(cfile, "unknown option %s.%s", - option->universe->name, + option->universe->name, option->name); skip_to_rbrace(cfile, 1); break; @@ -2152,7 +2152,7 @@ void parse_host_declaration (cfile, group) option_dereference(&option, MDL); break; } - + if (!parse_semi(cfile)) { skip_to_rbrace(cfile, 1); expression_dereference(&expr, MDL); @@ -2162,7 +2162,7 @@ void parse_host_declaration (cfile, group) option_reference(&host->host_id_option, option, MDL); option_dereference(&option, MDL); - data_string_copy(&host->host_id, + data_string_copy(&host->host_id, &expr->data.const_data, MDL); expression_dereference(&expr, MDL); continue; @@ -2198,7 +2198,7 @@ void parse_host_declaration (cfile, group) MDL); } } - + if (dynamicp) host -> flags |= HOST_DECL_DYNAMIC; else @@ -2303,7 +2303,7 @@ int parse_class_declaration (cp, cfile, group, type) data.len + 1, MDL)) { if (pc) class_dereference (&pc, MDL); - + return 0; } data.terminated = 1; @@ -2561,7 +2561,7 @@ int parse_class_declaration (cp, cfile, group, type) if (class->flags & CLASS_DECL_DELETED) { if (type == CLASS_TYPE_CLASS) { struct class *theclass = NULL; - + status = find_class(&theclass, class->name, MDL); if (status == ISC_R_SUCCESS) { delete_class(theclass, 0); @@ -2681,7 +2681,7 @@ void parse_shared_net_declaration (cfile, group) static int -common_subnet_parsing(struct parse *cfile, +common_subnet_parsing(struct parse *cfile, struct shared_network *share, struct subnet *subnet) { enum dhcp_token token; @@ -2852,7 +2852,7 @@ parse_subnet6_declaration(struct parse *cfile, struct shared_network *share) { const char *val; char *endp; int ofs; - const static int mask[] = { 0x00, 0x80, 0xC0, 0xE0, + const static int mask[] = { 0x00, 0x80, 0xC0, 0xE0, 0xF0, 0xF8, 0xFC, 0xFE }; struct iaddr iaddr; @@ -2919,8 +2919,8 @@ parse_subnet6_declaration(struct parse *cfile, struct shared_network *share) { } subnet->prefix_len = strtol(val, &endp, 10); - if ((subnet->prefix_len < 0) || - (subnet->prefix_len > 128) || + if ((subnet->prefix_len < 0) || + (subnet->prefix_len > 128) || (*endp != '\0')) { parse_warn(cfile, "Expecting a number between 0 and 128."); subnet_dereference(&subnet, MDL); @@ -2935,8 +2935,8 @@ parse_subnet6_declaration(struct parse *cfile, struct shared_network *share) { return; } - /* - * Create a netmask. + /* + * Create a netmask. */ subnet->netmask.len = 16; ofs = subnet->prefix_len / 8; @@ -2988,12 +2988,12 @@ void parse_group_declaration (cfile, group) token = peek_token(&val, NULL, cfile); if (is_identifier (token) || token == STRING) { skip_token(&val, NULL, cfile); - + name = dmalloc(strlen(val) + 1, MDL); if (!name) log_fatal("no memory for group decl name %s", val); strcpy(name, val); - } + } if (!parse_lbrace(cfile)) { group_dereference(&g, MDL); @@ -3059,8 +3059,8 @@ void parse_group_declaration (cfile, group) | ip-addrs-or-hostnames ip-addr-or-hostname */ int -parse_fixed_addr_param(struct option_cache **oc, - struct parse *cfile, +parse_fixed_addr_param(struct option_cache **oc, + struct parse *cfile, enum dhcp_token type) { int parse_ok; const char *val; @@ -3197,17 +3197,17 @@ int parse_lease_declaration (struct lease **lp, struct parse *cfile) seenbit = 1; lease -> starts = t; break; - + case ENDS: seenbit = 2; lease -> ends = t; break; - + case TSTP: seenbit = 65536; lease -> tstp = t; break; - + case TSFP: seenbit = 131072; lease -> tsfp = t; @@ -3217,12 +3217,12 @@ int parse_lease_declaration (struct lease **lp, struct parse *cfile) seenbit = 262144; lease->atsfp = t; break; - + case CLTT: seenbit = 524288; lease -> cltt = t; break; - + default: /* for gcc, we'll never get here. */ log_fatal ("Impossible error at %s:%d.", MDL); return 0; @@ -3442,7 +3442,7 @@ int parse_lease_declaration (struct lease **lp, struct parse *cfile) } } break; - + case BILLING: seenbit = 2048; class = (struct class *)0; @@ -3540,7 +3540,7 @@ int parse_lease_declaration (struct lease **lp, struct parse *cfile) case TOKEN_SET: noequal = 0; - + token = next_token (&val, (unsigned *)0, cfile); if (token != NAME && token != NUMBER_OR_NAME) { parse_warn (cfile, @@ -3551,7 +3551,7 @@ int parse_lease_declaration (struct lease **lp, struct parse *cfile) lease_dereference (&lease, MDL); return 0; } - + seenbit = 0; special_set: if (lease -> scope) @@ -3852,7 +3852,7 @@ void parse_address_range (cfile, group, type, inpool, lpchain) then look for a pool with an empty prohibit list and a permit list with one entry that permits all clients. */ for (pool = share -> pools; pool; pool = pool -> next) { - if ((!dynamic && !pool -> permit_list && + if ((!dynamic && !pool -> permit_list && pool -> prohibit_list && !pool -> prohibit_list -> next && (pool -> prohibit_list -> type == @@ -3980,7 +3980,7 @@ add_ipv6_pool_to_subnet(struct subnet *subnet, u_int16_t type, pool->ipv6_pond = NULL; ipv6_pond_reference(&pool->ipv6_pond, pond, MDL); - /* + /* * Increase our array size for ipv6_pools in the pond */ if (pond->ipv6_pools == NULL) { @@ -3996,7 +3996,7 @@ add_ipv6_pool_to_subnet(struct subnet *subnet, u_int16_t type, log_fatal("Out of memory"); } if (num_pools > 0) { - memcpy(tmp, pond->ipv6_pools, + memcpy(tmp, pond->ipv6_pools, sizeof(struct ipv6_pool *) * num_pools); } if (pond->ipv6_pools != NULL) { @@ -4004,7 +4004,7 @@ add_ipv6_pool_to_subnet(struct subnet *subnet, u_int16_t type, } pond->ipv6_pools = tmp; - /* + /* * Record this pool in our array of pools for this shared network. */ ipv6_pool_reference(&pond->ipv6_pools[num_pools], pool, MDL); @@ -4055,11 +4055,11 @@ add_ipv6_pool_to_subnet(struct subnet *subnet, u_int16_t type, * with a single entry that permits all clients. If the shared * network doesn't have one of them create it and attach it to * the shared network and the return argument. - * + * * This function is used when we have a range6 or prefix6 statement * inside a subnet6 statement but outside of a pool6 statement. * This routine constructs the missing ipv6_pond structure so - * we always have + * we always have * shared_network -> ipv6_pond -> ipv6_pool * * \param[in] group = a pointer to the group structure from which @@ -4094,7 +4094,7 @@ add_ipv6_pond_to_network(struct group *group, /* no pond available, make one */ status = ipv6_pond_allocate(&pond, MDL); - if (status != ISC_R_SUCCESS) + if (status != ISC_R_SUCCESS) log_fatal ("no memory for ad-hoc ipv6 pond: %s", isc_result_totext (status)); p = new_permit (MDL); @@ -4110,7 +4110,7 @@ add_ipv6_pond_to_network(struct group *group, if (shared->ipv6_pond) ipv6_pond_reference(&last->next, pond, MDL); - else + else ipv6_pond_reference(&shared->ipv6_pond, pond, MDL); shared_network_reference(&pond->shared_network, shared, MDL); @@ -4126,7 +4126,7 @@ add_ipv6_pond_to_network(struct group *group, | ip-address6 SLASH number SEMI | ip-address6 [SLASH number] TEMPORARY SEMI */ -void +void parse_address_range6(struct parse *cfile, struct group *group, struct ipv6_pond *inpond) { @@ -4171,7 +4171,7 @@ parse_address_range6(struct parse *cfile, memset(&net, 0, sizeof(net)); net.cidrnet.lo_addr = lo; - /* + /* * See if we we're using range or CIDR notation or TEMPORARY */ token = peek_token(&val, NULL, cfile); @@ -4181,7 +4181,7 @@ parse_address_range6(struct parse *cfile, */ skip_token(NULL, NULL, cfile); token = next_token(&val, NULL, cfile); - if (token != NUMBER) { + if (token != NUMBER) { parse_warn(cfile, "expecting number"); skip_to_semi(cfile); return; @@ -4237,7 +4237,7 @@ parse_address_range6(struct parse *cfile, } else { /* - * No '/', so we are looking for the end address of + * No '/', so we are looking for the end address of * the IPv6 pool. */ if (!parse_ip6_addr(cfile, &hi)) { @@ -4278,12 +4278,12 @@ parse_address_range6(struct parse *cfile, /* Now that we have a pond add the nets we have parsed */ for (p=nets; p != NULL; p=p->next) { add_ipv6_pool_to_subnet(group->subnet, type, - &p->cidrnet.lo_addr, + &p->cidrnet.lo_addr, p->cidrnet.bits, 128, pond); } /* if we allocated a list free it now */ - if (nets != &net) + if (nets != &net) free_iaddrcidrnetlist(&nets); ipv6_pond_dereference(&pond, MDL); @@ -4298,7 +4298,7 @@ parse_address_range6(struct parse *cfile, /* prefix6-declaration :== ip-address6 ip-address6 SLASH number SEMI */ -void +void parse_prefix6(struct parse *cfile, struct group *group, struct ipv6_pond *inpond) { @@ -4432,7 +4432,7 @@ parse_prefix6(struct parse *cfile, } else { add_ipv6_pond_to_network(group, &pond); } - + for (p = nets; p != NULL; p = p->next) { /* Normalize and check. */ if (p->cidrnet.bits == 128) { @@ -4612,7 +4612,7 @@ void parse_pool6_statement (cfile, group, type) get_permit(cfile, &pond->prohibit_list, 0, &pond->valid_from, &pond->valid_until); break; - + case RBRACE: skip_token(&val, NULL, cfile); done = 1; @@ -4641,7 +4641,7 @@ void parse_pool6_statement (cfile, group, type) * to repoint the leases to the other pond which is annoying. SAR */ - /* + /* * Add this pond to the list (will need updating if we add the * optimization). */ @@ -4891,7 +4891,7 @@ parse_ia_na_declaration(struct parse *cfile) { prefer = atoi (val); /* - * Currently we peek for the semi-colon to + * Currently we peek for the semi-colon to * allow processing of older lease files that * don't have the semi-colon. Eventually we * should remove the peeking code. @@ -4919,7 +4919,7 @@ parse_ia_na_declaration(struct parse *cfile) { valid = atoi (val); /* - * Currently we peek for the semi-colon to + * Currently we peek for the semi-colon to * allow processing of older lease files that * don't have the semi-colon. Eventually we * should remove the peeking code. @@ -5054,7 +5054,7 @@ parse_ia_na_declaration(struct parse *cfile) { } break; - + default: parse_warn(cfile, "corrupt lease file; " "expecting ia_na contents, " @@ -5115,7 +5115,7 @@ parse_ia_na_declaration(struct parse *cfile) { } executable_statement_dereference (&on_star[i], MDL); } - + /* find the pool this address is in */ pool = NULL; if (find_ipv6_pool(&pool, D6O_IA_NA, @@ -5170,7 +5170,7 @@ parse_ia_na_declaration(struct parse *cfile) { if (ia_hash_lookup(&old_ia, ia_na_active, (unsigned char *)ia->iaid_duid.data, ia->iaid_duid.len, MDL)) { - ia_hash_delete(ia_na_active, + ia_hash_delete(ia_na_active, (unsigned char *)ia->iaid_duid.data, ia->iaid_duid.len, MDL); ia_dereference(&old_ia, MDL); @@ -5180,7 +5180,7 @@ parse_ia_na_declaration(struct parse *cfile) { * If we have addresses, add this, otherwise don't bother. */ if (ia->num_iasubopt > 0) { - ia_hash_add(ia_na_active, + ia_hash_add(ia_na_active, (unsigned char *)ia->iaid_duid.data, ia->iaid_duid.len, ia, MDL); } @@ -5339,7 +5339,7 @@ parse_ia_ta_declaration(struct parse *cfile) { prefer = atoi (val); /* - * Currently we peek for the semi-colon to + * Currently we peek for the semi-colon to * allow processing of older lease files that * don't have the semi-colon. Eventually we * should remove the peeking code. @@ -5367,7 +5367,7 @@ parse_ia_ta_declaration(struct parse *cfile) { valid = atoi (val); /* - * Currently we peek for the semi-colon to + * Currently we peek for the semi-colon to * allow processing of older lease files that * don't have the semi-colon. Eventually we * should remove the peeking code. @@ -5500,9 +5500,9 @@ parse_ia_ta_declaration(struct parse *cfile) { return; } } - + break; - + default: parse_warn(cfile, "corrupt lease file; " "expecting ia_ta contents, " @@ -5563,7 +5563,7 @@ parse_ia_ta_declaration(struct parse *cfile) { } executable_statement_dereference (&on_star[i], MDL); } - + /* find the pool this address is in */ pool = NULL; if (find_ipv6_pool(&pool, D6O_IA_TA, @@ -5607,7 +5607,7 @@ parse_ia_ta_declaration(struct parse *cfile) { if (ia_hash_lookup(&old_ia, ia_ta_active, (unsigned char *)ia->iaid_duid.data, ia->iaid_duid.len, MDL)) { - ia_hash_delete(ia_ta_active, + ia_hash_delete(ia_ta_active, (unsigned char *)ia->iaid_duid.data, ia->iaid_duid.len, MDL); ia_dereference(&old_ia, MDL); @@ -5617,7 +5617,7 @@ parse_ia_ta_declaration(struct parse *cfile) { * If we have addresses, add this, otherwise don't bother. */ if (ia->num_iasubopt > 0) { - ia_hash_add(ia_ta_active, + ia_hash_add(ia_ta_active, (unsigned char *)ia->iaid_duid.data, ia->iaid_duid.len, ia, MDL); } @@ -5777,7 +5777,7 @@ parse_ia_pd_declaration(struct parse *cfile) { prefer = atoi (val); /* - * Currently we peek for the semi-colon to + * Currently we peek for the semi-colon to * allow processing of older lease files that * don't have the semi-colon. Eventually we * should remove the peeking code. @@ -5805,7 +5805,7 @@ parse_ia_pd_declaration(struct parse *cfile) { valid = atoi (val); /* - * Currently we peek for the semi-colon to + * Currently we peek for the semi-colon to * allow processing of older lease files that * don't have the semi-colon. Eventually we * should remove the peeking code. @@ -5940,7 +5940,7 @@ parse_ia_pd_declaration(struct parse *cfile) { } break; - + default: parse_warn(cfile, "corrupt lease file; " "expecting ia_pd contents, " @@ -6001,7 +6001,7 @@ parse_ia_pd_declaration(struct parse *cfile) { } executable_statement_dereference (&on_star[i], MDL); } - + /* Find the pool this address is in. We need to check prefix * lengths too in case the pool has been reconfigured. */ pool = NULL; @@ -6057,7 +6057,7 @@ parse_ia_pd_declaration(struct parse *cfile) { * If we have prefixes, add this, otherwise don't bother. */ if (ia->num_iasubopt > 0) { - ia_hash_add(ia_pd_active, + ia_hash_add(ia_pd_active, (unsigned char *)ia->iaid_duid.data, ia->iaid_duid.len, ia, MDL); } @@ -6065,9 +6065,9 @@ parse_ia_pd_declaration(struct parse *cfile) { #endif /* defined(DHCPv6) */ } -#ifdef DHCPv6 +#ifdef DHCPv6 /* - * When we parse a server-duid statement in a lease file, we are + * When we parse a server-duid statement in a lease file, we are * looking at the saved server DUID from a previous run. In this case * we expect it to be followed by the binary representation of the * DUID stored in a string: @@ -6078,7 +6078,7 @@ parse_ia_pd_declaration(struct parse *cfile) { * * server-duid 00:01:00:01:1e:68:b3:db:0a:00:27:00:00:02; */ -void +void parse_server_duid(struct parse *cfile) { struct data_string duid; unsigned char bytes[128]; /* Maximum valid DUID is 128 */ @@ -6117,7 +6117,7 @@ parse_server_duid(struct parse *cfile) { * server-duid ll ethernet|ieee802|fddi 00:16:6F:49:7D:9B; * server-duid en 2495 "enterprise-specific-identifier-1234"; */ -void +void parse_server_duid_conf(struct parse *cfile) { enum dhcp_token token; const char *val; @@ -6139,7 +6139,7 @@ parse_server_duid_conf(struct parse *cfile) { */ token = next_token(&val, NULL, cfile); - /* + /* * Enterprise is the easiest - enterprise number and raw data * are required. */ @@ -6179,7 +6179,7 @@ parse_server_duid_conf(struct parse *cfile) { data_string_forget(&duid, MDL); } - /* + /* * Next easiest is the link-layer DUID. It consists only of * the LL directive, or optionally the specific value to use. * @@ -6208,7 +6208,7 @@ parse_server_duid_conf(struct parse *cfile) { parse_warn(cfile, "hardware type expected"); skip_to_semi(cfile); return; - } + } memset(&ll_addr, 0, sizeof(ll_addr)); if (!parse_cshl(&ll_addr, cfile)) { return; @@ -6225,7 +6225,7 @@ parse_server_duid_conf(struct parse *cfile) { duid.data = (unsigned char *)duid.buffer->data; putUShort(duid.buffer->data, DUID_LL); putUShort(duid.buffer->data + 2, ll_type); - memcpy(duid.buffer->data + 4, + memcpy(duid.buffer->data + 4, ll_addr.data, ll_addr.len); set_server_duid(&duid); @@ -6234,7 +6234,7 @@ parse_server_duid_conf(struct parse *cfile) { } } - /* + /* * Finally the link-layer DUID plus time. It consists only of * the LLT directive, or optionally the specific value to use. * @@ -6263,8 +6263,8 @@ parse_server_duid_conf(struct parse *cfile) { parse_warn(cfile, "hardware type expected"); skip_to_semi(cfile); return; - } - + } + token = next_token(&val, NULL, cfile); if (token != NUMBER) { parse_warn(cfile, "timestamp expected"); @@ -6290,7 +6290,7 @@ parse_server_duid_conf(struct parse *cfile) { putUShort(duid.buffer->data, DUID_LLT); putUShort(duid.buffer->data + 2, ll_type); putULong(duid.buffer->data + 4, llt_time); - memcpy(duid.buffer->data + 8, + memcpy(duid.buffer->data + 8, ll_addr.data, ll_addr.len); set_server_duid(&duid); @@ -6306,7 +6306,7 @@ parse_server_duid_conf(struct parse *cfile) { * * In this case, they have to put in the complete value. * - * This also works for existing DUID types of course. + * This also works for existing DUID types of course. */ else if (token == NUMBER) { duid_type_num = atoi(val); @@ -6353,7 +6353,7 @@ parse_server_duid_conf(struct parse *cfile) { } } -/*! +/*! * \brief Creates a byte-order corrected uint32 from a buffer * * This function creates an integer value from a buffer, converting from @@ -6437,4 +6437,3 @@ parse_iaid_duid(struct parse* cfile, struct ia_xx** ia, u_int32_t *iaid, } #endif /* DHCPv6 */ - diff --git a/server/dhcpd.8 b/server/dhcpd.8 index a5f4445f..bff88ab2 100644 --- a/server/dhcpd.8 +++ b/server/dhcpd.8 @@ -54,7 +54,7 @@ dhcpd - Dynamic Host Configuration Protocol Server ] [ .B -4 -| +| .B -6 ] [ @@ -127,7 +127,7 @@ enters them into the dhcpd.conf(5) file. There are two versions of the DHCP protocol DHCPv4 and DHCPv6. At startup the server may be started for one or the other via the .B -4 -or +or .B -6 arguments. .PP @@ -220,7 +220,7 @@ to ::1 \fIport\fR and \fIport + 1\fR. Both servers must be launched using the same \fIport\fR argument. .TP .BI \-p \ port -The UDP port number on which +The UDP port number on which .B dhcpd should listen. If unspecified .B dhcpd @@ -228,7 +228,7 @@ uses the default port of 67. This is mostly useful for debugging purposes. .TP .BI \-s \ address -Specify an address or host name to which +Specify an address or host name to which .B dhcpd should send replies rather than the broadcast address (255.255.255.255). This option is only supported in IPv4. @@ -237,8 +237,8 @@ This option is only supported in IPv4. Force .B dhcpd to run as a foreground process instead of as a daemon in the background. -This is useful when running -.B dhcpd +This is useful when running +.B dhcpd under a debugger, or when running it out of inittab on System V systems. .TP @@ -246,14 +246,14 @@ out of inittab on System V systems. Send log messages to the standard error descriptor. This can be useful for debugging, and also at sites where a complete log of all dhcp activity must be kept but syslogd is not -reliable or otherwise cannot be used. Normally, +reliable or otherwise cannot be used. Normally, .B dhcpd will log all output using the \fBsyslog(3)\fR function with the log facility set to LOG_DAEMON. Note that \fB\-d\fR implies \fB\-f\fR (the daemon will not fork itself into the background). .TP -.BI \-q +.BI \-q Be quiet at startup. This suppresses the printing of the entire copyright message during startup. This might be desirable when starting @@ -319,7 +319,7 @@ lease file. Print version number and exit. .PP .I Modifying default file locations: -The following options can be used to modify the locations +The following options can be used to modify the locations .B dhcpd uses for its files. Because of the importance of using the same lease database at all times when running dhcpd in production, these @@ -690,7 +690,7 @@ dhcpd.conf file. .PP Named groups currently can only be associated with hosts - this allows one set of statements to be efficiently attached -to more than one host declaration. +to more than one host declaration. .PP Groups have the following attributes: .PP diff --git a/server/failover.c b/server/failover.c index bbe1ff4c..320ce1bc 100644 --- a/server/failover.c +++ b/server/failover.c @@ -6577,7 +6577,7 @@ void scrub_lease(struct lease* lease, const char *file, int line) { * draws more questions then it helps, so we'll ifdef it out */ log_debug ("%s(%d):scrubbing lease for %s, hostname: %s", file, line, piaddr(lease->ip_addr), printable(lease->client_hostname)); -#endif +#endif if (lease->client_hostname) { dfree (lease->client_hostname, MDL); diff --git a/server/ldap_casa.c b/server/ldap_casa.c index 9329450f..4e302e37 100644 --- a/server/ldap_casa.c +++ b/server/ldap_casa.c @@ -1,31 +1,31 @@ /* ldap_casa.c - + CASA routines for DHCPD... */ /* Copyright (c) 2006 Novell, Inc. * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * 1.Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * 2.Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * 3.Neither the name of ISC, ISC DHCP, nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - - * THIS SOFTWARE IS PROVIDED BY INTERNET SYSTEMS CONSORTIUM AND CONTRIBUTORS + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * 1.Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * 2.Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * 3.Neither the name of ISC, ISC DHCP, nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + + * THIS SOFTWARE IS PROVIDED BY INTERNET SYSTEMS CONSORTIUM AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, - * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ISC OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN - * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ISC OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * This file was written by S Kalyanasundaram @@ -158,4 +158,3 @@ load_uname_pwd_from_miCASA (char **ldap_username, char **ldap_password) } #endif /* LDAP_CASA_AUTH */ - diff --git a/server/leasechain.c b/server/leasechain.c index 12f88597..7ccc30be 100644 --- a/server/leasechain.c +++ b/server/leasechain.c @@ -30,7 +30,7 @@ * \page leasechain structures overview * * A brief description of the leasechain structures - * + * * This file provides additional data structures for a leasecain to * provide faster access to leases on the queues associated with a pool * than a linear walk. Each pool has a set of queues: active, free, backup, @@ -55,11 +55,11 @@ * | next |->| next |->NULL * NULL<- | prev |<-| prev | * +-------+ +-------+ - * + * * The linked list is maintained in an ordered state. Inserting an entry is * accomplished by doing a binary search on the array to find the proper place * in the list and then updating the pointers in the linked list to include the - * new entry. The entry is added into the array by copying the remainder of + * new entry. The entry is added into the array by copying the remainder of * the array to provide space for the new entry. * Removing an entry is the reverse. * The arrays for the queues will be pre-allocated but not all of them will be @@ -142,7 +142,7 @@ lc_get_next(struct leasechain *lc, struct lease *lp) { * Given a potential range of the array to insert the lease into this routine * will recursively examine the range to find the proper place in which to * insert the lease. - * + * * \param lc The leasechain to add the lease to * \param lp The lease to insert * \param min The minium index of the potential range for insertion @@ -150,7 +150,7 @@ lc_get_next(struct leasechain *lc, struct lease *lp) { * * \return The index of the array entry to insert the lease */ -size_t +size_t lc_binary_search_insert_point(struct leasechain *lc, struct lease *lp, size_t min, size_t max) @@ -168,7 +168,7 @@ lc_binary_search_insert_point(struct leasechain *lc, return (lc_binary_search_insert_point(lc, lp, min, mid_index - 1)); } else if ((lc->list[mid_index]->sort_time < lp->sort_time) || - ((lc->list[mid_index]->sort_time == lp->sort_time) && + ((lc->list[mid_index]->sort_time == lp->sort_time) && (lc->list[mid_index]->sort_tiebreaker < lp->sort_tiebreaker))) { if (mid_index == max) { /* insert in mid_index + 1 as sort_time is smaller */ @@ -189,7 +189,7 @@ lc_binary_search_insert_point(struct leasechain *lc, * * Given a potential range of the array to search this routine * will recursively examine the range to find the proper lease - * + * * \param lc The leasechain to check * \param lp The lease to find * \param min The minium index of the search range @@ -220,13 +220,13 @@ lc_binary_search_lease(struct leasechain *lc, if (mid_index == min) { /* lease not found */ return (SIZE_MAX); - } + } /* try the lower half of the list */ return (lc_binary_search_lease(lc, lp, min, mid_index - 1)); } else if ((lc->list[mid_index]->sort_time < lp->sort_time) || ((lc->list[mid_index]->sort_time == lp->sort_time) && (lc->list[mid_index]->sort_tiebreaker < lp->sort_tiebreaker))) { - /* try the upper half of the list */ + /* try the upper half of the list */ return (lc_binary_search_lease(lc, lp, mid_index + 1, max)); } @@ -253,7 +253,7 @@ lc_binary_search_lease(struct leasechain *lc, /* Are we done with this range? */ if ((i == min) || - ((lc->list[i]->sort_time != lp->sort_time) || + ((lc->list[i]->sort_time != lp->sort_time) || ((lc->list[i]->sort_time == lp->sort_time) && (lc->list[i]->sort_tiebreaker != lp->sort_tiebreaker)))) { break; @@ -263,7 +263,7 @@ lc_binary_search_lease(struct leasechain *lc, /* Check out entries above the mid_index */ if (mid_index < max) { - /* We will break out of the loop if we either go past the + /* We will break out of the loop if we either go past the * canddiates or hit the end of the range when i == max. */ for (i = mid_index + 1; i <= max; i++) { @@ -304,7 +304,7 @@ lc_grow_chain(struct leasechain *lc) { void *p; size_t temp_size; - if (lc->growth == 0) + if (lc->growth == 0) temp_size = lc->total + LC_GROWTH_DELTA; else temp_size = lc->total + lc->growth; @@ -366,7 +366,7 @@ lc_link_lcp(struct leasechain *lc, struct lease *lp, size_t n) { sizeof(struct lease *) * (lc->nelem-n)); } - /* clean any stale pointer info from this position before calling + /* clean any stale pointer info from this position before calling * lease_reference as it won't work if pointer is not NULL */ lc->list[n] = NULL; @@ -380,7 +380,7 @@ lc_link_lcp(struct leasechain *lc, struct lease *lp, size_t n) { } /*! - * + * * \brief Insert the lease at the specified position in both the lease chain * and the linked list * @@ -452,7 +452,7 @@ lc_check_lc_sort_order(struct leasechain *lc) { log_debug("LC check sort %s:%d", MDL); for (i = 0; i < lc->nelem; i++ ) { if ((lc->list[i]->sort_time < t) || - ((lc->list[i]->sort_time == t) && + ((lc->list[i]->sort_time == t) && (lc->list[i]->tiebreaker < tiebreaker))) { if (i > 0) { print_lease(lc->list[i-1]); @@ -476,7 +476,7 @@ lc_check_lc_sort_order(struct leasechain *lc) { * The sort_time is set by the caller while the sort_tiebreaker is set here * The value doesn't much matter as long as it prvoides a way to have different * values in most of the leases. - * + * * When choosing a value for tiebreak we choose: * 0 for the first lease in the queue * 0 if the lease is going to the end of the queue with a sort_time greater @@ -488,7 +488,7 @@ lc_check_lc_sort_order(struct leasechain *lc) { * During startup when we can take advantage of the fact that leases may already * be sorted and so check the end of the list to see if we can simply add the * lease to the end. - * + * * \param lc The leasechain in which to insert the lease * \param lp The lease to insert * diff --git a/server/omapi.c b/server/omapi.c index 50804e26..2a70f7a4 100644 --- a/server/omapi.c +++ b/server/omapi.c @@ -1301,7 +1301,7 @@ isc_result_t dhcp_host_stuff_values (omapi_object_t *c, status = omapi_connection_copyin (c, ip_addrs.data, ip_addrs.len); - if (status != ISC_R_SUCCESS) { + if (status != ISC_R_SUCCESS) { data_string_forget (&ip_addrs, MDL); return status; } @@ -1744,7 +1744,7 @@ isc_result_t dhcp_pool_stuff_values (omapi_object_t *c, if (status != ISC_R_SUCCESS) return (status); - status = omapi_connection_put_named_uint32(c, "backup-leases", + status = omapi_connection_put_named_uint32(c, "backup-leases", ((u_int32_t) pool->backup_leases)); if (status != ISC_R_SUCCESS) diff --git a/server/stables.c b/server/stables.c index 5242a656..c33809b0 100644 --- a/server/stables.c +++ b/server/stables.c @@ -66,7 +66,7 @@ struct failover_option_info ft_options [] = FM_OFFSET(ip_flags), FTB_IP_FLAGS }, { FTO_LEASE_EXPIRY, "lease-expiration-time", FT_UINT32, 1, FM_OFFSET(expiry), FTB_LEASE_EXPIRY }, - { FTO_MAX_UNACKED, "max-unacked-bndupd", FT_UINT32, 1, + { FTO_MAX_UNACKED, "max-unacked-bndupd", FT_UINT32, 1, FM_OFFSET(max_unacked), FTB_MAX_UNACKED }, { FTO_MCLT, "MCLT", FT_UINT32, 1, FM_OFFSET(mclt), FTB_MCLT }, { FTO_MESSAGE, "message", FT_TEXT, 0, diff --git a/server/tests/hash_unittest.c b/server/tests/hash_unittest.c index 757ef2af..3345cd8d 100644 --- a/server/tests/hash_unittest.c +++ b/server/tests/hash_unittest.c @@ -536,7 +536,7 @@ ATF_TC_BODY(lease_hash_basic_3hosts, tc) { the code from using an improper client id earlier and restoring the hash code to its previous state. As we may choose to redo the hash code again this test hasn't been deleted. -*/ +*/ /* this test is a direct reproduction of 29851 issue */ ATF_TC(uid_hash_rt29851); diff --git a/tests/DHCPv6/000-badmsgtype.pl b/tests/DHCPv6/000-badmsgtype.pl index 149168a9..ee9ae715 100644 --- a/tests/DHCPv6/000-badmsgtype.pl +++ b/tests/DHCPv6/000-badmsgtype.pl @@ -80,10 +80,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -104,7 +104,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -119,11 +119,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -137,16 +137,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -161,4 +161,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/010-solicit-noclientid.pl b/tests/DHCPv6/010-solicit-noclientid.pl index faab1569..fedbc215 100644 --- a/tests/DHCPv6/010-solicit-noclientid.pl +++ b/tests/DHCPv6/010-solicit-noclientid.pl @@ -91,7 +91,7 @@ my @docsis_oro = ( $DOCSIS_OPT_TFTP_SERVERS ); $vsio .= pack("nnC*", $DOCSIS_OPT_ORO, 0+@docsis_oro, @docsis_oro); # TLV5 data: CMTS DOCSIS version number 3.0 (required by DOCSIS) -my $tlv5_data = "\x01\x02\x03\x0"; +my $tlv5_data = "\x01\x02\x03\x0"; $vsio .= pack("nn", $DOCSIS_OPT_TLV5, length($tlv5_data)) . $tlv5_data; # DOCSIS Device (required by DOCSIS) @@ -126,10 +126,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 Solicit message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -150,7 +150,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -167,11 +167,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -185,16 +185,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -209,4 +209,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/011-solicit-serverid.pl b/tests/DHCPv6/011-solicit-serverid.pl index 2f7affdb..bf64922d 100644 --- a/tests/DHCPv6/011-solicit-serverid.pl +++ b/tests/DHCPv6/011-solicit-serverid.pl @@ -94,7 +94,7 @@ my @docsis_oro = ( $DOCSIS_OPT_TFTP_SERVERS ); $vsio .= pack("nnC*", $DOCSIS_OPT_ORO, 0+@docsis_oro, @docsis_oro); # TLV5 data: CMTS DOCSIS version number 3.0 (required by DOCSIS) -my $tlv5_data = "\x01\x02\x03\x0"; +my $tlv5_data = "\x01\x02\x03\x0"; $vsio .= pack("nn", $DOCSIS_OPT_TLV5, length($tlv5_data)) . $tlv5_data; # DOCSIS Device (required by DOCSIS) @@ -129,10 +129,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 Solicit message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -153,7 +153,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -170,11 +170,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -188,16 +188,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -212,4 +212,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/020-advertise-mcast.pl b/tests/DHCPv6/020-advertise-mcast.pl index d575eb94..ea59e1ad 100644 --- a/tests/DHCPv6/020-advertise-mcast.pl +++ b/tests/DHCPv6/020-advertise-mcast.pl @@ -80,10 +80,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -104,7 +104,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -119,11 +119,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -137,16 +137,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -161,4 +161,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/030-request-noclientid.pl b/tests/DHCPv6/030-request-noclientid.pl index 75066d5d..23d72761 100644 --- a/tests/DHCPv6/030-request-noclientid.pl +++ b/tests/DHCPv6/030-request-noclientid.pl @@ -91,7 +91,7 @@ my @docsis_oro = ( $DOCSIS_OPT_TFTP_SERVERS ); $vsio .= pack("nnC*", $DOCSIS_OPT_ORO, 0+@docsis_oro, @docsis_oro); # TLV5 data: CMTS DOCSIS version number 3.0 (required by DOCSIS) -my $tlv5_data = "\x01\x02\x03\x0"; +my $tlv5_data = "\x01\x02\x03\x0"; $vsio .= pack("nn", $DOCSIS_OPT_TLV5, length($tlv5_data)) . $tlv5_data; # DOCSIS Device (required by DOCSIS) @@ -126,10 +126,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 Solicit message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -150,7 +150,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -167,11 +167,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -185,16 +185,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -209,4 +209,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/031-request-noserverid.pl b/tests/DHCPv6/031-request-noserverid.pl index 4e12b1b8..3604f354 100644 --- a/tests/DHCPv6/031-request-noserverid.pl +++ b/tests/DHCPv6/031-request-noserverid.pl @@ -91,7 +91,7 @@ my @docsis_oro = ( $DOCSIS_OPT_TFTP_SERVERS ); $vsio .= pack("nnC*", $DOCSIS_OPT_ORO, 0+@docsis_oro, @docsis_oro); # TLV5 data: CMTS DOCSIS version number 3.0 (required by DOCSIS) -my $tlv5_data = "\x01\x02\x03\x0"; +my $tlv5_data = "\x01\x02\x03\x0"; $vsio .= pack("nn", $DOCSIS_OPT_TLV5, length($tlv5_data)) . $tlv5_data; # DOCSIS Device (required by DOCSIS) @@ -126,10 +126,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 Solicit message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -150,7 +150,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -167,11 +167,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -185,16 +185,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -209,4 +209,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/032-request-badduid.pl b/tests/DHCPv6/032-request-badduid.pl index e086b1d0..ff37dfb6 100644 --- a/tests/DHCPv6/032-request-badduid.pl +++ b/tests/DHCPv6/032-request-badduid.pl @@ -95,7 +95,7 @@ my @docsis_oro = ( $DOCSIS_OPT_TFTP_SERVERS ); $vsio .= pack("nnC*", $DOCSIS_OPT_ORO, 0+@docsis_oro, @docsis_oro); # TLV5 data: CMTS DOCSIS version number 3.0 (required by DOCSIS) -my $tlv5_data = "\x01\x02\x03\x0"; +my $tlv5_data = "\x01\x02\x03\x0"; $vsio .= pack("nn", $DOCSIS_OPT_TLV5, length($tlv5_data)) . $tlv5_data; # DOCSIS Device (required by DOCSIS) @@ -130,10 +130,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 Solicit message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -154,7 +154,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -171,11 +171,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -189,16 +189,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -213,4 +213,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/110-information-request-ia_na.pl b/tests/DHCPv6/110-information-request-ia_na.pl index ca0aaae7..f3061933 100644 --- a/tests/DHCPv6/110-information-request-ia_na.pl +++ b/tests/DHCPv6/110-information-request-ia_na.pl @@ -91,7 +91,7 @@ my @docsis_oro = ( $DOCSIS_OPT_TFTP_SERVERS ); $vsio .= pack("nnC*", $DOCSIS_OPT_ORO, 0+@docsis_oro, @docsis_oro); # TLV5 data: CMTS DOCSIS version number 3.0 (required by DOCSIS) -my $tlv5_data = "\x01\x02\x03\x0"; +my $tlv5_data = "\x01\x02\x03\x0"; $vsio .= pack("nn", $DOCSIS_OPT_TLV5, length($tlv5_data)) . $tlv5_data; # DOCSIS Device (required by DOCSIS) @@ -126,10 +126,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 Solicit message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -150,7 +150,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -167,11 +167,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -185,16 +185,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -209,4 +209,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/111-information-request-ia_ta.pl b/tests/DHCPv6/111-information-request-ia_ta.pl index 2b662f9d..c154a3eb 100644 --- a/tests/DHCPv6/111-information-request-ia_ta.pl +++ b/tests/DHCPv6/111-information-request-ia_ta.pl @@ -91,7 +91,7 @@ my @docsis_oro = ( $DOCSIS_OPT_TFTP_SERVERS ); $vsio .= pack("nnC*", $DOCSIS_OPT_ORO, 0+@docsis_oro, @docsis_oro); # TLV5 data: CMTS DOCSIS version number 3.0 (required by DOCSIS) -my $tlv5_data = "\x01\x02\x03\x0"; +my $tlv5_data = "\x01\x02\x03\x0"; $vsio .= pack("nn", $DOCSIS_OPT_TLV5, length($tlv5_data)) . $tlv5_data; # DOCSIS Device (required by DOCSIS) @@ -126,10 +126,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 Solicit message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -150,7 +150,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -167,11 +167,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -185,16 +185,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -209,4 +209,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/112-badduid.pl b/tests/DHCPv6/112-badduid.pl index f741b39c..1b50e4bb 100644 --- a/tests/DHCPv6/112-badduid.pl +++ b/tests/DHCPv6/112-badduid.pl @@ -87,7 +87,7 @@ my @docsis_oro = ( $DOCSIS_OPT_TFTP_SERVERS ); $vsio .= pack("nnC*", $DOCSIS_OPT_ORO, 0+@docsis_oro, @docsis_oro); # TLV5 data: CMTS DOCSIS version number 3.0 (required by DOCSIS) -my $tlv5_data = "\x01\x02\x03\x0"; +my $tlv5_data = "\x01\x02\x03\x0"; $vsio .= pack("nn", $DOCSIS_OPT_TLV5, length($tlv5_data)) . $tlv5_data; # DOCSIS Device (required by DOCSIS) @@ -122,10 +122,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 Solicit message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -146,7 +146,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -163,11 +163,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -181,16 +181,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -205,4 +205,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/210-solicit-nohost.pl b/tests/DHCPv6/210-solicit-nohost.pl index 3e02fa73..23d96b39 100644 --- a/tests/DHCPv6/210-solicit-nohost.pl +++ b/tests/DHCPv6/210-solicit-nohost.pl @@ -91,7 +91,7 @@ my @docsis_oro = ( $DOCSIS_OPT_TFTP_SERVERS ); $vsio .= pack("nnC*", $DOCSIS_OPT_ORO, 0+@docsis_oro, @docsis_oro); # TLV5 data: CMTS DOCSIS version number 3.0 (required by DOCSIS) -my $tlv5_data = "\x01\x02\x03\x0"; +my $tlv5_data = "\x01\x02\x03\x0"; $vsio .= pack("nn", $DOCSIS_OPT_TLV5, length($tlv5_data)) . $tlv5_data; # DOCSIS Device (required by DOCSIS) @@ -126,10 +126,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 Solicit message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -150,7 +150,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -167,11 +167,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -185,16 +185,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -209,4 +209,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/211-solicit-opt-in-na.pl b/tests/DHCPv6/211-solicit-opt-in-na.pl index 881285e7..73d7e2d1 100644 --- a/tests/DHCPv6/211-solicit-opt-in-na.pl +++ b/tests/DHCPv6/211-solicit-opt-in-na.pl @@ -97,7 +97,7 @@ my @docsis_oro = ( $DOCSIS_OPT_TFTP_SERVERS ); $vsio .= pack("nnC*", $DOCSIS_OPT_ORO, 0+@docsis_oro, @docsis_oro); # TLV5 data: CMTS DOCSIS version number 3.0 (required by DOCSIS) -my $tlv5_data = "\x01\x02\x03\x0"; +my $tlv5_data = "\x01\x02\x03\x0"; $vsio .= pack("nn", $DOCSIS_OPT_TLV5, length($tlv5_data)) . $tlv5_data; # DOCSIS Device (required by DOCSIS) @@ -132,10 +132,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 Solicit message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -156,7 +156,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -173,11 +173,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -191,16 +191,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -215,4 +215,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/212-solicit-opt-in-na-norapidcommit.pl b/tests/DHCPv6/212-solicit-opt-in-na-norapidcommit.pl index 12c26f04..d179bd8c 100644 --- a/tests/DHCPv6/212-solicit-opt-in-na-norapidcommit.pl +++ b/tests/DHCPv6/212-solicit-opt-in-na-norapidcommit.pl @@ -97,7 +97,7 @@ my @docsis_oro = ( $DOCSIS_OPT_TFTP_SERVERS ); $vsio .= pack("nnC*", $DOCSIS_OPT_ORO, 0+@docsis_oro, @docsis_oro); # TLV5 data: CMTS DOCSIS version number 3.0 (required by DOCSIS) -my $tlv5_data = "\x01\x02\x03\x0"; +my $tlv5_data = "\x01\x02\x03\x0"; $vsio .= pack("nn", $DOCSIS_OPT_TLV5, length($tlv5_data)) . $tlv5_data; # DOCSIS Device (required by DOCSIS) @@ -132,10 +132,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 Solicit message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -156,7 +156,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -173,11 +173,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -191,16 +191,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -215,4 +215,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/280-release-nohost.pl b/tests/DHCPv6/280-release-nohost.pl index c17ff0c2..1eec2fa0 100644 --- a/tests/DHCPv6/280-release-nohost.pl +++ b/tests/DHCPv6/280-release-nohost.pl @@ -89,10 +89,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -113,7 +113,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -130,11 +130,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -148,16 +148,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -172,4 +172,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/281-release-bad-address.pl b/tests/DHCPv6/281-release-bad-address.pl index 194dfa23..d06b9ac3 100644 --- a/tests/DHCPv6/281-release-bad-address.pl +++ b/tests/DHCPv6/281-release-bad-address.pl @@ -101,10 +101,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 Solicit message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -125,7 +125,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -142,11 +142,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -160,16 +160,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -184,4 +184,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/282-release-no-address.pl b/tests/DHCPv6/282-release-no-address.pl index 48ed021e..8dbf4d76 100644 --- a/tests/DHCPv6/282-release-no-address.pl +++ b/tests/DHCPv6/282-release-no-address.pl @@ -97,10 +97,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 Solicit message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -121,7 +121,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -138,11 +138,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -156,16 +156,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -180,4 +180,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/283-release.pl b/tests/DHCPv6/283-release.pl index 289bb762..6232702c 100644 --- a/tests/DHCPv6/283-release.pl +++ b/tests/DHCPv6/283-release.pl @@ -103,10 +103,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 Solicit message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -127,7 +127,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -144,11 +144,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -162,16 +162,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -186,4 +186,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/290-decline-nohost.pl b/tests/DHCPv6/290-decline-nohost.pl index d235b933..1eaed9ae 100644 --- a/tests/DHCPv6/290-decline-nohost.pl +++ b/tests/DHCPv6/290-decline-nohost.pl @@ -89,10 +89,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 Solicit message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -113,7 +113,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -130,11 +130,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -148,16 +148,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -172,4 +172,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/291-decline-bad-address.pl b/tests/DHCPv6/291-decline-bad-address.pl index 60ea01b7..62fe9cef 100644 --- a/tests/DHCPv6/291-decline-bad-address.pl +++ b/tests/DHCPv6/291-decline-bad-address.pl @@ -101,10 +101,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 Solicit message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -125,7 +125,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -142,11 +142,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -160,16 +160,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -184,4 +184,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/292-decline-no-address.pl b/tests/DHCPv6/292-decline-no-address.pl index 1a13904c..62383554 100644 --- a/tests/DHCPv6/292-decline-no-address.pl +++ b/tests/DHCPv6/292-decline-no-address.pl @@ -97,10 +97,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 Solicit message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -121,7 +121,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -138,11 +138,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -156,16 +156,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -180,4 +180,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/293-decline.pl b/tests/DHCPv6/293-decline.pl index 24d05bc0..fafb483a 100644 --- a/tests/DHCPv6/293-decline.pl +++ b/tests/DHCPv6/293-decline.pl @@ -103,10 +103,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 Solicit message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -127,7 +127,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -144,11 +144,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -162,16 +162,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -186,4 +186,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/dhcp_client.pm b/tests/DHCPv6/dhcp_client.pm index a2720e85..bcea4333 100644 --- a/tests/DHCPv6/dhcp_client.pm +++ b/tests/DHCPv6/dhcp_client.pm @@ -90,12 +90,12 @@ $HOP_COUNT_LIMIT = 32; @EXPORT = qw( $MSG_SOLICIT $MSG_ADVERTISE $MSG_REQUEST $MSG_CONFIRM $MSG_RENEW $MSG_REBIND $MSG_REPLY $MSG_RELEASE $MSG_DECLINE $MSG_RECONFIGURE $MSG_INFORMATION_REQUEST $MSG_RELAY_FORW - $MSG_RELAY_REPL + $MSG_RELAY_REPL $OPT_CLIENTID $OPT_SERVERID $OPT_IA_NA $OPT_IA_TA $OPT_IAADDR $OPT_ORO $OPT_PREFERENCE $OPT_ELAPSED_TIME $OPT_RELAY_MSG $OPT_AUTH $OPT_UNICAST $OPT_STATUS_CODE $OPT_RAPID_COMMIT - $OPT_USER_CLASS $OPT_VENDOR_CLASS $OPT_VENDOR_OPTS - $OPT_INTERFACE_ID $OPT_RECONF_MSG $OPT_RECONF_ACCEPT + $OPT_USER_CLASS $OPT_VENDOR_CLASS $OPT_VENDOR_OPTS + $OPT_INTERFACE_ID $OPT_RECONF_MSG $OPT_RECONF_ACCEPT $SOL_MAX_DELAY $SOL_TIMEOUT $SOL_MAX_RT $REQ_TIMEOUT $REQ_MAX_RT $REQ_MAX_RC $CNF_MAX_DELAY $CNF_MAX_RT $CNF_MAX_RD $REN_TIMEOUT $REN_MAX_RT $REB_TIMEOUT $REB_MAX_RT @@ -164,7 +164,7 @@ my %docsis_type_num = ( CL_OPTION_DOCSIS_VERS => 38, ); my %docsis_num_type = reverse(%docsis_type_num); - + use strict; use English; use POSIX; @@ -188,7 +188,7 @@ sub mac_addr { } } my @mac_addrs; - foreach my $line (split(/\n/, `arp -an 2>/dev/null`)) { + foreach my $line (split(/\n/, `arp -an 2>/dev/null`)) { my @parts = split(/\s+/, $line); my $ip = $parts[1]; my $mac = $parts[-1]; @@ -225,7 +225,7 @@ sub duid { if (($type == 1) || ($type == 3)) { my $mac_addr = mac_addr_binary(); - if ($type == 1) { + if ($type == 1) { my $time = pack("N", dhcpv6_time()); return "\x00\x01\x00\x01${time}${mac_addr}"; } else { @@ -251,7 +251,7 @@ sub new { if (defined $trans_id) { $this->{trans_id} = $trans_id; } else { - $this->{trans_id} = chr(rand(256)) . + $this->{trans_id} = chr(rand(256)) . chr(rand(256)) . chr(rand(256)); } $this->{options} = [ ]; @@ -336,7 +336,7 @@ sub print_docsis_option { my $num_servers = length($data) / 16; for (my $i=0; $i<$num_servers; $i++) { my $srv = inet_ntop(AF_INET6, substr($data, $i*16, 16)); - print "$indent TFTP server ", ($i+1), ": "; + print "$indent TFTP server ", ($i+1), ": "; print uc($srv), "\n"; } } elsif ($docsis_num_type{$num} eq "CL_OPTION_CONFIG_FILE_NAME") { @@ -345,7 +345,7 @@ sub print_docsis_option { my $num_servers = length($data) / 16; for (my $i=0; $i<$num_servers; $i++) { my $srv = inet_ntop(AF_INET6, substr($data, $i*16, 16)); - print "$indent syslog server ", ($i+1), ": "; + print "$indent syslog server ", ($i+1), ": "; print uc($srv), "\n"; } } @@ -369,7 +369,7 @@ sub print_option { } print "\n"; } - } elsif (($num == $dhcp_client::OPT_CLIENTID) || + } elsif (($num == $dhcp_client::OPT_CLIENTID) || ($num == $dhcp_client::OPT_SERVERID)) { print $indent, " "; if (length($data) > 0) { @@ -380,7 +380,7 @@ sub print_option { } print "\n"; } elsif ($num == $dhcp_client::OPT_IA_NA) { - printf "${indent} IAID: 0x\%08X\n", + printf "${indent} IAID: 0x\%08X\n", unpack("N", substr($data, 0, 4)); printf "${indent} T1: \%d\n", unpack("N", substr($data, 4, 4)); printf "${indent} T2: \%d\n", unpack("N", substr($data, 8, 4)); @@ -391,7 +391,7 @@ sub print_option { } } } elsif ($num == $dhcp_client::OPT_IAADDR) { - printf "${indent} IPv6 address: \%s\n", + printf "${indent} IPv6 address: \%s\n", uc(inet_ntop(AF_INET6, substr($data, 0, 16))); printf "${indent} Preferred lifetime: \%d\n", unpack("N", substr($data, 16, 4)); @@ -422,10 +422,10 @@ sub print_option { } print "\n"; print "${indent} Message: \"$msg\"\n"; - } + } } -# XXX: we aren't careful about packet boundaries and values... +# XXX: we aren't careful about packet boundaries and values... # DO NOT RUN ON PRODUCTION SYSTEMS!!! sub decode { my ($packet, $print) = @_; @@ -451,4 +451,3 @@ sub decode { return $msg; } - diff --git a/tests/DHCPv6/stubcli-opt-in-na.pl b/tests/DHCPv6/stubcli-opt-in-na.pl index 918fa562..a97fafd2 100644 --- a/tests/DHCPv6/stubcli-opt-in-na.pl +++ b/tests/DHCPv6/stubcli-opt-in-na.pl @@ -96,7 +96,7 @@ my @docsis_oro = ( $DOCSIS_OPT_TFTP_SERVERS ); $vsio .= pack("nnC*", $DOCSIS_OPT_ORO, 0+@docsis_oro, @docsis_oro); # TLV5 data: CMTS DOCSIS version number 3.0 (required by DOCSIS) -my $tlv5_data = "\x01\x02\x03\x0"; +my $tlv5_data = "\x01\x02\x03\x0"; $vsio .= pack("nn", $DOCSIS_OPT_TLV5, length($tlv5_data)) . $tlv5_data; # DOCSIS Device (required by DOCSIS) @@ -131,10 +131,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 Solicit message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -155,7 +155,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -172,11 +172,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -190,16 +190,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -214,4 +214,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - diff --git a/tests/DHCPv6/stubcli.pl b/tests/DHCPv6/stubcli.pl index 3e02fa73..23d96b39 100644 --- a/tests/DHCPv6/stubcli.pl +++ b/tests/DHCPv6/stubcli.pl @@ -91,7 +91,7 @@ my @docsis_oro = ( $DOCSIS_OPT_TFTP_SERVERS ); $vsio .= pack("nnC*", $DOCSIS_OPT_ORO, 0+@docsis_oro, @docsis_oro); # TLV5 data: CMTS DOCSIS version number 3.0 (required by DOCSIS) -my $tlv5_data = "\x01\x02\x03\x0"; +my $tlv5_data = "\x01\x02\x03\x0"; $vsio .= pack("nn", $DOCSIS_OPT_TLV5, length($tlv5_data)) . $tlv5_data; # DOCSIS Device (required by DOCSIS) @@ -126,10 +126,10 @@ do { socket(SOCK, PF_INET6, SOCK_DGRAM, getprotobyname('udp')) || die; my $addr = inet_pton(AF_INET6, $All_DHCP_Servers); my $packet = $msg->packet(); - my $send_ret = send(SOCK, $packet, 0, + my $send_ret = send(SOCK, $packet, 0, pack_sockaddr_in6($server_port, $addr)); if (not defined($send_ret)) { - printf STDERR + printf STDERR "Error \%d sending DHCPv6 Solicit message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -150,7 +150,7 @@ do { } my $rt_end_time = time() + $RT; - if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { + if (defined($mrd_end_time) && ($mrd_end_time > $rt_end_time)) { $rt_end_time = $mrd_end_time; } @@ -167,11 +167,11 @@ do { if (@ready) { my $reply; my $recv_ret; - + $recv_ret = recv(SOCK, $reply, 1500, 0); if (not defined $recv_ret) { - printf STDERR - "Error \%d receiving DHCPv6 " . + printf STDERR + "Error \%d receiving DHCPv6 " . "message;\n\%s\n", 0+$ERRNO, $ERRNO; exit(1); @@ -185,16 +185,16 @@ do { } } -} until ($reply_msg || +} until ($reply_msg || (($MRC != 0) && ($count > $MRC)) || (defined($mrd_end_time) && ($mrd_end_time > time()))); unless ($reply_msg) { if (($MRC != 0) && ($count >= $MRC)) { - print STDERR + print STDERR "No reply after maximum retransmission count.\n"; } else { - print STDERR + print STDERR "No reply after maximum retransmission duration.\n"; } } @@ -209,4 +209,3 @@ if ($reply_msg && ($reply_msg->{msg_type} == $MSG_REPLY)) { #print Dumper($msg->packet()), "\n"; # #print "packet length: ", length($msg->packet()), "\n"; - -- cgit v1.2.1 From 22a5e70df9222ce07adb0ddca330c2239f674a3f Mon Sep 17 00:00:00 2001 From: Tomek Mrugalski Date: Wed, 19 Jan 2022 20:16:29 +0100 Subject: [#189] One missed address updated --- doc/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/Makefile b/doc/Makefile index 60a48fdf..aeda78bd 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -14,8 +14,8 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # # Internet Systems Consortium, Inc. -# 950 Charter Street -# Redwood City, CA 94063 +# PO Box 360 +# Newmarket, NH 03857 USA # # https://www.isc.org/ -- cgit v1.2.1 From ee868403d0df934442a438aa6b5832bacabb7b23 Mon Sep 17 00:00:00 2001 From: Tomek Mrugalski Date: Thu, 20 Jan 2022 17:12:33 +0100 Subject: [#103] Removed unnecessary preamble --- LICENSE | 16 +--------------- 1 file changed, 1 insertion(+), 15 deletions(-) diff --git a/LICENSE b/LICENSE index 27a9fe86..a4217fde 100644 --- a/LICENSE +++ b/LICENSE @@ -1,20 +1,6 @@ -# Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (c) 2004-2022 by Internet Systems Consortium, Inc. ("ISC") # Copyright (c) 1995-2003 by Internet Software Consortium # -# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES -# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR -# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT -# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. -# -# Internet Systems Consortium, Inc. -# PO Box 360 -# Newmarket, NH 03857 USA -# -# https://www.isc.org/ -# # This Source Code Form is subject to the terms of the Mozilla Public # License, v. 2.0, included below. # -- cgit v1.2.1 From 844bebe4eca464ad456b1faea876165fd6571378 Mon Sep 17 00:00:00 2001 From: Thomas Markwalder Date: Mon, 14 Dec 2020 11:28:37 -0500 Subject: [#148] Replaced hard-coded MD5 algorithm name in OMAPI connection omapip/connection.c ctring_from_attribute() - new convenience function for fetching object attribute values as C strings make_dst_key() - modified to use the authenticator object's value for algorithm name --- RELNOTES | 6 +++ omapip/connection.c | 125 ++++++++++++++++++++++++++++++++-------------------- 2 files changed, 82 insertions(+), 49 deletions(-) diff --git a/RELNOTES b/RELNOTES index fa8252ab..cf213437 100644 --- a/RELNOTES +++ b/RELNOTES @@ -117,6 +117,12 @@ and the client Linux script sample was updated. Changes since 4.4.2 (Bug Fixes) +- Removed hard-coded MD5 algorithm name in OMAPI connection logic. Prior + to this using any other algorithm via key-algorithm statement would + allow OMAPI connections to made but subsequent actions such as updating + an object to fail. + [Gitlab #148] + - Minor corrections to allow compilation under gcc 10. [Gitlab #117] diff --git a/omapip/connection.c b/omapip/connection.c index 68baa660..07b60a09 100644 --- a/omapip/connection.c +++ b/omapip/connection.c @@ -3,7 +3,7 @@ Subroutines for dealing with connections. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public @@ -44,6 +44,9 @@ extern omapi_array_t *trace_listeners; #endif static isc_result_t omapi_connection_connect_internal (omapi_object_t *); +static isc_result_t ctring_from_attribute(omapi_object_t *obj, char *attr_name, + char **cstr); + OMAPI_OBJECT_ALLOC (omapi_connection, omapi_connection_object_t, omapi_type_connection) @@ -763,64 +766,41 @@ isc_result_t omapi_connection_reaper (omapi_object_t *h) } static isc_result_t make_dst_key (dst_key_t **dst_key, omapi_object_t *a) { - omapi_value_t *name = (omapi_value_t *)0; - omapi_value_t *algorithm = (omapi_value_t *)0; - omapi_value_t *key = (omapi_value_t *)0; - char *name_str = NULL; + omapi_value_t *key = 0; + char *name_str = 0; + char *algorithm_str = 0; isc_result_t status = ISC_R_SUCCESS; - if (status == ISC_R_SUCCESS) - status = omapi_get_value_str - (a, (omapi_object_t *)0, "name", &name); - - if (status == ISC_R_SUCCESS) - status = omapi_get_value_str - (a, (omapi_object_t *)0, "algorithm", &algorithm); - - if (status == ISC_R_SUCCESS) - status = omapi_get_value_str - (a, (omapi_object_t *)0, "key", &key); - + /* Get the key name as a C string. */ + status = ctring_from_attribute(a, "name", &name_str); if (status == ISC_R_SUCCESS) { - if ((algorithm->value->type != omapi_datatype_data && - algorithm->value->type != omapi_datatype_string) || - strncasecmp((char *)algorithm->value->u.buffer.value, - NS_TSIG_ALG_HMAC_MD5 ".", - algorithm->value->u.buffer.len) != 0) { - status = DHCP_R_INVALIDARG; + /* Get the algorithm name as a C string. */ + status = ctring_from_attribute(a, "algorithm", &algorithm_str); + if (status == ISC_R_SUCCESS) { + /* Get the key secret value */ + status = omapi_get_value_str(a, 0, "key", &key); + if (status == ISC_R_SUCCESS) { + /* Now let's try and create the key */ + status = isclib_make_dst_key( + name_str, + algorithm_str, + key->value->u.buffer.value, + key->value->u.buffer.len, + dst_key); + + if (*dst_key == NULL) { + status = ISC_R_NOMEMORY; + } + } } } - if (status == ISC_R_SUCCESS) { - name_str = dmalloc (name -> value -> u.buffer.len + 1, MDL); - if (!name_str) - status = ISC_R_NOMEMORY; - } - - if (status == ISC_R_SUCCESS) { - memcpy (name_str, - name -> value -> u.buffer.value, - name -> value -> u.buffer.len); - name_str [name -> value -> u.buffer.len] = 0; - - status = isclib_make_dst_key(name_str, - DHCP_HMAC_MD5_NAME, - key->value->u.buffer.value, - key->value->u.buffer.len, - dst_key); - - if (*dst_key == NULL) - status = ISC_R_NOMEMORY; - } - if (name_str) dfree (name_str, MDL); + if (algorithm_str) + dfree (algorithm_str, MDL); if (key) omapi_value_dereference (&key, MDL); - if (algorithm) - omapi_value_dereference (&algorithm, MDL); - if (name) - omapi_value_dereference (&name, MDL); return status; } @@ -1103,3 +1083,50 @@ isc_result_t omapi_connection_stuff_values (omapi_object_t *c, m -> inner); return ISC_R_SUCCESS; } + +/* @brief Fetches the value of an attribute in an object as an allocated + * C string + * + * @param obj ompapi object containing the desire attribute + * @param attr_name name of the desired attribute + * @param[out] cstr pointer in which to place the allocated C string's address + * + * Caller is responsible for freeing (via dfree) the allocated string. + * + * @return ISC_R_SUCCESS if successful, otherwise indicates the type of failure +*/ +static isc_result_t ctring_from_attribute(omapi_object_t *obj, char *attr_name, + char **cstr) { + isc_result_t status = ISC_R_SUCCESS; + omapi_value_t *attr = 0; + + /* Find the attribute in the object. */ + status = omapi_get_value_str(obj, (omapi_object_t *)0, attr_name, + &attr); + if (status != ISC_R_SUCCESS) { + return (status); + } + + /* Got it, let's make sure it's either data or string type. */ + if (attr->value->type != omapi_datatype_data && + attr->value->type != omapi_datatype_string) { + return (DHCP_R_INVALIDARG); + } + + /* Make a C string from the attribute value. */ + *cstr = dmalloc (attr->value->u.buffer.len + 1, MDL); + if (!(*cstr)) { + status = ISC_R_NOMEMORY; + } else { + memcpy (*cstr, attr->value->u.buffer.value, + attr->value->u.buffer.len); + (*cstr)[attr->value->u.buffer.len] = 0; + } + + /* Get rid of the attribute reference */ + if (attr) { + omapi_value_dereference (&attr, MDL); + } + + return (status); +} -- cgit v1.2.1 From e512aafa30e50bdd28576a3e267081b2a1e7c97d Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Thu, 20 Jan 2022 18:57:16 +0100 Subject: Missing dot in .fi --- dhcpctl/omshell.1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dhcpctl/omshell.1 b/dhcpctl/omshell.1 index ab484cda..ffc4e46d 100644 --- a/dhcpctl/omshell.1 +++ b/dhcpctl/omshell.1 @@ -96,7 +96,7 @@ transactions. Supported values for \fIalgorithm\fR are: HMAC-SHA256 HMAC-SHA384 HMAC-SHA512 -fi +.fi The default is HMAC-MD5. (Value is not case sensitive). .RE .PP -- cgit v1.2.1 From 7de26fe7a1a2822f667ccaf7c633673cb2d0cead Mon Sep 17 00:00:00 2001 From: Thomas Markwalder Date: Thu, 20 Jan 2022 13:51:56 -0500 Subject: [#148] Fixed RELNOTES --- RELNOTES | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/RELNOTES b/RELNOTES index cf213437..b83d5a1a 100644 --- a/RELNOTES +++ b/RELNOTES @@ -103,7 +103,6 @@ ISC DHCP is open source software maintained by Internet Systems Consortium. This product includes cryptographic software written by Eric Young (eay@cryptsoft.com). - Changes since 4.4.2 (New Features) - BIND9 version updated to latest 9.11.36. Thanks to Philip Prindeville @@ -117,12 +116,6 @@ and the client Linux script sample was updated. Changes since 4.4.2 (Bug Fixes) -- Removed hard-coded MD5 algorithm name in OMAPI connection logic. Prior - to this using any other algorithm via key-algorithm statement would - allow OMAPI connections to made but subsequent actions such as updating - an object to fail. - [Gitlab #148] - - Minor corrections to allow compilation under gcc 10. [Gitlab #117] @@ -144,6 +137,12 @@ and the client Linux script sample was updated. - Minor dhclient code fix to remove compilation warnings. [Gitlab #190] +- Removed hard-coded MD5 algorithm name in OMAPI connection logic. Prior + to this using any other algorithm via key-algorithm statement would + allow OMAPI connections to made but subsequent actions such as updating + an object to fail. + [Gitlab #148] + Changes since 4.4.2b1 (Bug Fixes) - Added a clarification on DHCPINFORMs and server authority to -- cgit v1.2.1 From 7f1524669755d7a6e6cd1c3fb80084df273f3dc1 Mon Sep 17 00:00:00 2001 From: Thomas Markwalder Date: Thu, 23 Jan 2020 16:21:52 -0500 Subject: [#76] Initial implemention to dhcpctl_timed_wait_for_completion common/conflex.c includes/dhctoken.h dhcpctl/omshell.c Added support for "disconnect" dhcpctl/cltest.2 - new file that exercizes timed waits and disconnect dhcpctl/Makefile.am.in Added cltest2.c dhcpctl/dhcpctl.* dhcpctl_timed_wait_for_completion() - new function dhcpctl_disconnect() - new function Added debug logging omapip/dispatch.c Added protocol logging omapi_wait_for_completion() Fixed dangling waiter reference omapi_one_dispatch() Added logic to skip emit writefds from select list omapip/support.c Changed annoying DEBUG logs to DEBUG_PROTOCOL --- common/conflex.c | 2 + dhcpctl/Makefile.am | 9 +- dhcpctl/Makefile.am.in | 9 +- dhcpctl/Makefile.in | 179 +++++++++++++--------------- dhcpctl/cltest2.c | 285 +++++++++++++++++++++++++++++++++++++++++++++ dhcpctl/dhcpctl.c | 145 ++++++++++++++++++++++- dhcpctl/dhcpctl.h | 8 ++ dhcpctl/omshell.c | 23 ++++ includes/dhctoken.h | 3 +- includes/omapip/omapip_p.h | 3 + omapip/connection.c | 2 +- omapip/dispatch.c | 73 +++++++++++- omapip/support.c | 4 +- 13 files changed, 637 insertions(+), 108 deletions(-) create mode 100644 dhcpctl/cltest2.c diff --git a/common/conflex.c b/common/conflex.c index 7b671560..db1e1a09 100644 --- a/common/conflex.c +++ b/common/conflex.c @@ -954,6 +954,8 @@ intern(char *atom, enum dhcp_token dfv) { if (!atom [6]) return DEFINE; } + if (!strcasecmp (atom + 1, "isconnect")) + return DISCONNECT; break; case 'e': if (isascii (atom [1]) && diff --git a/dhcpctl/Makefile.am b/dhcpctl/Makefile.am index 0d669715..9e623375 100644 --- a/dhcpctl/Makefile.am +++ b/dhcpctl/Makefile.am @@ -5,7 +5,7 @@ BINDLIBISCDIR=@BINDLIBISCDIR@ bin_PROGRAMS = omshell lib_LIBRARIES = libdhcpctl.a -noinst_PROGRAMS = cltest +noinst_PROGRAMS = cltest cltest2 man_MANS = omshell.1 dhcpctl.3 EXTRA_DIST = $(man_MANS) @@ -24,3 +24,10 @@ cltest_LDADD = libdhcpctl.a ../common/libdhcp.a ../omapip/libomapi.a \ $(BINDLIBDNSDIR)/libdns.a \ $(BINDLIBISCCFGDIR)/libisccfg.a \ $(BINDLIBISCDIR)/libisc.a + +cltest2_SOURCES = cltest2.c +cltest2_LDADD = libdhcpctl.a ../common/libdhcp.a ../omapip/libomapi.a \ + $(BINDLIBIRSDIR)/libirs.a \ + $(BINDLIBDNSDIR)/libdns.a \ + $(BINDLIBISCCFGDIR)/libisccfg.a \ + $(BINDLIBISCDIR)/libisc.a diff --git a/dhcpctl/Makefile.am.in b/dhcpctl/Makefile.am.in index 0d77ffc6..28333cef 100644 --- a/dhcpctl/Makefile.am.in +++ b/dhcpctl/Makefile.am.in @@ -5,7 +5,7 @@ BINDLIBISCDIR=@Q@BINDLIBISCDIR@Q@ bin_PROGRAMS = omshell lib_@DHLIBS@ = libdhcpctl.@A@ -noinst_PROGRAMS = cltest +noinst_PROGRAMS = cltest cltest2 man_MANS = omshell.1 dhcpctl.3 EXTRA_DIST = $(man_MANS) @@ -24,3 +24,10 @@ cltest_LDADD = libdhcpctl.@A@ ../common/libdhcp.@A@ ../omapip/libomapi.@A@ \ $(BINDLIBDNSDIR)/libdns.@A@ \ $(BINDLIBISCCFGDIR)/libisccfg.@A@ \ $(BINDLIBISCDIR)/libisc.@A@ + +cltest2_SOURCES = cltest2.c +cltest2_LDADD = libdhcpctl.@A@ ../common/libdhcp.@A@ ../omapip/libomapi.@A@ \ + $(BINDLIBIRSDIR)/libirs.@A@ \ + $(BINDLIBDNSDIR)/libdns.@A@ \ + $(BINDLIBISCCFGDIR)/libisccfg.@A@ \ + $(BINDLIBISCDIR)/libisc.@A@ diff --git a/dhcpctl/Makefile.in b/dhcpctl/Makefile.in index 3c8232d1..e1da56a5 100644 --- a/dhcpctl/Makefile.in +++ b/dhcpctl/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.13.4 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2013 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -16,17 +16,7 @@ VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} +am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ @@ -90,20 +80,18 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ bin_PROGRAMS = omshell$(EXEEXT) -noinst_PROGRAMS = cltest$(EXEEXT) +noinst_PROGRAMS = cltest$(EXEEXT) cltest2$(EXEEXT) subdir = dhcpctl +DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ + $(srcdir)/Makefile.am.in $(top_srcdir)/depcomp ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/includes/config.h CONFIG_CLEAN_FILES = Makefile.am CONFIG_CLEAN_VPATH_FILES = -am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(libdir)" \ - "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man3dir)" -PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ @@ -131,6 +119,8 @@ am__uninstall_files_from_dir = { \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } +am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" \ + "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man3dir)" LIBRARIES = $(lib_LIBRARIES) ARFLAGS = cru AM_V_AR = $(am__v_AR_@AM_V@) @@ -142,12 +132,19 @@ libdhcpctl_a_LIBADD = am_libdhcpctl_a_OBJECTS = dhcpctl.$(OBJEXT) callback.$(OBJEXT) \ remote.$(OBJEXT) libdhcpctl_a_OBJECTS = $(am_libdhcpctl_a_OBJECTS) +PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) am_cltest_OBJECTS = cltest.$(OBJEXT) cltest_OBJECTS = $(am_cltest_OBJECTS) cltest_DEPENDENCIES = libdhcpctl.a ../common/libdhcp.a \ ../omapip/libomapi.a $(BINDLIBIRSDIR)/libirs.a \ $(BINDLIBDNSDIR)/libdns.a $(BINDLIBISCCFGDIR)/libisccfg.a \ $(BINDLIBISCDIR)/libisc.a +am_cltest2_OBJECTS = cltest2.$(OBJEXT) +cltest2_OBJECTS = $(am_cltest2_OBJECTS) +cltest2_DEPENDENCIES = libdhcpctl.a ../common/libdhcp.a \ + ../omapip/libomapi.a $(BINDLIBIRSDIR)/libirs.a \ + $(BINDLIBDNSDIR)/libdns.a $(BINDLIBISCCFGDIR)/libisccfg.a \ + $(BINDLIBISCDIR)/libisc.a am_omshell_OBJECTS = omshell.$(OBJEXT) omshell_OBJECTS = $(am_omshell_OBJECTS) omshell_DEPENDENCIES = libdhcpctl.a ../common/libdhcp.a \ @@ -168,10 +165,7 @@ am__v_at_0 = @ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/includes depcomp = $(SHELL) $(top_srcdir)/depcomp -am__maybe_remake_depfiles = depfiles -am__depfiles_remade = ./$(DEPDIR)/callback.Po ./$(DEPDIR)/cltest.Po \ - ./$(DEPDIR)/dhcpctl.Po ./$(DEPDIR)/omshell.Po \ - ./$(DEPDIR)/remote.Po +am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) @@ -185,9 +179,10 @@ AM_V_CCLD = $(am__v_CCLD_@AM_V@) am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) am__v_CCLD_0 = @echo " CCLD " $@; am__v_CCLD_1 = -SOURCES = $(libdhcpctl_a_SOURCES) $(cltest_SOURCES) $(omshell_SOURCES) -DIST_SOURCES = $(libdhcpctl_a_SOURCES) $(cltest_SOURCES) \ +SOURCES = $(libdhcpctl_a_SOURCES) $(cltest_SOURCES) $(cltest2_SOURCES) \ $(omshell_SOURCES) +DIST_SOURCES = $(libdhcpctl_a_SOURCES) $(cltest_SOURCES) \ + $(cltest2_SOURCES) $(omshell_SOURCES) am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ @@ -216,8 +211,6 @@ am__define_uniq_tagged_files = \ done | $(am__uniquify_input)` ETAGS = etags CTAGS = ctags -am__DIST_COMMON = $(srcdir)/Makefile.am.in $(srcdir)/Makefile.in \ - $(top_srcdir)/depcomp DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) A = @A@ ACLOCAL = @ACLOCAL@ @@ -360,6 +353,13 @@ cltest_LDADD = libdhcpctl.a ../common/libdhcp.a ../omapip/libomapi.a \ $(BINDLIBISCCFGDIR)/libisccfg.a \ $(BINDLIBISCDIR)/libisc.a +cltest2_SOURCES = cltest2.c +cltest2_LDADD = libdhcpctl.a ../common/libdhcp.a ../omapip/libomapi.a \ + $(BINDLIBIRSDIR)/libirs.a \ + $(BINDLIBDNSDIR)/libdns.a \ + $(BINDLIBISCCFGDIR)/libisccfg.a \ + $(BINDLIBISCDIR)/libisc.a + all: all-am .SUFFIXES: @@ -376,13 +376,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign dhcpctl/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign dhcpctl/Makefile +.PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -395,6 +396,42 @@ $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) $(am__aclocal_m4_deps): Makefile.am: $(top_builddir)/config.status $(srcdir)/Makefile.am.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ +install-libLIBRARIES: $(lib_LIBRARIES) + @$(NORMAL_INSTALL) + @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \ + list2=; for p in $$list; do \ + if test -f $$p; then \ + list2="$$list2 $$p"; \ + else :; fi; \ + done; \ + test -z "$$list2" || { \ + echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \ + echo " $(INSTALL_DATA) $$list2 '$(DESTDIR)$(libdir)'"; \ + $(INSTALL_DATA) $$list2 "$(DESTDIR)$(libdir)" || exit $$?; } + @$(POST_INSTALL) + @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \ + for p in $$list; do \ + if test -f $$p; then \ + $(am__strip_dir) \ + echo " ( cd '$(DESTDIR)$(libdir)' && $(RANLIB) $$f )"; \ + ( cd "$(DESTDIR)$(libdir)" && $(RANLIB) $$f ) || exit $$?; \ + else :; fi; \ + done + +uninstall-libLIBRARIES: + @$(NORMAL_UNINSTALL) + @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(libdir)'; $(am__uninstall_files_from_dir) + +clean-libLIBRARIES: + -test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES) + +libdhcpctl.a: $(libdhcpctl_a_OBJECTS) $(libdhcpctl_a_DEPENDENCIES) $(EXTRA_libdhcpctl_a_DEPENDENCIES) + $(AM_V_at)-rm -f libdhcpctl.a + $(AM_V_AR)$(libdhcpctl_a_AR) libdhcpctl.a $(libdhcpctl_a_OBJECTS) $(libdhcpctl_a_LIBADD) + $(AM_V_at)$(RANLIB) libdhcpctl.a install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ @@ -440,47 +477,15 @@ clean-binPROGRAMS: clean-noinstPROGRAMS: -test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS) -install-libLIBRARIES: $(lib_LIBRARIES) - @$(NORMAL_INSTALL) - @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \ - list2=; for p in $$list; do \ - if test -f $$p; then \ - list2="$$list2 $$p"; \ - else :; fi; \ - done; \ - test -z "$$list2" || { \ - echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \ - echo " $(INSTALL_DATA) $$list2 '$(DESTDIR)$(libdir)'"; \ - $(INSTALL_DATA) $$list2 "$(DESTDIR)$(libdir)" || exit $$?; } - @$(POST_INSTALL) - @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \ - for p in $$list; do \ - if test -f $$p; then \ - $(am__strip_dir) \ - echo " ( cd '$(DESTDIR)$(libdir)' && $(RANLIB) $$f )"; \ - ( cd "$(DESTDIR)$(libdir)" && $(RANLIB) $$f ) || exit $$?; \ - else :; fi; \ - done - -uninstall-libLIBRARIES: - @$(NORMAL_UNINSTALL) - @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(libdir)'; $(am__uninstall_files_from_dir) - -clean-libLIBRARIES: - -test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES) - -libdhcpctl.a: $(libdhcpctl_a_OBJECTS) $(libdhcpctl_a_DEPENDENCIES) $(EXTRA_libdhcpctl_a_DEPENDENCIES) - $(AM_V_at)-rm -f libdhcpctl.a - $(AM_V_AR)$(libdhcpctl_a_AR) libdhcpctl.a $(libdhcpctl_a_OBJECTS) $(libdhcpctl_a_LIBADD) - $(AM_V_at)$(RANLIB) libdhcpctl.a cltest$(EXEEXT): $(cltest_OBJECTS) $(cltest_DEPENDENCIES) $(EXTRA_cltest_DEPENDENCIES) @rm -f cltest$(EXEEXT) $(AM_V_CCLD)$(LINK) $(cltest_OBJECTS) $(cltest_LDADD) $(LIBS) +cltest2$(EXEEXT): $(cltest2_OBJECTS) $(cltest2_DEPENDENCIES) $(EXTRA_cltest2_DEPENDENCIES) + @rm -f cltest2$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(cltest2_OBJECTS) $(cltest2_LDADD) $(LIBS) + omshell$(EXEEXT): $(omshell_OBJECTS) $(omshell_DEPENDENCIES) $(EXTRA_omshell_DEPENDENCIES) @rm -f omshell$(EXEEXT) $(AM_V_CCLD)$(LINK) $(omshell_OBJECTS) $(omshell_LDADD) $(LIBS) @@ -491,31 +496,26 @@ mostlyclean-compile: distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/callback.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cltest.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dhcpctl.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/omshell.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/remote.Po@am__quote@ # am--include-marker - -$(am__depfiles_remade): - @$(MKDIR_P) $(@D) - @echo '# dummy' >$@-t && $(am__mv) $@-t $@ - -am--depfiles: $(am__depfiles_remade) +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/callback.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cltest.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cltest2.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dhcpctl.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/omshell.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/remote.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'` install-man1: $(man_MANS) @$(NORMAL_INSTALL) @list1=''; \ @@ -655,10 +655,7 @@ cscopelist-am: $(am__tagged_files) distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) distdir-am - -distdir-am: $(DISTFILES) +distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -690,9 +687,9 @@ distdir-am: $(DISTFILES) done check-am: all-am check: check-am -all-am: Makefile $(PROGRAMS) $(LIBRARIES) $(MANS) +all-am: Makefile $(LIBRARIES) $(PROGRAMS) $(MANS) installdirs: - for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(libdir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man3dir)"; do \ + for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man3dir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am @@ -731,11 +728,7 @@ clean-am: clean-binPROGRAMS clean-generic clean-libLIBRARIES \ clean-noinstPROGRAMS mostlyclean-am distclean: distclean-am - -rm -f ./$(DEPDIR)/callback.Po - -rm -f ./$(DEPDIR)/cltest.Po - -rm -f ./$(DEPDIR)/dhcpctl.Po - -rm -f ./$(DEPDIR)/omshell.Po - -rm -f ./$(DEPDIR)/remote.Po + -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -781,11 +774,7 @@ install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am - -rm -f ./$(DEPDIR)/callback.Po - -rm -f ./$(DEPDIR)/cltest.Po - -rm -f ./$(DEPDIR)/dhcpctl.Po - -rm -f ./$(DEPDIR)/omshell.Po - -rm -f ./$(DEPDIR)/remote.Po + -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -808,7 +797,7 @@ uninstall-man: uninstall-man1 uninstall-man3 .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ +.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \ clean-binPROGRAMS clean-generic clean-libLIBRARIES \ clean-noinstPROGRAMS cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-tags distdir dvi \ @@ -825,8 +814,6 @@ uninstall-man: uninstall-man1 uninstall-man3 uninstall-libLIBRARIES uninstall-man uninstall-man1 \ uninstall-man3 -.PRECIOUS: Makefile - # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/dhcpctl/cltest2.c b/dhcpctl/cltest2.c new file mode 100644 index 00000000..26249a3e --- /dev/null +++ b/dhcpctl/cltest2.c @@ -0,0 +1,285 @@ +/* cltest2.c + + Example program that uses the dhcpctl library. */ + +/* + * Copyright (c) 2020 by Internet Systems Consortium, Inc. ("ISC") + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT + * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + * + * Internet Systems Consortium, Inc. + * 950 Charter Street + * Redwood City, CA 94063 + * + * https://www.isc.org/ + * + * This software was contributed to Internet Systems Consortium + * by Brian Murrell. + */ + +#include "config.h" + +#include +#include +#include +#include +#include +#include +#include "omapip/result.h" +#include "dhcpctl.h" +#include "dhcpd.h" + +int main (int, char **); + +static void usage (char *s) { + fprintf (stderr, + "Usage: %s [-s ] [-p ]", s); + exit (1); +} + +static void fail_on_error(isc_result_t status, const char* message) { + if (status != ISC_R_SUCCESS) { + fprintf (stderr, "%s: %s\n", + message, isc_result_totext (status)); + exit (1); + } +} + +isc_result_t wait_with_retry(dhcpctl_handle handle, struct timeval* timeout, int retries); + +void print_object(char *msg, dhcpctl_handle handle); + +/* Simple test program that exercises dhcpctl calls as follows: + * + * 1. Connect to the given server + * 2. Create a local host object with hostname "cltest2.host" + * 3. Attempt to open the remote host object + * 4. If the host does not exist, add a client id and create it + * 5. Disconnect + * 6. Reconnect + * 7. Refresh the host object + * + * Note that this program tests dhcpctl_timed_wait_for_completion() by calling + * it with extremely small timeouts. +*/ + +int main (argc, argv) + int argc; + char **argv; +{ + isc_result_t status; + dhcpctl_handle connection; + dhcpctl_handle host; + char* ip_address = "127.0.0.1"; + int port = 7911; + char* hostname = "cltest2.host"; + struct timeval timeout; + int i; + + for (i = 1; i < argc; i++) { + if (!strcmp (argv[i], "-s")) { + ip_address = argv[i]; + } else if (!strcmp (argv [i], "-p")) { + port=atoi(argv[i]); + } else if (argv[i][0] == '-') { + usage(argv[0]); + } + } + + /* Initialize dhcpctl */ + status = dhcpctl_initialize (); + fail_on_error(status ,"can't initialize dhcpctl"); + + /* Connect */ + connection = 0; + status = dhcpctl_connect (&connection, ip_address, port, 0); + fail_on_error(status ,"connect failed"); + + /* Create the host object */ + host = 0; + status = dhcpctl_new_object (&host, connection, "host"); + fail_on_error(status ,"new oject failed"); + + status = dhcpctl_set_string_value (host, hostname, "name"); + fail_on_error(status ,"cant set host name"); + + /* Attempt to open the object */ + status = dhcpctl_open_object (host, connection, 0); + timeout.tv_sec = 0; + timeout.tv_usec = 20; + status = wait_with_retry(host, &timeout, 2); + switch (status) { + case ISC_R_NOTFOUND: + /* Host doesn't exist add it. We set an id so the create will be valid. */ + status = dhcpctl_set_string_value (host, "abcdefg", "dhcp-client-identifier"); + fail_on_error(status ,"can't set client id"); + + status = dhcpctl_open_object (host, connection, + DHCPCTL_CREATE | DHCPCTL_EXCL); + fail_on_error(status, "open(create) failed"); + + status = wait_with_retry(host, &timeout, 2); + fail_on_error(status, "wait after open(create)"); + + print_object("Host created", host); + break; + + case ISC_R_SUCCESS: + print_object("Host exists", host); + break; + + default: + fail_on_error(status, "initial open failed, waiting for completion"); + break; + } + + + /* Now we'll test disconnect */ + status = dhcpctl_disconnect(&connection, 0); + fail_on_error(status, "can't disconnect"); + + /* Reconnect */ + status = dhcpctl_connect (&connection, ip_address, port, 0); + fail_on_error(status ,"can't reconnect"); + + /* Refresh the object */ + status = dhcpctl_object_refresh (connection, host); + fail_on_error(status , "can't refresh"); + + status = wait_with_retry(host, &timeout, 2); + fail_on_error(status , "wait after refresh failed"); + + print_object("After reconnect/refresh", host); + + exit (0); +} + +/* Function to call and optionally retry dhcp_timed_wait_for_completion() */ +isc_result_t wait_with_retry(dhcpctl_handle handle, struct timeval* timeout, int retries) { + isc_result_t status; + isc_result_t waitstatus; + struct timeval use_timeout; + + if (timeout) { + use_timeout.tv_sec = timeout->tv_sec; + use_timeout.tv_usec = timeout->tv_usec; + } else { + retries = 0; + } + + int tries = 0; + do { + if (tries++) { + printf ("wait retry #%d\n", tries); + /* Set the timeout value to 30 secs */ + use_timeout.tv_sec = 30; + use_timeout.tv_usec = 0; + } + + // Call timed wait. + status = dhcpctl_timed_wait_for_completion (handle, &waitstatus, + (timeout ? &use_timeout: 0)); + if (status == ISC_R_SUCCESS) { + return(waitstatus); + } + + if (status != ISC_R_TIMEDOUT) { + fprintf (stderr, "timed wait failed: %s\n", isc_result_totext (status)); + exit (1); + } + } while (--retries > 0); + + return (ISC_R_TIMEDOUT); +} + +/* Function to print out the values contained in an object. Largely + * stolen from omshell.c */ +void print_object(char* msg, dhcpctl_handle handle) { + dhcpctl_remote_object_t *r = (dhcpctl_remote_object_t *)handle; + omapi_generic_object_t *object = (omapi_generic_object_t *)(r->inner); + char hex_buf[4096]; + int i; + + printf ("%s:\n",msg); + for (i = 0; i < object->nvalues; i++) { + omapi_value_t *v = object->values[i]; + + if (!object->values[i]) + continue; + + printf ("\t%.*s = ", (int)v->name->len, v->name->value); + + if (!v->value) { + printf ("\n"); + continue; + } + + switch (v->value->type) { + case omapi_datatype_int: + printf ("%d\n", v->value->u.integer); + break; + + case omapi_datatype_string: + printf ("\"%.*s\"\n", (int)v->value->u.buffer.len, + v->value->u.buffer.value); + break; + + case omapi_datatype_data: + print_hex_or_string(v->value->u.buffer.len, + v->value->u.buffer.value, + sizeof(hex_buf), hex_buf); + printf("%s\n", hex_buf); + break; + + case omapi_datatype_object: + printf ("\n"); + break; + } + } +} + +/* Dummy functions to appease linker */ +isc_result_t find_class (struct class **c, const char *n, const char *f, int l) +{ + return 0; +} +int parse_allow_deny (struct option_cache **oc, struct parse *cfile, int flag) +{ + return 0; +} +void dhcp (struct packet *packet) { } +void bootp (struct packet *packet) { } + +#ifdef DHCPv6 +void dhcpv6(struct packet *packet) { } + +#ifdef DHCP4o6 +isc_result_t dhcpv4o6_handler(omapi_object_t *h) +{ + return ISC_R_NOTIMPLEMENTED; +} +#endif /* DHCP4o6 */ +#endif /* DHCPv6 */ + +int check_collection (struct packet *p, struct lease *l, struct collection *c) +{ + return 0; +} +void classify (struct packet *packet, struct class *class) { } + +isc_result_t dhcp_set_control_state (control_object_state_t oldstate, + control_object_state_t newstate) +{ + return ISC_R_SUCCESS; +} + diff --git a/dhcpctl/dhcpctl.c b/dhcpctl/dhcpctl.c index 3c78bc19..e8834382 100644 --- a/dhcpctl/dhcpctl.c +++ b/dhcpctl/dhcpctl.c @@ -29,6 +29,10 @@ #include "dhcpd.h" #include #include "dhcpctl.h" +#include + + +/* #define DEBUG_DHCPCTL 1 */ omapi_object_type_t *dhcpctl_callback_type; omapi_object_type_t *dhcpctl_remote_type; @@ -97,6 +101,9 @@ dhcpctl_status dhcpctl_connect (dhcpctl_handle *connection, dhcpctl_handle authinfo) { isc_result_t status; +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_connect(%s:%d)", server_name, port); +#endif status = omapi_generic_new (connection, MDL); if (status != ISC_R_SUCCESS) { @@ -105,19 +112,35 @@ dhcpctl_status dhcpctl_connect (dhcpctl_handle *connection, status = omapi_protocol_connect (*connection, server_name, (unsigned)port, authinfo); - if (status == ISC_R_SUCCESS) + if (status == ISC_R_SUCCESS) { +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_connect success"); +#endif return status; + } + if (status != DHCP_R_INCOMPLETE) { omapi_object_dereference (connection, MDL); +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_connect failed:%s", + isc_result_totext (status)); +#endif return status; } status = omapi_wait_for_completion (*connection, 0); if (status != ISC_R_SUCCESS) { omapi_object_dereference (connection, MDL); +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_connect, wait failed:%s", + isc_result_totext (status)); +#endif return status; } +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_connect success"); +#endif return status; } @@ -137,8 +160,58 @@ dhcpctl_status dhcpctl_connect (dhcpctl_handle *connection, dhcpctl_status dhcpctl_wait_for_completion (dhcpctl_handle h, dhcpctl_status *s) { +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_wait_for_completion"); +#endif isc_result_t status; status = omapi_wait_for_completion (h, 0); + if (status != ISC_R_SUCCESS) { + return status; + } + if (h -> type == dhcpctl_remote_type) + *s = ((dhcpctl_remote_object_t *)h) -> waitstatus; + + return ISC_R_SUCCESS; +} + +/* dhcpctl_wait_for_completion + + synchronous + returns zero if the callback completes, a nonzero status if + there was some problem relating to the wait operation. The + status of the queued request will be stored through s, and + will also be either zero for success or nonzero for some kind + of failure. Never returns until completion or until the + connection to the server is lost. This performs the same + function as dhcpctl_set_callback and the subsequent callback, + for programs that want to do inline execution instead of using + callbacks. */ + +dhcpctl_status dhcpctl_timed_wait_for_completion (dhcpctl_handle h, + dhcpctl_status *s, + struct timeval *t) +{ + isc_result_t status; + struct timeval adjusted_t; + +#ifdef DEBUG_DHCPCTL + if (t) { + log_debug ("dhcpctl_timed_wait_for_completion(%u.%u secs.usecs)", + (unsigned int)(t->tv_sec), + (unsigned int)(t->tv_usec)); + } else { + log_debug ("dhcpctl_timed_wait_for_completion(no timeout)"); + } +#endif + + if (t) { + struct timeval now; + gettimeofday (&now, (struct timezone *)0); + adjusted_t.tv_sec = now.tv_sec + t->tv_sec; + adjusted_t.tv_usec = now.tv_usec + t->tv_usec; + } + + status = omapi_wait_for_completion (h, (t ? &adjusted_t : 0)); if (status != ISC_R_SUCCESS) return status; if (h -> type == dhcpctl_remote_type) @@ -146,6 +219,7 @@ dhcpctl_status dhcpctl_wait_for_completion (dhcpctl_handle h, return ISC_R_SUCCESS; } + /* dhcpctl_get_value synchronous @@ -168,6 +242,9 @@ dhcpctl_status dhcpctl_get_value (dhcpctl_data_string *result, omapi_value_t *tv = (omapi_value_t *)0; unsigned len; int ip; +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_get_value(%s)", value_name); +#endif status = omapi_get_value_str (h, (omapi_object_t *)0, value_name, &tv); if (status != ISC_R_SUCCESS) @@ -232,6 +309,10 @@ dhcpctl_status dhcpctl_get_boolean (int *result, isc_result_t status; dhcpctl_data_string data = (dhcpctl_data_string)0; int rv; + +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_get_boolean(%s)", value_name); +#endif status = dhcpctl_get_value (&data, h, value_name); if (status != ISC_R_SUCCESS) @@ -258,6 +339,9 @@ dhcpctl_status dhcpctl_set_value (dhcpctl_handle h, dhcpctl_data_string value, isc_result_t status; omapi_typed_data_t *tv = (omapi_typed_data_t *)0; omapi_data_string_t *name = (omapi_data_string_t *)0; +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_set_value(%s)", value_name); +#endif status = omapi_data_string_new (&name, strlen (value_name), MDL); if (status != ISC_R_SUCCESS) @@ -291,6 +375,9 @@ dhcpctl_status dhcpctl_set_string_value (dhcpctl_handle h, const char *value, isc_result_t status; omapi_typed_data_t *tv = (omapi_typed_data_t *)0; omapi_data_string_t *name = (omapi_data_string_t *)0; +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_set_string_value(%s)", value_name); +#endif status = omapi_data_string_new (&name, strlen (value_name), MDL); if (status != ISC_R_SUCCESS) @@ -324,6 +411,9 @@ dhcpctl_status dhcpctl_set_data_value (dhcpctl_handle h, omapi_typed_data_t *tv = (omapi_typed_data_t *)0; omapi_data_string_t *name = (omapi_data_string_t *)0; unsigned ll; +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_set_data_value(%s)", value_name); +#endif ll = strlen (value_name); status = omapi_data_string_new (&name, ll, MDL); @@ -355,6 +445,9 @@ dhcpctl_status dhcpctl_set_null_value (dhcpctl_handle h, isc_result_t status; omapi_data_string_t *name = (omapi_data_string_t *)0; unsigned ll; +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_set_null_value(%s)", value_name); +#endif ll = strlen (value_name); status = omapi_data_string_new (&name, ll, MDL); @@ -379,6 +472,9 @@ dhcpctl_status dhcpctl_set_boolean_value (dhcpctl_handle h, int value, isc_result_t status; omapi_typed_data_t *tv = (omapi_typed_data_t *)0; omapi_data_string_t *name = (omapi_data_string_t *)0; +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_set_boolean_value(%s)", value_name); +#endif status = omapi_data_string_new (&name, strlen (value_name), MDL); if (status != ISC_R_SUCCESS) @@ -408,6 +504,9 @@ dhcpctl_status dhcpctl_set_int_value (dhcpctl_handle h, int value, isc_result_t status; omapi_typed_data_t *tv = (omapi_typed_data_t *)0; omapi_data_string_t *name = (omapi_data_string_t *)0; +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_set_int_value(%s)", value_name); +#endif status = omapi_data_string_new (&name, strlen (value_name), MDL); if (status != ISC_R_SUCCESS) @@ -438,6 +537,9 @@ dhcpctl_status dhcpctl_object_update (dhcpctl_handle connection, isc_result_t status; omapi_object_t *message = (omapi_object_t *)0; dhcpctl_remote_object_t *ro; +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_object_update"); +#endif if (h -> type != dhcpctl_remote_type) return DHCP_R_INVALIDARG; @@ -487,6 +589,9 @@ dhcpctl_status dhcpctl_object_refresh (dhcpctl_handle connection, isc_result_t status; omapi_object_t *message = (omapi_object_t *)0; dhcpctl_remote_object_t *ro; +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_object_refresh"); +#endif if (h -> type != dhcpctl_remote_type) return DHCP_R_INVALIDARG; @@ -540,6 +645,9 @@ dhcpctl_status dhcpctl_object_remove (dhcpctl_handle connection, isc_result_t status; omapi_object_t *message = (omapi_object_t *)0; dhcpctl_remote_object_t *ro; +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_object_remove"); +#endif if (h -> type != dhcpctl_remote_type) return DHCP_R_INVALIDARG; @@ -582,5 +690,40 @@ dhcpctl_status dhcpctl_object_remove (dhcpctl_handle connection, isc_result_t dhcpctl_data_string_dereference (dhcpctl_data_string *vp, const char *file, int line) { +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_data_string_dereference"); +#endif return omapi_data_string_dereference (vp, file, line); } + +dhcpctl_status dhcpctl_disconnect (dhcpctl_handle *connection, + int force) +{ + isc_result_t status; +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_disconnect()"); +#endif + if (!connection || !((*connection)->outer) || + !((*connection)->outer->type) || + ((*connection)->outer->type != omapi_type_protocol) || + !((*connection)->outer->outer)) { + log_debug("dhcpctl_disconnect detected invalid arg"); + return DHCP_R_INVALIDARG; + } + + status = omapi_disconnect ((*connection)->outer->outer, force); + if (status == ISC_R_SUCCESS) { +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_disconnect success"); +#endif + omapi_object_dereference (connection, MDL); + return status; + } + +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_disconnect failed:%s", + isc_result_totext (status)); +#endif + return status; +} + diff --git a/dhcpctl/dhcpctl.h b/dhcpctl/dhcpctl.h index 3c0da74b..0f779bd8 100644 --- a/dhcpctl/dhcpctl.h +++ b/dhcpctl/dhcpctl.h @@ -63,6 +63,11 @@ dhcpctl_status dhcpctl_initialize (void); dhcpctl_status dhcpctl_connect (dhcpctl_handle *, const char *, int, dhcpctl_handle); dhcpctl_status dhcpctl_wait_for_completion (dhcpctl_handle, dhcpctl_status *); + +dhcpctl_status dhcpctl_timed_wait_for_completion (dhcpctl_handle h, + dhcpctl_status *s, + struct timeval *t); + dhcpctl_status dhcpctl_get_value (dhcpctl_data_string *, dhcpctl_handle, const char *); dhcpctl_status dhcpctl_get_boolean (int *, dhcpctl_handle, const char *); @@ -116,4 +121,7 @@ isc_result_t dhcpctl_remote_stuff_values (omapi_object_t *, omapi_object_t *); isc_result_t dhcpctl_data_string_dereference (dhcpctl_data_string *, const char *, int); + +dhcpctl_status dhcpctl_disconnect (dhcpctl_handle *, int); + #endif /* _DHCPCTL_H_ */ diff --git a/dhcpctl/omshell.c b/dhcpctl/omshell.c index d5d31aa8..785f59a6 100644 --- a/dhcpctl/omshell.c +++ b/dhcpctl/omshell.c @@ -208,6 +208,7 @@ main(int argc, char **argv) { printf (" server \n"); printf (" key \n"); printf (" connect\n"); + printf (" disconnect\n"); printf (" new \n"); printf (" set = \n"); printf (" create\n"); @@ -427,6 +428,28 @@ main(int argc, char **argv) { connected = 1; break; + case DISCONNECT: + token = next_token (&val, (unsigned *)0, cfile); + if (token != END_OF_FILE && token != EOL) { + printf ("usage: disconnect\n"); + skip_to_semi (cfile); + break; + } + + if (!connected || !connection) { + fprintf (stderr, "not connected\n"); + break; + } + + status = dhcpctl_disconnect (&connection, 0); + if (status != ISC_R_SUCCESS) { + fprintf (stderr, "dhcpctl_disconnect: %s\n", + isc_result_totext (status)); + break; + } + connected = 0; + break; + case TOKEN_NEW: token = next_token (&val, (unsigned *)0, cfile); if ((!is_identifier (token) && token != STRING)) { diff --git a/includes/dhctoken.h b/includes/dhctoken.h index 6bf50e88..223e1110 100644 --- a/includes/dhctoken.h +++ b/includes/dhctoken.h @@ -376,7 +376,8 @@ enum dhcp_token { LEASE_ID_FORMAT = 676, TOKEN_HEX = 677, TOKEN_OCTAL = 678, - KEY_ALGORITHM = 679 + KEY_ALGORITHM = 679, + DISCONNECT = 680 }; #define is_identifier(x) ((x) >= FIRST_TOKEN && \ diff --git a/includes/omapip/omapip_p.h b/includes/omapip/omapip_p.h index b744a5ce..323bba3e 100644 --- a/includes/omapip/omapip_p.h +++ b/includes/omapip/omapip_p.h @@ -60,6 +60,9 @@ #include #include "result.h" +/* Uncomment this to enable protocol level debug logs */ +/* #define DEBUG_PROTOCOL 1 */ + #include #include #include diff --git a/omapip/connection.c b/omapip/connection.c index 07b60a09..f1207757 100644 --- a/omapip/connection.c +++ b/omapip/connection.c @@ -461,7 +461,7 @@ isc_result_t omapi_disconnect (omapi_object_t *h, omapi_connection_object_t *c; #ifdef DEBUG_PROTOCOL - log_debug ("omapi_disconnect(%s)", force ? "force" : ""); + log_debug ("omapi_disconnect(force=%d)", force); #endif c = (omapi_connection_object_t *)h; diff --git a/omapip/dispatch.c b/omapip/dispatch.c index 426455ef..c730094c 100644 --- a/omapip/dispatch.c +++ b/omapip/dispatch.c @@ -413,13 +413,26 @@ isc_result_t omapi_unregister_io_object (omapi_object_t *h) isc_result_t omapi_dispatch (struct timeval *t) { +#ifdef DEBUG_PROTOCOL + log_debug("omapi_dispatch()"); +#endif return omapi_wait_for_completion ((omapi_object_t *)&omapi_io_states, + t); } isc_result_t omapi_wait_for_completion (omapi_object_t *object, struct timeval *t) { +#ifdef DEBUG_PROTOCOL + if (t) { + log_debug ("omapi_wait_for_completion(%u.%u secs)", + (unsigned int)(t->tv_sec), + (unsigned int)(t->tv_usec)); + } else { + log_debug ("omapi_wait_for_completion(no timeout)"); + } +#endif isc_result_t status; omapi_waiter_object_t *waiter; omapi_object_t *inner; @@ -453,10 +466,17 @@ isc_result_t omapi_wait_for_completion (omapi_object_t *object, do { status = omapi_one_dispatch ((omapi_object_t *)waiter, t); - if (status != ISC_R_SUCCESS) - return status; + if (status != ISC_R_SUCCESS) { +#ifdef DEBUG_PROTOCOL + log_debug ("- call to omapi_one_dispatch failed: %s", + isc_result_totext (status)); +#endif + /* Break out on failure, to ensure we free up the waiter(s) */ + break; + } } while (!waiter || !waiter -> ready); + if (waiter -> outer) { if (waiter -> outer -> inner) { omapi_object_dereference (&waiter -> outer -> inner, @@ -471,7 +491,12 @@ isc_result_t omapi_wait_for_completion (omapi_object_t *object, if (waiter -> inner) omapi_object_dereference (&waiter -> inner, MDL); - status = waiter -> waitstatus; + if (status == ISC_R_SUCCESS) { + /* If the invocation worked, return the server's + * execution status */ + status = waiter -> waitstatus; + } + omapi_waiter_dereference (&waiter, MDL); return status; } @@ -479,6 +504,9 @@ isc_result_t omapi_wait_for_completion (omapi_object_t *object, isc_result_t omapi_one_dispatch (omapi_object_t *wo, struct timeval *t) { +#ifdef DEBUG_PROTOCOL + log_debug ("omapi_one_dispatch()"); +#endif fd_set r, w, x, rr, ww, xx; int max = 0; int count; @@ -549,6 +577,25 @@ isc_result_t omapi_one_dispatch (omapi_object_t *wo, /* Same deal for write fdets. */ if (io -> writefd && io -> inner && (desc = (*(io -> writefd)) (io -> inner)) >= 0) { + /* This block avoids adding writefds that are already connected + * but that do not have data waiting to write. This avoids + * select() calls dropping immediately simply because the + * the writefd is ready to write. Without this synchronous + * waiting becomes CPU intensive polling */ + if (io->inner && io->inner->type == omapi_type_connection) { + omapi_connection_object_t* c; + c = (omapi_connection_object_t *)(io->inner); + if (c->state == omapi_connection_connected && c->out_bytes == 0) { + /* We are already connected and have no data waiting to + * be written, so we avoid registering the fd. */ +#ifdef DEBUG_PROTOCOL + log_debug ("--- Connected, nothing to write, skip writefd\n"); +#endif + continue; + } + } + + FD_SET (desc, &w); if (desc > max) max = desc; @@ -571,6 +618,14 @@ isc_result_t omapi_one_dispatch (omapi_object_t *wo, r = rr; w = ww; x = xx; + +#ifdef DEBUG_PROTOCOL + if (t) { + log_debug (" calling select with timout: %u.%u secs", + (unsigned int)(to.tv_sec), + (unsigned int)(to.tv_usec)); + } +#endif count = select(max + 1, &r, &w, &x, t ? &to : NULL); } @@ -681,16 +736,18 @@ isc_result_t omapi_one_dispatch (omapi_object_t *wo, see if we got input on that socket. */ if (io -> readfd && (desc = (*(io -> readfd)) (tmp)) >= 0) { - if (FD_ISSET (desc, &r)) + if (FD_ISSET (desc, &r)) { ((*(io -> reader)) (tmp)); + } } /* Same deal for write descriptors. */ if (io -> writefd && (desc = (*(io -> writefd)) (tmp)) >= 0) { - if (FD_ISSET (desc, &w)) + if (FD_ISSET (desc, &w)) { ((*(io -> writer)) (tmp)); + } } omapi_object_dereference (&tmp, MDL); } @@ -837,6 +894,9 @@ isc_result_t omapi_io_destroy (omapi_object_t *h, const char *file, int line) isc_result_t omapi_io_signal_handler (omapi_object_t *h, const char *name, va_list ap) { +#ifdef DEBUG_PROTOCOL + log_debug ("omapi_io_signal_handler(%s)", name); +#endif if (h -> type != omapi_type_io_object) return DHCP_R_INVALIDARG; @@ -864,6 +924,9 @@ isc_result_t omapi_waiter_signal_handler (omapi_object_t *h, { omapi_waiter_object_t *waiter; +#ifdef DEBUG_PROTOCOL + log_debug ("omapi_waiter_signal_handler(%s)", name); +#endif if (h -> type != omapi_type_waiter) return DHCP_R_INVALIDARG; diff --git a/omapip/support.c b/omapip/support.c index f3791de0..92000a17 100644 --- a/omapip/support.c +++ b/omapip/support.c @@ -308,7 +308,7 @@ isc_result_t omapi_set_value (omapi_object_t *h, omapi_object_t *outer; isc_result_t status; -#if defined (DEBUG) +#if defined (DEBUG_PROTOCOL) if (!value) { log_info ("omapi_set_value (%.*s, NULL)", (int)name -> len, name -> value); @@ -343,7 +343,7 @@ isc_result_t omapi_set_value (omapi_object_t *h, id, name, value); else status = ISC_R_NOTFOUND; -#if defined (DEBUG) +#if defined (DEBUG_PROTOCOL) log_info (" ==> %s", isc_result_totext (status)); #endif return status; -- cgit v1.2.1 From 9121bf6749fdbc70d7fa9ff6f0eeb96670e7a09c Mon Sep 17 00:00:00 2001 From: Thomas Markwalder Date: Tue, 28 Jan 2020 08:16:35 -0500 Subject: [#76] Added new functions to man page dhcpctl/dhcpctl.3 Also updated copyrights --- common/conflex.c | 2 +- dhcpctl/dhcpctl.3 | 78 ++++++++++++++++++++++++++++++++++++++++++++-- dhcpctl/dhcpctl.c | 2 +- dhcpctl/dhcpctl.h | 2 +- dhcpctl/omshell.c | 2 +- includes/dhctoken.h | 2 +- includes/omapip/omapip_p.h | 2 +- omapip/dispatch.c | 2 +- omapip/support.c | 2 +- 9 files changed, 84 insertions(+), 10 deletions(-) diff --git a/common/conflex.c b/common/conflex.c index db1e1a09..e8d8c629 100644 --- a/common/conflex.c +++ b/common/conflex.c @@ -3,7 +3,7 @@ Lexical scanner for dhcpd config file... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/dhcpctl/dhcpctl.3 b/dhcpctl/dhcpctl.3 index dcc08992..9b261209 100644 --- a/dhcpctl/dhcpctl.3 +++ b/dhcpctl/dhcpctl.3 @@ -4,8 +4,7 @@ .\" File: dhcpctl.3 .\" RCSId: $Id: dhcpctl.3,v 1.9 2011/04/25 23:43:16 sar Exp $ .\" -.\" Copyright (c) 2011,2014 by Internet Systems Consortium, Inc. ("ISC") -.\" Copyright (c) 2004,2009 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (c) 2004-2022 by Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 2000-2003 by Internet Software Consortium .\" Copyright (c) 2000 Nominum, Inc. .\" @@ -61,6 +60,14 @@ .\" .\" .Ft dhcpctl_status +.Fo dhcpctl_disconnect +.Fa "dhcpctl_handle *cxn" +.Fa "int force" +.Fc +.\" +.\" +.\" +.Ft dhcpctl_status .Fo dhcpctl_wait_for_completion .Fa "dhcpctl_handle object" .Fa "dhcpctl_status *status" @@ -69,6 +76,15 @@ .\" .\" .Ft dhcpctl_status +.Fo dhcpctl_timed_wait_for_completion +.Fa "dhcpctl_handle object" +.Fa "struct timeval *timeout" +.Fa "dhcpctl_status *status" +.Fc +.\" +.\" +.\" +.Ft dhcpctl_status .Fo dhcpctl_get_value .Fa "dhcpctl_data_string *value" .Fa "dhcpctl_handle object" @@ -235,6 +251,27 @@ OMAPI port). No authentication is used for the connection. .\" .\" .Pp + +.Fn dhcpctl_disconnect +closes the open connection specified by the first parameter, \fBcxn\fR. Note +that this call will free the connection object and \fBcxn\fR will be set to + nul. If the second parameter,\fBforce\fR, is nonzero, the connection will be +closed immediately. Otherwise the receiving end will be shut down but any +unsent data will be sent before actually closing the socket. Note that +disconnecting only destroys the connection object, any other objects previously +created will still exist. +.Pp +For example: +.Bd -literal -offset indent +s = dhcpctl_disconnect(&cxn, 1); +.Ed +.Pp +will close the connection immediately. This funcion should be considered +\fBEXPERIMENTAL\fR. +.\" +.\" +.\" +.Pp .Fn dhcpctl_wait_for_completion flushes a pending message to the server and waits for the response. The result of the request as processed on the server is returned via the second @@ -251,6 +288,43 @@ The call to .Fn dhcpctl_wait_for_completion won't return until the remote message processing completes or the connection to the server is lost. +.\" +.\" +.\" +.Pp + +.Fn dhcpctl_timed_wait_for_completion +flushes a pending message to the server and waits for the response. How long +the function waits for a response is dictated by the value of the second +parameter, \fBtimeout\fR. If the value is null, it will wait indefinetly or +until the connection is lost. Otherwise it will wait for the amount of time +specified by \fBtimeout\fR (tv_sec:tv_usec). Values of zero for both fields +are valid but not recommended. The result of the request as processed on the +server is returned via the third parameter. An example is shown below: +.Bd -literal -offset indent + +struct timeval timeout; +timeout.tv_sec = 5; /* wait for 5 seconds */ +timeout.tv_usec = 0; + +s = dhcpctl_wait_for_completion(cxn, &timeout, &wv); +if (s != ISC_R_SUCCESS) { + local_failure(s); +} else if (wv != ISC_R_SUCCESS) { + server_failure(wc); +} +.Ed +.Pp +If the function times out, the status returned will be ISC_R_TIMEDOUT. Please +note that even though the function is no longer waiting for a response, the +server does not abandon the request and may still respond by writing the +response to the socket. A subsequent call to either this function or +\fBdhcpctl_wait_for_completion()\fR will see that data and read it. Depending +on the application logic flow this may or may not be desired. Currently though +only mechanism for "flushing" this data is to close the connection by calling +\fBdisconnet()\fR, and then reconnecting via \fBconnect()\fR. Please note +this function should be considered \fBEXPERIMENTAL\fR. + .\" .\" .\" diff --git a/dhcpctl/dhcpctl.c b/dhcpctl/dhcpctl.c index e8834382..845fa18c 100644 --- a/dhcpctl/dhcpctl.c +++ b/dhcpctl/dhcpctl.c @@ -3,7 +3,7 @@ Subroutines providing general support for objects. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/dhcpctl/dhcpctl.h b/dhcpctl/dhcpctl.h index 0f779bd8..083ccf12 100644 --- a/dhcpctl/dhcpctl.h +++ b/dhcpctl/dhcpctl.h @@ -3,7 +3,7 @@ Subroutines providing general support for objects. */ /* - * Copyright (c) 2004,2009,2014 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * Permission to use, copy, modify, and distribute this software for any diff --git a/dhcpctl/omshell.c b/dhcpctl/omshell.c index 785f59a6..ab99b0f4 100644 --- a/dhcpctl/omshell.c +++ b/dhcpctl/omshell.c @@ -3,7 +3,7 @@ Examine and modify omapi objects. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 2001-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/includes/dhctoken.h b/includes/dhctoken.h index 223e1110..3e71a473 100644 --- a/includes/dhctoken.h +++ b/includes/dhctoken.h @@ -3,7 +3,7 @@ Tokens for config file lexer and parser. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/includes/omapip/omapip_p.h b/includes/omapip/omapip_p.h index 323bba3e..ec10f7e5 100644 --- a/includes/omapip/omapip_p.h +++ b/includes/omapip/omapip_p.h @@ -3,7 +3,7 @@ Private master include file for the OMAPI library. */ /* - * Copyright (c) 2004-2019 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/omapip/dispatch.c b/omapip/dispatch.c index c730094c..34938b39 100644 --- a/omapip/dispatch.c +++ b/omapip/dispatch.c @@ -3,7 +3,7 @@ I/O dispatcher. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/omapip/support.c b/omapip/support.c index 92000a17..8f2581f1 100644 --- a/omapip/support.c +++ b/omapip/support.c @@ -3,7 +3,7 @@ Subroutines providing general support for objects. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public -- cgit v1.2.1 From 80dfe8061cd62dd5679ef75fec918fe152835ea2 Mon Sep 17 00:00:00 2001 From: Thomas Markwalder Date: Tue, 28 Jan 2020 13:39:36 +0000 Subject: [#76] Updated auto-generted files modified: dhcpctl/Makefile.in --- dhcpctl/Makefile.in | 158 +++++++++++++++++++++++++++++++--------------------- 1 file changed, 96 insertions(+), 62 deletions(-) diff --git a/dhcpctl/Makefile.in b/dhcpctl/Makefile.in index e1da56a5..edc1ea5c 100644 --- a/dhcpctl/Makefile.in +++ b/dhcpctl/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.13.4 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2013 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -16,7 +16,17 @@ VPATH = @srcdir@ -am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ @@ -82,16 +92,18 @@ host_triplet = @host@ bin_PROGRAMS = omshell$(EXEEXT) noinst_PROGRAMS = cltest$(EXEEXT) cltest2$(EXEEXT) subdir = dhcpctl -DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ - $(srcdir)/Makefile.am.in $(top_srcdir)/depcomp ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/includes/config.h CONFIG_CLEAN_FILES = Makefile.am CONFIG_CLEAN_VPATH_FILES = +am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(libdir)" \ + "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man3dir)" +PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ @@ -119,8 +131,6 @@ am__uninstall_files_from_dir = { \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } -am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" \ - "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man3dir)" LIBRARIES = $(lib_LIBRARIES) ARFLAGS = cru AM_V_AR = $(am__v_AR_@AM_V@) @@ -132,7 +142,6 @@ libdhcpctl_a_LIBADD = am_libdhcpctl_a_OBJECTS = dhcpctl.$(OBJEXT) callback.$(OBJEXT) \ remote.$(OBJEXT) libdhcpctl_a_OBJECTS = $(am_libdhcpctl_a_OBJECTS) -PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) am_cltest_OBJECTS = cltest.$(OBJEXT) cltest_OBJECTS = $(am_cltest_OBJECTS) cltest_DEPENDENCIES = libdhcpctl.a ../common/libdhcp.a \ @@ -165,7 +174,10 @@ am__v_at_0 = @ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/includes depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/callback.Po ./$(DEPDIR)/cltest.Po \ + ./$(DEPDIR)/cltest2.Po ./$(DEPDIR)/dhcpctl.Po \ + ./$(DEPDIR)/omshell.Po ./$(DEPDIR)/remote.Po am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) @@ -211,6 +223,8 @@ am__define_uniq_tagged_files = \ done | $(am__uniquify_input)` ETAGS = etags CTAGS = ctags +am__DIST_COMMON = $(srcdir)/Makefile.am.in $(srcdir)/Makefile.in \ + $(top_srcdir)/depcomp DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) A = @A@ ACLOCAL = @ACLOCAL@ @@ -376,14 +390,13 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign dhcpctl/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign dhcpctl/Makefile -.PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -396,42 +409,6 @@ $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) $(am__aclocal_m4_deps): Makefile.am: $(top_builddir)/config.status $(srcdir)/Makefile.am.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ -install-libLIBRARIES: $(lib_LIBRARIES) - @$(NORMAL_INSTALL) - @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \ - list2=; for p in $$list; do \ - if test -f $$p; then \ - list2="$$list2 $$p"; \ - else :; fi; \ - done; \ - test -z "$$list2" || { \ - echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \ - echo " $(INSTALL_DATA) $$list2 '$(DESTDIR)$(libdir)'"; \ - $(INSTALL_DATA) $$list2 "$(DESTDIR)$(libdir)" || exit $$?; } - @$(POST_INSTALL) - @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \ - for p in $$list; do \ - if test -f $$p; then \ - $(am__strip_dir) \ - echo " ( cd '$(DESTDIR)$(libdir)' && $(RANLIB) $$f )"; \ - ( cd "$(DESTDIR)$(libdir)" && $(RANLIB) $$f ) || exit $$?; \ - else :; fi; \ - done - -uninstall-libLIBRARIES: - @$(NORMAL_UNINSTALL) - @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(libdir)'; $(am__uninstall_files_from_dir) - -clean-libLIBRARIES: - -test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES) - -libdhcpctl.a: $(libdhcpctl_a_OBJECTS) $(libdhcpctl_a_DEPENDENCIES) $(EXTRA_libdhcpctl_a_DEPENDENCIES) - $(AM_V_at)-rm -f libdhcpctl.a - $(AM_V_AR)$(libdhcpctl_a_AR) libdhcpctl.a $(libdhcpctl_a_OBJECTS) $(libdhcpctl_a_LIBADD) - $(AM_V_at)$(RANLIB) libdhcpctl.a install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ @@ -477,6 +454,42 @@ clean-binPROGRAMS: clean-noinstPROGRAMS: -test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS) +install-libLIBRARIES: $(lib_LIBRARIES) + @$(NORMAL_INSTALL) + @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \ + list2=; for p in $$list; do \ + if test -f $$p; then \ + list2="$$list2 $$p"; \ + else :; fi; \ + done; \ + test -z "$$list2" || { \ + echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \ + echo " $(INSTALL_DATA) $$list2 '$(DESTDIR)$(libdir)'"; \ + $(INSTALL_DATA) $$list2 "$(DESTDIR)$(libdir)" || exit $$?; } + @$(POST_INSTALL) + @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \ + for p in $$list; do \ + if test -f $$p; then \ + $(am__strip_dir) \ + echo " ( cd '$(DESTDIR)$(libdir)' && $(RANLIB) $$f )"; \ + ( cd "$(DESTDIR)$(libdir)" && $(RANLIB) $$f ) || exit $$?; \ + else :; fi; \ + done + +uninstall-libLIBRARIES: + @$(NORMAL_UNINSTALL) + @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(libdir)'; $(am__uninstall_files_from_dir) + +clean-libLIBRARIES: + -test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES) + +libdhcpctl.a: $(libdhcpctl_a_OBJECTS) $(libdhcpctl_a_DEPENDENCIES) $(EXTRA_libdhcpctl_a_DEPENDENCIES) + $(AM_V_at)-rm -f libdhcpctl.a + $(AM_V_AR)$(libdhcpctl_a_AR) libdhcpctl.a $(libdhcpctl_a_OBJECTS) $(libdhcpctl_a_LIBADD) + $(AM_V_at)$(RANLIB) libdhcpctl.a cltest$(EXEEXT): $(cltest_OBJECTS) $(cltest_DEPENDENCIES) $(EXTRA_cltest_DEPENDENCIES) @rm -f cltest$(EXEEXT) @@ -496,26 +509,32 @@ mostlyclean-compile: distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/callback.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cltest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cltest2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dhcpctl.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/omshell.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/remote.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/callback.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cltest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cltest2.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dhcpctl.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/omshell.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/remote.Po@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .c.o: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $< +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< .c.obj: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'` +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` install-man1: $(man_MANS) @$(NORMAL_INSTALL) @list1=''; \ @@ -655,7 +674,10 @@ cscopelist-am: $(am__tagged_files) distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -687,9 +709,9 @@ distdir: $(DISTFILES) done check-am: all-am check: check-am -all-am: Makefile $(LIBRARIES) $(PROGRAMS) $(MANS) +all-am: Makefile $(PROGRAMS) $(LIBRARIES) $(MANS) installdirs: - for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man3dir)"; do \ + for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(libdir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man3dir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am @@ -728,7 +750,12 @@ clean-am: clean-binPROGRAMS clean-generic clean-libLIBRARIES \ clean-noinstPROGRAMS mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/callback.Po + -rm -f ./$(DEPDIR)/cltest.Po + -rm -f ./$(DEPDIR)/cltest2.Po + -rm -f ./$(DEPDIR)/dhcpctl.Po + -rm -f ./$(DEPDIR)/omshell.Po + -rm -f ./$(DEPDIR)/remote.Po -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -774,7 +801,12 @@ install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/callback.Po + -rm -f ./$(DEPDIR)/cltest.Po + -rm -f ./$(DEPDIR)/cltest2.Po + -rm -f ./$(DEPDIR)/dhcpctl.Po + -rm -f ./$(DEPDIR)/omshell.Po + -rm -f ./$(DEPDIR)/remote.Po -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -797,7 +829,7 @@ uninstall-man: uninstall-man1 uninstall-man3 .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ clean-binPROGRAMS clean-generic clean-libLIBRARIES \ clean-noinstPROGRAMS cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-tags distdir dvi \ @@ -814,6 +846,8 @@ uninstall-man: uninstall-man1 uninstall-man3 uninstall-libLIBRARIES uninstall-man uninstall-man1 \ uninstall-man3 +.PRECIOUS: Makefile + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. -- cgit v1.2.1 From b675d3a0badea8e19ffcc964b74c324ebcdcf62c Mon Sep 17 00:00:00 2001 From: Thomas Markwalder Date: Mon, 10 Feb 2020 08:29:22 -0500 Subject: [#76] Added dhcp_timed_connect() function dhcpctl/cltest2.c Added use of dhcp_timed_connect() dhcpctl/dhcpctl.3 Added entry for dhcp_timed_connect() dhcpctl/dhcpctl.* dhcpctl_timed_connect() - new function dhcp_timed_wait_for_completion() - corrected commentary --- dhcpctl/cltest2.c | 27 +++++++++++++++++- dhcpctl/dhcpctl.3 | 45 ++++++++++++++++++++++++++--- dhcpctl/dhcpctl.c | 84 +++++++++++++++++++++++++++++++++++++++++++++++-------- dhcpctl/dhcpctl.h | 4 +++ 4 files changed, 144 insertions(+), 16 deletions(-) diff --git a/dhcpctl/cltest2.c b/dhcpctl/cltest2.c index 26249a3e..821441cd 100644 --- a/dhcpctl/cltest2.c +++ b/dhcpctl/cltest2.c @@ -68,6 +68,9 @@ void print_object(char *msg, dhcpctl_handle handle); * 5. Disconnect * 6. Reconnect * 7. Refresh the host object + * 8. Disconnect + * 9. Time connect + * 10. Time connect retry * * Note that this program tests dhcpctl_timed_wait_for_completion() by calling * it with extremely small timeouts. @@ -143,7 +146,6 @@ int main (argc, argv) break; } - /* Now we'll test disconnect */ status = dhcpctl_disconnect(&connection, 0); fail_on_error(status, "can't disconnect"); @@ -161,6 +163,29 @@ int main (argc, argv) print_object("After reconnect/refresh", host); + /* Now we'll disconnect */ + status = dhcpctl_disconnect(&connection, 0); + fail_on_error(status, "can't disconnect"); + + /* Try a timed connect */ + timeout.tv_sec = 0; + timeout.tv_usec = 1; + status = dhcpctl_timed_connect (&connection, ip_address, port, 0, &timeout); + + /* Try again if we time out */ + if (status == ISC_R_TIMEDOUT) { + printf ("Retry timed connect\n"); + timeout.tv_sec = 10; + status = dhcpctl_timed_connect (&connection, ip_address, port, 0, + &timeout); + } + + fail_on_error(status ,"can't reconnect"); + + /* Lastly we'll disconnect to clean up */ + status = dhcpctl_disconnect(&connection, 0); + fail_on_error(status ,"can't disconnect"); + exit (0); } diff --git a/dhcpctl/dhcpctl.3 b/dhcpctl/dhcpctl.3 index 9b261209..48fd728c 100644 --- a/dhcpctl/dhcpctl.3 +++ b/dhcpctl/dhcpctl.3 @@ -60,6 +60,17 @@ .\" .\" .Ft dhcpctl_status +.Fo dhcpctl_timed_connect +.Fa "dhcpctl_handle *cxn" +.Fa "const char *host" +.Fa "int port" +.Fa "dhcpctl_handle auth" +.Fa "dhcpctl_status *status" +.Fc +.\" +.\" +.\" +.Ft dhcpctl_status .Fo dhcpctl_disconnect .Fa "dhcpctl_handle *cxn" .Fa "int force" @@ -78,8 +89,8 @@ .Ft dhcpctl_status .Fo dhcpctl_timed_wait_for_completion .Fa "dhcpctl_handle object" -.Fa "struct timeval *timeout" .Fa "dhcpctl_status *status" +.Fa "struct timeval *timeout" .Fc .\" .\" @@ -251,7 +262,33 @@ OMAPI port). No authentication is used for the connection. .\" .\" .Pp +.Fn dhcpctl_timed_connect +opens a connection to the DHCP server at the given host and port. If an +authenticator has been created for the connection, then it is given as the 4th +argument. On a successful return the address pointed at by the first +argument will have a new connection object assigned to it. +How long the function waits for complete the connection is dictated by the value +of the parameter, \fBtimeout\fR. If the value is null, it will wait indefinetly +Otherwise it will wait for the amount of time specified by \fBtimeout\fR +(tv_sec:tv_usec). Values of zero for both fields are valid but not recommended. +An example is shown below: +.Pp +For example: +.Bd -literal -offset indent +struct timeval timeout; +timeout.tv_sec = 5; /* wait for 5 seconds */ +timeout.tv_usec = 0; +s = dhcpctl_connect(&cxn, "127.0.0.1", 7911, NULL, &timeout); +.Ed +.Pp +connects to the DHCP server on the localhost via port 7911 (the standard +OMAPI port). No authentication is used for the connection. It allows +5 seconds for the connect to complete. +.\" +.\" +.\" +.Pp .Fn dhcpctl_disconnect closes the open connection specified by the first parameter, \fBcxn\fR. Note that this call will free the connection object and \fBcxn\fR will be set to @@ -295,19 +332,19 @@ to the server is lost. .Fn dhcpctl_timed_wait_for_completion flushes a pending message to the server and waits for the response. How long -the function waits for a response is dictated by the value of the second +the function waits for a response is dictated by the value of the third parameter, \fBtimeout\fR. If the value is null, it will wait indefinetly or until the connection is lost. Otherwise it will wait for the amount of time specified by \fBtimeout\fR (tv_sec:tv_usec). Values of zero for both fields are valid but not recommended. The result of the request as processed on the -server is returned via the third parameter. An example is shown below: +server is returned via the second parameter. An example is shown below: .Bd -literal -offset indent struct timeval timeout; timeout.tv_sec = 5; /* wait for 5 seconds */ timeout.tv_usec = 0; -s = dhcpctl_wait_for_completion(cxn, &timeout, &wv); +s = dhcpctl_wait_for_completion(cxn, &wv, &timeout); if (s != ISC_R_SUCCESS) { local_failure(s); } else if (wv != ISC_R_SUCCESS) { diff --git a/dhcpctl/dhcpctl.c b/dhcpctl/dhcpctl.c index 845fa18c..924db321 100644 --- a/dhcpctl/dhcpctl.c +++ b/dhcpctl/dhcpctl.c @@ -31,7 +31,6 @@ #include "dhcpctl.h" #include - /* #define DEBUG_DHCPCTL 1 */ omapi_object_type_t *dhcpctl_callback_type; @@ -144,6 +143,59 @@ dhcpctl_status dhcpctl_connect (dhcpctl_handle *connection, return status; } +/* dhcpctl_timed_connect + + synchronous + returns nonzero status code if it didn't connect, zero otherwise + stores connection handle through connection, which can be used + for subsequent access to the specified server. + server_name is the name of the server, and port is the TCP + port on which it is listening. + authinfo is the handle to an object containing authentication + information. + How long the function waits for the connection to complete is + dictated by the value of the parameter, t. If the value is nul, + it will wait indefinetly. Otherwise it will wait for the amount + of time specified by t (tv_sec:tv_usec). Values of zero for both + fields are valid but not recommended. */ +dhcpctl_status dhcpctl_timed_connect (dhcpctl_handle *connection, + const char *server_name, int port, + dhcpctl_handle authinfo, + struct timeval *t) +{ + isc_result_t status; +#ifdef DEBUG_DHCPCTL + log_debug("dhcpctl_timed_connect(%s:%d)", server_name, port); +#endif + status = omapi_generic_new (connection, MDL); + if (status != ISC_R_SUCCESS) { + return status; + } + + status = omapi_protocol_connect (*connection, server_name, + (unsigned)port, authinfo); + + if (status == ISC_R_SUCCESS) { + return status; + } + + if (status == DHCP_R_INCOMPLETE) { + isc_result_t wait_status = ISC_R_SUCCESS; + + /* Wait for it to complete */ + status = dhcpctl_timed_wait_for_completion(*connection, + &wait_status, t); + if (status == ISC_R_SUCCESS) { + status = wait_status; + } + } + + if (status != ISC_R_SUCCESS) { + omapi_object_dereference (connection, MDL); + } + return status; +} + /* dhcpctl_wait_for_completion synchronous @@ -174,15 +226,20 @@ dhcpctl_status dhcpctl_wait_for_completion (dhcpctl_handle h, return ISC_R_SUCCESS; } -/* dhcpctl_wait_for_completion +/* dhcpctl_timed_wait_for_completion synchronous returns zero if the callback completes, a nonzero status if there was some problem relating to the wait operation. The status of the queued request will be stored through s, and will also be either zero for success or nonzero for some kind - of failure. Never returns until completion or until the - connection to the server is lost. This performs the same + of failure. How long the function waits for a response is + dictated by the value of the parameter, t. If the value is nul, + it will wait indefinetly or until the connection is lost. + Otherwise it will wait for the amount of time specified by t + (tv_sec:tv_usec). Values of zero for both fields are valid + but not recommended. The result of the request as processed on the + server is returned via the parameter, s. This performs the same function as dhcpctl_set_callback and the subsequent callback, for programs that want to do inline execution instead of using callbacks. */ @@ -196,7 +253,8 @@ dhcpctl_status dhcpctl_timed_wait_for_completion (dhcpctl_handle h, #ifdef DEBUG_DHCPCTL if (t) { - log_debug ("dhcpctl_timed_wait_for_completion(%u.%u secs.usecs)", + log_debug ("dhcpctl_timed_wait_for_completion" + "(%u.%u secs.usecs)", (unsigned int)(t->tv_sec), (unsigned int)(t->tv_usec)); } else { @@ -212,10 +270,14 @@ dhcpctl_status dhcpctl_timed_wait_for_completion (dhcpctl_handle h, } status = omapi_wait_for_completion (h, (t ? &adjusted_t : 0)); - if (status != ISC_R_SUCCESS) + if (status != ISC_R_SUCCESS) { return status; - if (h -> type == dhcpctl_remote_type) - *s = ((dhcpctl_remote_object_t *)h) -> waitstatus; + } + + if (h->type == dhcpctl_remote_type) { + *s = ((dhcpctl_remote_object_t *)h)->waitstatus; + } + return ISC_R_SUCCESS; } @@ -309,7 +371,7 @@ dhcpctl_status dhcpctl_get_boolean (int *result, isc_result_t status; dhcpctl_data_string data = (dhcpctl_data_string)0; int rv; - + #ifdef DEBUG_DHCPCTL log_debug("dhcpctl_get_boolean(%s)", value_name); #endif @@ -703,8 +765,8 @@ dhcpctl_status dhcpctl_disconnect (dhcpctl_handle *connection, #ifdef DEBUG_DHCPCTL log_debug("dhcpctl_disconnect()"); #endif - if (!connection || !((*connection)->outer) || - !((*connection)->outer->type) || + if (!connection || !((*connection)->outer) || + !((*connection)->outer->type) || ((*connection)->outer->type != omapi_type_protocol) || !((*connection)->outer->outer)) { log_debug("dhcpctl_disconnect detected invalid arg"); diff --git a/dhcpctl/dhcpctl.h b/dhcpctl/dhcpctl.h index 083ccf12..a356699c 100644 --- a/dhcpctl/dhcpctl.h +++ b/dhcpctl/dhcpctl.h @@ -62,6 +62,10 @@ extern omapi_object_type_t *dhcpctl_remote_type; dhcpctl_status dhcpctl_initialize (void); dhcpctl_status dhcpctl_connect (dhcpctl_handle *, const char *, int, dhcpctl_handle); + +dhcpctl_status dhcpctl_timed_connect (dhcpctl_handle *, const char *, + int, dhcpctl_handle, struct timeval *); + dhcpctl_status dhcpctl_wait_for_completion (dhcpctl_handle, dhcpctl_status *); dhcpctl_status dhcpctl_timed_wait_for_completion (dhcpctl_handle h, -- cgit v1.2.1 From 6227b19093ccf2b1433d1b0fe2d5081f4304e212 Mon Sep 17 00:00:00 2001 From: Tomek Mrugalski Date: Thu, 20 Jan 2022 11:11:40 +0000 Subject: [#221] Added note about contributing anything for client or relay --- CONTRIBUTING.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 1da7b4d0..f50d5610 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -7,6 +7,12 @@ We do not require a contributors agreement. By submitting a patch or merge reque you are agreeing that your code will be covered by the primary license for the project. ISC DHCP is currently licensed under the MPL2.0 license. +**NOTE**: The client (dhclient) and relay (dhcrelay) component maintenance is coming to an end. +The 4.4.3 release is the last one that included those components and they are now considered EOL. +The 4.5.0 release will feature server (dhcpd) only. You may still submit bugs for a client or +relay, but those will be kept for informational purposes only. There will not be any action +taken by ISC team on those. + Here's are the steps in contributing a patch: 1. **create account** on [gitlab](https://gitlab.isc.org) @@ -193,4 +199,4 @@ Outstanding, select a small number of them and move them to whatever the current that in mind if you plan to submit a patch and forget about it. We may accept it eventually, but it's a much, much faster process if you participate in it. -#### Thank you for contributing your time and expertise to the ISC DHCP Project. +**Thank you for contributing your time and expertise to the ISC DHCP Project.** -- cgit v1.2.1 From 668d677cb493c41dc2490a89d935fff818185bf2 Mon Sep 17 00:00:00 2001 From: Tomek Mrugalski Date: Thu, 20 Jan 2022 12:13:23 +0100 Subject: [#221] Version bump to 4.4.3 --- configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index c7ad1922..3d4d907d 100644 --- a/configure.ac +++ b/configure.ac @@ -1,4 +1,4 @@ -AC_INIT([DHCP],[4.4.2],[dhcp-users@isc.org]) +AC_INIT([DHCP],[4.4.3],[dhcp-users@isc.org]) # we specify "foreign" to avoid having to have the GNU mandated files, -- cgit v1.2.1 From 89b8381b1eb3a327c4c415491c32516d793c65f5 Mon Sep 17 00:00:00 2001 From: Tomek Mrugalski Date: Thu, 20 Jan 2022 12:13:56 +0100 Subject: [#221] Whitespace cleanup --- configure.ac | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/configure.ac b/configure.ac index 3d4d907d..b2c306b7 100644 --- a/configure.ac +++ b/configure.ac @@ -170,7 +170,7 @@ if test "$enable_dhcpv4o6" = "yes"; then if test "$enable_dhcpv6" = "no"; then AC_MSG_ERROR([dhcpv4o6 requires dhcpv6]) fi - AC_DEFINE([DHCP4o6], [1], + AC_DEFINE([DHCP4o6], [1], [Define to 1 to include DHCPv4 over DHCPv6 support.]) else # so we can report below @@ -653,7 +653,7 @@ else else AC_MSG_RESULT($use_randomdev) AC_CHECK_FILE($use_randomdev, - AC_DEFINE_UNQUOTED([ISC_PATH_RANDOMDEV], ["$use_randomdev"], + AC_DEFINE_UNQUOTED([ISC_PATH_RANDOMDEV], ["$use_randomdev"], [Define if you have the /dev/random or other configured file.]), AC_MSG_ERROR(cannot find $use_randomdev)) fi @@ -806,7 +806,7 @@ no) BINDLIBIRSDIR="$BINDDIR/lib" BINDLIBDNSDIR="$BINDDIR/lib" BINDLIBISCCFGDIR="$BINDDIR/lib" - BINDLIBISCDIR="$BINDDIR/lib" + BINDLIBISCDIR="$BINDDIR/lib" DISTCHECK_LIBBIND_CONFIGURE_FLAG="--with-libbind=$use_libbind" ;; esac -- cgit v1.2.1 From 7cc0471f3a8654f7a6e35b117ce203d3a0229889 Mon Sep 17 00:00:00 2001 From: Tomek Mrugalski Date: Thu, 20 Jan 2022 17:04:02 +0100 Subject: [#221] README and RELNOTES updated (dhclient,dhcrelay reached EOL) --- README | 42 ++++++++++++++++------------ RELNOTES | 97 ++++++++++++++++------------------------------------------------ 2 files changed, 48 insertions(+), 91 deletions(-) diff --git a/README b/README index 63cafb1c..3f7af4cf 100644 --- a/README +++ b/README @@ -1,6 +1,6 @@ Internet Systems Consortium DHCP Distribution - Version 4.4.2 - 22 January 2020 + Version 4.4.3 + 26 January 2022 README FILE @@ -62,13 +62,15 @@ documented in the dhclient-script man page. The format of the DHCP client lease database is documented in the dhclient.leases man page. The source for all these man pages is in the client/ subdirectory in the distribution. In addition, the dhcp-options man page should be -referred to for information about DHCP options. +referred to for information about DHCP options. The client component +is reaching End-of-Life and will not be part of future releases. DHCP relay agent documentation is in the dhcrelay man page, the source -for which is distributed in the relay/ subdirectory. +for which is distributed in the relay/ subdirectory. The relay component +is reaching End-of-Life and will not be part of future releases. KEA Migration Assistant documentation, including how to build, install -and use it, is including in the keama directory. +and use it, is including in the keama/ directory. To read installed manual pages, use the man command. Type "man page" where page is the name of the manual page. This will only work if @@ -97,12 +99,12 @@ directory, it may not have up-to-date information). To build the DHCP Distribution, unpack the compressed tar file using the tar utility and the gzip command - type something like: - gunzip dhcp-4.4.2.tar.gz - tar xvf dhcp-4.4.2.tar + gunzip dhcp-4.4.3.tar.gz + tar xvf dhcp-4.4.3.tar CONFIGURING IT -Now, cd to the dhcp-4.4.2 subdirectory that you've just created and +Now, cd to the dhcp-4.4.3 subdirectory that you've just created and configure the source tree by typing: ./configure @@ -348,7 +350,7 @@ more information, consult the vconfig man pages. ATF Please see the file DHCP/doc/devel/atf.dox for a description of building -and using these tools. +and using these tools. The optional unit tests use ATF (Automated Testing Framework) including the atf-run and atf-report tools. ATF deprecated these tools in @@ -384,7 +386,7 @@ the dhcp-users or dhcp-announce mailing lists. WHERE TO SEND FEATURE REQUESTS: We like to hear your feedback. We may not respond to it all the time, but we do read it. If ISC DHCP doesn't work well for you, or you have an idea that would improve it for your -use, please create an issue at https://gitlab.isc.org/isc-projects/dhcp/issues. +use, please create an issue at https://gitlab.isc.org/isc-projects/dhcp/issues. This is also an excellent place to send patches that add new features. WHERE TO REPORT BUGS: If you want the act of sending in a bug report @@ -393,17 +395,20 @@ software, you are asking for help. Your bug report is helpful to us, but fundamentally you are making a support request, so please use the addresses described in the previous paragraphs. If you are _sure_ that your problem is a bug, and not user error, or if your bug report -includes a patch, you can submit it to our ticketing system at -https://gitlab.isc.org/isc-projects/dhcp/issues. If you have not received +includes a patch, you can submit it to our ticketing system at +https://gitlab.isc.org/isc-projects/dhcp/issues. If you have not received a notice that the ticket has been resolved, then we're still working on it. +Notice that this is the final release that features client and relay +components. Reporting bugs in them makes limited sense. The ISC team +will not be fixing any issues related to client or relay. They may be +useful for other users to document some problems or perhaps discuss +and share workarounds. PLEASE DO NOT REPORT BUGS IN OLD SOFTWARE RELEASES! Fetch the latest release and see if the bug is still in that version of the software, -and if it is still present, _then_ report it. ISC release versions -always have three numbers, for example: 1.2.3. The 'major release' is -1 here, the 'minor release' is 2, and the 'maintenance release' is 3. -ISC will accept bug reports against the most recent two major.minor -releases: for example, 1.0.0 and 0.9.0, but not 0.8.* or prior. +and if it is still present, _then_ report it. ISC release versions +always have three numbers, for example: 1.2.3. The 'major release' is +1 here, the 'minor release' is 2, and the 'maintenance release' is 3. PLEASE take a moment to determine where the ISC DHCP distribution that you're using came from. ISC DHCP is sometimes heavily modified @@ -483,7 +488,8 @@ agent. DHCP 3 was released in October 2001 and included DHCP failover support, OMAPI, Dynamic DNS, conditional behaviour, client classing, and more. Version 3 of the DHCP server was funded by Nominum, Inc. The 4.0 release in December 2007 introduced DHCPv6 protocol support -for the server and client. +for the server and client. The client and relay components reached +their End-of-Life in January 2022. This product includes cryptographic software written by Eric Young (eay@cryptsoft.com). diff --git a/RELNOTES b/RELNOTES index b83d5a1a..d4f86e8b 100644 --- a/RELNOTES +++ b/RELNOTES @@ -1,6 +1,6 @@ Internet Systems Consortium DHCP Distribution - Version 4.4.2 - 22 January 2020 + Version 4.4.3 + 26 January 2022 Release Notes NEW FEATURES @@ -9,84 +9,35 @@ Please note that that ISC DHCP is now licensed under the Mozilla Public License, MPL 2.0. Please see https://www.mozilla.org/en-US/MPL/2.0/ to read the MPL 2.0 license terms. -While release 4.4.2 is primarily a maintenance release that addresses a number -of defects, it does introduce a few new features: +NOTE: The client and relay components are reaching their End-Of-Life cycle. +4.4.3 is the final release that features them. -- Keama - Keama is a migration utility that assists in converting ISC DHCP - server configuration files to Kea configuration files. It is found in the - keama subdirectory and includes a README.md file with instructions on how - to build it as well as a manpage on its usage. +While release 4.4.3 is primarily a maintenance release that addresses a number +of issues, it does introduce a few of small new features: -- Two new server parameters related to ping checking were added: +1. BIND libraries updated to the latest 9.11.36. This fixes a number of compilation + issues on various systems, including OpenWRT. + [gitlab #218, #171, #180, #192] -1. ping-cltt-secs which allows the user to specify the number of seconds - that must elapse since CLTT before a ping check is conducted. +2. Improve PRNG initialization. There is now a new configure flag --with-randomdev=PATH + that specifies the device to read the initial seed from. That is typically + /dev/random (the default value) or /dev/urandom, but may be other as preferred on + your system. If this option is enabled, dhclient will use the file as a seed. If + not, the earlier algorithm (get last 4 bytes of hardware addresses from all network + interfaces that have them, use current time and process ID). -2. ping-timeout-ms which allows the user to specify the amount of time the - server waits for a ping-check response in milliseconds rather than in - seconds. +3. The IPv6-only preferred option, defined in RFC8925, is now supported. + [gitlab #132] -In general, the areas of focus for ISC DHCP 4.4 were: +4. Compilation fixed for gcc-10. + [gitlab #117] -1. Dynamic DNS additions -2. dhclient improvements -3. Support for dynamic shared libraries +5. Client fix: wrong argument to memcpy() + [gitlab #190] -Dynamic DNS Improvements: - -- We added three new server configuration parameters which influence DDNS - conflict resolution: - - 1. ddns-dual-stack-mixed-mode - alters DNS conflict resolution behavior - to mitigate issues with non-compliant clients in dual stack environments. - - 2. ddns-guard-id-must-match - relaxes the DHCID RR client id matching - requirement of DNS conflict resolution. - - 3. ddns-other-guard-is-dynamic - alters dual-stack-mixed-mode behavior to - allow unguarded DNS entries to be overwritten in certain cases - -- The server now honors update-static-leases parameter for static DHCPv6 - hosts. - -dhclient Improvements: - - - We've added three command line parameters to dhclient: - - 1. --prefix-len-hint - directs dhclient to use the given length as - the prefix length hint when requesting prefixes - - 2. --decline-wait-time - instructs the client to wait the given number - of seconds after declining an IPv4 address before issuing a discover - - 3. --address-prefix-len - specifies the prefix length passed by dhclient - into the client script (via the environment variable ip6_prefixlen) with - each IPv6 address. We added this parameter because we have changed the - default value from 64 to 128 in order to be compliant with RFC3315bis - draft (-09, page 64) and RFC5942, Section 4, point 1. - **WARNING**: The new default value of 128 may not be backwardly compatible - with your environment. If you are operating without a router, such as - between VMs on a host, you may find they cannot see each other with prefix - length of 128. In such cases, you'll need to either provide routing or use - the command line parameter to set the value to 64. Alternatively you may - change the default at compile time by setting DHCLIENT_DEFAULT_PREFIX_LEN - in includes/site.h. - - - dhclient will now generate a DHCPv6 DECLINE message when the client script - indicates a DAD failure - -Dynamic shared library support: - - Configure script, configure.ac+lt, which supports libtool is now provided - with the source tar ball. This script can be used to configure ISC DHCP - to build with libtool and thus use dynamic shared libraries. - -Other Highlights: - - - The server now supports dhcp-cache-threshold for DHCPv6 operations - - The server now supports DHPv6 address allocation based on EUI-64 DUIDs - - Experimental support for alternate relay port in the both the server - and relay for IPv4, IPv6 and 4o6 (see: draft-ietf-dhc-relay-port-10.txt) +6. The server's limit on the size of lease file that can be loaded at start up + is now only enforced on 32-bit systems. + [gitlab #64] For information on how to install, configure and run this software, as well as how to find documentation and report bugs, please consult the -- cgit v1.2.1 From 2afa6e19a85189f6e7b74c54e4cf467244badc94 Mon Sep 17 00:00:00 2001 From: Vicky Risk Date: Mon, 24 Jan 2022 13:52:58 +0000 Subject: Update README - added section on Release status which was in the TOC --- README | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/README b/README index 3f7af4cf..fe2c145e 100644 --- a/README +++ b/README @@ -63,11 +63,11 @@ client lease database is documented in the dhclient.leases man page. The source for all these man pages is in the client/ subdirectory in the distribution. In addition, the dhcp-options man page should be referred to for information about DHCP options. The client component -is reaching End-of-Life and will not be part of future releases. +is End-of-Life and will not be part of future releases. DHCP relay agent documentation is in the dhcrelay man page, the source for which is distributed in the relay/ subdirectory. The relay component -is reaching End-of-Life and will not be part of future releases. +is End-of-Life and will not be part of future releases. KEA Migration Assistant documentation, including how to build, install and use it, is including in the keama/ directory. @@ -92,6 +92,12 @@ will not be correct for your operating system until after you iterate 'make install' (so if you're reading a manpage out of the source directory, it may not have up-to-date information). + RELEASE STATUS + +Version 4.4.3 is a maintenance release of the DHCP client, relay and +server. It is the final release for the client and relay components, +which have reached end-of-life and will no longer be maintained. + BUILDING THE DHCP DISTRIBUTION UNPACKING IT -- cgit v1.2.1 From f5af4b70890ee63e3c348305ab5e55486bd4afd8 Mon Sep 17 00:00:00 2001 From: Vicky Risk Date: Mon, 24 Jan 2022 14:01:59 +0000 Subject: Update RELNOTES --- RELNOTES | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/RELNOTES b/RELNOTES index d4f86e8b..525f293d 100644 --- a/RELNOTES +++ b/RELNOTES @@ -9,22 +9,22 @@ Please note that that ISC DHCP is now licensed under the Mozilla Public License, MPL 2.0. Please see https://www.mozilla.org/en-US/MPL/2.0/ to read the MPL 2.0 license terms. -NOTE: The client and relay components are reaching their End-Of-Life cycle. -4.4.3 is the final release that features them. +NOTE: The client and relay components are now End-Of-Life. +4.4.3 is the final release for those components. While release 4.4.3 is primarily a maintenance release that addresses a number -of issues, it does introduce a few of small new features: +of issues, it does introduce a few new features: -1. BIND libraries updated to the latest 9.11.36. This fixes a number of compilation - issues on various systems, including OpenWRT. +1. BIND libraries updated to the latest version, 9.11.36. This fixes a number + of compilation issues on various systems, including OpenWRT. [gitlab #218, #171, #180, #192] -2. Improve PRNG initialization. There is now a new configure flag --with-randomdev=PATH - that specifies the device to read the initial seed from. That is typically +2. Improved PRNG initialization. There is now a new configure flag --with-randomdev=PATH + that specifies the device from which to read the initial seed. That is typically /dev/random (the default value) or /dev/urandom, but may be other as preferred on your system. If this option is enabled, dhclient will use the file as a seed. If - not, the earlier algorithm (get last 4 bytes of hardware addresses from all network - interfaces that have them, use current time and process ID). + not, the previous algorithm (get last 4 bytes of hardware addresses from all network + interfaces that have them, use current time and process ID) will be used. 3. The IPv6-only preferred option, defined in RFC8925, is now supported. [gitlab #132] @@ -60,7 +60,7 @@ by Eric Young (eay@cryptsoft.com). for testing on OpenWRT. [Gitlab #218] -- Added support of the new DHCPv4 option v6-only-preferred specified +- Added support for the new DHCPv4 option v6-only-preferred specified in RFC 8925. A new reason code, V6ONLY, was added to the client script and the client Linux script sample was updated. [Gitlab #132] -- cgit v1.2.1 From 83c529259ffec4fc280e3264d7a98282933b3cad Mon Sep 17 00:00:00 2001 From: Tomek Mrugalski Date: Mon, 24 Jan 2022 19:51:49 +0100 Subject: [#221] Addressed review comments: - rephrased PRNG fix explanation (thanks, Suzanne!) - removed duplicate sections (thanks, Francis!) - rewrapped long lines to no cross 80 columns (thanks, Thomas!) --- RELNOTES | 71 +++++++++++++++++++++++----------------------------------------- 1 file changed, 25 insertions(+), 46 deletions(-) diff --git a/RELNOTES b/RELNOTES index 525f293d..2d8b0d6e 100644 --- a/RELNOTES +++ b/RELNOTES @@ -1,43 +1,16 @@ Internet Systems Consortium DHCP Distribution - Version 4.4.3 + Version 4.4.3 26 January 2022 Release Notes NEW FEATURES -Please note that that ISC DHCP is now licensed under the Mozilla Public License, -MPL 2.0. Please see https://www.mozilla.org/en-US/MPL/2.0/ to read the MPL 2.0 -license terms. +Please note that that ISC DHCP is now licensed under the Mozilla Public +License, MPL 2.0. Please see https://www.mozilla.org/en-US/MPL/2.0/ to read +the MPL 2.0 license terms. NOTE: The client and relay components are now End-Of-Life. -4.4.3 is the final release for those components. - -While release 4.4.3 is primarily a maintenance release that addresses a number -of issues, it does introduce a few new features: - -1. BIND libraries updated to the latest version, 9.11.36. This fixes a number - of compilation issues on various systems, including OpenWRT. - [gitlab #218, #171, #180, #192] - -2. Improved PRNG initialization. There is now a new configure flag --with-randomdev=PATH - that specifies the device from which to read the initial seed. That is typically - /dev/random (the default value) or /dev/urandom, but may be other as preferred on - your system. If this option is enabled, dhclient will use the file as a seed. If - not, the previous algorithm (get last 4 bytes of hardware addresses from all network - interfaces that have them, use current time and process ID) will be used. - -3. The IPv6-only preferred option, defined in RFC8925, is now supported. - [gitlab #132] - -4. Compilation fixed for gcc-10. - [gitlab #117] - -5. Client fix: wrong argument to memcpy() - [gitlab #190] - -6. The server's limit on the size of lease file that can be loaded at start up - is now only enforced on 32-bit systems. - [gitlab #64] +4.4.3 is the final release for those components. For information on how to install, configure and run this software, as well as how to find documentation and report bugs, please consult the @@ -46,8 +19,8 @@ README file. ISC DHCP uses standard GNU configure for installation. Please review the output of "./configure --help" to see what options are available. -The system has only been tested on Linux, FreeBSD, and Solaris, and may not -work on other platforms. Please report any problems and suggested fixes to +The system has only been tested on Linux, and FreeBSD, and may not work on +other platforms. Please report any problems and suggested fixes to . ISC DHCP is open source software maintained by Internet Systems @@ -56,13 +29,14 @@ by Eric Young (eay@cryptsoft.com). Changes since 4.4.2 (New Features) -- BIND9 version updated to latest 9.11.36. Thanks to Philip Prindeville - for testing on OpenWRT. - [Gitlab #218] +- BIND libraries updated to the latest version, 9.11.36. This fixes a number + of compilation issues on various systems, including OpenWRT. Thanks to + Philip Prindeville for testing on OpenWRT. + [Gitlab #218, #171, #180, #192] - Added support for the new DHCPv4 option v6-only-preferred specified -in RFC 8925. A new reason code, V6ONLY, was added to the client script -and the client Linux script sample was updated. + in RFC 8925. A new reason code, V6ONLY, was added to the client script + and the client Linux script sample was updated. [Gitlab #132] Changes since 4.4.2 (Bug Fixes) @@ -78,11 +52,16 @@ and the client Linux script sample was updated. is now only enforced on 32-bit systems. [Gitlab #92] -- After a report about predictable seeding of transaction identifier - pseudo-random generation on systems where process identifiers are not - random the already existing --with-randomdev configure argument was - extended. Please remember its default is "/dev/random" which is not - convenient on all systems. +- The PRNG initialization has been improved. It now uses the configure flag + `--with-randomdev=PATH`, which specifies the device from which to read the + initial seed. That is typically `/dev/random` (the default value) or + `/dev/urandom`, but may be specified otherwise on the local system. If not + explicitly specified, the default device (`/dev/random`) is used. The old + behavior can be forced by disabling this feature (`--with-randomdev=no`). + If the initialization is disabled or reading from the random device fails, + the previous algorithm (retrieve the last four bytes of hardware addresses + from all network interfaces that have them, and use the current time and + process ID) is used. [Gitlab #197] - Minor dhclient code fix to remove compilation warnings. @@ -112,11 +91,11 @@ and the client Linux script sample was updated. - Corrected buffer pointer logic in dhcrelay functions that manipulate agent relay options. Thanks to Thomas Imbert of MSRC Vulnerabilities & Mitigations for reporting the issue. - [#71] + [Gitlab #71] - Corrected unresolved symbol errors building relay_unittests when configured to build using libtool. - [#80] + [Gitlab #80] Changes since 4.4.1 (New Features) -- cgit v1.2.1 From 3c7575190af597102057e83a5cbf359ac1bbdf00 Mon Sep 17 00:00:00 2001 From: Tomek Mrugalski Date: Mon, 24 Jan 2022 19:54:06 +0100 Subject: [#221] Minor edits in README - including => included - whitespace corrections in RELEASE STATUS --- README | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README b/README index fe2c145e..974afd69 100644 --- a/README +++ b/README @@ -70,7 +70,7 @@ for which is distributed in the relay/ subdirectory. The relay component is End-of-Life and will not be part of future releases. KEA Migration Assistant documentation, including how to build, install -and use it, is including in the keama/ directory. +and use it, is included in the keama/ directory. To read installed manual pages, use the man command. Type "man page" where page is the name of the manual page. This will only work if @@ -94,9 +94,9 @@ directory, it may not have up-to-date information). RELEASE STATUS -Version 4.4.3 is a maintenance release of the DHCP client, relay and -server. It is the final release for the client and relay components, -which have reached end-of-life and will no longer be maintained. +Version 4.4.3 is a maintenance release of the DHCP client, relay and +server. It is the final release for the client and relay components, +which have reached end-of-life and will no longer be maintained. BUILDING THE DHCP DISTRIBUTION -- cgit v1.2.1 From 49a7fb582dc7af0f7d25e28878001e9e8fea8979 Mon Sep 17 00:00:00 2001 From: Wlodek Wencel Date: Tue, 25 Jan 2022 16:24:16 +0100 Subject: copy rights update --- README | 10 +++++----- RELNOTES | 2 +- client/client_tables.c | 2 +- client/clparse.c | 2 +- client/dhc6.c | 2 +- client/dhclient-script.8 | 2 +- client/dhclient.8 | 2 +- client/dhclient.c | 2 +- client/dhclient.conf.5 | 2 +- client/dhclient.leases.5 | 2 +- client/tests/duid_unittest.c | 2 +- common/alloc.c | 2 +- common/bpf.c | 2 +- common/comapi.c | 2 +- common/conflex.c | 2 +- common/ctrace.c | 2 +- common/dhcp-eval.5 | 2 +- common/dhcp-options.5 | 2 +- common/dhcp4o6.c | 2 +- common/discover.c | 2 +- common/dispatch.c | 2 +- common/dlpi.c | 2 +- common/dns.c | 2 +- common/ethernet.c | 2 +- common/execute.c | 2 +- common/fddi.c | 2 +- common/icmp.c | 2 +- common/inet.c | 2 +- common/lpf.c | 2 +- common/memory.c | 2 +- common/nit.c | 2 +- common/ns_name.c | 2 +- common/options.c | 2 +- common/packet.c | 2 +- common/parse.c | 2 +- common/print.c | 2 +- common/raw.c | 2 +- common/resolv.c | 2 +- common/socket.c | 2 +- common/tables.c | 2 +- common/tr.c | 2 +- common/tree.c | 2 +- common/upf.c | 2 +- configure.ac | 2 +- dhcpctl/callback.c | 2 +- dhcpctl/cltest.c | 2 +- dhcpctl/cltest2.c | 2 +- dhcpctl/dhcpctl.c | 2 +- dhcpctl/dhcpctl.h | 2 +- dhcpctl/omshell.1 | 2 +- dhcpctl/omshell.c | 2 +- dhcpctl/remote.c | 2 +- doc/Makefile | 2 +- doc/References.html | 2 +- doc/References.txt | 2 +- doc/References.xml | 2 +- doc/ja_JP.eucJP/dhclient-script.8 | 2 +- doc/ja_JP.eucJP/dhclient.8 | 2 +- doc/ja_JP.eucJP/dhclient.conf.5 | 2 +- doc/ja_JP.eucJP/dhclient.leases.5 | 2 +- doc/ja_JP.eucJP/dhcp-eval.5 | 2 +- doc/ja_JP.eucJP/dhcp-options.5 | 2 +- includes/arpa/nameser.h | 2 +- includes/cdefs.h | 2 +- includes/ctrace.h | 2 +- includes/dhcp.h | 2 +- includes/dhcp6.h | 2 +- includes/dhcpd.h | 2 +- includes/dhctoken.h | 2 +- includes/failover.h | 2 +- includes/inet.h | 2 +- includes/ldap_casa.h | 2 +- includes/netinet/udp.h | 2 +- includes/ns_name.h | 2 +- includes/omapip/alloc.h | 2 +- includes/omapip/buffer.h | 2 +- includes/omapip/convert.h | 2 +- includes/omapip/hash.h | 2 +- includes/omapip/isclib.h | 2 +- includes/omapip/omapip.h | 2 +- includes/omapip/omapip_p.h | 2 +- includes/omapip/result.h | 2 +- includes/omapip/trace.h | 2 +- includes/osdep.h | 2 +- includes/statement.h | 2 +- includes/tree.h | 2 +- keama/conflex.c | 2 +- keama/confparse.c | 2 +- keama/data.c | 2 +- keama/data.h | 2 +- keama/dhctoken.h | 2 +- keama/eval.c | 2 +- keama/json.c | 2 +- keama/keama.8 | 2 +- keama/keama.c | 2 +- keama/keama.h | 2 +- keama/options.c | 2 +- keama/parse.c | 2 +- keama/print.c | 2 +- keama/reduce.c | 2 +- omapip/alloc.c | 2 +- omapip/array.c | 2 +- omapip/auth.c | 2 +- omapip/buffer.c | 2 +- omapip/connection.c | 2 +- omapip/convert.c | 2 +- omapip/dispatch.c | 2 +- omapip/errwarn.c | 2 +- omapip/generic.c | 2 +- omapip/handle.c | 2 +- omapip/hash.c | 2 +- omapip/isclib.c | 2 +- omapip/listener.c | 2 +- omapip/message.c | 2 +- omapip/omapi.3 | 3 +-- omapip/protocol.c | 2 +- omapip/result.c | 2 +- omapip/support.c | 2 +- omapip/test.c | 2 +- omapip/toisc.c | 2 +- omapip/trace.c | 2 +- relay/dhcrelay.8 | 2 +- relay/dhcrelay.c | 4 ++-- relay/tests/relay_unittests.c | 2 +- server/bootp.c | 2 +- server/class.c | 2 +- server/confpars.c | 2 +- server/db.c | 2 +- server/ddns.c | 2 +- server/dhcp.c | 2 +- server/dhcpd.8 | 2 +- server/dhcpd.c | 4 ++-- server/dhcpd.conf.5 | 2 +- server/dhcpd.leases.5 | 2 +- server/failover.c | 2 +- server/ldap_casa.c | 2 +- server/leasechain.c | 2 +- server/mdb.c | 2 +- server/omapi.c | 2 +- server/salloc.c | 2 +- server/stables.c | 2 +- server/tests/hash_unittest.c | 2 +- tests/DHCPv6/000-badmsgtype.pl | 2 +- tests/DHCPv6/010-solicit-noclientid.pl | 2 +- tests/DHCPv6/011-solicit-serverid.pl | 2 +- tests/DHCPv6/020-advertise-mcast.pl | 2 +- tests/DHCPv6/030-request-noclientid.pl | 2 +- tests/DHCPv6/031-request-noserverid.pl | 2 +- tests/DHCPv6/032-request-badduid.pl | 2 +- tests/DHCPv6/110-information-request-ia_na.pl | 2 +- tests/DHCPv6/111-information-request-ia_ta.pl | 2 +- tests/DHCPv6/112-badduid.pl | 2 +- tests/DHCPv6/210-solicit-nohost.pl | 2 +- tests/DHCPv6/211-solicit-opt-in-na.pl | 2 +- tests/DHCPv6/212-solicit-opt-in-na-norapidcommit.pl | 2 +- tests/DHCPv6/280-release-nohost.pl | 2 +- tests/DHCPv6/281-release-bad-address.pl | 2 +- tests/DHCPv6/282-release-no-address.pl | 2 +- tests/DHCPv6/283-release.pl | 2 +- tests/DHCPv6/290-decline-nohost.pl | 2 +- tests/DHCPv6/291-decline-bad-address.pl | 2 +- tests/DHCPv6/292-decline-no-address.pl | 2 +- tests/DHCPv6/293-decline.pl | 2 +- tests/DHCPv6/dhcp_client.pm | 2 +- tests/DHCPv6/stubcli-opt-in-na.pl | 2 +- tests/DHCPv6/stubcli.pl | 2 +- util/bind-kit.sh | 2 +- 167 files changed, 173 insertions(+), 174 deletions(-) diff --git a/README b/README index 974afd69..2e9203dc 100644 --- a/README +++ b/README @@ -1,5 +1,5 @@ Internet Systems Consortium DHCP Distribution - Version 4.4.3 + Version 4.4.3b1 26 January 2022 README FILE @@ -94,7 +94,7 @@ directory, it may not have up-to-date information). RELEASE STATUS -Version 4.4.3 is a maintenance release of the DHCP client, relay and +Version 4.4.3b1 is a maintenance release of the DHCP client, relay and server. It is the final release for the client and relay components, which have reached end-of-life and will no longer be maintained. @@ -105,12 +105,12 @@ which have reached end-of-life and will no longer be maintained. To build the DHCP Distribution, unpack the compressed tar file using the tar utility and the gzip command - type something like: - gunzip dhcp-4.4.3.tar.gz - tar xvf dhcp-4.4.3.tar + gunzip dhcp-4.4.3b1.tar.gz + tar xvf dhcp-4.4.3b1.tar CONFIGURING IT -Now, cd to the dhcp-4.4.3 subdirectory that you've just created and +Now, cd to the dhcp-4.4.3b1 subdirectory that you've just created and configure the source tree by typing: ./configure diff --git a/RELNOTES b/RELNOTES index 2d8b0d6e..e7b3b09a 100644 --- a/RELNOTES +++ b/RELNOTES @@ -1,5 +1,5 @@ Internet Systems Consortium DHCP Distribution - Version 4.4.3 + Version 4.4.3b1 26 January 2022 Release Notes diff --git a/client/client_tables.c b/client/client_tables.c index fc915a15..25f471d9 100644 --- a/client/client_tables.c +++ b/client/client_tables.c @@ -3,7 +3,7 @@ Tables of information only used by client... */ /* - * Copyright (c) 2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2017-2022 Internet Systems Consortium, Inc. ("ISC") * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this diff --git a/client/clparse.c b/client/clparse.c index 2ba0761a..74ca499d 100644 --- a/client/clparse.c +++ b/client/clparse.c @@ -3,7 +3,7 @@ Parser for dhclient config and lease files... */ /* - * Copyright (c) 2004-2019 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/client/dhc6.c b/client/dhc6.c index ea7cce83..35cf3d08 100644 --- a/client/dhc6.c +++ b/client/dhc6.c @@ -1,7 +1,7 @@ /* dhc6.c - DHCPv6 client routines. */ /* - * Copyright (c) 2012-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2012-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 2006-2010 by Internet Systems Consortium, Inc. ("ISC") * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/client/dhclient-script.8 b/client/dhclient-script.8 index ee1a5060..5e5bd3d0 100644 --- a/client/dhclient-script.8 +++ b/client/dhclient-script.8 @@ -1,6 +1,6 @@ .\" dhclient-script.8 .\" -.\" Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 1996-2003 by Internet Software Consortium .\" .\" This Source Code Form is subject to the terms of the Mozilla Public diff --git a/client/dhclient.8 b/client/dhclient.8 index 9382779d..861ff569 100644 --- a/client/dhclient.8 +++ b/client/dhclient.8 @@ -1,6 +1,6 @@ .\" $Id: dhclient.8,v 1.36 2011/04/15 21:58:12 sar Exp $ .\" -.\" Copyright (c) 2004-2019 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 1996-2003 by Internet Software Consortium .\" .\" This Source Code Form is subject to the terms of the Mozilla Public diff --git a/client/dhclient.c b/client/dhclient.c index 7a9b5926..46dc3a71 100644 --- a/client/dhclient.c +++ b/client/dhclient.c @@ -77,7 +77,7 @@ int decline_wait_time = 10; /* Default to 10 secs per, RFC 2131, 3.1.5 */ #define ASSERT_STATE(state_is, state_shouldbe) {} #ifndef UNIT_TEST -static const char copyright[] = "Copyright 2004-2020 Internet Systems Consortium."; +static const char copyright[] = "Copyright 2004-2022 Internet Systems Consortium."; static const char arr [] = "All rights reserved."; static const char message [] = "Internet Systems Consortium DHCP Client"; static const char url [] = "For info, please visit https://www.isc.org/software/dhcp/"; diff --git a/client/dhclient.conf.5 b/client/dhclient.conf.5 index d973d11b..dbe6f7e8 100644 --- a/client/dhclient.conf.5 +++ b/client/dhclient.conf.5 @@ -1,6 +1,6 @@ .\" $Id: dhclient.conf.5,v 1.34 2012/01/24 22:23:39 sar Exp $ .\" -.\" Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 1996-2003 by Internet Software Consortium .\" .\" This Source Code Form is subject to the terms of the Mozilla Public diff --git a/client/dhclient.leases.5 b/client/dhclient.leases.5 index 14f743a8..4d9c3d62 100644 --- a/client/dhclient.leases.5 +++ b/client/dhclient.leases.5 @@ -1,6 +1,6 @@ .\" $Id: dhclient.leases.5,v 1.8 2011/02/23 23:50:55 sar Exp $ .\" -.\" Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 1997-2003 by Internet Software Consortium .\" .\" This Source Code Form is subject to the terms of the Mozilla Public diff --git a/client/tests/duid_unittest.c b/client/tests/duid_unittest.c index fdfdf433..f3e9bdc3 100644 --- a/client/tests/duid_unittest.c +++ b/client/tests/duid_unittest.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2017-2022 Internet Systems Consortium, Inc. ("ISC") * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this diff --git a/common/alloc.c b/common/alloc.c index 05c00b88..11bcdabd 100644 --- a/common/alloc.c +++ b/common/alloc.c @@ -3,7 +3,7 @@ Memory allocation... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/bpf.c b/common/bpf.c index 7e511394..0bffcbf9 100644 --- a/common/bpf.c +++ b/common/bpf.c @@ -3,7 +3,7 @@ BPF socket interface code, originally contributed by Archie Cobbs. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/comapi.c b/common/comapi.c index 050fe110..d1bfe8ae 100644 --- a/common/comapi.c +++ b/common/comapi.c @@ -3,7 +3,7 @@ OMAPI object interfaces for the DHCP server. */ /* - * Copyright (c) 2004-2017 Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/conflex.c b/common/conflex.c index e8d8c629..8b01dfb8 100644 --- a/common/conflex.c +++ b/common/conflex.c @@ -3,7 +3,7 @@ Lexical scanner for dhcpd config file... */ /* - * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/ctrace.c b/common/ctrace.c index cdf85c4a..282392b0 100644 --- a/common/ctrace.c +++ b/common/ctrace.c @@ -3,7 +3,7 @@ Subroutines that support dhcp tracing... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 2001-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/dhcp-eval.5 b/common/dhcp-eval.5 index fb89adf4..0142377e 100644 --- a/common/dhcp-eval.5 +++ b/common/dhcp-eval.5 @@ -1,6 +1,6 @@ .\" $Id: dhcp-eval.5,v 1.33 2012/05/17 15:50:14 sar Exp $ .\" -.\" Copyright (c) 2009-2012,2014-2015 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (C) 2009-2022 Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 2004,2007 by Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 1996-2003 by Internet Software Consortium .\" diff --git a/common/dhcp-options.5 b/common/dhcp-options.5 index a70ce1e0..51f80f7a 100644 --- a/common/dhcp-options.5 +++ b/common/dhcp-options.5 @@ -1,6 +1,6 @@ .\" $Id: dhcp-options.5,v 1.50 2011/05/20 13:48:32 tomasz Exp $ .\" -.\" Copyright (c) 2004-2019 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 1996-2003 by Internet Software Consortium .\" .\" Permission to use, copy, modify, and distribute this software for any diff --git a/common/dhcp4o6.c b/common/dhcp4o6.c index 7d846f29..0f2c9c5f 100644 --- a/common/dhcp4o6.c +++ b/common/dhcp4o6.c @@ -3,7 +3,7 @@ DHCPv4 over DHCPv6 shared code... */ /* - * Copyright (c) 2016-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2016-2022 Internet Systems Consortium, Inc. ("ISC") * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this diff --git a/common/discover.c b/common/discover.c index 1220b061..ed338b44 100644 --- a/common/discover.c +++ b/common/discover.c @@ -3,7 +3,7 @@ Find and identify the network interfaces. */ /* - * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/dispatch.c b/common/dispatch.c index 6687ab17..7def34ca 100644 --- a/common/dispatch.c +++ b/common/dispatch.c @@ -3,7 +3,7 @@ Network input dispatcher... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/dlpi.c b/common/dlpi.c index 153aa519..f2332c0f 100644 --- a/common/dlpi.c +++ b/common/dlpi.c @@ -3,7 +3,7 @@ Data Link Provider Interface (DLPI) network interface code. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/dns.c b/common/dns.c index 012e4df8..356ecd6a 100644 --- a/common/dns.c +++ b/common/dns.c @@ -3,7 +3,7 @@ Domain Name Service subroutines. */ /* - * Copyright (c) 2004-2019 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 2001-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/ethernet.c b/common/ethernet.c index 1621aa29..591493d4 100644 --- a/common/ethernet.c +++ b/common/ethernet.c @@ -3,7 +3,7 @@ Packet assembly code, originally contributed by Archie Cobbs. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/execute.c b/common/execute.c index 5f285377..a626aaae 100644 --- a/common/execute.c +++ b/common/execute.c @@ -3,7 +3,7 @@ Support for executable statements. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1998-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/fddi.c b/common/fddi.c index 16ac2da7..701167f6 100644 --- a/common/fddi.c +++ b/common/fddi.c @@ -3,7 +3,7 @@ Packet assembly code, originally contributed by Archie Cobbs. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/icmp.c b/common/icmp.c index cdf92a37..e652198d 100644 --- a/common/icmp.c +++ b/common/icmp.c @@ -4,7 +4,7 @@ responses. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/inet.c b/common/inet.c index dcb628ce..0f7f1683 100644 --- a/common/inet.c +++ b/common/inet.c @@ -4,7 +4,7 @@ way... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/lpf.c b/common/lpf.c index e66e3ad4..bd20b3f5 100644 --- a/common/lpf.c +++ b/common/lpf.c @@ -4,7 +4,7 @@ Support Services in Vancouver, B.C. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/memory.c b/common/memory.c index 8e31154a..360bd8cf 100644 --- a/common/memory.c +++ b/common/memory.c @@ -3,7 +3,7 @@ Memory-resident database... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/nit.c b/common/nit.c index 10deb313..ba62488f 100644 --- a/common/nit.c +++ b/common/nit.c @@ -4,7 +4,7 @@ with one crucial tidbit of help from Stu Grossmen. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/ns_name.c b/common/ns_name.c index f4eda437..f51f5411 100644 --- a/common/ns_name.c +++ b/common/ns_name.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004-2019 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/options.c b/common/options.c index f4e86cf5..92c8fee6 100644 --- a/common/options.c +++ b/common/options.c @@ -3,7 +3,7 @@ DHCP options parsing and reassembly. */ /* - * Copyright (c) 2004-2019 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/packet.c b/common/packet.c index 63b4ff8e..49795c4c 100644 --- a/common/packet.c +++ b/common/packet.c @@ -3,7 +3,7 @@ Packet assembly code, originally contributed by Archie Cobbs. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/parse.c b/common/parse.c index e884ba32..5e3cce7d 100644 --- a/common/parse.c +++ b/common/parse.c @@ -3,7 +3,7 @@ Common parser code for dhcpd and dhclient. */ /* - * Copyright (c) 2004-2019 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/print.c b/common/print.c index 470b6495..ebe985d8 100644 --- a/common/print.c +++ b/common/print.c @@ -3,7 +3,7 @@ Turn data structures into printable text. */ /* - * Copyright (c) 2004-2018 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/raw.c b/common/raw.c index a7496916..4fd8157c 100644 --- a/common/raw.c +++ b/common/raw.c @@ -16,7 +16,7 @@ Sigh. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/resolv.c b/common/resolv.c index f59cae88..5fd683f4 100644 --- a/common/resolv.c +++ b/common/resolv.c @@ -3,7 +3,7 @@ Parser for /etc/resolv.conf file. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/socket.c b/common/socket.c index c3e5f034..3953eac3 100644 --- a/common/socket.c +++ b/common/socket.c @@ -3,7 +3,7 @@ BSD socket interface code... */ /* - * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/tables.c b/common/tables.c index 5421170c..be37737c 100644 --- a/common/tables.c +++ b/common/tables.c @@ -3,7 +3,7 @@ Tables of information... */ /* - * Copyright (c) 2004-2019 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/tr.c b/common/tr.c index 70c9b10e..39052bf5 100644 --- a/common/tr.c +++ b/common/tr.c @@ -4,7 +4,7 @@ Contributed in May of 1999 by Andrew Chittenden */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/tree.c b/common/tree.c index e17df578..68173354 100644 --- a/common/tree.c +++ b/common/tree.c @@ -3,7 +3,7 @@ Routines for manipulating parse trees... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/common/upf.c b/common/upf.c index 85a1187e..37e5cb28 100644 --- a/common/upf.c +++ b/common/upf.c @@ -3,7 +3,7 @@ Ultrix PacketFilter interface code. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/configure.ac b/configure.ac index b2c306b7..de2a6a49 100644 --- a/configure.ac +++ b/configure.ac @@ -1,4 +1,4 @@ -AC_INIT([DHCP],[4.4.3],[dhcp-users@isc.org]) +AC_INIT([DHCP],[4.4.3b1],[dhcp-users@isc.org]) # we specify "foreign" to avoid having to have the GNU mandated files, diff --git a/dhcpctl/callback.c b/dhcpctl/callback.c index 5ab28c37..dc992085 100644 --- a/dhcpctl/callback.c +++ b/dhcpctl/callback.c @@ -3,7 +3,7 @@ The dhcpctl callback object. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/dhcpctl/cltest.c b/dhcpctl/cltest.c index ea03d3b3..8a64d22b 100644 --- a/dhcpctl/cltest.c +++ b/dhcpctl/cltest.c @@ -3,7 +3,7 @@ Example program that uses the dhcpctl library. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 2000-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/dhcpctl/cltest2.c b/dhcpctl/cltest2.c index 821441cd..8e02b18b 100644 --- a/dhcpctl/cltest2.c +++ b/dhcpctl/cltest2.c @@ -3,7 +3,7 @@ Example program that uses the dhcpctl library. */ /* - * Copyright (c) 2020 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2020-2022 Internet Systems Consortium, Inc. ("ISC") * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this diff --git a/dhcpctl/dhcpctl.c b/dhcpctl/dhcpctl.c index 924db321..cb84b4e0 100644 --- a/dhcpctl/dhcpctl.c +++ b/dhcpctl/dhcpctl.c @@ -3,7 +3,7 @@ Subroutines providing general support for objects. */ /* - * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/dhcpctl/dhcpctl.h b/dhcpctl/dhcpctl.h index a356699c..61a2cd4b 100644 --- a/dhcpctl/dhcpctl.h +++ b/dhcpctl/dhcpctl.h @@ -3,7 +3,7 @@ Subroutines providing general support for objects. */ /* - * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * Permission to use, copy, modify, and distribute this software for any diff --git a/dhcpctl/omshell.1 b/dhcpctl/omshell.1 index ffc4e46d..918c1e96 100644 --- a/dhcpctl/omshell.1 +++ b/dhcpctl/omshell.1 @@ -1,6 +1,6 @@ .\" $Id: omshell.1,v 1.6 2009/11/24 02:06:56 sar Exp $ .\" -.\" Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 2001-2003 by Internet Software Consortium .\" .\" Permission to use, copy, modify, and distribute this software for any diff --git a/dhcpctl/omshell.c b/dhcpctl/omshell.c index ab99b0f4..afbccf69 100644 --- a/dhcpctl/omshell.c +++ b/dhcpctl/omshell.c @@ -3,7 +3,7 @@ Examine and modify omapi objects. */ /* - * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 2001-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/dhcpctl/remote.c b/dhcpctl/remote.c index 0ec119a4..93904a0d 100644 --- a/dhcpctl/remote.c +++ b/dhcpctl/remote.c @@ -3,7 +3,7 @@ The dhcpctl remote object. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/doc/Makefile b/doc/Makefile index aeda78bd..e55b12f0 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -1,4 +1,4 @@ -# Copyright (c) 2004-2006,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") # Copyright (c) 1995-2003 by Internet Software Consortium # # Permission to use, copy, modify, and distribute this software for any diff --git a/doc/References.html b/doc/References.html index 759bb5df..4f9017a4 100644 --- a/doc/References.html +++ b/doc/References.html @@ -157,7 +157,7 @@

Copyright Notice

-

Copyright (c) 2006-2017 by Internet Systems +

Copyright (C) 2006-2022 Internet Systems Consortium, Inc. ("ISC")

This Source Code Form is subject to the terms of the Mozilla Public diff --git a/doc/References.txt b/doc/References.txt index 096f2a2a..d4c5d915 100644 --- a/doc/References.txt +++ b/doc/References.txt @@ -17,7 +17,7 @@ Abstract Copyright Notice - Copyright (c) 2006-2017 by Internet Systems Consortium, + Copyright (C) 2006-2022 Internet Systems Consortium, Inc. ("ISC") This Source Code Form is subject to the terms of the Mozilla Public diff --git a/doc/References.xml b/doc/References.xml index 95162ded..7f310ff8 100644 --- a/doc/References.xml +++ b/doc/References.xml @@ -147,7 +147,7 @@ - Copyright (c) 2006-2017 by Internet Systems + Copyright (C) 2006-2022 Internet Systems Consortium, Inc. ("ISC") This Source Code Form is subject to the terms of the Mozilla Public diff --git a/doc/ja_JP.eucJP/dhclient-script.8 b/doc/ja_JP.eucJP/dhclient-script.8 index d8f76001..97e7b465 100644 --- a/doc/ja_JP.eucJP/dhclient-script.8 +++ b/doc/ja_JP.eucJP/dhclient-script.8 @@ -1,6 +1,6 @@ .\" $Id: dhclient-script.8,v 1.4 2009/11/24 02:06:56 sar Exp $ .\" -.\" Copyright (c) 2004,2009,2016 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 1996-2003 by Internet Software Consortium .\" .\" Permission to use, copy, modify, and distribute this software for any diff --git a/doc/ja_JP.eucJP/dhclient.8 b/doc/ja_JP.eucJP/dhclient.8 index 3de0be1a..1719d6fa 100644 --- a/doc/ja_JP.eucJP/dhclient.8 +++ b/doc/ja_JP.eucJP/dhclient.8 @@ -1,6 +1,6 @@ .\" $Id: dhclient.8,v 1.4 2009/11/24 02:06:56 sar Exp $ .\" -.\" Copyright (c) 2004,2009 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 1996-2003 by Internet Software Consortium .\" .\" Permission to use, copy, modify, and distribute this software for any diff --git a/doc/ja_JP.eucJP/dhclient.conf.5 b/doc/ja_JP.eucJP/dhclient.conf.5 index 79940df6..f7ba1991 100644 --- a/doc/ja_JP.eucJP/dhclient.conf.5 +++ b/doc/ja_JP.eucJP/dhclient.conf.5 @@ -1,6 +1,6 @@ .\" $Id: dhclient.conf.5,v 1.4 2009/11/24 02:06:56 sar Exp $ .\" -.\" Copyright (c) 2004,2009,2016 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 1996-2003 by Internet Software Consortium .\" .\" Permission to use, copy, modify, and distribute this software for any diff --git a/doc/ja_JP.eucJP/dhclient.leases.5 b/doc/ja_JP.eucJP/dhclient.leases.5 index 7e0ebfd2..9d9a6a21 100644 --- a/doc/ja_JP.eucJP/dhclient.leases.5 +++ b/doc/ja_JP.eucJP/dhclient.leases.5 @@ -1,6 +1,6 @@ .\" $Id: dhclient.leases.5,v 1.4 2009/11/24 02:06:56 sar Exp $ .\" -.\" Copyright (c) 2004,2009,2016 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 1997-2003 by Internet Software Consortium .\" .\" Permission to use, copy, modify, and distribute this software for any diff --git a/doc/ja_JP.eucJP/dhcp-eval.5 b/doc/ja_JP.eucJP/dhcp-eval.5 index ef2d7d2e..b787575c 100644 --- a/doc/ja_JP.eucJP/dhcp-eval.5 +++ b/doc/ja_JP.eucJP/dhcp-eval.5 @@ -1,6 +1,6 @@ .\" $Id: dhcp-eval.5,v 1.5 2009/11/24 02:06:56 sar Exp $ .\" -.\" Copyright (c) 2004,2009,2016 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 1996-2003 by Internet Software Consortium .\" .\" Permission to use, copy, modify, and distribute this software for any diff --git a/doc/ja_JP.eucJP/dhcp-options.5 b/doc/ja_JP.eucJP/dhcp-options.5 index ecdadc74..9a41445c 100644 --- a/doc/ja_JP.eucJP/dhcp-options.5 +++ b/doc/ja_JP.eucJP/dhcp-options.5 @@ -1,6 +1,6 @@ .\" $Id: dhcp-options.5,v 1.5 2010/07/20 21:09:14 dhankins Exp $ .\" -.\" Copyright (c) 2004,2009,2016 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 1996-2003 by Internet Software Consortium .\" .\" Permission to use, copy, modify, and distribute this software for any diff --git a/includes/arpa/nameser.h b/includes/arpa/nameser.h index 54ddb5dc..499924ce 100644 --- a/includes/arpa/nameser.h +++ b/includes/arpa/nameser.h @@ -28,7 +28,7 @@ */ /* - * Copyright (c) 2004,2009 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * Permission to use, copy, modify, and distribute this software for any diff --git a/includes/cdefs.h b/includes/cdefs.h index 1a96b2ea..180ab180 100644 --- a/includes/cdefs.h +++ b/includes/cdefs.h @@ -4,7 +4,7 @@ /* * Copyright (c) 1995 RadioMail Corporation. All rights reserved. - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/includes/ctrace.h b/includes/ctrace.h index b87505c7..1c60b428 100644 --- a/includes/ctrace.h +++ b/includes/ctrace.h @@ -3,7 +3,7 @@ Definitions for dhcp tracing facility... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 2001-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/includes/dhcp.h b/includes/dhcp.h index 8f181bbe..cafe1728 100644 --- a/includes/dhcp.h +++ b/includes/dhcp.h @@ -3,7 +3,7 @@ Protocol structures... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/includes/dhcp6.h b/includes/dhcp6.h index 3a8e555e..a5fbfef4 100644 --- a/includes/dhcp6.h +++ b/includes/dhcp6.h @@ -3,7 +3,7 @@ DHCPv6 Protocol structures... */ /* - * Copyright (c) 2006-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2006-2022 Internet Systems Consortium, Inc. ("ISC") * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this diff --git a/includes/dhcpd.h b/includes/dhcpd.h index d7c8e9cd..f68b2288 100644 --- a/includes/dhcpd.h +++ b/includes/dhcpd.h @@ -3,7 +3,7 @@ Definitions for dhcpd... */ /* - * Copyright (c) 2004-2019 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/includes/dhctoken.h b/includes/dhctoken.h index 3e71a473..e6d125fb 100644 --- a/includes/dhctoken.h +++ b/includes/dhctoken.h @@ -3,7 +3,7 @@ Tokens for config file lexer and parser. */ /* - * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/includes/failover.h b/includes/failover.h index 3f35f480..7410162e 100644 --- a/includes/failover.h +++ b/includes/failover.h @@ -3,7 +3,7 @@ Definitions for address trees... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 2000-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/includes/inet.h b/includes/inet.h index 4fe2cade..32e8f03a 100644 --- a/includes/inet.h +++ b/includes/inet.h @@ -3,7 +3,7 @@ Portable definitions for internet addresses */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/includes/ldap_casa.h b/includes/ldap_casa.h index 3408425b..1ecbbcad 100644 --- a/includes/ldap_casa.h +++ b/includes/ldap_casa.h @@ -32,7 +32,7 @@ */ /* - * Copyright (c) 2004-2010 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * Permission to use, copy, modify, and distribute this software for any diff --git a/includes/netinet/udp.h b/includes/netinet/udp.h index 01e46102..ec37299b 100644 --- a/includes/netinet/udp.h +++ b/includes/netinet/udp.h @@ -32,7 +32,7 @@ */ /* - * Portions Copyright (c) 2004,2009 by Internet Systems Consortium, Inc. ("ISC") + * Portions Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Portions Copyright (c) 2000-2003 by Internet Software Consortium * * Permission to use, copy, modify, and distribute this software for any diff --git a/includes/ns_name.h b/includes/ns_name.h index 03e54ee5..5b00ea1f 100644 --- a/includes/ns_name.h +++ b/includes/ns_name.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004-2019 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 2001-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/includes/omapip/alloc.h b/includes/omapip/alloc.h index 0c8fb924..9256df0d 100644 --- a/includes/omapip/alloc.h +++ b/includes/omapip/alloc.h @@ -3,7 +3,7 @@ Definitions for the object management API protocol memory allocation... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/includes/omapip/buffer.h b/includes/omapip/buffer.h index 4970e1dd..b8d4fa9f 100644 --- a/includes/omapip/buffer.h +++ b/includes/omapip/buffer.h @@ -3,7 +3,7 @@ Definitions for the object management API protocol buffering... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/includes/omapip/convert.h b/includes/omapip/convert.h index f466d35f..0664e31e 100644 --- a/includes/omapip/convert.h +++ b/includes/omapip/convert.h @@ -3,7 +3,7 @@ Safe copying of integers into and out of a non-aligned memory buffer. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/includes/omapip/hash.h b/includes/omapip/hash.h index b9f14f97..ea6cfd85 100644 --- a/includes/omapip/hash.h +++ b/includes/omapip/hash.h @@ -3,7 +3,7 @@ Definitions for hashing... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/includes/omapip/isclib.h b/includes/omapip/isclib.h index 22ddcb3c..a419a350 100644 --- a/includes/omapip/isclib.h +++ b/includes/omapip/isclib.h @@ -3,7 +3,7 @@ connections to the isc and dns libraries */ /* - * Copyright (c) 2009-2019 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2009-2022 Internet Systems Consortium, Inc. ("ISC") * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this diff --git a/includes/omapip/omapip.h b/includes/omapip/omapip.h index 9bcd9cb7..8944435c 100644 --- a/includes/omapip/omapip.h +++ b/includes/omapip/omapip.h @@ -3,7 +3,7 @@ Definitions for the object management API and protocol... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/includes/omapip/omapip_p.h b/includes/omapip/omapip_p.h index ec10f7e5..643441ed 100644 --- a/includes/omapip/omapip_p.h +++ b/includes/omapip/omapip_p.h @@ -3,7 +3,7 @@ Private master include file for the OMAPI library. */ /* - * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/includes/omapip/result.h b/includes/omapip/result.h index 7edf0c45..193c7c49 100644 --- a/includes/omapip/result.h +++ b/includes/omapip/result.h @@ -2,7 +2,7 @@ */ /* - * Copyright (C) 2009-2017 Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2009-2022 Internet Systems Consortium, Inc. ("ISC") * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this diff --git a/includes/omapip/trace.h b/includes/omapip/trace.h index 3e14a08b..2d43502d 100644 --- a/includes/omapip/trace.h +++ b/includes/omapip/trace.h @@ -3,7 +3,7 @@ Definitions for omapi tracing facility... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 2001-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/includes/osdep.h b/includes/osdep.h index d676bb91..07428587 100644 --- a/includes/osdep.h +++ b/includes/osdep.h @@ -3,7 +3,7 @@ Operating system dependencies... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium,Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium,Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/includes/statement.h b/includes/statement.h index 71f27d32..913d78b3 100644 --- a/includes/statement.h +++ b/includes/statement.h @@ -3,7 +3,7 @@ Definitions for executable statements... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/includes/tree.h b/includes/tree.h index b0574fb1..896072b8 100644 --- a/includes/tree.h +++ b/includes/tree.h @@ -3,7 +3,7 @@ Definitions for address trees... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/keama/conflex.c b/keama/conflex.c index 9a635732..d915860b 100644 --- a/keama/conflex.c +++ b/keama/conflex.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2017-2022 Internet Systems Consortium, Inc. ("ISC") * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above diff --git a/keama/confparse.c b/keama/confparse.c index d77503af..3299bf35 100644 --- a/keama/confparse.c +++ b/keama/confparse.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2019 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2017-2022 Internet Systems Consortium, Inc. ("ISC") * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above diff --git a/keama/data.c b/keama/data.c index d63c2cb9..55e5df8e 100644 --- a/keama/data.c +++ b/keama/data.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2017-2022 Internet Systems Consortium, Inc. ("ISC") * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above diff --git a/keama/data.h b/keama/data.h index 6b0294e8..2ce32ddb 100644 --- a/keama/data.h +++ b/keama/data.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2017-2022 Internet Systems Consortium, Inc. ("ISC") * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above diff --git a/keama/dhctoken.h b/keama/dhctoken.h index 6d96829a..32b02550 100644 --- a/keama/dhctoken.h +++ b/keama/dhctoken.h @@ -3,7 +3,7 @@ Tokens for config file lexer and parser. */ /* - * Copyright (c) 2004-2016 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * Permission to use, copy, modify, and distribute this software for any diff --git a/keama/eval.c b/keama/eval.c index 91ba4fd0..acacce16 100644 --- a/keama/eval.c +++ b/keama/eval.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2017-2022 Internet Systems Consortium, Inc. ("ISC") * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above diff --git a/keama/json.c b/keama/json.c index ff596e80..045c3474 100644 --- a/keama/json.c +++ b/keama/json.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2017-2022 Internet Systems Consortium, Inc. ("ISC") * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above diff --git a/keama/keama.8 b/keama/keama.8 index 7069ffc5..d2b37ca8 100644 --- a/keama/keama.8 +++ b/keama/keama.8 @@ -1,6 +1,6 @@ .\" keama.8 .\" -.\" Copyright (c) 2017-2019 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (C) 2017-2022 Internet Systems Consortium, Inc. ("ISC") .\" .\" Permission to use, copy, modify, and distribute this software for any .\" purpose with or without fee is hereby granted, provided that the above diff --git a/keama/keama.c b/keama/keama.c index 401ddf2c..a7cb0a83 100644 --- a/keama/keama.c +++ b/keama/keama.c @@ -1,5 +1,5 @@ /* - * Copyright(c) 2017-2019 by Internet Systems Consortium, Inc.("ISC") + * Copyright(C) 2017-2022 Internet Systems Consortium, Inc.("ISC") * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above diff --git a/keama/keama.h b/keama/keama.h index 4b971396..a351c288 100644 --- a/keama/keama.h +++ b/keama/keama.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2017-2022 Internet Systems Consortium, Inc. ("ISC") * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above diff --git a/keama/options.c b/keama/options.c index e615ece4..18dd3d7c 100644 --- a/keama/options.c +++ b/keama/options.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2017-2022 Internet Systems Consortium, Inc. ("ISC") * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above diff --git a/keama/parse.c b/keama/parse.c index 9d00d44c..ed721e70 100644 --- a/keama/parse.c +++ b/keama/parse.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2017-2022 Internet Systems Consortium, Inc. ("ISC") * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above diff --git a/keama/print.c b/keama/print.c index 8cfd0097..8d421625 100644 --- a/keama/print.c +++ b/keama/print.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2017-2022 Internet Systems Consortium, Inc. ("ISC") * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above diff --git a/keama/reduce.c b/keama/reduce.c index 9c796458..0fda47e8 100644 --- a/keama/reduce.c +++ b/keama/reduce.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2017-2022 Internet Systems Consortium, Inc. ("ISC") * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above diff --git a/omapip/alloc.c b/omapip/alloc.c index 6569f431..d13d3d7e 100644 --- a/omapip/alloc.c +++ b/omapip/alloc.c @@ -4,7 +4,7 @@ protocol... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/omapip/array.c b/omapip/array.c index 760b80ee..600d7835 100644 --- a/omapip/array.c +++ b/omapip/array.c @@ -3,7 +3,7 @@ Subroutines that support the omapi extensible array type. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 2001-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/omapip/auth.c b/omapip/auth.c index 1641a8cb..a2835a44 100644 --- a/omapip/auth.c +++ b/omapip/auth.c @@ -3,7 +3,7 @@ Subroutines having to do with authentication. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1998-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/omapip/buffer.c b/omapip/buffer.c index e521a435..2d034c62 100644 --- a/omapip/buffer.c +++ b/omapip/buffer.c @@ -3,7 +3,7 @@ Buffer access functions for the object management protocol... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/omapip/connection.c b/omapip/connection.c index f1207757..7fffb5fe 100644 --- a/omapip/connection.c +++ b/omapip/connection.c @@ -3,7 +3,7 @@ Subroutines for dealing with connections. */ /* - * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/omapip/convert.c b/omapip/convert.c index 08dcc1d1..de6c7c86 100644 --- a/omapip/convert.c +++ b/omapip/convert.c @@ -4,7 +4,7 @@ can't be assumed to be aligned. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/omapip/dispatch.c b/omapip/dispatch.c index 34938b39..644ab43f 100644 --- a/omapip/dispatch.c +++ b/omapip/dispatch.c @@ -3,7 +3,7 @@ I/O dispatcher. */ /* - * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/omapip/errwarn.c b/omapip/errwarn.c index f9737c5d..38dd9c53 100644 --- a/omapip/errwarn.c +++ b/omapip/errwarn.c @@ -4,7 +4,7 @@ /* * Copyright (c) 1995 RadioMail Corporation. - * Copyright (c) 2004-2019 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/omapip/generic.c b/omapip/generic.c index 87d10a23..7636beb5 100644 --- a/omapip/generic.c +++ b/omapip/generic.c @@ -3,7 +3,7 @@ Subroutines that support the generic object. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/omapip/handle.c b/omapip/handle.c index 225104b2..1fde6495 100644 --- a/omapip/handle.c +++ b/omapip/handle.c @@ -3,7 +3,7 @@ Functions for maintaining handles on objects. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/omapip/hash.c b/omapip/hash.c index 09a44167..fccfb1cd 100644 --- a/omapip/hash.c +++ b/omapip/hash.c @@ -3,7 +3,7 @@ Routines for manipulating hash tables... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/omapip/isclib.c b/omapip/isclib.c index f726fb7e..2293cbe4 100644 --- a/omapip/isclib.c +++ b/omapip/isclib.c @@ -1,5 +1,5 @@ /* - * Copyright(c) 2009-2019 by Internet Systems Consortium, Inc.("ISC") + * Copyright(C) 2009-2022 Internet Systems Consortium, Inc.("ISC") * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this diff --git a/omapip/listener.c b/omapip/listener.c index f7a07f09..390a4df5 100644 --- a/omapip/listener.c +++ b/omapip/listener.c @@ -3,7 +3,7 @@ Subroutines that support the generic listener object. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/omapip/message.c b/omapip/message.c index 42b88b6d..528268a7 100644 --- a/omapip/message.c +++ b/omapip/message.c @@ -3,7 +3,7 @@ Subroutines for dealing with message objects. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/omapip/omapi.3 b/omapip/omapi.3 index 5edf6275..dc2e8441 100644 --- a/omapip/omapi.3 +++ b/omapip/omapi.3 @@ -1,7 +1,6 @@ .\" omapi.3 .\" -.\" Copyright (c) 2009-2010,2014 by Internet Systems Consortium, Inc. ("ISC") -.\" Copyright (c) 2004 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 2000-2003 by Internet Software Consortium .\" .\" Permission to use, copy, modify, and distribute this software for any diff --git a/omapip/protocol.c b/omapip/protocol.c index f259a291..38db66ea 100644 --- a/omapip/protocol.c +++ b/omapip/protocol.c @@ -3,7 +3,7 @@ Functions supporting the object management protocol... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/omapip/result.c b/omapip/result.c index 901be3c9..b00b8299 100644 --- a/omapip/result.c +++ b/omapip/result.c @@ -2,7 +2,7 @@ */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/omapip/support.c b/omapip/support.c index 8f2581f1..4c7adc64 100644 --- a/omapip/support.c +++ b/omapip/support.c @@ -3,7 +3,7 @@ Subroutines providing general support for objects. */ /* - * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/omapip/test.c b/omapip/test.c index 8497ebc9..758604ff 100644 --- a/omapip/test.c +++ b/omapip/test.c @@ -3,7 +3,7 @@ Test code for omapip... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/omapip/toisc.c b/omapip/toisc.c index fb91e549..fba7dd2f 100644 --- a/omapip/toisc.c +++ b/omapip/toisc.c @@ -3,7 +3,7 @@ Convert non-ISC result codes to ISC result codes. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 2001-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/omapip/trace.c b/omapip/trace.c index 2a1527d6..dc9185f6 100644 --- a/omapip/trace.c +++ b/omapip/trace.c @@ -5,7 +5,7 @@ transactions... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 2001-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/relay/dhcrelay.8 b/relay/dhcrelay.8 index 8879b7cf..b7183f9a 100644 --- a/relay/dhcrelay.8 +++ b/relay/dhcrelay.8 @@ -1,6 +1,6 @@ .\" dhcrelay.8 .\" -.\" Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 1997-2003 by Internet Software Consortium .\" .\" This Source Code Form is subject to the terms of the Mozilla Public diff --git a/relay/dhcrelay.c b/relay/dhcrelay.c index 382d062d..91f5694d 100644 --- a/relay/dhcrelay.c +++ b/relay/dhcrelay.c @@ -3,7 +3,7 @@ DHCP/BOOTP Relay Agent. */ /* - * Copyright(c) 2004-2020 by Internet Systems Consortium, Inc.("ISC") + * Copyright(c) 2004-2022 by Internet Systems Consortium, Inc.("ISC") * Copyright(c) 1997-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public @@ -149,7 +149,7 @@ extern int strip_relay_agent_options(struct interface_info *, static void request_v4_interface(const char* name, int flags); static const char copyright[] = -"Copyright 2004-2020 Internet Systems Consortium."; +"Copyright 2004-2022 Internet Systems Consortium."; static const char arr[] = "All rights reserved."; static const char message[] = "Internet Systems Consortium DHCP Relay Agent"; diff --git a/relay/tests/relay_unittests.c b/relay/tests/relay_unittests.c index c1e52830..98a188b3 100644 --- a/relay/tests/relay_unittests.c +++ b/relay/tests/relay_unittests.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019-2020 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2019-2022 Internet Systems Consortium, Inc. ("ISC") * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this diff --git a/server/bootp.c b/server/bootp.c index d81f4f36..919d483a 100644 --- a/server/bootp.c +++ b/server/bootp.c @@ -3,7 +3,7 @@ BOOTP Protocol support. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/server/class.c b/server/class.c index fce7822c..3db86b12 100644 --- a/server/class.c +++ b/server/class.c @@ -3,7 +3,7 @@ Handling for client classes. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1998-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/server/confpars.c b/server/confpars.c index defa0a88..103af1e9 100644 --- a/server/confpars.c +++ b/server/confpars.c @@ -3,7 +3,7 @@ Parser for dhcpd config file... */ /* - * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/server/db.c b/server/db.c index b1614ed0..cecbf6b4 100644 --- a/server/db.c +++ b/server/db.c @@ -3,7 +3,7 @@ Persistent database management routines for DHCPD... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/server/ddns.c b/server/ddns.c index eec3d26c..81896904 100644 --- a/server/ddns.c +++ b/server/ddns.c @@ -4,7 +4,7 @@ /* * - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 2000-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/server/dhcp.c b/server/dhcp.c index 8852e9e3..0b261c21 100644 --- a/server/dhcp.c +++ b/server/dhcp.c @@ -3,7 +3,7 @@ DHCP Protocol engine. */ /* - * Copyright (c) 2004-2019 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/server/dhcpd.8 b/server/dhcpd.8 index bff88ab2..b019b53e 100644 --- a/server/dhcpd.8 +++ b/server/dhcpd.8 @@ -1,6 +1,6 @@ .\" dhcpd.8 .\" -.\" Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 1996-2003 by Internet Software Consortium .\" .\" This Source Code Form is subject to the terms of the Mozilla Public diff --git a/server/dhcpd.c b/server/dhcpd.c index 7c1f68fa..3522889c 100644 --- a/server/dhcpd.c +++ b/server/dhcpd.c @@ -3,7 +3,7 @@ DHCP Server Daemon. */ /* - * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (c) 2004-2022 by Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public @@ -27,7 +27,7 @@ */ static const char copyright[] = -"Copyright 2004-2020 Internet Systems Consortium."; +"Copyright 2004-2022 Internet Systems Consortium."; static const char arr [] = "All rights reserved."; static const char message [] = "Internet Systems Consortium DHCP Server"; static const char url [] = diff --git a/server/dhcpd.conf.5 b/server/dhcpd.conf.5 index 0c05096d..e1d00f5c 100644 --- a/server/dhcpd.conf.5 +++ b/server/dhcpd.conf.5 @@ -1,6 +1,6 @@ .\" dhcpd.conf.5 .\" -.\" Copyright (c) 2004-2019 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 1996-2003 by Internet Software Consortium .\" .\" This Source Code Form is subject to the terms of the Mozilla Public diff --git a/server/dhcpd.leases.5 b/server/dhcpd.leases.5 index a8f64ff4..336fa8f4 100644 --- a/server/dhcpd.leases.5 +++ b/server/dhcpd.leases.5 @@ -1,6 +1,6 @@ .\" dhcpd.leases.5 .\" -.\" Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 1996-2003 by Internet Software Consortium .\" .\" This Source Code Form is subject to the terms of the Mozilla Public diff --git a/server/failover.c b/server/failover.c index 320ce1bc..5b36d3a1 100644 --- a/server/failover.c +++ b/server/failover.c @@ -3,7 +3,7 @@ Failover protocol support code... */ /* - * Copyright (c) 2004-2020 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/server/ldap_casa.c b/server/ldap_casa.c index 4e302e37..06851fc1 100644 --- a/server/ldap_casa.c +++ b/server/ldap_casa.c @@ -32,7 +32,7 @@ */ /* - * Copyright (c) 2004-2010 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * Permission to use, copy, modify, and distribute this software for any diff --git a/server/leasechain.c b/server/leasechain.c index 7ccc30be..eedc073a 100644 --- a/server/leasechain.c +++ b/server/leasechain.c @@ -3,7 +3,7 @@ Additional support for in-memory database support */ /* - * Copyright (c) 2015-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2015-2022 Internet Systems Consortium, Inc. ("ISC") * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this diff --git a/server/mdb.c b/server/mdb.c index b982cc16..60a40e13 100644 --- a/server/mdb.c +++ b/server/mdb.c @@ -3,7 +3,7 @@ Server-specific in-memory database support. */ /* - * Copyright (c) 2004-2019 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/server/omapi.c b/server/omapi.c index 2a70f7a4..354483ed 100644 --- a/server/omapi.c +++ b/server/omapi.c @@ -3,7 +3,7 @@ OMAPI object interfaces for the DHCP server. */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1999-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/server/salloc.c b/server/salloc.c index 791172e9..239a842d 100644 --- a/server/salloc.c +++ b/server/salloc.c @@ -3,7 +3,7 @@ Memory allocation for the DHCP server... */ /* - * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1996-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/server/stables.c b/server/stables.c index c33809b0..70412039 100644 --- a/server/stables.c +++ b/server/stables.c @@ -3,7 +3,7 @@ Tables of information only used by server... */ /* - * Copyright (c) 2004-2019 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2004-2022 Internet Systems Consortium, Inc. ("ISC") * Copyright (c) 1995-2003 by Internet Software Consortium * * This Source Code Form is subject to the terms of the Mozilla Public diff --git a/server/tests/hash_unittest.c b/server/tests/hash_unittest.c index 3345cd8d..f92691aa 100644 --- a/server/tests/hash_unittest.c +++ b/server/tests/hash_unittest.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2012-2017 by Internet Systems Consortium, Inc. ("ISC") + * Copyright (C) 2012-2022 Internet Systems Consortium, Inc. ("ISC") * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this diff --git a/tests/DHCPv6/000-badmsgtype.pl b/tests/DHCPv6/000-badmsgtype.pl index ee9ae715..95f517c2 100644 --- a/tests/DHCPv6/000-badmsgtype.pl +++ b/tests/DHCPv6/000-badmsgtype.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/010-solicit-noclientid.pl b/tests/DHCPv6/010-solicit-noclientid.pl index fedbc215..45e829f1 100644 --- a/tests/DHCPv6/010-solicit-noclientid.pl +++ b/tests/DHCPv6/010-solicit-noclientid.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/011-solicit-serverid.pl b/tests/DHCPv6/011-solicit-serverid.pl index bf64922d..a6462f98 100644 --- a/tests/DHCPv6/011-solicit-serverid.pl +++ b/tests/DHCPv6/011-solicit-serverid.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/020-advertise-mcast.pl b/tests/DHCPv6/020-advertise-mcast.pl index ea59e1ad..39cc6d8e 100644 --- a/tests/DHCPv6/020-advertise-mcast.pl +++ b/tests/DHCPv6/020-advertise-mcast.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/030-request-noclientid.pl b/tests/DHCPv6/030-request-noclientid.pl index 23d72761..68aa2539 100644 --- a/tests/DHCPv6/030-request-noclientid.pl +++ b/tests/DHCPv6/030-request-noclientid.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/031-request-noserverid.pl b/tests/DHCPv6/031-request-noserverid.pl index 3604f354..3a860190 100644 --- a/tests/DHCPv6/031-request-noserverid.pl +++ b/tests/DHCPv6/031-request-noserverid.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/032-request-badduid.pl b/tests/DHCPv6/032-request-badduid.pl index ff37dfb6..7964977b 100644 --- a/tests/DHCPv6/032-request-badduid.pl +++ b/tests/DHCPv6/032-request-badduid.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/110-information-request-ia_na.pl b/tests/DHCPv6/110-information-request-ia_na.pl index f3061933..a5171f20 100644 --- a/tests/DHCPv6/110-information-request-ia_na.pl +++ b/tests/DHCPv6/110-information-request-ia_na.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/111-information-request-ia_ta.pl b/tests/DHCPv6/111-information-request-ia_ta.pl index c154a3eb..ab67f517 100644 --- a/tests/DHCPv6/111-information-request-ia_ta.pl +++ b/tests/DHCPv6/111-information-request-ia_ta.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/112-badduid.pl b/tests/DHCPv6/112-badduid.pl index 1b50e4bb..c069886a 100644 --- a/tests/DHCPv6/112-badduid.pl +++ b/tests/DHCPv6/112-badduid.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/210-solicit-nohost.pl b/tests/DHCPv6/210-solicit-nohost.pl index 23d96b39..20b3771f 100644 --- a/tests/DHCPv6/210-solicit-nohost.pl +++ b/tests/DHCPv6/210-solicit-nohost.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/211-solicit-opt-in-na.pl b/tests/DHCPv6/211-solicit-opt-in-na.pl index 73d7e2d1..c180c7f5 100644 --- a/tests/DHCPv6/211-solicit-opt-in-na.pl +++ b/tests/DHCPv6/211-solicit-opt-in-na.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/212-solicit-opt-in-na-norapidcommit.pl b/tests/DHCPv6/212-solicit-opt-in-na-norapidcommit.pl index d179bd8c..179cf0d0 100644 --- a/tests/DHCPv6/212-solicit-opt-in-na-norapidcommit.pl +++ b/tests/DHCPv6/212-solicit-opt-in-na-norapidcommit.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/280-release-nohost.pl b/tests/DHCPv6/280-release-nohost.pl index 1eec2fa0..3f8805bc 100644 --- a/tests/DHCPv6/280-release-nohost.pl +++ b/tests/DHCPv6/280-release-nohost.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/281-release-bad-address.pl b/tests/DHCPv6/281-release-bad-address.pl index d06b9ac3..c5371d75 100644 --- a/tests/DHCPv6/281-release-bad-address.pl +++ b/tests/DHCPv6/281-release-bad-address.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/282-release-no-address.pl b/tests/DHCPv6/282-release-no-address.pl index 8dbf4d76..1fd76d35 100644 --- a/tests/DHCPv6/282-release-no-address.pl +++ b/tests/DHCPv6/282-release-no-address.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/283-release.pl b/tests/DHCPv6/283-release.pl index 6232702c..aeda526b 100644 --- a/tests/DHCPv6/283-release.pl +++ b/tests/DHCPv6/283-release.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/290-decline-nohost.pl b/tests/DHCPv6/290-decline-nohost.pl index 1eaed9ae..d034d7ed 100644 --- a/tests/DHCPv6/290-decline-nohost.pl +++ b/tests/DHCPv6/290-decline-nohost.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/291-decline-bad-address.pl b/tests/DHCPv6/291-decline-bad-address.pl index 62fe9cef..a0ecdc6a 100644 --- a/tests/DHCPv6/291-decline-bad-address.pl +++ b/tests/DHCPv6/291-decline-bad-address.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/292-decline-no-address.pl b/tests/DHCPv6/292-decline-no-address.pl index 62383554..369b21c0 100644 --- a/tests/DHCPv6/292-decline-no-address.pl +++ b/tests/DHCPv6/292-decline-no-address.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/293-decline.pl b/tests/DHCPv6/293-decline.pl index fafb483a..014553fa 100644 --- a/tests/DHCPv6/293-decline.pl +++ b/tests/DHCPv6/293-decline.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/dhcp_client.pm b/tests/DHCPv6/dhcp_client.pm index bcea4333..f968e338 100644 --- a/tests/DHCPv6/dhcp_client.pm +++ b/tests/DHCPv6/dhcp_client.pm @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/stubcli-opt-in-na.pl b/tests/DHCPv6/stubcli-opt-in-na.pl index a97fafd2..ae113784 100644 --- a/tests/DHCPv6/stubcli-opt-in-na.pl +++ b/tests/DHCPv6/stubcli-opt-in-na.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/tests/DHCPv6/stubcli.pl b/tests/DHCPv6/stubcli.pl index 23d96b39..20b3771f 100644 --- a/tests/DHCPv6/stubcli.pl +++ b/tests/DHCPv6/stubcli.pl @@ -1,6 +1,6 @@ #! /usr/bin/perl -w -# Copyright (c) 2007,2009 by Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2007-2022 Internet Systems Consortium, Inc. ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above diff --git a/util/bind-kit.sh b/util/bind-kit.sh index 23e4abc0..8b0a640a 100644 --- a/util/bind-kit.sh +++ b/util/bind-kit.sh @@ -1,6 +1,6 @@ #!/bin/sh # -# Copyright (C) Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2022 Internet Systems Consortium, Inc. ("ISC") # # This Source Code Form is subject to the terms of the Mozilla Public # License, v. 2.0. If a copy of the MPL was not distributed with this -- cgit v1.2.1 From f4622ec1475513d9ca585b22775278767f233d15 Mon Sep 17 00:00:00 2001 From: Wlodek Wencel Date: Tue, 25 Jan 2022 16:33:59 +0100 Subject: regenerated Makefiles for release --- Makefile.in | 33 ++++++++++++-------- aclocal.m4 | 79 ++++++++++++++++++++++++++++-------------------- client/Makefile.in | 10 +++--- client/tests/Makefile.in | 10 +++--- common/Makefile.in | 10 +++--- common/tests/Makefile.in | 10 +++--- configure | 48 ++++++++++++++++++----------- dhcpctl/Makefile.in | 10 +++--- includes/Makefile.in | 14 ++++----- keama/Makefile.in | 13 ++++---- omapip/Makefile.in | 10 +++--- relay/Makefile.in | 10 +++--- relay/tests/Makefile.in | 10 +++--- server/Makefile.in | 10 +++--- server/tests/Makefile.in | 10 +++--- tests/Makefile.in | 10 +++--- 16 files changed, 167 insertions(+), 130 deletions(-) diff --git a/Makefile.in b/Makefile.in index 3d957382..3a866512 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.5 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2021 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -184,9 +184,6 @@ am__define_uniq_tagged_files = \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags -CSCOPE = cscope am__DIST_COMMON = $(srcdir)/Makefile.in \ $(top_srcdir)/doc/devel/doxyfile.in README compile \ config.guess config.sub depcomp install-sh missing @@ -228,6 +225,8 @@ am__relativize = \ DIST_ARCHIVES = $(distdir).tar.gz GZIP_ENV = --best DIST_TARGETS = dist-gzip +# Exists only to be overridden by the user if desired. +AM_DISTCHECK_DVI_TARGET = dvi distuninstallcheck_listfiles = find . -type f -print am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' @@ -259,6 +258,8 @@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ +CSCOPE = @CSCOPE@ +CTAGS = @CTAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ @@ -270,6 +271,7 @@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ +ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ @@ -558,7 +560,6 @@ cscopelist-am: $(am__tagged_files) distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -rm -f cscope.out cscope.in.out cscope.po.out cscope.files - distdir: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) distdir-am @@ -642,6 +643,10 @@ dist-xz: distdir tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz $(am__post_remove_distdir) +dist-zstd: distdir + tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst + $(am__post_remove_distdir) + dist-tarZ: distdir @echo WARNING: "Support for distribution archives compressed with" \ "legacy program 'compress' is deprecated." >&2 @@ -684,6 +689,8 @@ distcheck: dist eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\ *.zip*) \ unzip $(distdir).zip ;;\ + *.tar.zst*) \ + zstd -dc $(distdir).tar.zst | $(am__untar) ;;\ esac chmod -R a-w $(distdir) chmod u+w $(distdir) @@ -700,7 +707,7 @@ distcheck: dist $(DISTCHECK_CONFIGURE_FLAGS) \ --srcdir=../.. --prefix="$$dc_install_base" \ && $(MAKE) $(AM_MAKEFLAGS) \ - && $(MAKE) $(AM_MAKEFLAGS) dvi \ + && $(MAKE) $(AM_MAKEFLAGS) $(AM_DISTCHECK_DVI_TARGET) \ && $(MAKE) $(AM_MAKEFLAGS) check \ && $(MAKE) $(AM_MAKEFLAGS) install \ && $(MAKE) $(AM_MAKEFLAGS) installcheck \ @@ -865,12 +872,12 @@ uninstall-am: uninstall-nobase_includeHEADERS am--refresh check check-am clean clean-cscope clean-generic \ cscope cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \ dist-gzip dist-lzip dist-shar dist-tarZ dist-xz dist-zip \ - distcheck distclean distclean-generic distclean-local \ - distclean-tags distcleancheck distdir distuninstallcheck dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dvi install-dvi-am \ - install-exec install-exec-am install-html install-html-am \ - install-info install-info-am install-man \ + dist-zstd distcheck distclean distclean-generic \ + distclean-local distclean-tags distcleancheck distdir \ + distuninstallcheck dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ install-nobase_includeHEADERS install-pdf install-pdf-am \ install-ps install-ps-am install-strip installcheck \ installcheck-am installdirs installdirs-am maintainer-clean \ diff --git a/aclocal.m4 b/aclocal.m4 index 3508cb7f..4d7c9840 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -1,6 +1,6 @@ -# generated automatically by aclocal 1.16.1 -*- Autoconf -*- +# generated automatically by aclocal 1.16.5 -*- Autoconf -*- -# Copyright (C) 1996-2018 Free Software Foundation, Inc. +# Copyright (C) 1996-2021 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -20,7 +20,7 @@ You have another version of autoconf. It may work, but is not guaranteed to. If you have problems, you may need to regenerate the build system entirely. To do so, use the procedure documented by the package, typically 'autoreconf'.])]) -# Copyright (C) 2002-2018 Free Software Foundation, Inc. +# Copyright (C) 2002-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -35,7 +35,7 @@ AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version='1.16' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. -m4_if([$1], [1.16.1], [], +m4_if([$1], [1.16.5], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) @@ -51,14 +51,14 @@ m4_define([_AM_AUTOCONF_VERSION], []) # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], -[AM_AUTOMAKE_VERSION([1.16.1])dnl +[AM_AUTOMAKE_VERSION([1.16.5])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- -# Copyright (C) 2001-2018 Free Software Foundation, Inc. +# Copyright (C) 2001-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -110,7 +110,7 @@ am_aux_dir=`cd "$ac_aux_dir" && pwd` # AM_COND_IF -*- Autoconf -*- -# Copyright (C) 2008-2018 Free Software Foundation, Inc. +# Copyright (C) 2008-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -147,7 +147,7 @@ fi[]dnl # AM_CONDITIONAL -*- Autoconf -*- -# Copyright (C) 1997-2018 Free Software Foundation, Inc. +# Copyright (C) 1997-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -178,7 +178,7 @@ AC_CONFIG_COMMANDS_PRE( Usually this means the macro was only invoked conditionally.]]) fi])]) -# Copyright (C) 1999-2018 Free Software Foundation, Inc. +# Copyright (C) 1999-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -369,7 +369,7 @@ _AM_SUBST_NOTMAKE([am__nodep])dnl # Generate code to set up dependency tracking. -*- Autoconf -*- -# Copyright (C) 1999-2018 Free Software Foundation, Inc. +# Copyright (C) 1999-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -408,7 +408,9 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], done if test $am_rc -ne 0; then AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments - for automatic dependency tracking. Try re-running configure with the + for automatic dependency tracking. If GNU make was not used, consider + re-running the configure script with MAKE="gmake" (or whatever is + necessary). You can also try re-running configure with the '--disable-dependency-tracking' option to at least be able to build the package (albeit without support for automatic dependency tracking).]) fi @@ -435,7 +437,7 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], # Do all the work for Automake. -*- Autoconf -*- -# Copyright (C) 1996-2018 Free Software Foundation, Inc. +# Copyright (C) 1996-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -463,6 +465,10 @@ m4_defn([AC_PROG_CC]) # release and drop the old call support. AC_DEFUN([AM_INIT_AUTOMAKE], [AC_PREREQ([2.65])dnl +m4_ifdef([_$0_ALREADY_INIT], + [m4_fatal([$0 expanded multiple times +]m4_defn([_$0_ALREADY_INIT]))], + [m4_define([_$0_ALREADY_INIT], m4_expansion_stack)])dnl dnl Autoconf wants to disallow AM_ names. We explicitly allow dnl the ones we care about. m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl @@ -499,7 +505,7 @@ m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl [_AM_SET_OPTIONS([$1])dnl dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. m4_if( - m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]), + m4_ifset([AC_PACKAGE_NAME], [ok]):m4_ifset([AC_PACKAGE_VERSION], [ok]), [ok:ok],, [m4_fatal([AC_INIT should be called with package and version arguments])])dnl AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl @@ -551,6 +557,20 @@ AC_PROVIDE_IFELSE([AC_PROG_OBJCXX], [m4_define([AC_PROG_OBJCXX], m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl ]) +# Variables for tags utilities; see am/tags.am +if test -z "$CTAGS"; then + CTAGS=ctags +fi +AC_SUBST([CTAGS]) +if test -z "$ETAGS"; then + ETAGS=etags +fi +AC_SUBST([ETAGS]) +if test -z "$CSCOPE"; then + CSCOPE=cscope +fi +AC_SUBST([CSCOPE]) + AC_REQUIRE([AM_SILENT_RULES])dnl dnl The testsuite driver may need to know about EXEEXT, so add the dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This @@ -632,7 +652,7 @@ for _am_header in $config_headers :; do done echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) -# Copyright (C) 2001-2018 Free Software Foundation, Inc. +# Copyright (C) 2001-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -653,7 +673,7 @@ if test x"${install_sh+set}" != xset; then fi AC_SUBST([install_sh])]) -# Copyright (C) 2003-2018 Free Software Foundation, Inc. +# Copyright (C) 2003-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -675,7 +695,7 @@ AC_SUBST([am__leading_dot])]) # Add --enable-maintainer-mode option to configure. -*- Autoconf -*- # From Jim Meyering -# Copyright (C) 1996-2018 Free Software Foundation, Inc. +# Copyright (C) 1996-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -710,7 +730,7 @@ AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) # Check to see how 'make' treats includes. -*- Autoconf -*- -# Copyright (C) 2001-2018 Free Software Foundation, Inc. +# Copyright (C) 2001-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -753,7 +773,7 @@ AC_SUBST([am__quote])]) # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- -# Copyright (C) 1997-2018 Free Software Foundation, Inc. +# Copyright (C) 1997-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -774,12 +794,7 @@ AC_DEFUN([AM_MISSING_HAS_RUN], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl AC_REQUIRE_AUX_FILE([missing])dnl if test x"${MISSING+set}" != xset; then - case $am_aux_dir in - *\ * | *\ *) - MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; - *) - MISSING="\${SHELL} $am_aux_dir/missing" ;; - esac + MISSING="\${SHELL} '$am_aux_dir/missing'" fi # Use eval to expand $SHELL if eval "$MISSING --is-lightweight"; then @@ -792,7 +807,7 @@ fi # Helper functions for option handling. -*- Autoconf -*- -# Copyright (C) 2001-2018 Free Software Foundation, Inc. +# Copyright (C) 2001-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -821,7 +836,7 @@ AC_DEFUN([_AM_SET_OPTIONS], AC_DEFUN([_AM_IF_OPTION], [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) -# Copyright (C) 1999-2018 Free Software Foundation, Inc. +# Copyright (C) 1999-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -868,7 +883,7 @@ AC_LANG_POP([C])]) # For backward compatibility. AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])]) -# Copyright (C) 2001-2018 Free Software Foundation, Inc. +# Copyright (C) 2001-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -887,7 +902,7 @@ AC_DEFUN([AM_RUN_LOG], # Check to make sure that the build environment is sane. -*- Autoconf -*- -# Copyright (C) 1996-2018 Free Software Foundation, Inc. +# Copyright (C) 1996-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -968,7 +983,7 @@ AC_CONFIG_COMMANDS_PRE( rm -f conftest.file ]) -# Copyright (C) 2009-2018 Free Software Foundation, Inc. +# Copyright (C) 2009-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1028,7 +1043,7 @@ AC_SUBST([AM_BACKSLASH])dnl _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl ]) -# Copyright (C) 2001-2018 Free Software Foundation, Inc. +# Copyright (C) 2001-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1056,7 +1071,7 @@ fi INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) -# Copyright (C) 2006-2018 Free Software Foundation, Inc. +# Copyright (C) 2006-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1075,7 +1090,7 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) # Check how to create a tarball. -*- Autoconf -*- -# Copyright (C) 2004-2018 Free Software Foundation, Inc. +# Copyright (C) 2004-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, diff --git a/client/Makefile.in b/client/Makefile.in index dc473f35..2dde99e5 100644 --- a/client/Makefile.in +++ b/client/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.5 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2021 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -211,8 +211,6 @@ am__define_uniq_tagged_files = \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) @@ -268,6 +266,8 @@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ +CSCOPE = @CSCOPE@ +CTAGS = @CTAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ @@ -279,6 +279,7 @@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ +ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ @@ -702,7 +703,6 @@ cscopelist-am: $(am__tagged_files) distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - distdir: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) distdir-am diff --git a/client/tests/Makefile.in b/client/tests/Makefile.in index a68ce884..ce335dff 100644 --- a/client/tests/Makefile.in +++ b/client/tests/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.5 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2021 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -187,8 +187,6 @@ am__define_uniq_tagged_files = \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) @@ -244,6 +242,8 @@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ +CSCOPE = @CSCOPE@ +CTAGS = @CTAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ @@ -255,6 +255,7 @@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ +ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ @@ -570,7 +571,6 @@ cscopelist-am: $(am__tagged_files) distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - distdir: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) distdir-am diff --git a/common/Makefile.in b/common/Makefile.in index ca801bdc..b7314d3e 100644 --- a/common/Makefile.in +++ b/common/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.5 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2021 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -229,8 +229,6 @@ am__define_uniq_tagged_files = \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) am__DIST_COMMON = $(srcdir)/Makefile.am.in $(srcdir)/Makefile.in \ $(top_srcdir)/depcomp @@ -287,6 +285,8 @@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ +CSCOPE = @CSCOPE@ +CTAGS = @CTAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ @@ -298,6 +298,7 @@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ +ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ @@ -670,7 +671,6 @@ cscopelist-am: $(am__tagged_files) distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - distdir: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) distdir-am diff --git a/common/tests/Makefile.in b/common/tests/Makefile.in index b0d92063..e78a55db 100644 --- a/common/tests/Makefile.in +++ b/common/tests/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.5 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2021 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -234,8 +234,6 @@ am__define_uniq_tagged_files = \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) @@ -291,6 +289,8 @@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ +CSCOPE = @CSCOPE@ +CTAGS = @CTAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ @@ -302,6 +302,7 @@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ +ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ @@ -642,7 +643,6 @@ cscopelist-am: $(am__tagged_files) distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - distdir: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) distdir-am diff --git a/configure b/configure index 8a7cae99..1bdbe576 100755 --- a/configure +++ b/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for DHCP 4.4.2. +# Generated by GNU Autoconf 2.69 for DHCP 4.4.3b1. # # Report bugs to . # @@ -580,8 +580,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='DHCP' PACKAGE_TARNAME='dhcp' -PACKAGE_VERSION='4.4.2' -PACKAGE_STRING='DHCP 4.4.2' +PACKAGE_VERSION='4.4.3b1' +PACKAGE_STRING='DHCP 4.4.3b1' PACKAGE_BUGREPORT='dhcp-users@isc.org' PACKAGE_URL='' @@ -694,6 +694,9 @@ AM_BACKSLASH AM_DEFAULT_VERBOSITY AM_DEFAULT_V AM_V +CSCOPE +ETAGS +CTAGS am__untar am__tar AMTAR @@ -1350,7 +1353,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures DHCP 4.4.2 to adapt to many kinds of systems. +\`configure' configures DHCP 4.4.3b1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1420,7 +1423,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of DHCP 4.4.2:";; + short | recursive ) echo "Configuration of DHCP 4.4.3b1:";; esac cat <<\_ACEOF @@ -1591,7 +1594,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -DHCP configure 4.4.2 +DHCP configure 4.4.3b1 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2384,7 +2387,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by DHCP $as_me 4.4.2, which was +It was created by DHCP $as_me 4.4.3b1, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2941,12 +2944,7 @@ program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"` am_aux_dir=`cd "$ac_aux_dir" && pwd` if test x"${MISSING+set}" != xset; then - case $am_aux_dir in - *\ * | *\ *) - MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; - *) - MISSING="\${SHELL} $am_aux_dir/missing" ;; - esac + MISSING="\${SHELL} '$am_aux_dir/missing'" fi # Use eval to expand $SHELL if eval "$MISSING --is-lightweight"; then @@ -3251,7 +3249,7 @@ fi # Define the identity of the package. PACKAGE='dhcp' - VERSION='4.4.2' + VERSION='4.4.3b1' cat >>confdefs.h <<_ACEOF @@ -3301,6 +3299,20 @@ am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -' +# Variables for tags utilities; see am/tags.am +if test -z "$CTAGS"; then + CTAGS=ctags +fi + +if test -z "$ETAGS"; then + ETAGS=etags +fi + +if test -z "$CSCOPE"; then + CSCOPE=cscope +fi + + # POSIX will say in a future version that running "rm -f" with no argument # is OK; and we want to be able to make that assumption in our Makefile @@ -8095,7 +8107,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by DHCP $as_me 4.4.2, which was +This file was extended by DHCP $as_me 4.4.3b1, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -8161,7 +8173,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -DHCP config.status 4.4.2 +DHCP config.status 4.4.3b1 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" @@ -8951,7 +8963,9 @@ $as_echo X/"$am_mf" | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "Something went wrong bootstrapping makefile fragments - for automatic dependency tracking. Try re-running configure with the + for automatic dependency tracking. If GNU make was not used, consider + re-running the configure script with MAKE=\"gmake\" (or whatever is + necessary). You can also try re-running configure with the '--disable-dependency-tracking' option to at least be able to build the package (albeit without support for automatic dependency tracking). See \`config.log' for more details" "$LINENO" 5; } diff --git a/dhcpctl/Makefile.in b/dhcpctl/Makefile.in index edc1ea5c..79825568 100644 --- a/dhcpctl/Makefile.in +++ b/dhcpctl/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.5 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2021 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -221,8 +221,6 @@ am__define_uniq_tagged_files = \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags am__DIST_COMMON = $(srcdir)/Makefile.am.in $(srcdir)/Makefile.in \ $(top_srcdir)/depcomp DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) @@ -253,6 +251,8 @@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ +CSCOPE = @CSCOPE@ +CTAGS = @CTAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ @@ -264,6 +264,7 @@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ +ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ @@ -673,7 +674,6 @@ cscopelist-am: $(am__tagged_files) distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - distdir: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) distdir-am diff --git a/includes/Makefile.in b/includes/Makefile.in index 09125f9e..fd5742ac 100644 --- a/includes/Makefile.in +++ b/includes/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.5 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2021 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -147,8 +147,8 @@ am__uninstall_files_from_dir = { \ } am__installdirs = "$(DESTDIR)$(includedir)" HEADERS = $(nobase_include_HEADERS) -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \ - $(LISP)config.h.in +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) \ + config.h.in # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is # *not* preserved. @@ -165,8 +165,6 @@ am__define_uniq_tagged_files = \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) A = @A@ @@ -196,6 +194,8 @@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ +CSCOPE = @CSCOPE@ +CTAGS = @CTAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ @@ -207,6 +207,7 @@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ +ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ @@ -427,7 +428,6 @@ cscopelist-am: $(am__tagged_files) distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - distdir: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) distdir-am diff --git a/keama/Makefile.in b/keama/Makefile.in index d9344fce..0487d955 100644 --- a/keama/Makefile.in +++ b/keama/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.5 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2021 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -194,9 +194,8 @@ am__define_uniq_tagged_files = \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags -am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp +am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp \ + ChangeLog.md README.md DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) A = @A@ ACLOCAL = @ACLOCAL@ @@ -225,6 +224,8 @@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ +CSCOPE = @CSCOPE@ +CTAGS = @CTAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ @@ -236,6 +237,7 @@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ +ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ @@ -536,7 +538,6 @@ cscopelist-am: $(am__tagged_files) distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - distdir: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) distdir-am diff --git a/omapip/Makefile.in b/omapip/Makefile.in index 79593536..45c4aa99 100644 --- a/omapip/Makefile.in +++ b/omapip/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.5 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2021 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -217,8 +217,6 @@ am__define_uniq_tagged_files = \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags am__DIST_COMMON = $(srcdir)/Makefile.am.in $(srcdir)/Makefile.in \ $(top_srcdir)/depcomp DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) @@ -249,6 +247,8 @@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ +CSCOPE = @CSCOPE@ +CTAGS = @CTAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ @@ -260,6 +260,7 @@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ +ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ @@ -582,7 +583,6 @@ cscopelist-am: $(am__tagged_files) distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - distdir: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) distdir-am diff --git a/relay/Makefile.in b/relay/Makefile.in index efb889ed..955a068d 100644 --- a/relay/Makefile.in +++ b/relay/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.5 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2021 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -203,8 +203,6 @@ am__define_uniq_tagged_files = \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) @@ -260,6 +258,8 @@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ +CSCOPE = @CSCOPE@ +CTAGS = @CTAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ @@ -271,6 +271,7 @@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ +ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ @@ -616,7 +617,6 @@ cscopelist-am: $(am__tagged_files) distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - distdir: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) distdir-am diff --git a/relay/tests/Makefile.in b/relay/tests/Makefile.in index 7a1c2494..caef4fa1 100644 --- a/relay/tests/Makefile.in +++ b/relay/tests/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.5 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2021 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -185,8 +185,6 @@ am__define_uniq_tagged_files = \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) @@ -242,6 +240,8 @@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ +CSCOPE = @CSCOPE@ +CTAGS = @CTAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ @@ -253,6 +253,7 @@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ +ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ @@ -535,7 +536,6 @@ cscopelist-am: $(am__tagged_files) distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - distdir: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) distdir-am diff --git a/server/Makefile.in b/server/Makefile.in index 1a4171e2..3e2536a4 100644 --- a/server/Makefile.in +++ b/server/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.5 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2021 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -237,8 +237,6 @@ am__define_uniq_tagged_files = \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) @@ -294,6 +292,8 @@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ +CSCOPE = @CSCOPE@ +CTAGS = @CTAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ @@ -305,6 +305,7 @@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ +ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ @@ -1009,7 +1010,6 @@ cscopelist-am: $(am__tagged_files) distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - distdir: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) distdir-am diff --git a/server/tests/Makefile.in b/server/tests/Makefile.in index acd9b541..dd0b3e18 100644 --- a/server/tests/Makefile.in +++ b/server/tests/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.5 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2021 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -253,8 +253,6 @@ am__define_uniq_tagged_files = \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) @@ -310,6 +308,8 @@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ +CSCOPE = @CSCOPE@ +CTAGS = @CTAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ @@ -321,6 +321,7 @@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ +ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ @@ -894,7 +895,6 @@ cscopelist-am: $(am__tagged_files) distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - distdir: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) distdir-am diff --git a/tests/Makefile.in b/tests/Makefile.in index 7e94dfd1..cb972b74 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. +# Makefile.in generated by automake 1.16.5 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2018 Free Software Foundation, Inc. +# Copyright (C) 1994-2021 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -159,8 +159,6 @@ am__define_uniq_tagged_files = \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags am__DIST_COMMON = $(srcdir)/Makefile.am.in $(srcdir)/Makefile.in \ $(srcdir)/unittest.sh.in $(top_srcdir)/depcomp DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) @@ -191,6 +189,8 @@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ +CSCOPE = @CSCOPE@ +CTAGS = @CTAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ @@ -202,6 +202,7 @@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ +ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ @@ -444,7 +445,6 @@ cscopelist-am: $(am__tagged_files) distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - distdir: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) distdir-am -- cgit v1.2.1 From b2ca192e648a33feed6c25989d0fe4be9cc93f6e Mon Sep 17 00:00:00 2001 From: Wlodek Wencel Date: Tue, 25 Jan 2022 16:56:35 +0100 Subject: re-center version --- RELNOTES | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RELNOTES b/RELNOTES index e7b3b09a..76f75093 100644 --- a/RELNOTES +++ b/RELNOTES @@ -1,5 +1,5 @@ Internet Systems Consortium DHCP Distribution - Version 4.4.3b1 + Version 4.4.3b1 26 January 2022 Release Notes -- cgit v1.2.1 From 3d53b2f2a0369c2af83c738d4e8194077315cbb4 Mon Sep 17 00:00:00 2001 From: Thomas Markwalder Date: Thu, 13 May 2021 13:22:29 -0400 Subject: [#182] Corrected CVE: CVE-2021-25217 Addressed buffer overwrite in parse_X() Added Release Note common/parse.c parse_X() - reworked to avoid buffer overwrite on over-sized hex literals common/tests/option_unittest.c ATF_TC_BODY(parse_X) - new test which verifies parse_X() logic. --- RELNOTES | 11 +++++- common/parse.c | 5 ++- common/tests/option_unittest.c | 84 ++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 96 insertions(+), 4 deletions(-) diff --git a/RELNOTES b/RELNOTES index 76f75093..e408e656 100644 --- a/RELNOTES +++ b/RELNOTES @@ -27,7 +27,7 @@ ISC DHCP is open source software maintained by Internet Systems Consortium. This product includes cryptographic software written by Eric Young (eay@cryptsoft.com). - Changes since 4.4.2 (New Features) + Changes since 4.4.2-P1 (New Features) - BIND libraries updated to the latest version, 9.11.36. This fixes a number of compilation issues on various systems, including OpenWRT. Thanks to @@ -39,7 +39,7 @@ by Eric Young (eay@cryptsoft.com). and the client Linux script sample was updated. [Gitlab #132] - Changes since 4.4.2 (Bug Fixes) + Changes since 4.4.2-P1 (Bug Fixes) - Minor corrections to allow compilation under gcc 10. [Gitlab #117] @@ -73,6 +73,13 @@ by Eric Young (eay@cryptsoft.com). an object to fail. [Gitlab #148] + Changes since 4.4.2 (Bug Fixes) + +- Corrected a buffer overwrite possible when parsing hexadecimal + literals with more than 1024 octets. + [Gitlab #182] + CVE: CVE-2021-25217 + Changes since 4.4.2b1 (Bug Fixes) - Added a clarification on DHCPINFORMs and server authority to diff --git a/common/parse.c b/common/parse.c index 5e3cce7d..b123a6c7 100644 --- a/common/parse.c +++ b/common/parse.c @@ -5556,13 +5556,14 @@ int parse_X (cfile, buf, max) skip_to_semi (cfile); return 0; } - convert_num (cfile, &buf [len], val, 16, 8); - if (len++ > max) { + if (len >= max) { parse_warn (cfile, "hexadecimal constant too long."); skip_to_semi (cfile); return 0; } + convert_num (cfile, &buf [len], val, 16, 8); + len++; token = peek_token (&val, (unsigned *)0, cfile); if (token == COLON) token = next_token (&val, diff --git a/common/tests/option_unittest.c b/common/tests/option_unittest.c index cd52cfb4..bea60837 100644 --- a/common/tests/option_unittest.c +++ b/common/tests/option_unittest.c @@ -129,6 +129,89 @@ ATF_TC_BODY(pretty_print_option, tc) } } +ATF_TC(parse_X); + +ATF_TC_HEAD(parse_X, tc) +{ + atf_tc_set_md_var(tc, "descr", + "Verify parse_X survices option too big."); +} + +/* Initializes a parse struct from an input buffer of data. */ +static void init_parse(struct parse *cfile, char* name, char *input) { + memset(cfile, 0, sizeof(struct parse)); + cfile->tlname = name; + cfile->lpos = cfile->line = 1; + cfile->cur_line = cfile->line1; + cfile->prev_line = cfile->line2; + cfile->token_line = cfile->cur_line; + cfile->cur_line[0] = cfile->prev_line[0] = 0; + cfile->file = -1; + cfile->eol_token = 0; + + cfile->inbuf = input; + cfile->buflen = strlen(input); + cfile->bufsiz = 0; +} + +/* + * This test verifies that parse_X does not overwrite the output + * buffer when given input data that exceeds the output buffer + * capacity. +*/ +ATF_TC_BODY(parse_X, tc) +{ + struct parse cfile; + u_int8_t output[10]; + unsigned len; + + /* Input hex literal */ + char *input = "01:02:03:04:05:06:07:08"; + unsigned expected_len = 8; + + /* Normal output plus two filler bytes */ + u_int8_t expected_plus_two[] = { + 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0xff, 0xff + }; + + /* Safe output when option is too long */ + unsigned short_buf_len = 4; + u_int8_t expected_too_long[] = { + 0x01, 0x02, 0x03, 0x04, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff + }; + + /* First we'll run one that works normally */ + memset(output, 0xff, sizeof(output)); + init_parse(&cfile, "hex_fits", input); + + len = parse_X(&cfile, output, expected_len); + + // Len should match the expected len. + if (len != expected_len) { + atf_tc_fail("parse_X failed, output len: %d", len); + } + + // We should not have written anything past the end of the buffer. + if (memcmp(output, expected_plus_two, sizeof(output))) { + atf_tc_fail("parse_X failed, output does not match expected"); + } + + // Now we'll try it with a buffer that's too small. + init_parse(&cfile, "hex_too_long", input); + memset(output, 0xff, sizeof(output)); + + len = parse_X(&cfile, output, short_buf_len); + + // On errors, len should be zero. + if (len != 0) { + atf_tc_fail("parse_X failed, we should have had an error"); + } + + // We should not have written anything past the end of the buffer. + if (memcmp(output, expected_too_long, sizeof(output))) { + atf_tc_fail("parse_X overwrote buffer!"); + } +} /* This macro defines main() method that will call specified test cases. tp and simple_test_case names can be whatever you want @@ -137,6 +220,7 @@ ATF_TP_ADD_TCS(tp) { ATF_TP_ADD_TC(tp, option_refcnt); ATF_TP_ADD_TC(tp, pretty_print_option); + ATF_TP_ADD_TC(tp, parse_X); return (atf_no_error()); } -- cgit v1.2.1