Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 30 May 1997 13:00:49 +0900 (JST)
From:      sanpei@yy.cs.keio.ac.jp
To:        FreeBSD-gnats-submit@FreeBSD.ORG
Subject:   ports/3717: update of the port of net/wide-dhcp
Message-ID:  <199705300400.NAA13040@lavender.yy.cs.keio.ac.jp>
Resent-Message-ID: <199705300410.VAA27337@hub.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         3717
>Category:       ports
>Synopsis:       update of the port of net/wide-dhcp
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports
>State:          open
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Thu May 29 21:10:01 PDT 1997
>Last-Modified:
>Originator:     MIHIRA Yoshiro
>Organization:
Keio Univ. Japan
>Release:        FreeBSD 2.2-961014-SNAP i386
>Environment:

	FreeBSD-current/2.2-970422-RELENG

>Description:

  I'm maintainer of wide-dhcp.

  I updated wide-dhcp, please submit below patches.

update log(related files):

  Revise Documentations:
    (1) Fix manpage files about path of dhcpdb.bind file.
	    The dhcpdb.bind file is in /var/db/ under FreeBSD, not
	  in /etc.
		(patches/patch-ba, patch-bb, patch-bc, patch-bd)

    (2) Append description of dhcpc.interface.pid file to man page.
		(patches/patch-az)

    (3) Append description into pkg/DESCR file.
	    o CHECK_SUM error problem under 2.1.x FreeBSD box.
	    o dhcps need dhcpdb.relay file without using dhcpdb.relay.
		(pkg/DESCR)

  Revise system related files and Makefile:
    (4) Unlink /etc/resolv.conf before recreate new one.
	      If /etc/resolv.conf is symbolic link file, dhcpc with -r
	    option overwrite symfile.
	      Then unlink it berfore recreate.
		(patches/patch-ac)

    (5) Remove dhcpdb.bind file if changed dhcpdb.pool file.

	      If dhcpdb.pool file is changed and dhcpdb.bind file is
	    not matched to new pool file, dhcp server(dhcps) can not
	    run with some errors like this.

 *   dhcps in free(): warning: modified (chunk-) pointer.
 *   dhcps[25591]: hash_ins() with client identifier failed in read_bind_db()

	      I fixed start-up script to remove dhcpdb.bind file
	    when dhcpdb.pool file is newer than dhcpdb.bind.
		(Makefile)

    (6) Install intro.dhcp.jis file into ${PREFIX}/share/dhcp dirctory.
		(Makefile, pkg/PLIST)

----------
  At last, I hope to append above update log to CVS tree logs.

Thank you.

>How-To-Repeat:

	

>Fix:

diff -Nur wide-dhcp.org/Makefile wide-dhcp/Makefile
--- wide-dhcp.org/Makefile	Fri Apr  4 20:17:15 1997
+++ wide-dhcp/Makefile	Fri May 30 12:36:30 1997
@@ -36,13 +36,21 @@
 	@${CP} ${WRKSRC}/db_sample/dhcpdb.relay ${PREFIX}/share/dhcp/dhcpdb.relay.sample
 	@${CP} ${WRKSRC}/db_sample/dhcpdb.server ${PREFIX}/share/dhcp/dhcpdb.server.sample
 	@${CP} ${WRKSRC}/db_sample/intro.dhcp ${PREFIX}/share/dhcp/
+	@${CP} ${WRKSRC}/db_sample/intro.dhcp.jis ${PREFIX}/share/dhcp/
 	@if [ ! -f ${STARTUP_SCRIPT} ]; then				\
 		echo "Installing ${STARTUP_SCRIPT} startup file.";	\
 		echo '#!/bin/sh' > ${STARTUP_SCRIPT};			\
-		echo 'if [ -f /etc/dhcpdb.pool -a -f /etc/dhcpdb.relay \'\
+		echo 'DB_POOL=/etc/dhcpdb.pool' >> ${STARTUP_SCRIPT};	\
+		echo 'DB_RELAY=/etc/dhcpdb.relay' >> ${STARTUP_SCRIPT};	\
+		echo 'DB_BIND=/var/db/dhcpdb.bind' >> ${STARTUP_SCRIPT};\
+		echo 'if [ -f $${DB_POOL} -a -f $${DB_RELAY} \'\
 			>> ${STARTUP_SCRIPT};				\
 		echo '		-a -x /usr/local/sbin/dhcps ]; then'	\
 			>> ${STARTUP_SCRIPT};				\
+		echo '	if [ -f $${DB_BIND} ]; then' >> ${STARTUP_SCRIPT};\
+		echo '		find $${DB_POOL} -newer $${DB_BIND} -exec rm $${DB_BIND} \;'\
+			>> ${STARTUP_SCRIPT};				\
+		echo '	fi' >> ${STARTUP_SCRIPT};			\
 		echo "	${PREFIX}/sbin/dhcps [Intarface Name]"		\
 			>> ${STARTUP_SCRIPT};				\
 		echo "	echo -n ' dhcps'"				\
diff -Nur wide-dhcp.org/patches/patch-ac wide-dhcp/patches/patch-ac
--- wide-dhcp.org/patches/patch-ac	Fri Apr  4 20:17:17 1997
+++ wide-dhcp/patches/patch-ac	Mon Apr 21 23:59:34 1997
@@ -1,5 +1,5 @@
 --- client/dhcpc_subr.c.orig	Fri Nov  3 01:39:55 1995
-+++ client/dhcpc_subr.c	Thu Mar 27 11:39:50 1997
++++ client/dhcpc_subr.c	Mon Apr 21 23:59:03 1997
 @@ -63,6 +63,12 @@
  #ifdef __osf__
  #include <net/pfilt.h>
@@ -95,7 +95,7 @@
    bzero(&so_dst, sizeof(struct sockaddr));
    bzero(&so_mask, sizeof(struct sockaddr));
    bzero(&so_gate, sizeof(struct sockaddr));
-@@ -1772,6 +1794,43 @@
+@@ -1772,6 +1794,44 @@
  
  #endif
  
@@ -115,6 +115,7 @@
 +     */
 +    if (param->dns_domain != NULL && param->dns_server != NULL) {
 +	if(param->dns_server->num && param->dns_server->addr != NULL) {
++	    unlink(_PATH_RESCONF);
 +	    if((fp = fopen(_PATH_RESCONF, "w")) == NULL) {
 +		return;
 +	    }
@@ -139,7 +140,7 @@
  
  void
  make_decline(lsbuf, reqspecp)
-@@ -1897,7 +1956,11 @@
+@@ -1897,7 +1957,11 @@
      lsether->ether_shost[i] = intface.haddr.haddr[i];
  #endif
    }
@@ -151,7 +152,7 @@
  
    return;
  }
-@@ -2199,7 +2262,11 @@
+@@ -2199,7 +2263,11 @@
      snd.ether->ether_shost[i] = intface.haddr.haddr[i];
  #endif
    }
@@ -163,7 +164,7 @@
  
    return;
  }
-@@ -2372,7 +2439,11 @@
+@@ -2372,7 +2440,11 @@
      snd.ether->ether_shost[i] = intface.haddr.haddr[i];
  #endif
    }
@@ -175,7 +176,7 @@
  
    return(0);
  }
-@@ -2391,7 +2462,7 @@
+@@ -2391,7 +2463,7 @@
    struct msghdr msg;
    struct iovec bufvec[1];
    int bufsize = DFLTDHCPLEN;
@@ -184,7 +185,7 @@
    int on;
  #endif
  
-@@ -2417,7 +2488,7 @@
+@@ -2417,7 +2489,7 @@
        return(-1);
      }
  
diff -Nur wide-dhcp.org/patches/patch-az wide-dhcp/patches/patch-az
--- wide-dhcp.org/patches/patch-az	Fri Apr  4 11:37:13 1997
+++ wide-dhcp/patches/patch-az	Mon Apr 21 23:54:31 1997
@@ -1,5 +1,5 @@
 --- client/dhcpc.8.orig	Tue Sep 12 13:54:16 1995
-+++ client/dhcpc.8	Thu Mar 27 14:07:16 1997
++++ client/dhcpc.8	Mon Apr 21 23:52:15 1997
 @@ -5,7 +5,7 @@
  .SH SYNOPSIS
  .B dhcpc
@@ -9,11 +9,10 @@
  ]
  .I interface
  .SH DESCRIPTION
-@@ -36,6 +36,21 @@
- option is specified,
+@@ -37,6 +37,21 @@
  .B dhcpc
  runs in foreground and debugging mode.
-+.LP
+ .LP
 +If the
 +.B \-r
 +option is specified, and if your DHCP server supplies the DNS address,
@@ -28,6 +27,17 @@
 +call 
 +.B sethostname(3)
 +with supplied name.
- .LP
++.LP
  The DHCP client can verify whether its assigned information is still
  valid at any time.
+ .B dhcpc
+@@ -66,6 +81,9 @@
+ .TP 20
+ .B /etc/dhcp_cache
+ The file to record previously assigned informations
++.TP
++.B /var/run/dhcpc.[interface name].pid
++File which includes process ID
+ .PD
+ .SH SEE ALSO
+ R. Droms,
diff -Nur wide-dhcp.org/patches/patch-ba wide-dhcp/patches/patch-ba
--- wide-dhcp.org/patches/patch-ba	Thu Jan  1 09:00:00 1970
+++ wide-dhcp/patches/patch-ba	Mon Apr 21 11:45:31 1997
@@ -0,0 +1,11 @@
+--- server/dhcps.8.orig	Mon Apr 21 11:44:13 1997
++++ server/dhcps.8	Mon Apr 21 11:44:49 1997
+@@ -36,7 +36,7 @@
+ "binding".
+ .B dhcps
+ manages these with files, /etc/dhcpdb.pool and /etc/dhcpdb.bind
+-(/var/db/dhcpdb.bind for BSD/OS).  It is possible to change these path
++(/var/db/dhcpdb.bind for BSD/OS and FreeBSD).  It is possible to change these path
+ with command line option.
+ .LP
+ Also
diff -Nur wide-dhcp.org/patches/patch-bb wide-dhcp/patches/patch-bb
--- wide-dhcp.org/patches/patch-bb	Thu Jan  1 09:00:00 1970
+++ wide-dhcp/patches/patch-bb	Mon Apr 21 23:47:28 1997
@@ -0,0 +1,12 @@
+--- db_sample/intro.dhcp.orig	Mon Apr 21 11:49:24 1997
++++ db_sample/intro.dhcp	Mon Apr 21 23:41:14 1997
+@@ -29,7 +29,8 @@
+ 
+ The first symbol of each entry is an index string to the entry.  The
+ index is used to quote, and also used in database file
+-("/etc/dhcpdb.bind") to maintain the assignment of IP address.  You
++("/etc/dhcpdb.bind" [/var/db/dhcpdb.bind  for  BSD/OS and FreeBSD]) to
++ maintain the assignment of IP address.  You
+ can use any character as index except ':'.  The remains is list of
+ fields, which have a form of key=value.  And each fields are separated
+ by ':'.  The following are simple example;
diff -Nur wide-dhcp.org/patches/patch-bc wide-dhcp/patches/patch-bc
--- wide-dhcp.org/patches/patch-bc	Thu Jan  1 09:00:00 1970
+++ wide-dhcp/patches/patch-bc	Mon Apr 21 23:45:52 1997
@@ -0,0 +1,18 @@
+--- db_sample/intro.dhcp.jis.orig	Mon Apr 21 23:43:44 1997
++++ db_sample/intro.dhcp.jis	Mon Apr 21 23:45:32 1997
+@@ -29,10 +29,11 @@
+ 
+ $B3F%(%s%H%j$N:G=i$N%7%s%\%k$O!"$=$N%(%s%H%j$K$?$$$9$k(BIndex$B$H$J$kJ8;zNs(B
+ $B$G$"$k!#$3$l$O8e$G(Btblc$B$G;2>H$9$k;~$KMxMQ$5$l$?$j!"%5!<%P$,%"%I%l%9$N3d(B
+-$B$jEv$F$r4IM}$9$k$?$a$N%G!<%?%Y!<%9(B(/etc/dhcpdb.bind)$B$G$b(BIndex$B$H$7$F;H(B
+-$BMQ$5$l$F$$$k!#(BIndex$B$K$O(B':'$B0J30$NG$0U$NJ8;z$r;HMQ$7$F$h$$!#3F%(%s%H%j$N(B
+-$B;D$jItJ,$O!"(Bkey=value$B7A<0$N%U%#!<%k%I$NNs$G$"$j!"3F%U%#!<%k%I$O(B':'$B$G6h(B
+-$B@Z$i$l$F$$$k!#0J2<$K!"4JC1$JNc$r<($9!#(B
++$B$jEv$F$r4IM}$9$k$?$a$N%G!<%?%Y!<%9(B(/etc/dhcpdb.bind [BSD/OS $B$d(B FreeBSD
++$B$G$O(B/var/db/dhcpdb.bind])$B$G$b(BIndex$B$H$7$F;HMQ$5$l$F$$$k!#(BIndex$B$K$O(B':'
++$B0J30$NG$0U$NJ8;z$r;HMQ$7$F$h$$!#3F%(%s%H%j$N;D$jItJ,$O!"(Bkey=value$B7A<0(B
++$B$N%U%#!<%k%I$NNs$G$"$j!"3F%U%#!<%k%I$O(B':'$B$G6h@Z$i$l$F$$$k!#0J2<$K!"4J(B
++$BC1$JNc$r<($9!#(B
+ 
+ -- begin of sample
+ 
diff -Nur wide-dhcp.org/patches/patch-bd wide-dhcp/patches/patch-bd
--- wide-dhcp.org/patches/patch-bd	Thu Jan  1 09:00:00 1970
+++ wide-dhcp/patches/patch-bd	Mon Apr 21 23:48:25 1997
@@ -0,0 +1,11 @@
+--- server/dhcpdb.relay.5.orig	Mon Apr 21 23:46:42 1997
++++ server/dhcpdb.relay.5	Mon Apr 21 23:47:01 1997
+@@ -45,7 +45,7 @@
+ .PD 0
+ .TP 25
+ .B /etc/dhcpdb.bind
+-Database about bindings (/var/db/dhcpdb.bind for BSD/OS)
++Database about bindings (/var/db/dhcpdb.bind for BSD/OS and FreeBSD)
+ .TP
+ .B /etc/dhcpdb.pool
+ Address Pool database
diff -Nur wide-dhcp.org/pkg/DESCR wide-dhcp/pkg/DESCR
--- wide-dhcp.org/pkg/DESCR	Fri Apr  4 20:17:23 1997
+++ wide-dhcp/pkg/DESCR	Fri May 30 11:01:25 1997
@@ -38,6 +38,11 @@
 ./MAKEDEV bpf2
 ./MAKEDEV bpf3
 
+** dhcpdb.relay file is need without relay agent **
+
+	  Please read more information in
+	/usr/local/share/dhcp/intro.dhcp.
+
 ** CHECK_SUM Problem under FreeBSD 2.1.x **
 
 	  This port collection is use tzfile.h from FreeBSD-current source
@@ -46,8 +51,17 @@
 
 	  If you use this port collection ***under FreeBSD 2.1-stable***:
 	2.1.0-RELEASE, 2.1.5-RELASE, 2.1.6-RELEASE, 2.1.7-RELEASE,
-	please make with ``make NO_CHECKSUM=yes'', or use latest
-	bsd.ports.mk and bsd.port.subdir.mk files in /usr/share/mk.
+	please use latest bsd.ports.mk and bsd.port.subdir.mk files in
+	/usr/share/mk or manually check checksum and delete files/md5
+	file.
+
+** kernel dependence of package program files **
+
+	  This compiled programs(packages) depends on kernel table as
+	ifconfig program.
+	  So please use fit package to your FreeBSD (for example under
+	2.1.5-RELEASE, use packages-2.1.5, do not use packages-2.2) or
+	recompile from ports collection.
 
 ** additional function **
 
@@ -66,6 +80,7 @@
 		Junichi SATOH<junichi@astec.co.jp>
 		Hisashi HIRAMOTO<hiramoto@phys.chs.nihon-u.ac.jp>
 		Takeshi TAGUCHI<taguchi@tohoku.iij.ad.jp>
+		Keisuke INOUE<keisuke@aa.cs.keio.ac.jp>
 
 - Yoshiro MIHIRA
 (sanpei@yy.cs.keio.ac.jp)
diff -Nur wide-dhcp.org/pkg/PLIST wide-dhcp/pkg/PLIST
--- wide-dhcp.org/pkg/PLIST	Fri Apr  4 20:17:24 1997
+++ wide-dhcp/pkg/PLIST	Mon Apr 21 11:50:08 1997
@@ -12,6 +12,7 @@
 share/dhcp/README
 share/dhcp/README.jis
 share/dhcp/intro.dhcp
+share/dhcp/intro.dhcp.jis
 share/dhcp/dhcpdb.pool.sample
 share/dhcp/dhcpdb.relay.sample
 share/dhcp/dhcpdb.server.sample
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199705300400.NAA13040>