aboutsummaryrefslogtreecommitdiff
path: root/net/isc-dhcp41-server
diff options
context:
space:
mode:
authorWesley Shields <wxs@FreeBSD.org>2010-09-28 20:55:42 +0000
committerWesley Shields <wxs@FreeBSD.org>2010-09-28 20:55:42 +0000
commitcc75f1763aa2e42d01622aabbbe1aedb0571effd (patch)
tree28fa6004f4e9a46667b13a9c25a92ed250bd161b /net/isc-dhcp41-server
parent3e9c2693a165a034aa1c5914cb2ddab7a7d30cb4 (diff)
downloadports-cc75f1763aa2e42d01622aabbbe1aedb0571effd.tar.gz
ports-cc75f1763aa2e42d01622aabbbe1aedb0571effd.zip
Use the provided script instead of the one provided by the port. The one
provided by the port infrastructure is outdated and doesn't support dhcpv6. Noticed by: lstewart@
Notes
Notes: svn path=/head/; revision=262052
Diffstat (limited to 'net/isc-dhcp41-server')
-rw-r--r--net/isc-dhcp41-server/Makefile6
-rw-r--r--net/isc-dhcp41-server/files/client::scripts::freebsd510
2 files changed, 1 insertions, 515 deletions
diff --git a/net/isc-dhcp41-server/Makefile b/net/isc-dhcp41-server/Makefile
index 3c3d5538cae5..8bf2b6c54c44 100644
--- a/net/isc-dhcp41-server/Makefile
+++ b/net/isc-dhcp41-server/Makefile
@@ -20,7 +20,7 @@ MAINTAINER= wxs@FreeBSD.org
COMMENT?= The ISC Dynamic Host Configuration Protocol server
PATCHLEVEL= P1
-PORTREVISION_SERVER= 3
+PORTREVISION_SERVER= 4
PORTREVISION_CLIENT= 1
PORTREVISION_RELAY= 1
@@ -130,9 +130,6 @@ SUB_LIST+= PARANOIA=yes
SUB_LIST+= PARANOIA=no
.endif
-post-extract:
- @${CP} ${FILESDIR}/client::scripts::freebsd ${WRKSRC}/client/scripts/freebsd
-
pre-patch:
.if ${SUBSYS} == server && defined(WITH_DHCP_LDAP)
@cd ${WRKSRC} && ${PATCH} -p1 < ${WRKDIR}/${LDAPPATCHDIST}/${LDAPPATCHFILE}
@@ -143,7 +140,6 @@ post-patch:
${MSG_FILE} > ${PKGMESSAGE}
@${REINPLACE_CMD} ${REINPLACE_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \
${WRKSRC}/client/dhclient.conf \
- ${WRKSRC}/client/scripts/freebsd
do-install:
${MAKE} -C ${WRKSRC}/${SUBSYS} install
diff --git a/net/isc-dhcp41-server/files/client::scripts::freebsd b/net/isc-dhcp41-server/files/client::scripts::freebsd
deleted file mode 100644
index 9c4c3d3a6f24..000000000000
--- a/net/isc-dhcp41-server/files/client::scripts::freebsd
+++ /dev/null
@@ -1,510 +0,0 @@
-#!/bin/sh
-
-#############################################################################
-#
-# Copyright (c) 1999, MindStep Corporation
-# 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.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 THE AUTHOR 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 script was written by Patrick Bihan-Faou, patrick@mindstep.com,
-# Please contact us for bug reports, etc.
-#
-#############################################################################
-# $MindStep_Id: dhclient-script.sh,v 1.8 1999/12/07 22:11:08 patrick Exp $
-# $MindStep_Tag: CONTRIB_19991207 $
-# from FreeBSD: src/sbin/dhclient/dhclient-script.sh,v 1.2 2002/02/01 18:46:58 alfred Exp
-# $FreeBSD$
-#############################################################################
-
-
-#############################################################################
-# hook functions prototypes
-#
-# The "pre_state_XXX_hook" functions are called before the main
-# work is done for the state XXX
-#
-# The "post_state_XXX_hook" functions are called after the main
-# work is done for the state XXX
-#
-# These functions are meant to be overridden by the user's
-# dhclient-enter-hooks file
-#############################################################################
-
-pre_state_MEDIUM_hook () { }
-pre_state_PREINIT_hook () { }
-pre_state_ARPCHECK_hook () { }
-pre_state_ARPSEND_hook () { }
-pre_state_RENEW_hook () { }
-pre_state_REBIND_hook () { }
-pre_state_BOUND_hook () { }
-pre_state_REBOOT_hook () { }
-pre_state_EXPIRE_hook () { }
-pre_state_FAIL_hook () { }
-pre_state_TIMEOUT_hook () { }
-post_state_MEDIUM_hook () { }
-post_state_PREINIT_hook () { }
-post_state_ARPCHECK_hook () { }
-post_state_ARPSEND_hook () { }
-post_state_RENEW_hook () { }
-post_state_REBIND_hook () { }
-post_state_BOUND_hook () { }
-post_state_REBOOT_hook () { }
-post_state_EXPIRE_hook () { }
-post_state_FAIL_hook () { }
-post_state_TIMEOUT_hook () { }
-
-#############################################################################
-# make_resolv_conf
-#
-# This function is called to update the information related to the
-# DNS configuration (the resolver part)
-#############################################################################
-make_resolv_conf ()
-{
- if [ "x$new_domain_name" != x ] && [ "x$new_domain_name_servers" != x ]; then
- echo search $new_domain_name >/etc/resolv.conf
- for nameserver in $new_domain_name_servers; do
- echo nameserver $nameserver >>/etc/resolv.conf
- done
- fi
-}
-
-#############################################################################
-# set_XXX
-# unset_XXX
-#
-# These function each deal with one particular setting.
-# They are OS dependent and may be overridden in the
-# dhclient-enter-hooks file if needed.
-#
-# These functions are called with either "new" or "old" to indicate which
-# set of variables to use (new_ip_address or old_ip_address...)
-#
-#############################################################################
-
-update_hostname ()
-{
- local current_hostname=`/bin/hostname`
-
- if [ "$current_hostname" = "" ] || \
- [ "$current_hostname" = "$old_host_name" ]
- then
- if [ "$new_host_name" != "$old_host_name" ]
- then
- $LOGGER "New Hostname: $new_host_name"
- hostname $new_host_name
- fi
- fi
-}
-
-set_ip_address ()
-{
- local ip
- local mask
- local bcast
-
- if [ $# -lt 1 ]
- then
- return 1
- fi
-
- eval ip="\$${1}_ip_address"
- eval mask="\$${1}_subnet_mask"
- eval bcast="\$${1}_broadcast_address"
-
- if [ "$ip" != "" ]
- then
- ifconfig $interface inet $ip netmask $mask broadcast $bcast $medium
-# route add $ip 127.0.0.1 > /dev/null 2>&1
- fi
-}
-
-unset_ip_address ()
-{
- local ip
-
- if [ $# -lt 1 ]
- then
- return 1
- fi
-
- eval ip="\$${1}_ip_address"
-
- if [ "$ip" != "" ]
- then
- ifconfig $interface inet -alias $ip $medium
-# route delete $ip 127.0.0.1 > /dev/null 2>&1
- fi
-}
-
-set_ip_alias ()
-{
- if [ "$alias_ip_address" != "" ]
- then
- ifconfig $interface inet alias $alias_ip_address netmask $alias_subnet_mask
-# route add $alias_ip_address 127.0.0.1
- fi
-}
-
-unset_ip_alias ()
-{
- if [ "$alias_ip_address" != "" ]
- then
- ifconfig $interface inet -alias $alias_ip_address > /dev/null 2>&1
-# route delete $alias_ip_address 127.0.0.1 > /dev/null 2>&1
- fi
-}
-
-set_routers ()
-{
- local router_list
-
- if [ $# -lt 1 ]
- then
- return 1
- fi
-
- eval router_list="\$${1}_routers"
-
- for router in $router_list
- do
- route add default $router >/dev/null 2>&1
- done
-}
-
-unset_routers ()
-{
- local router_list
-
- if [ $# -lt 1 ]
- then
- return 1
- fi
-
- eval router_list="\$${1}_routers"
-
- for router in $router_list
- do
- route delete default $router >/dev/null 2>&1
- done
-}
-
-set_static_routes ()
-{
- local static_routes
-
- if [ $# -lt 1 ]
- then
- return 1
- fi
-
- eval static_routes="\$${1}_static_routes"
-
- set static_routes
-
- while [ $# -ge 2 ]
- do
- $LOGGER "New Static Route: $1 -> $2"
- route add $1 $2
- shift; shift
- done
-}
-
-unset_static_routes ()
-{
- local static_routes
-
- if [ $# -lt 1 ]
- then
- return 1
- fi
-
- eval static_routes="\$${1}_static_routes"
-
- set static_routes
-
- while [ $# -ge 2 ]
- do
- route delete $1 $2
- shift; shift
- done
-}
-
-#############################################################################
-#
-# utility functions grouping what needs to be done in logical units.
-#
-#############################################################################
-
-set_all ()
-{
- set_ip_address new
- set_routers new
- set_static_routes new
-
- if [ "$new_ip_address" != "$alias_ip_address" ]
- then
- set_ip_alias
- fi
-}
-
-set_others ()
-{
- update_hostname
- make_resolv_conf
-}
-
-clear_arp_table ()
-{
- arp -d -a
-}
-
-unset_all ()
-{
- if [ "$alias_ip_address" != "$old_ip_address" ]
- then
- unset_ip_alias
- fi
-
- if [ "$old_ip_address" != "" ]
- then
- unset_ip_address old
- unset_routers old
- unset_static_routes old
- clear_arp_table
- fi
-}
-
-test_new_lease ()
-{
- local rc
-
- set $new_routers
-
- if [ $# -ge 1 ]
- then
- set_ip_address new
- if ping -q -c 1 $1
- then
- rc=0
- else
- rc=1
- fi
- unset_ip_address new
- else
- rc=1
- fi
- return $rc
-}
-
-#############################################################################
-# Main State functions.
-#
-# There is a state function for each state of the DHCP client
-# These functions are OS specific and should be be tampered with.
-#############################################################################
-
-in_state_MEDIUM ()
-{
- ifconfig $interface $medium
- ifconfig $interface inet -alias 0.0.0.0 $medium >/dev/null 2>&1
- sleep 1
- exit_status=0
-}
-
-in_state_PREINIT ()
-{
- unset_ip_alias
-
- ifconfig $interface inet 0.0.0.0 netmask 0.0.0.0 \
- broadcast 255.255.255.255 up
- exit_status=0
-}
-
-in_state_ARPCHECK ()
-{
- exit_status=0
-}
-
-in_state_ARPSEND ()
-{
- exit_status=0
-}
-
-in_state_RENEW ()
-{
- if [ "$old_ip_address" != "$new_ip_address" ]
- then
- unset_all
- set_all
- fi
-
- set_others
-}
-
-in_state_REBIND () {
- in_state_RENEW
-}
-
-in_state_BOUND () {
- unset_all
- set_all
- set_others
-}
-
-in_state_REBOOT () {
- in_state_BOUND
-}
-
-in_state_EXPIRE ()
-{
- unset_all
- set_ip_alias
- exit_status=0
-}
-
-in_state_FAIL () {
- in_state_EXPIRE
-}
-
-in_state_TIMEOUT ()
-{
- unset_all
-
- if test_new_lease
- then
- set_all
- set_others
- else
- $LOGGER "No good lease information in TIMEOUT state"
- set_ip_alias
- exit_status=1
- fi
-}
-
-#############################################################################
-# Main functions:
-#
-# dhclient_script_init() parses the optional "enter_hooks" script which can
-# override any of the state functions
-#
-# This function also parses the variables and notifies the detected changes.
-#############################################################################
-dhclient_script_init ()
-{
- if [ "$new_network_number" != "" ]
- then
- $LOGGER "New Network Number: $new_network_number"
- fi
-
- if [ "$new_ip_address" != "" ]
- then
- $LOGGER "New IP Address: $new_ip_address"
- fi
-
- if [ "$new_broadcast_address" != "" ]
- then
- $LOGGER "New Broadcast Address: $new_broadcast_address"
- fi
-
- if [ "$new_subnet_mask" != "" ]
- then
- $LOGGER "New Subnet Mask for $interface: $new_subnet_mask"
- fi
-
- if [ "$alias_subnet_mask" != "" ]
- then
- fi
-}
-
-#############################################################################
-# dhclient_main() does the appropriate work depending on the state of
-# the dhcp client
-#############################################################################
-dhclient_script_main ()
-{
-# set -x
- exit_status=0
-
- case $reason in
- MEDIUM|\
- PREINIT|\
- ARPCHECK|\
- ARPSEND|\
- RENEW|\
- REBIND|\
- BOUND|\
- REBOOT|\
- EXPIRE|\
- FAIL|\
- TIMEOUT)
- pre_state_${reason}_hook
- in_state_${reason}
- post_state_${reason}_hook
- ;;
- *)
- $LOGGER "dhclient-script called with invalid reason $reason"
- exit_status=1
- ;;
- esac
-}
-
-#############################################################################
-# Let's do the work...
-#############################################################################
-
-if [ -x /usr/bin/logger ]; then
- LOGGER="/usr/bin/logger -s -p user.notice -t dhclient"
-else
- LOGGER=echo
-fi
-
-# Invoke the local dhcp client enter hooks, if they exist.
-if [ -x %%PREFIX%%/etc/dhclient-enter-hooks ]
-then
- exit_status=0
- . %%PREFIX%%/etc/dhclient-enter-hooks
- # allow the local script to abort processing of this state
- # local script must set exit_status variable to nonzero.
- if [ $exit_status -ne 0 ]
- then
- exit $exit_status
- fi
-fi
-
-dhclient_script_init
-dhclient_script_main
-
-# Invokes the local dhcp client exit hooks, if any.
-if [ -x %%PREFIX%%/etc/dhclient-exit-hooks ]; then
- . %%PREFIX%%/etc/dhclient-exit-hooks
-fi
-
-exit $exit_status
-
-#############################################################################
-# That's all folks
-#############################################################################