#!/bin/bash # File Definitions DHCPD_CONFIG="$PWD/dhcpd.conf" DHCPD_LEASES="$PWD/dhcpd.leases" export PROJECT_DIR=`dirname $0` export DHCPD_CONFIG_FILE="${DHCPD_CONFIG:="/etc/dhcpd.conf"}" export LEASES_FILE="${DHCPD_LEASES:="/var/lib/dhcpd/dhcpd.leases"}" # Variable Definitions export IP_REGEX='[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+' export SHARED_NETWORK_BEGIN_REGEX='^[[:space:]]*shared-network[[:space:]]+"[a-zA-Z0-9\-]+"[[:space:]]\{' export SUBNET_BEGIN_REGEX="^[[:space:]]*subnet[[:space:]]+$IP_REGEX[[:space:]]+netmask[[:space:]]+$IP_REGEX[[:space:]]+\{" export HOST_BEGIN_REGEX='^[[:space:]]*host[[:space:]]+[a-zA-Z0-9_\-]+[[:space:]]+\{' export POOL_BEGIN_REGEX='^[[:space:]]*pool[[:space:]]+\{' export POOL_RANGE_REGEX="^[[:space:]]*range[[:space:]]$IP_REGEX[[:space:]]$IP_REGEX[[:space:]]*;" include () { local INCLUDE_FILE="${1:?"include: File was not included"}" local INCLUDE_PATH="$PROJECT_DIR/utils/$INCLUDE_FILE" if [[ -f $INCLUDE_PATH ]]; then . $INCLUDE_PATH fi } export -f include