Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Jun 2011 22:56:18 GMT
From:      Ryan Steinmetz <rpsfa@rit.edu>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/158516: [new ports] net/isc-dhcp42-(client|server|relay)
Message-ID:  <201106292256.p5TMuISF022781@red.freebsd.org>
Resent-Message-ID: <201106292300.p5TN0KOh066262@freefall.freebsd.org>

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

>Number:         158516
>Category:       ports
>Synopsis:       [new ports] net/isc-dhcp42-(client|server|relay)
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Wed Jun 29 23:00:19 UTC 2011
>Closed-Date:
>Last-Modified:
>Originator:     Ryan Steinmetz
>Release:        8.2-RELEASE
>Organization:
Rochester Institute of Technology
>Environment:
>Description:
-New port net/isc-dhcp42-client
-New port net/isc-dhcp42-server
-New port net/isc-dhcp42-relay
-These ports are intentionally separate from the isc-dhcp* ports and should remain so until the others are officially de-supported by ISC.

============================================

ISC DHCP 4.2.x includes features that were not included in DHCP 4.1.x.
These include:

Processing the DHCP to DNS server transactions in an asynchronous fashion.
The DHCP server or client can now continue with it's processing while
awaiting replies from the DNS server.

There are a number of DHCPv6 limitations and features missing in this
release, which will be addressed in the future:

- Only Solaris, Linux, FreeBSD, NetBSD, and OpenBSD are supported.

- DHCPv6 includes human-readable text in status code messages, in
  English.  A method to reconfigure or support other languages would
  be preferable.

- The "host-identifier" option is limited to a simple token.

- The client and server can only operate DHCPv4 or DHCPv6 at a time,
  not both.  To use both protocols simultaneously, two instances of the
  relevant daemon are required, one with the '-6' command line option.

For information on how to install, configure and run this software, as
well as how to find documentation and report bugs, please consult the
README file.

>How-To-Repeat:

>Fix:


Patch attached with submission follows:

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	isc-dhcp42-server
#	isc-dhcp42-server/files
#	isc-dhcp42-server/files/patch-client__dhclient.conf
#	isc-dhcp42-server/files/isc-dhcrelay.in
#	isc-dhcp42-server/files/patch-client__Makefile.in
#	isc-dhcp42-server/files/isc-dhcpd.in
#	isc-dhcp42-server/files/patch-server__Makefile.am
#	isc-dhcp42-server/files/patch-server__Makefile.in
#	isc-dhcp42-server/files/patch-server__bpf.c
#	isc-dhcp42-server/files/extra-patch-bind__Makefile
#	isc-dhcp42-server/Makefile
#	isc-dhcp42-server/pkg-descr
#	isc-dhcp42-server/pkg-message
#	isc-dhcp42-server/pkg-plist
#	isc-dhcp42-server/distinfo
#	isc-dhcp42-client
#	isc-dhcp42-client/Makefile
#	isc-dhcp42-client/pkg-descr
#	isc-dhcp42-client/pkg-message
#	isc-dhcp42-client/pkg-plist
#	isc-dhcp42-relay
#	isc-dhcp42-relay/Makefile
#	isc-dhcp42-relay/pkg-descr
#	isc-dhcp42-relay/pkg-message
#	isc-dhcp42-relay/pkg-plist
#
echo c - isc-dhcp42-server
mkdir -p isc-dhcp42-server > /dev/null 2>&1
echo c - isc-dhcp42-server/files
mkdir -p isc-dhcp42-server/files > /dev/null 2>&1
echo x - isc-dhcp42-server/files/patch-client__dhclient.conf
sed 's/^X//' >isc-dhcp42-server/files/patch-client__dhclient.conf << '032db709d2bac1371b6418fa5b3d45e5'
X--- ./client/dhclient.conf.orig	2010-05-02 20:39:06.000000000 -0400
X+++ ./client/dhclient.conf	2010-05-02 20:39:16.000000000 -0400
X@@ -11,7 +11,7 @@
X reboot 10;
X select-timeout 5;
X initial-interval 2;
X-script "/etc/dhclient-script";
X+script "%%PREFIX%%/sbin/dhclient-script";
X media "-link0 -link1 -link2", "link0 link1";
X reject 192.33.137.209;
X 
032db709d2bac1371b6418fa5b3d45e5
echo x - isc-dhcp42-server/files/isc-dhcrelay.in
sed 's/^X//' >isc-dhcp42-server/files/isc-dhcrelay.in << '03c05aa2ef482f02f685c1ab20d28897'
X#! /bin/sh
X#
X# $FreeBSD: ports/net/isc-dhcp41-server/files/isc-dhcrelay.in,v 1.4 2011/06/21 17:08:11 lev Exp $
X#
X# PROVIDE: dhcrelay
X# REQUIRE: DAEMON
X# KEYWORD: shutdown
X#
X# Add the following line to /etc/rc.conf to enable dhcrelay:
X#
X# dhcrelay_enable="YES"
X#
X
X# override these variables in /etc/rc.conf
Xdhcrelay_enable=${dhcrelay_enable:-"NO"}
Xdhcrelay6_enable=${dhcrelay6_enable:-"NO"}
X# dhcrelay_flags=""			# command option(s)
X# dhcrelay_servers=""			# dhcrelay server(s)
X# dhcrelay_ifaces=""			# ethernet interface(s)
X
Xcase $0 in
X/etc/rc*)
X	# during boot (shutdown) $0 is /etc/rc (/etc/rc.shutdown),
X	# so get the name of the script from $_file
X	name=$_file
X	;;
X*)
X	name=$0
X	;;
Xesac
X
Xname=${name##*/isc-}
X
Xcase ${name} in
X*6)
X	ipversion=-6
X	;;
X*)
X	ipversion=-4
X	;;
Xesac
X
Xdhcrelay_precmd ()
X{
X	local ifaces _servers _ifaces
X	
X	eval "_servers=\${${name}_servers}"
X	eval "_ifaces=\${${name}_ifaces}"
X
X	if [ -z "${_servers}" ]; then
X		err 1 "no ${name} server(s) configured."
X	fi
X
X	ifaces=
X	for iface in ${_ifaces}; do
X		ifaces="${ifaces} -i ${iface}"
X	done
X
X	rc_flags="${rc_flags} ${ipversion} ${ifaces} ${_servers}"
X}
X
X. /etc/rc.subr
X
Xrcvar=${name}_enable
X
Xcommand=%%PREFIX%%/sbin/${name}
Xpidfile=/var/run/${name}.pid
Xstart_precmd=${name}_precmd
X
Xload_rc_config ${name}
Xrun_rc_command "$1"
03c05aa2ef482f02f685c1ab20d28897
echo x - isc-dhcp42-server/files/patch-client__Makefile.in
sed 's/^X//' >isc-dhcp42-server/files/patch-client__Makefile.in << 'b8c8ec67df4690d65ccc4b95029faacf'
X--- client/Makefile.in.orig	2010-11-24 13:58:02.077206326 -0500
X+++ client/Makefile.in	2010-11-24 13:59:01.452202855 -0500
X@@ -354,8 +354,8 @@
X 	@list='$(dist_sysconf_DATA)'; for p in $$list; do \
X 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
X 	  f=$(am__strip_dir) \
X-	  echo " $(dist_sysconfDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(sysconfdir)/$$f'"; \
X-	  $(dist_sysconfDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(sysconfdir)/$$f"; \
X+	  echo " $(dist_sysconfDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(sysconfdir)/$$f.sample'"; \
X+	  $(dist_sysconfDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(sysconfdir)/$$f.sample"; \
X 	done
X 
X uninstall-dist_sysconfDATA:
b8c8ec67df4690d65ccc4b95029faacf
echo x - isc-dhcp42-server/files/isc-dhcpd.in
sed 's/^X//' >isc-dhcp42-server/files/isc-dhcpd.in << '6231e1e6c0a93c3c8dbf7bb378cea2e2'
X#! /bin/sh
X#
X# $FreeBSD: ports/net/isc-dhcp41-server/files/isc-dhcpd.in,v 1.3 2011/02/14 02:21:27 wxs Exp $
X#
X# PROVIDE: dhcpd
X# REQUIRE: DAEMON
X# BEFORE: LOGIN
X# KEYWORD: shutdown
X#
X# Add the following line to /etc/rc.conf to enable dhcpd:
X#
X# dhcpd_enable="YES"
X#
X
X. /etc/rc.subr
X
Xcase $0 in
X/etc/rc*)
X	# during boot (shutdown) $0 is /etc/rc (/etc/rc.shutdown),
X	# so get the name of the script from $_file
X	name=$_file
X	;;
X*)
X	name=$0
X	;;
Xesac
X
Xname=${name##*/isc-}
Xparanoia=%%PARANOIA%%				# compiled in paranoia?
X
Xload_rc_config ${name}
X
X# override these variables in /etc/rc.conf
Xeval ": \${${name}_enable:=\"NO\"}"
X# dhcpd_flags=""		# -q -early_chroot	# command option(s)
X# dhcpd_ifaces=""					# ethernet interface(s)
Xeval ": \${${name}_conf:=%%PREFIX%%/etc/${name}.conf}"	# configuration file
Xeval ": \${${name}_withumask:=022}"			# file creation mask
X
Xeval ": \${${name}_chuser_enable:=\"%%PARANOIA%%\"}"	# runs w/o privileges?
Xeval ": \${${name}_withuser:=dhcpd}"			# user name to run as
Xeval ": \${${name}_withgroup:=dhcpd}"			# group name to run as
X
Xeval ": \${${name}_chroot_enable:=\"NO\"}"		# runs chrooted?
Xeval ": \${${name}_devfs_enable:=\"YES\"}"		# devfs if available?
Xeval ": \${${name}_rootdir:=/var/db/${name}}"		# directory to run in
X# dhcpd_includedir=""			# directory for included config files
X
Xsafe_run ()	# rc command [args...]
X{
X	local _rc
X
X	_rc=$1
X	shift
X
X	if [ "${_rc}" -eq 0 ]; then
X		debug safe_run: "$@"
X		"$@" || _rc=1
X	else
X		warn safe_run: "$@"
X	fi
X	return ${_rc}
X}
X
Xprecious ()	# entry...
X{
X	local _entry _rc
X
X	_rc=0
X	for _entry; do
X		# do nothing if /dev, /var/run or /var/db
X		echo ${_entry} | egrep -q '^//*(dev|var//*(run|db))?/*$' || _rc=1
X	done
X	debug precious: "$@" rc=${_rc}
X	return ${_rc}
X}
X
Xlsmod ()	# user group file...
X{
X	local _entry _user _group _rc
X
X	_user=$1 _group=$2
X	shift 2
X
X	_rc=0
X	for _entry; do
X		ls -ld ${_entry} 2> /dev/null |
X		awk -v u=${_user} -v g=${_group} '{
X		    exit ((u && $3 != u) || (g && $4 != g))
X		}' || _rc=1
X	done
X	debug lsmod: "$@" rc=${_rc}
X	return ${_rc}
X}
X
Xsafe_chmog ()	# entry...
X{
X	local _entry _user _group _usergroup _rc
X
X	eval "_user=\${${name}_withuser}"
X	eval "_group=\${${name}_withgroup}"
X
X	_rc=0
X	if [ -n "${_user}" -o -n "${_group}" ]; then
X		_usergroup=${_user}${_group:+:${_group}}
X		for _entry; do
X			if [ -d ${_entry} ] && mounted ${_entry}; then
X				continue
X			fi
X			if [ -e ${_entry} ] &&
X			   ! precious ${_entry} &&
X			   ! lsmod ${_user} ${_group} ${_entry} &&
X			   ! safe_run ${_rc} chown ${_usergroup} ${_entry}; then
X				warn "unable to change permissions of ${_entry}"
X				_rc=1
X			fi
X		done
X	fi
X	return ${_rc}
X}
X
Xsafe_mkdir ()	# dir...
X{
X	local _dir _rc
X
X	_rc=0
X	for _dir; do
X		if [ ! -d ${_dir} ] &&
X		   ! precious ${_dir} &&
X		   ! safe_run ${_rc} mkdir -p ${_dir}; then
X			err 1 "unable to create directory ${_dir}"
X			_rc=1
X		fi
X	done
X	safe_run ${_rc} safe_chmog "$@" || _rc=1
X	return ${_rc}
X}
X
Xsafe_rmdir ()	# dir...
X{
X	local _dir _rc
X
X	_rc=0
X	for _dir; do
X		if [ -d ${_dir} ] &&
X		   ! precious ${_dir} &&
X		   ! mounted ${_dir}; then
X			if safe_run ${_rc} rmdir ${_dir}; then
X				safe_run ${_rc} safe_rmdir ${_dir%/*} || _rc=1
X			else
X				warn "unable to remove directory ${_dir}"
X				_rc=1
X			fi
X		fi
X	done
X	return ${_rc}
X}
X
Xsafe_touch ()	# file...
X{
X	local _file _rc
X
X	_rc=0
X	for _file; do
X		if [ ! -e ${_file} ] &&
X		   ! safe_run ${_rc} touch ${_file}; then
X			err 1 "unable to create file ${_file}"
X			_rc=1
X		fi
X	done
X	safe_run ${_rc} safe_chmog "$@" || _rc=1
X	return ${_rc}
X}
X
Xsafe_remove ()	# entry...
X{
X	local _entry _rc
X
X	_rc=0
X	for _entry; do
X		if [ -f ${_entry} ]; then
X			if ! safe_run ${_rc} rm -f ${_entry}; then
X				warn "unable to remove file ${_entry}"
X				_rc=1
X			fi
X		elif [ -d ${_entry} ] &&
X		     ! precious ${_entry} &&
X		     ! mounted ${_entry}; then
X			if ! safe_run ${_rc} rm -rf ${_entry}; then
X				warn "unable to remove directory ${_entry}"
X				_rc=1
X			fi
X		fi
X	done
X	return ${_rc}
X}
X
Xsafe_copy ()	# src dst
X{
X	local _src _dst _rc
X
X	_src=$1 _dst=$2
X
X	_rc=0
X	if [ -f ${_src} ]; then
X		if ! safe_run ${_rc} safe_remove ${_dst} ||
X		   ! safe_run ${_rc} cp -p ${_src} ${_dst}; then
X			err 1 "unable to copy file ${_src} to ${_dst}"
X			_rc=1
X		fi
X		safe_run ${_rc} safe_chmog ${_dst} || _rc=1
X	elif [ -d ${_src} ] &&
X	     ! precious ${_dst} &&
X	     ! mounted ${_dst}; then
X		if ! safe_run ${_rc} pax -rw -pe -ts "|^${_src}||" \
X		   ${_src} ${_dst}; then
X			err 1 "unable to copy directory ${_src} to ${_dst}"
X			_rc=1
X		fi
X	else
X		err 1 "unable to copy ${_src} to ${_dst}" \
X		      "-- not a file or a directory"
X		_rc=1
X	fi
X	return ${_rc}
X}
X
Xmounted ()	# dir...
X{
X	local _rc
X
X	_rc=1
X	if checkyesno ${name}_devfs_enable; then
X		mount -t devfs | awk '
X		    BEGIN { n = ARGC; ARGC = 2 }
X		    { for (i = 2; i != n; i++) if ($3 == ARGV[i]) exit 1 }
X		' - "$@" || _rc=0
X	fi
X	debug mounted: "$@" rc=${_rc}
X	return ${_rc}
X}
X
Xsafe_mount ()	# dir
X{
X	local _dir _rc
X
X	_dir=$1
X
X	_rc=0
X	if checkyesno ${name}_devfs_enable &&
X	   ! mounted ${_dir} &&
X	   ! safe_run ${_rc} mount -t devfs devfs ${_dir}; then
X		err 1 "unable to mount ${_dir}"
X		_rc=1
X	fi
X	return ${_rc}
X}
X
Xsafe_umount ()	# dir
X{
X	local _dir _rc
X
X	_dir=$1
X
X	_rc=0
X	if checkyesno ${name}_devfs_enable &&
X	   mounted ${_dir} &&
X	   ! safe_run ${_rc} umount ${_dir}; then
X		warn "unable to unmount ${_dir}"
X		_rc=1
X	fi
X	return ${_rc}
X}
X
Xcheck_chuser ()
X{
X	if checkyesno paranoia; then
X		if checkyesno ${name}_chuser_enable &&
X		   eval "[ -z \"\${${name}_withuser}\" -a -z \"\${${name}_withgroup}\" ]"; then
X			err 1 "one of ${name}_withuser and ${name}_withgroup" \
X			      "must be set if ${name}_chuser_enable is enabled"
X		fi
X	else
X		if checkyesno ${name}_chuser_enable; then
X			warn "${name}_chuser_enable disabled -- not compiled in"
X			eval "${name}_chuser_enable=NO"
X		fi
X	fi
X}
X
Xcheck_chroot ()
X{
X	if checkyesno paranoia; then
X		if checkyesno ${name}_chroot_enable; then
X			if eval "[ -z \"\${${name}_rootdir}\" ]"; then
X				err 1 "${name}_rootdir must be set" \
X				      "if ${name}_chroot_enable is enabled"
X			fi
X			if test `uname -r | cut -c 1` -le 6; then
X				if checkyesno ${name}_devfs_enable &&
X				   ! ( type mount_devfs ) > /dev/null 2>&1;
X				then
X					warn "${name}_devfs_enable disabled" \
X					     "-- not available"
X					eval "${name}_devfs_enable=NO"
X				fi
X			fi
X		else
X			eval "${name}_devfs_enable=NO"
X		fi
X	else
X		if checkyesno ${name}_chroot_enable; then
X			warn "${name}_chroot_enable disabled -- not compiled in"
X			eval "${name}_chroot_enable=NO"
X		fi
X		eval "${name}_devfs_enable=NO"
X	fi
X}
X
Xrcvar_chuser ()
X{
X	if checkyesno paranoia && checkyesno ${name}_chuser_enable; then
X		eval "${name}_piddir=\${__dhcpd_piddir}/\${name}"
X		eval "${name}_leasesdir=\${__dhcpd_leasesdir}/\${name}"
X	else
X		eval unset "${name}_withuser= ${name}_withgroup="
X	fi
X}
X
Xrcvar_chroot ()
X{
X	if ! checkyesno paranoia || ! checkyesno ${name}_chroot_enable; then
X		eval "${name}_rootdir="
X	elif checkyesno paranoia && checkyesno ${name}_chroot_enable; then
X		eval "${name}_devdir=\${__dhcpd_devdir}"
X		eval "${name}_etcdir=\${__dhcpd_etcdir}"
X	fi
X}
X
Xrcvar_pidnleases ()
X{
X	if ! checkyesno ${name}_chuser_enable; then
X		eval "${name}_piddir=\${__dhcpd_piddir}"
X		eval "${name}_leasesdir=\${__dhcpd_leasesdir}"
X	fi
X	eval "${name}_pidfile=\${${name}_piddir}/\${name}.pid"
X	eval "${name}_leasesfile=\${${name}_leasesdir}/\${name}.leases"
X	eval "${name}_conffile=\${${name}_conf}"	# for convenience only
X	eval "${name}_confdir=\$(dirname \${${name}_conffile})"
X}
X
Xrcvar_rooted ()
X{
X	eval "_dhcpd_rootdir=\${${name}_rootdir}"
X	eval "_dhcpd_devdir=\${${name}_rootdir}\${${name}_devdir}"
X	eval "_dhcpd_etcdir=\${${name}_rootdir}\${${name}_etcdir}"
X	eval "_dhcpd_confdir=\${${name}_rootdir}\${${name}_confdir}"
X	eval "_dhcpd_includedir=\${${name}_rootdir}\${${name}_includedir}"
X	eval "_dhcpd_piddir=\${${name}_rootdir}\${${name}_piddir}"
X	eval "_dhcpd_leasesdir=\${${name}_rootdir}\${${name}_leasesdir}"
X	eval "_dhcpd_conffile=\${${name}_rootdir}\${${name}_conffile}"
X	eval "_dhcpd_pidfile=\${${name}_rootdir}\${${name}_pidfile}"
X	eval "_dhcpd_leasesfile=\${${name}_rootdir}\${${name}_leasesfile}"
X}
X
Xsetup_umask ()
X{
X	if eval "[ -n \"\${${name}_withumask}\" ]"; then
X		eval "umask \${${name}_withumask}"
X	fi
X}
X
Xsetup_chroot ()
X{
X	local _hconf _hosts _ltime _rconf
X
X	_hconf=host.conf
X	_hosts=hosts
X	_ltime=localtime
X	_rconf=resolv.conf
X
X	if checkyesno paranoia && checkyesno ${name}_chroot_enable; then
X		if ! mounted ${_dhcpd_devdir}; then
X			safe_mkdir ${_dhcpd_devdir}/_
X			# XXX /_ hack! so, .../dev is root owned.
X		fi
X		safe_mkdir ${_dhcpd_rootdir} ${_dhcpd_etcdir}/_ ${_dhcpd_confdir}
X		# XXX /_ hack! so, .../etc is root owned.
X		if checkyesno ${name}_devfs_enable; then
X			safe_mount ${_dhcpd_devdir}
X		else
X			eval "safe_copy \${${name}_devdir} \${_dhcpd_devdir}"
X		fi
X		eval "safe_copy \${${name}_conffile} \${_dhcpd_conffile}"
X		eval "safe_copy \${${name}_etcdir}/\$_hconf \${_dhcpd_etcdir}/\$_hconf"
X		eval "safe_copy \${${name}_etcdir}/\$_hosts \${_dhcpd_etcdir}/\$_hosts"
X		eval "safe_copy \${${name}_etcdir}/\$_ltime \${_dhcpd_etcdir}/\$_ltime"
X		eval "safe_copy \${${name}_etcdir}/\$_rconf \${_dhcpd_etcdir}/\$_rconf"
X		# copy dhcpd_includedir if defined and available
X		if eval "[ -d \"\${${name}_includedir}\" ]"; then
X			safe_mkdir ${_dhcpd_includedir}
X			eval "safe_copy \${${name}_includedir} \${_dhcpd_includedir}"
X		fi
X	fi
X}
X
Xsetup_chuser ()
X{
X	if checkyesno paranoia && {
X	   checkyesno ${name}_chuser_enable || checkyesno ${name}_chroot_enable
X	}; then
X		safe_mkdir ${_dhcpd_piddir} ${_dhcpd_leasesdir}
X	fi
X}
X
Xsetup_leases ()
X{
X	safe_touch ${_dhcpd_leasesfile}
X}
X
Xsetup_flags ()
X{
X	if [ "${name}" = "dhcpd6" ]; then
X		rc_flags="${rc_flags} -6"
X	fi
X	if eval "[ -n \"\${${name}_conf}\" ]"; then
X		eval "rc_flags=\"\${rc_flags} -cf \${${name}_conf}\""
X	fi
X	if eval "[ -n \"\${${name}_leasesfile}\" ]"; then
X		eval "rc_flags=\"\${rc_flags} -lf \${${name}_leasesfile}\""
X	fi
X	if eval "[ -n \"\${${name}_pidfile}\" ]"; then
X		eval "rc_flags=\"\${rc_flags} -pf \${${name}_pidfile}\""
X	fi
X	if eval "[ -n \"\${dhcpd_withuser}\" ]"; then
X		eval "rc_flags=\"\${rc_flags} -user \${${name}_withuser}\""
X	fi
X	if eval "[ -n \"\${${name}_withgroup}\" ]"; then
X		eval "rc_flags=\"\${rc_flags} -group \${${name}_withgroup}\""
X	fi
X	if eval "[ -n \"\${${name}_rootdir}\" ]"; then
X		eval "rc_flags=\"\${rc_flags} -chroot \${${name}_rootdir}\""
X	fi
X	eval "rc_flags=\"\${rc_flags} \${${name}_ifaces}\""
X}
X
Xcleanup_chroot ()
X{
X	if checkyesno paranoia && checkyesno ${name}_chroot_enable; then
X		safe_umount ${_dhcpd_devdir}
X	fi
X}
X
Xdhcpd_stop ()
X{
X	if sh $0 forcestatus; then
X		sh $0 forcestop
X	fi
X}
X
Xdhcpd_check ()
X{
X	check_chuser
X	check_chroot
X}
X
Xdhcpd_rcvar ()
X{
X	rcvar_chuser
X	rcvar_chroot
X	rcvar_pidnleases
X	rcvar_rooted
X}
X
Xdhcpd_precmd ()
X{
X	setup_umask
X	setup_chroot
X	setup_chuser
X	setup_leases
X	setup_flags
X}
X
Xdhcpd_postcmd ()
X{
X	cleanup_chroot
X}
X
Xdhcpd_checkconfig ()
X{
X        local rc_flags_mod
X        setup_flags
X	rc_flags_mod="$rc_flags"
X        # Eliminate '-q' flag if it is present
X	case "$rc_flags" in
X	*-q*)	rc_flags_mod=`echo "${rc_flags}" | sed -Ee 's/(^-q | -q | -q$)//'` ;;
X	esac
X        if ! ${command} -t -q ${rc_flags_mod}; then
X                err 1 "`${command} -t ${rc_flags_mod}` Configuration file sanity check failed"
X        fi
X}
X
Xrcvar=${name}_enable
Xload_rc_config ${name}
X
X__dhcpd_uninstall="NO"			# internal use only
X__dhcpd_devdir=/dev			# devices directory
X__dhcpd_etcdir=/etc			# etc directory
X__dhcpd_piddir=/var/run			# pid file directory
X__dhcpd_leasesdir=/var/db		# leases file directory
X#__dhcpd_rootdir=/var/db/${name}	# root directory
X
Xdhcpd_check
Xdhcpd_rcvar
X
Xcommand=%%PREFIX%%/sbin/dhcpd
Xpidfile=${_dhcpd_pidfile}
Xeval "required_files=\${${name}_conf}"
Xstart_precmd=dhcpd_precmd
Xstop_postcmd=dhcpd_postcmd
Xrestart_precmd="dhcpd_checkconfig"
Xuninstall_cmd=dhcpd_uninstall
Xextra_commands="uninstall"
X
Xrun_rc_command "$1"
6231e1e6c0a93c3c8dbf7bb378cea2e2
echo x - isc-dhcp42-server/files/patch-server__Makefile.am
sed 's/^X//' >isc-dhcp42-server/files/patch-server__Makefile.am << '953260de18cdc311fa9eee1a4e380538'
X--- server/Makefile.am.orig	2010-10-24 11:42:38.419499721 -0400
X+++ server/Makefile.am	2010-10-24 11:44:01.489499357 -0400
X@@ -1,6 +1,7 @@
X AM_CPPFLAGS = -I.. -DLOCALSTATEDIR='"@localstatedir@"'
X 
X dist_sysconf_DATA = dhcpd.conf
X+dist_sysconfDATA_INSTALL = $(INSTALL_DATA)
X sbin_PROGRAMS = dhcpd
X dhcpd_SOURCES = dhcpd.c dhcp.c bootp.c confpars.c db.c class.c failover.c \
X 		omapi.c mdb.c stables.c salloc.c ddns.c dhcpleasequery.c \
X@@ -13,3 +14,12 @@
X man_MANS = dhcpd.8 dhcpd.conf.5 dhcpd.leases.5
X EXTRA_DIST = $(man_MANS)
X 
X+install-dist_sysconfDATA: $(dist_sysconf_DATA)
X+	@$(NORMAL_INSTALL)
X+	test -z "$(sysconfdir)" || $(MKDIR_P) "$(DESTDIR)$(sysconfdir)"
X+	@list='$(dist_sysconf_DATA)'; for p in $$list; do \
X+	if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
X+		$(am__strip_dir) \
X+		echo " $(dist_sysconfDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(sysconfdir)/$$f.sample'"; \
X+		$(dist_sysconfDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(sysconfdir)/$$f.sample"; \
X+	done
953260de18cdc311fa9eee1a4e380538
echo x - isc-dhcp42-server/files/patch-server__Makefile.in
sed 's/^X//' >isc-dhcp42-server/files/patch-server__Makefile.in << '133e74dd4e813b5f12d257947173f082'
X--- ./server/Makefile.in.orig	2010-01-07 19:47:06.000000000 -0500
X+++ ./server/Makefile.in	2010-05-02 20:38:26.000000000 -0400
X@@ -370,8 +370,8 @@
X 	@list='$(dist_sysconf_DATA)'; for p in $$list; do \
X 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
X 	  f=$(am__strip_dir) \
X-	  echo " $(dist_sysconfDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(sysconfdir)/$$f'"; \
X-	  $(dist_sysconfDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(sysconfdir)/$$f"; \
X+	  echo " $(dist_sysconfDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(sysconfdir)/$$f.sample'"; \
X+	  $(dist_sysconfDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(sysconfdir)/$$f.sample"; \
X 	done
X 
X uninstall-dist_sysconfDATA:
133e74dd4e813b5f12d257947173f082
echo x - isc-dhcp42-server/files/patch-server__bpf.c
sed 's/^X//' >isc-dhcp42-server/files/patch-server__bpf.c << '36a066fcc9464e5916e22530fce33045'
X--- common/bpf.c.orig	2010-10-22 10:38:06.623559939 +0400
X+++ common/bpf.c	2010-10-22 10:38:26.436563986 +0400
X@@ -577,6 +577,7 @@
X 	 */
X         switch (sa->sdl_type) {
X                 case IFT_ETHER:
X+                case IFT_L2VLAN:
X                         hw->hlen = sa->sdl_alen + 1;
X                         hw->hbuf[0] = HTYPE_ETHER;
X                         memcpy(&hw->hbuf[1], LLADDR(sa), sa->sdl_alen);
36a066fcc9464e5916e22530fce33045
echo x - isc-dhcp42-server/files/extra-patch-bind__Makefile
sed 's/^X//' >isc-dhcp42-server/files/extra-patch-bind__Makefile << '452e54a7b28b083c5a328fb15b0ee165'
X--- ./bind/Makefile.orig	2011-06-29 07:31:02.000000000 -0400
X+++ ./bind/Makefile	2011-06-29 07:31:22.000000000 -0400
X@@ -45,7 +45,7 @@
X # Currently disable the epoll and devpoll options as they don't interact
X # well with the DHCP code.
X 	@echo Configuring BIND Export libraries for DHCP.
X-	@(cd ${bindsrcdir} && ./configure --disable-kqueue --disable-epoll --disable-devpoll --without-openssl --without-libxml2 --enable-exportlib --enable-threads=no --with-export-includedir=${binddir}/include --with-export-libdir=${binddir}/lib > ${binddir}/configure.log)
X+	@(cd ${bindsrcdir} && ./configure --disable-symtable --disable-kqueue --disable-epoll --disable-devpoll --without-openssl --without-libxml2 --enable-exportlib --enable-threads=no --with-export-includedir=${binddir}/include --with-export-libdir=${binddir}/lib > ${binddir}/configure.log)
X 
X # Build the export libraries
X 	@echo Building BIND Export libraries - this takes some time.
452e54a7b28b083c5a328fb15b0ee165
echo x - isc-dhcp42-server/Makefile
sed 's/^X//' >isc-dhcp42-server/Makefile << '02c4d94a803ed1c82c8408323a5c8938'
X# Ports collection makefile for:    isc-dhcp42-server
X# Date created:         29 June 2011
X# Whom:                 Ryan Steinmetz <rpsfa@rit.edu>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	dhcp
XDISTVERSION=	4.2.1
X#PORTREVISION=	${DHCP_PORTREVISION}
XCATEGORIES=	net
XMASTER_SITES=	${MASTER_SITE_ISC}
XMASTER_SITE_SUBDIR=	dhcp
XPKGNAMEPREFIX=	isc-
XPKGNAMESUFFIX=	42-${SUBSYS}
XDISTNAME=	${PORTNAME}-${DISTVERSION}-${PATCHLEVEL}
X
XMAINTAINER=	rpsfa@rit.edu
XCOMMENT?=	The ISC Dynamic Host Configuration Protocol server
X
XUSE_GMAKE=	yes
X
XLICENSE=	ISCL
X
XPATCHLEVEL=	P1
XPORTREVISION_SERVER=	0
XPORTREVISION_CLIENT=	0
XPORTREVISION_RELAY=	0
X
XSUBSYS?=	server
XWRKSRC=		${WRKDIR}/${PORTNAME}-${DISTVERSION}-${PATCHLEVEL}
X
XUNIQUENAME=	${PKGNAMEPREFIX}${PORTNAME}${PKGNAMESUFFIX}
X
XOPTIONS=	DHCP_IPV6 "Enable support for IPv6" on
X
X.if ${SUBSYS} == server
XOPTIONS+=	DHCP_PARANOIA "Enable support for chroot" on \
X		DHCP_LDAP "With LDAP support" off \
X		DHCP_LDAP_SSL "Support LDAP over SSL/TLS" on \
X		BIND_SYMBOLS "Enable BIND internal symbol table" off
X.endif
X
X# PORTREVISION and CONFLICTS handling
X.if ${SUBSYS} == client
XCONFLICTS=	isc-dhcp3?-client-[0-9]* isc-dhcp41-client-[0-9]*
XDHCP_PORTREVISION=	${PORTREVISION_CLIENT}
X.elif ${SUBSYS} == relay
XCONFLICTS=	isc-dhcp3?-relay-[0-9]* isc-dhcp41-relay-[0-9]*
XDHCP_PORTREVISION=	${PORTREVISION_RELAY}
X.else
XCONFLICTS=	isc-dhcp3?-server-[0-9]* isc-dhcp41-server-[0-9]*
XDHCP_PORTREVISION=	${PORTREVISION_SERVER}
X.endif
X
X.if ${SUBSYS} == server
XUSERS=		dhcpd
XGROUPS=		dhcpd
X.endif
X
XMAN_COMPRESSED=	no
XGNU_CONFIGURE=	yes
XCPPFLAGS+=	-D_PATH_DHCLIENT_SCRIPT='\"${PREFIX}/sbin/dhclient-script\"' -D_PATH_DHCLIENT_CONF='\"${PREFIX}/etc/dhclient.conf\"' -D_PATH_DHCPD_CONF='\"${PREFIX}/etc/dhcpd.conf\"'
XSCRIPTS_ENV+=	PKG_PREFIX=${PREFIX}
X
X.include <bsd.port.options.mk>
X
X.if ${SUBSYS} == client
XMAN5+=		dhclient.conf.5 dhclient.leases.5
XMAN8+=		dhclient.8 dhclient-script.8
XCONF_FILE=	dhclient.conf
X.elif ${SUBSYS} == server
XCONFIGURE_ARGS+=	--localstatedir=/var
XMAN5+=		dhcpd.conf.5 dhcpd.leases.5 dhcp-eval.5 dhcp-options.5
XMAN8+=		dhcpd.8
XMAN1=		omshell.1
XMAN3=		dhcpctl.3 omapi.3
XCFLAGS+=	-fPIC
XCONF_FILE=	dhcpd.conf
X.if defined(WITH_DHCP_IPV6)
XCONF_FILE+=	dhcpd6.conf
X.endif
X.else
XMAN8+=		dhcrelay.8
X.endif
X
XDESCR=		${.CURDIR}/pkg-descr
XPLIST=		${.CURDIR}/pkg-plist
X
X.if ${SUBSYS} == server
XUSE_RC_SUBR=	isc-dhcpd
X.elif ${SUBSYS} == relay
XUSE_RC_SUBR=	isc-dhcrelay
X.endif
X
XSCHEMA_DIR=	${PREFIX}/share/${PKGBASE}
XDOCSDIR=	${PREFIX}/share/doc/${PKGBASE}
XDATADIR=	/var/db
X
XMSG_FILE=	${.CURDIR}/pkg-message
XPKGMESSAGE=	${WRKDIR}/pkg-message
X
XREINPLACE_SUB=	PREFIX="${PREFIX}"
XPKGMESSAGE_SUB=	PREFIX="${PREFIX}" MAN1PREFIX="${MAN1PREFIX}" \
X		DOCSDIR="${DOCSDIR}"
X
X.if defined(WITH_DHCP_PARANOIA)
XCONFIGURE_ARGS+=--enable-paranoia --enable-early-chroot
XSUB_LIST+=	PARANOIA=yes
X.else
XSUB_LIST+=	PARANOIA=no
X.endif
X
X.if defined(WITH_DHCP_LDAP)
XCONFIGURE_ARGS+=--with-ldap
XUSE_OPENLDAP=	yes
XLDAP_SCRIPT=	${WRKSRC}/contrib/ldap/dhcpd-conf-to-ldap
XLDAP_SCHEMA=	${WRKSRC}/contrib/ldap/dhcp.schema
XCFLAGS+=	-I${LOCALBASE}/include -L${LOCALBASE}/lib
XPORTDOCS+=	README.ldap
XPLIST_SUB+=	SCHEMA_DIR="${SCHEMA_DIR:S,^${PREFIX}/,,}" LDAP=""
X.else
XPLIST_SUB+=	LDAP="@comment "
X.endif
X
X.if defined(WITH_DHCP_LDAP_SSL) && defined(WITH_DHCP_LDAP)
XUSE_OPENSSL=	yes
XCONFIGURE_ARGS+=--with-ldapcrypto
XCONFIGURE_ENV+=	LIBS="-lssl"
X.include "${PORTSDIR}/Mk/bsd.openssl.mk"
X.endif
X
X.if defined(WITH_DHCP_IPV6)
XCONFIGURE_ARGS+=--enable-dhcpv6
XPLIST_SUB+=	IPV6=""
X.else
XCONFIGURE_ARGS+=--disable-dhcpv6
XPLIST_SUB+=	IPV6="@comment "
X.endif
X
X.if defined(WITH_BIND_SYMBOLS)
XUSE_PERL5=	yes
X.else
XEXTRA_PATCHES+=	${PATCHDIR}/extra-patch-bind__Makefile
X.endif
X
Xpost-patch:
X	@${SED} ${PKGMESSAGE_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \
X		${MSG_FILE} > ${PKGMESSAGE}
X	@${REINPLACE_CMD} ${REINPLACE_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \
X		${WRKSRC}/client/dhclient.conf
X
Xdo-install:
X	${MAKE} -C ${WRKSRC}/${SUBSYS} install
X.if ${SUBSYS} == server
X	${MAKE} -C ${WRKSRC}/dhcpctl install
X	${MAKE} -C ${WRKSRC}/dst install
X	${MAKE} -C ${WRKSRC}/omapip install
X	${MAKE} -C ${WRKSRC}/includes install
X	${MAKE} -C ${WRKSRC}/common install
X	${INSTALL_DATA} ${WRKSRC}/dhcpctl/dhcpctl.h ${PREFIX}/include
X.if defined(WITH_DHCP_IPV6)
X	${INSTALL_DATA} ${WRKSRC}/doc/examples/dhcpd-dhcpv6.conf \
X		${PREFIX}/etc/dhcpd6.conf.sample
X.endif
X.if defined(WITH_DHCP_LDAP)
X	@${MKDIR} ${SCHEMA_DIR}
X	${INSTALL_DATA} ${LDAP_SCHEMA} ${SCHEMA_DIR}
X	${INSTALL_SCRIPT} ${LDAP_SCRIPT} ${PREFIX}/bin
X.endif
X.if defined(WITH_DHCP_LDAP) && !defined(NOPORTDOCS)
X	${MKDIR} ${DOCSDIR}
X	${INSTALL_MAN} ${WRKSRC}/contrib/ldap/README.ldap ${DOCSDIR}
X.endif
X.endif
X
Xpost-install:
X.if defined(CONF_FILE)
X.for FILE in ${CONF_FILE}
X	if [ ! -f ${PREFIX}/etc/${FILE} ]; then \
X		${CP} -p ${PREFIX}/etc/${FILE}.sample ${PREFIX}/etc/${FILE} ; \
X	fi
X.endfor
X.endif
X.if ${SUBSYS} == client
X	${INSTALL_SCRIPT} ${WRKSRC}/client/scripts/freebsd ${PREFIX}/sbin/dhclient-script
X.elif ${SUBSYS} == server
X.if defined(WITH_DHCP_IPV6)
X	@${LN} -sf isc-dhcpd ${PREFIX}/etc/rc.d/isc-dhcpd6
X.endif
X.elif ${SUBSYS} == relay
X.if defined(WITH_DHCP_IPV6)
X	@${LN} -sf isc-dhcrelay ${PREFIX}/etc/rc.d/isc-dhcrelay6
X.endif
X.endif
X	@${SED} ${PKGMESSAGE_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \
X		${MSG_FILE} > ${PKGMESSAGE}
X#@${REINPLACE_CMD} -e '/^%%LDAP%%/d' ${PKGMESSAGE}
X	@${ECHO_MSG}
X	@${CAT} ${PKGMESSAGE}
X	@${ECHO_MSG}
X
X.include <bsd.port.mk>
02c4d94a803ed1c82c8408323a5c8938
echo x - isc-dhcp42-server/pkg-descr
sed 's/^X//' >isc-dhcp42-server/pkg-descr << '4d0dd62546431a78a5ab994179ef877b'
XThe ISC Dynamic Host Configuration Protocol Distribution provides a
Xfreely redistributable reference implementation of all aspects of the
XDHCP protocol, through a suite of DHCP tools:
X
X  * A DHCP server (this port)
X  * A DHCP client
X  * A DHCP relay agent
X
XWWW: http://www.isc.org/products/DHCP/
4d0dd62546431a78a5ab994179ef877b
echo x - isc-dhcp42-server/pkg-message
sed 's/^X//' >isc-dhcp42-server/pkg-message << '842c481b16dd91948f67e6c0f42e1193'
X****  To setup dhcpd, please edit %%PREFIX%%/etc/dhcpd.conf.
X
X****  This port installs the dhcp daemon, but doesn't invoke dhcpd by default.
X      If you want to invoke dhcpd at startup, add these lines to /etc/rc.conf:
X
X	    dhcpd_enable="YES"				# dhcpd enabled?
X	    dhcpd_flags="-q"				# command option(s)
X	    dhcpd_conf="%%PREFIX%%/etc/dhcpd.conf"	# configuration file
X	    dhcpd_ifaces=""				# ethernet interface(s)
X	    dhcpd_withumask="022"			# file creation mask
X
X****  If compiled with paranoia support (the default), the following rc.conf
X      options are also supported:
X
X	    dhcpd_chuser_enable="YES"		# runs w/o privileges?
X	    dhcpd_withuser="dhcpd"		# user name to run as
X	    dhcpd_withgroup="dhcpd"		# group name to run as
X	    dhcpd_chroot_enable="YES"		# runs chrooted?
X	    dhcpd_devfs_enable="YES"		# use devfs if available?
X	    dhcpd_rootdir="/var/db/dhcpd"	# directory to run in
X	    dhcpd_includedir="<some_dir>"	# directory with config-
X						  files to include
X
X****  WARNING: never edit the chrooted or jailed dhcpd.conf file but
X      %%PREFIX%%/etc/dhcpd.conf instead which is always copied where
X      needed upon startup.
842c481b16dd91948f67e6c0f42e1193
echo x - isc-dhcp42-server/pkg-plist
sed 's/^X//' >isc-dhcp42-server/pkg-plist << 'c7d125c06796f98266e29fc076ae9b54'
X@comment $FreeBSD$
X@unexec %D/etc/rc.d/isc-dhcpd forcestop 2>/dev/null || true
X%%IPV6%%@unexec %D/etc/rc.d/isc-dhcpd6 forcestop 2>/dev/null || true
X@unexec if cmp -s %D/etc/dhcpd.conf.sample %D/etc/dhcpd.conf; then rm -f %D/etc/dhcpd.conf; fi
Xetc/dhcpd.conf.sample
X@exec if [ ! -f %D/etc/dhcpd.conf ] ; then cp -p %D/%F %B/dhcpd.conf; fi
X%%IPV6%%@unexec if cmp -s %D/etc/dhcpd6.conf.sample %D/etc/dhcpd6.conf; then rm -f %D/etc/dhcpd6.conf; fi
X%%IPV6%%etc/dhcpd6.conf.sample
X%%IPV6%%@exec if [ ! -f %D/etc/dhcpd6.conf ] ; then cp -p %D/%F %B/dhcpd6.conf; fi
X%%IPV6%%etc/rc.d/isc-dhcpd6
Xsbin/dhcpd
Xbin/omshell
X%%LDAP%%bin/dhcpd-conf-to-ldap
Xinclude/dhcpctl.h
Xinclude/isc-dhcp/dst.h
Xinclude/omapip/alloc.h
Xinclude/omapip/buffer.h
Xinclude/omapip/omapip.h
Xinclude/omapip/omapip_p.h
Xinclude/omapip/hash.h
Xinclude/omapip/trace.h
Xinclude/omapip/convert.h
Xinclude/omapip/isclib.h
Xinclude/omapip/result.h
Xlib/libdhcpctl.a
Xlib/libomapi.a
Xlib/libdst.a
X%%LDAP%%%%SCHEMA_DIR%%/dhcp.schema
X%%LDAP%%@dirrm %%SCHEMA_DIR%%
X@dirrm include/omapip
X@dirrm include/isc-dhcp
c7d125c06796f98266e29fc076ae9b54
echo x - isc-dhcp42-server/distinfo
sed 's/^X//' >isc-dhcp42-server/distinfo << '95d86fa1677e9e0755c9a9249a690227'
XSHA256 (dhcp-4.2.1-P1.tar.gz) = 6cd5e06512c53ad43d71400f39071ce0bd07f074e416c727d5bc7e5949ec55ec
XSIZE (dhcp-4.2.1-P1.tar.gz) = 8797289
95d86fa1677e9e0755c9a9249a690227
echo c - isc-dhcp42-client
mkdir -p isc-dhcp42-client > /dev/null 2>&1
echo x - isc-dhcp42-client/Makefile
sed 's/^X//' >isc-dhcp42-client/Makefile << '0fd4ceb9c837b2426027220d29dd3354'
X# Ports collection makefile for:    isc-dhcp42-client
X# Date created:         29 June 2011
X# Whom:                 Ryan Steinmetz <rpsfa@rit.edu>
X#
X# $FreeBSD$
X#
X
XCOMMENT=	The ISC Dynamic Host Configuration Protocol client
X
XSUBSYS=		client
XMASTERDIR=	${.CURDIR}/../isc-dhcp42-server
X
X.include "${MASTERDIR}/Makefile"
0fd4ceb9c837b2426027220d29dd3354
echo x - isc-dhcp42-client/pkg-descr
sed 's/^X//' >isc-dhcp42-client/pkg-descr << 'da3edd1de359a2a232bd2461e0c210ed'
XThe ISC Dynamic Host Configuration Protocol Distribution provides a
Xfreely redistributable reference implementation of all aspects of the
XDHCP protocol, through a suite of DHCP tools:
X
X  * A DHCP server
X  * A DHCP client (this port)
X  * A DHCP relay agent
X
XWWW: http://www.isc.org/products/DHCP/
da3edd1de359a2a232bd2461e0c210ed
echo x - isc-dhcp42-client/pkg-message
sed 's/^X//' >isc-dhcp42-client/pkg-message << '8eb75f7af6142b81b354b203570deb8e'
X****  To setup dhclient, you may need to edit /etc/rc.conf to replace the
X      base system dhclient as follows:
X
X	    dhcp_program="%%PREFIX%%/sbin/dhclient"
X	    dhcp_flags="-q"
X
X      See dhclient(8), using the following command, for details about other
X      possible options:
X
X	    MANPATH=%%MAN1PREFIX%%/man man 8 dhclient
8eb75f7af6142b81b354b203570deb8e
echo x - isc-dhcp42-client/pkg-plist
sed 's/^X//' >isc-dhcp42-client/pkg-plist << '877c14483451a500242a6a5367639496'
X@comment $FreeBSD$
Xsbin/dhclient
Xsbin/dhclient-script
X@unexec if cmp -s %D/etc/dhclient.conf.sample %D/etc/dhclient.conf; then rm -f %D/etc/dhclient.conf; fi
Xetc/dhclient.conf.sample
X@exec if [ ! -f %D/etc/dhclient.conf ] ; then cp -p %D/%F %B/dhclient.conf; fi
X@exec [ -f /var/run/dhclient.leases ] || touch /var/run/dhclient.leases
X@unexec [ -s /var/run/dhclient.leases ] || rm -f /var/run/dhclient.leases
877c14483451a500242a6a5367639496
echo c - isc-dhcp42-relay
mkdir -p isc-dhcp42-relay > /dev/null 2>&1
echo x - isc-dhcp42-relay/Makefile
sed 's/^X//' >isc-dhcp42-relay/Makefile << '59d44fb9aff6df4c6a109bcc20e062e6'
X# Ports collection makefile for:    isc-dhcp42-relay
X# Date created:         29 June 2011
X# Whom:                 Ryan Steinmetz <rpsfa@rit.edu>
X#
X# $FreeBSD$
X#
X
XCOMMENT=	The ISC Dynamic Host Configuration Protocol relay
X
XSUBSYS=		relay
XMASTERDIR=	${.CURDIR}/../isc-dhcp42-server
X
X.include "${MASTERDIR}/Makefile"
59d44fb9aff6df4c6a109bcc20e062e6
echo x - isc-dhcp42-relay/pkg-descr
sed 's/^X//' >isc-dhcp42-relay/pkg-descr << 'caad9a800c903ac24934d1cb96395327'
XThe ISC Dynamic Host Configuration Protocol Distribution provides a
Xfreely redistributable reference implementation of all aspects of the
XDHCP protocol, through a suite of DHCP tools:
X
X  * A DHCP server
X  * A DHCP client
X  * A DHCP relay agent (this port)
X
XWWW: http://www.isc.org/products/DHCP/
caad9a800c903ac24934d1cb96395327
echo x - isc-dhcp42-relay/pkg-message
sed 's/^X//' >isc-dhcp42-relay/pkg-message << '3d2834cc85adee24dbf4cea5afefd0c5'
X****  This port installs the dhcp relay daemon, but doesn't invoke dhcrelay by
X      default. If you want to invoke dhcrelay at startup, add the following
X      lines to /etc/rc.conf:
X
X	    dhcrelay_enable="YES"
X	    dhcrelay_flags=""		# command option(s)
X	    dhcrelay_servers=""		# dhcrelay server(s)
X	    dhcrelay_ifaces=""		# ethernet interface(s)
3d2834cc85adee24dbf4cea5afefd0c5
echo x - isc-dhcp42-relay/pkg-plist
sed 's/^X//' >isc-dhcp42-relay/pkg-plist << 'ab5f3db7aa39cc24ca153122d4ef024f'
X@comment $FreeBSD: ports/net/isc-dhcp41-relay/pkg-plist,v 1.2 2011/06/03 12:31:24 wxs Exp $
X@unexec %D/etc/rc.d/isc-dhcrelay.sh forcestop 2>/dev/null || true
X@unexec %D/etc/rc.d/isc-dhcrelay forcestop 2>/dev/null || true
X%%IPV6%%@unexec %D/etc/rc.d/isc-dhcrelay6 forcestop 2>/dev/null || true
X%%IPV6%%etc/rc.d/isc-dhcrelay6
Xsbin/dhcrelay
ab5f3db7aa39cc24ca153122d4ef024f
exit



>Release-Note:
>Audit-Trail:
>Unformatted:



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