summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorobrien <obrien@FreeBSD.org>2000-07-20 08:36:42 +0000
committerobrien <obrien@FreeBSD.org>2000-07-20 08:36:42 +0000
commitadb1918b06371d2017980138aa8ea6fba0100041 (patch)
treed8304cd4a0aec240ceca0472d4dc72b6c181f6c6
parenta75ac5a08f80ff97810f9414e6c63d82b81ffa91 (diff)
parent6c5ad021325798ac0714185ddc1df496452dfa44 (diff)
downloadFreeBSD-src-adb1918b06371d2017980138aa8ea6fba0100041.zip
FreeBSD-src-adb1918b06371d2017980138aa8ea6fba0100041.tar.gz
This commit was generated by cvs2svn to compensate for changes in r63616,
which included commits to RCS files with non-trunk default branches.
-rw-r--r--contrib/isc-dhcp/Makefile.conf1
-rw-r--r--contrib/isc-dhcp/README6
-rw-r--r--contrib/isc-dhcp/RELNOTES11
-rw-r--r--contrib/isc-dhcp/client/Makefile.dist3
-rw-r--r--contrib/isc-dhcp/includes/dhcpd.h7
-rw-r--r--contrib/isc-dhcp/includes/version.h2
6 files changed, 22 insertions, 8 deletions
diff --git a/contrib/isc-dhcp/Makefile.conf b/contrib/isc-dhcp/Makefile.conf
index d2fb534..509e32f 100644
--- a/contrib/isc-dhcp/Makefile.conf
+++ b/contrib/isc-dhcp/Makefile.conf
@@ -46,6 +46,7 @@ MANCAT = cat
ETC = /etc
VARRUN = /var/run
VARDB = /var/db
+CLIENT_PATH = '"PATH=/usr/ucb:/usr/bin:/usr/sbin:/bin:/sbin"'
# Major version number (if applicable)
##--majver--
diff --git a/contrib/isc-dhcp/README b/contrib/isc-dhcp/README
index 03f308f..cf1fa60 100644
--- a/contrib/isc-dhcp/README
+++ b/contrib/isc-dhcp/README
@@ -1,6 +1,6 @@
<C><H4>Internet Software Consortium</H4></C>
<C><H4>Dynamic Host Configuration Protocol Distribution</H4></C>
-<C><H4>Version 2 Patchlevel 2</H4></C>
+<C><H4>Version 2 Patchlevel 3</H4></C>
<C><H4>June 30, 2000</H4></C>
<C><H4>README FILE</H4></C>
@@ -135,13 +135,13 @@ information. On Digital Unix, type ``man pfilt''.</P>
the tar utility and the gzip command - type something like:</P>
<BLOCKQUOTE>
- zcat dhcp-2.0pl2.tar.gz |tar xvf -
+ zcat dhcp-2.0pl3.tar.gz |tar xvf -
</BLOCKQUOTE>
<P>On BSD/OS, you have to type gzcat, not zcat, and you may run into
similar problems on other operating systems.</P>
-<P>Now, cd to the dhcp-2.0pl2 subdirectory that you've just created and
+<P>Now, cd to the dhcp-2.0pl3 subdirectory that you've just created and
configure the source tree by typing:</P>
<BLOCKQUOTE>
diff --git a/contrib/isc-dhcp/RELNOTES b/contrib/isc-dhcp/RELNOTES
index 7e7a5c3..60d2958 100644
--- a/contrib/isc-dhcp/RELNOTES
+++ b/contrib/isc-dhcp/RELNOTES
@@ -1,7 +1,7 @@
Internet Software Consortium
Dynamic Host Configuration Protocol Distribution
- Version 2 Patchlevel 2
- June 30, 2000
+ Version 2 Patchlevel 3
+ July 19, 2000
Release Notes
@@ -22,6 +22,13 @@ the README file.
This log describes the changes that have been made in version 2.0
since June of 1997.
+ CHANGES FROM VERSION 2.0 PATCHLEVEL 2
+
+- Rather than calling a client environment setup script, set the
+ environment up directly, so as to avoid any possible exploit making
+ use of clever shell metacharacter hacks. This is a security fix
+ that applies to the DHCP client *only*.
+
CHANGES FROM VERSION 2.0 PATCHLEVEL 1
- Fix a case where an unitialized pointer could result from an exceptional
diff --git a/contrib/isc-dhcp/client/Makefile.dist b/contrib/isc-dhcp/client/Makefile.dist
index 2109d39..2b261a7 100644
--- a/contrib/isc-dhcp/client/Makefile.dist
+++ b/contrib/isc-dhcp/client/Makefile.dist
@@ -42,7 +42,8 @@ MAN = dhclient.8 dhclient.conf.5 dhclient-script.8 dhclient.leases.5
DEBUG = -g
INCLUDES = -I.. -I../includes
DHCPLIB = ../common/libdhcp.a
-CFLAGS = $(DEBUG) $(PREDEFINES) $(INCLUDES) $(COPTS)
+CFLAGS = $(DEBUG) $(PREDEFINES) $(INCLUDES) $(COPTS) \
+ -DCLIENT_PATH=${CLIENT_PATH}
all: $(PROG) $(CATMANPAGES)
diff --git a/contrib/isc-dhcp/includes/dhcpd.h b/contrib/isc-dhcp/includes/dhcpd.h
index ddf34f0..d46ddf1 100644
--- a/contrib/isc-dhcp/includes/dhcpd.h
+++ b/contrib/isc-dhcp/includes/dhcpd.h
@@ -356,6 +356,9 @@ struct client_state {
struct iaddr requested_address; /* Address we would like to get. */
struct client_config *config; /* Information from config file. */
+
+ struct string_list *env; /* Client script environment. */
+ int envc; /* Number of entries in environment. */
};
/* Information about each network interface. */
@@ -895,13 +898,15 @@ void free_client_lease PROTO ((struct client_lease *));
void rewrite_client_leases PROTO ((void));
void write_client_lease PROTO ((struct interface_info *,
struct client_lease *, int));
-char *dhcp_option_ev_name PROTO ((struct option *));
void script_init PROTO ((struct interface_info *, char *,
struct string_list *));
void script_write_params PROTO ((struct interface_info *,
char *, struct client_lease *));
int script_go PROTO ((struct interface_info *));
+void client_envadd PROTO ((struct client_state *,
+ const char *, const char *, const char *, ...));
+int dhcp_option_ev_name (char *, size_t, struct option *);
struct client_lease *packet_to_lease PROTO ((struct packet *));
void go_daemon PROTO ((void));
diff --git a/contrib/isc-dhcp/includes/version.h b/contrib/isc-dhcp/includes/version.h
index ccda68f..70d3d067 100644
--- a/contrib/isc-dhcp/includes/version.h
+++ b/contrib/isc-dhcp/includes/version.h
@@ -1,3 +1,3 @@
/* Current version of ISC DHCP Distribution. */
-#define DHCP_VERSION "2.0pl2"
+#define DHCP_VERSION "2.0pl3"
OpenPOWER on IntegriCloud