aboutsummaryrefslogtreecommitdiff
path: root/contrib/bsddialog/bsdconfig/share/variable.subr
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/bsddialog/bsdconfig/share/variable.subr')
-rw-r--r--contrib/bsddialog/bsdconfig/share/variable.subr315
1 files changed, 0 insertions, 315 deletions
diff --git a/contrib/bsddialog/bsdconfig/share/variable.subr b/contrib/bsddialog/bsdconfig/share/variable.subr
deleted file mode 100644
index c453f674ee57..000000000000
--- a/contrib/bsddialog/bsdconfig/share/variable.subr
+++ /dev/null
@@ -1,315 +0,0 @@
-if [ ! "$_VARIABLE_SUBR" ]; then _VARIABLE_SUBR=1
-#
-# Copyright (c) 2012-2014 Devin Teske
-# 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.
-#
-# $FreeBSD$
-#
-############################################################ INCLUDES
-
-BSDCFG_SHARE="/usr/share/bsdconfig"
-. $BSDCFG_SHARE/common.subr || exit 1
-f_dprintf "%s: loading includes..." variable.subr
-f_include $BSDCFG_SHARE/dialog.subr
-f_include $BSDCFG_SHARE/strings.subr
-
-############################################################ GLOBALS
-
-VARIABLES=
-
-#
-# Default behavior is to call f_variable_set_defaults() when loaded.
-#
-: ${VARIABLE_SELF_INITIALIZE=1}
-
-#
-# File to write when f_dump_variables() is called.
-#
-: ${VARIABLE_DUMPFILE:=/etc/bsdconfig.vars}
-
-############################################################ FUNCTIONS
-
-# f_variable_new $handle $variable
-#
-# Register a new variable named $variable with the given reference-handle
-# $handle. The environment variable $handle is set to $variable allowing you to
-# use the f_getvar() function (from common.subr) with $handle to get the value
-# of environment variable $variable. For example:
-#
-# f_variable_new VAR_ABC abc
-#
-# allows the later indirection:
-#
-# f_getvar $VAR_ABC
-#
-# to return the value of environment variable `abc'. Variables registered in
-# this manner are recorded in the $VARIABLES environment variable for later
-# allowing dynamic enumeration of so-called `registered/advertised' variables.
-#
-f_variable_new()
-{
- local handle="$1" variable="$2"
- [ "$handle" ] || return $FAILURE
- f_dprintf "variable.subr: New variable %s -> %s" "$handle" "$variable"
- setvar $handle $variable
- VARIABLES="$VARIABLES${VARIABLES:+ }$handle"
-}
-
-# f_variable_get_value $var [ $fmt [ $opts ... ] ]
-#
-# Unless nonInteractive is set, prompt the user with a given value (pre-filled
-# with the value of $var) and give them the chance to change the value.
-#
-# Unlike f_getvar() (from common.subr) which can return a variable to the
-# caller on standard output, this function has no [meaningful] output.
-#
-# Returns success unless $var is either NULL or missing.
-#
-f_variable_get_value()
-{
- local var="$1" cp
-
- [ "$var" ] || return $FAILURE
-
- if ! { f_getvar $var cp && ! f_interactive; }; then
- shift 1 # var
- f_dialog_input cp "$( printf "$@" )" "$cp" && setvar $var "$cp"
- fi
-
- return $SUCCESS
-}
-
-# f_variable_set_defaults
-#
-# Installs sensible defaults for registered/advertised variables.
-#
-f_variable_set_defaults()
-{
- f_dprintf "f_variable_set_defaults: Initializing defaults..."
-
- #
- # Initialize various user-edittable values to their defaults
- #
- setvar $VAR_EDITOR "${EDITOR:-/usr/bin/ee}"
- setvar $VAR_FTP_STATE "auto"
- setvar $VAR_FTP_USER "ftp"
- setvar $VAR_HOSTNAME "$( hostname )"
- setvar $VAR_MEDIA_TIMEOUT "300"
- setvar $VAR_NFS_SECURE "NO"
- setvar $VAR_NFS_TCP "NO"
- setvar $VAR_NFS_V3 "YES"
- setvar $VAR_PKG_TMPDIR "/var/tmp"
- setvar $VAR_RELNAME "$UNAME_R"
-
- #
- # Debugging
- #
- if f_debugging; then
- local var
- for var in \
- $VAR_EDITOR \
- $VAR_FTP_STATE \
- $VAR_FTP_USER \
- $VAR_HOSTNAME \
- $VAR_MEDIA_TIMEOUT \
- $VAR_NFS_SECURE \
- $VAR_NFS_TCP \
- $VAR_NFS_V3 \
- $VAR_PKG_TMPDIR \
- $VAR_RELNAME \
- ; do
- f_quietly f_getvar $var
- done
- fi
-
- f_dprintf "f_variable_set_defaults: Defaults initialized."
-}
-
-# f_dump_variables
-#
-# Dump a list of registered/advertised variables and their respective values to
-# $VARIABLE_DUMPFILE. Returns success unless the file couldn't be written. If
-# an error occurs, it is displayed using f_dialog_msgbox() (from dialog.subr).
-#
-f_dump_variables()
-{
- local err
- if ! err=$(
- ( for handle in $VARIABLES; do
- f_getvar $handle var || continue
- f_getvar $var value || continue
- f_shell_escape "$value" value
- printf "%s='%s'\n" "$var" "$value"
- done > "$VARIABLE_DUMPFILE" ) 2>&1
- ); then
- f_dialog_msgbox "$err"
- return $FAILURE
- fi
-}
-
-# f_debugging
-#
-# Are we in debug mode? Returns success if extra DEBUG information has been
-# requested (by setting $debug to non-NULL), otherwise false.
-#
-f_debugging()
-{
- local value
- f_getvar $VAR_DEBUG value && [ "$value" ]
-}
-
-# f_interactive
-#
-# Are we running interactively? Return error if $nonInteractive is set and non-
-# NULL, otherwise return success.
-#
-f_interactive()
-{
- local value
- ! f_getvar $VAR_NONINTERACTIVE value || [ ! "$value" ]
-}
-
-# f_netinteractive
-#
-# Has the user specifically requested the network-portion of configuration and
-# setup to be performed interactively? Returns success if the user has asked
-# for the network configuration to be done interactively even if perhaps over-
-# all non-interactive mode has been requested (by setting nonInteractive).
-#
-# Returns success if $netInteractive is set and non-NULL.
-#
-f_netinteractive()
-{
- local value
- f_getvar $VAR_NETINTERACTIVE value && [ "$value" ]
-}
-
-# f_zfsinteractive
-#
-# Has the user specifically requested the ZFS-portion of configuration and
-# setup to be performed interactively? Returns success if the user has asked
-# for the ZFS configuration to be done interactively even if perhaps overall
-# non-interactive mode has been requested (by setting nonInteractive).
-#
-# Returns success if $zfsInteractive is set and non-NULL.
-#
-f_zfsinteractive()
-{
- local value
- f_getvar $VAR_ZFSINTERACTIVE value && [ "$value" ]
-}
-
-############################################################ MAIN
-
-#
-# Variables that can be tweaked from config files
-#
-# Handle Variable Name
-f_variable_new VAR_CONFIG_FILE configFile
-f_variable_new VAR_DEBUG debug
-f_variable_new VAR_DEBUG_FILE debugFile
-f_variable_new VAR_DIRECTORY_PATH _directoryPath
-f_variable_new VAR_DOMAINNAME domainname
-f_variable_new VAR_EDITOR editor
-f_variable_new VAR_EXTRAS ifconfig_
-f_variable_new VAR_FTP_DIR ftpDirectory
-f_variable_new VAR_FTP_HOST ftpHost
-f_variable_new VAR_FTP_PASS ftpPass
-f_variable_new VAR_FTP_PATH _ftpPath
-f_variable_new VAR_FTP_PORT ftpPort
-f_variable_new VAR_FTP_STATE ftpState
-f_variable_new VAR_FTP_USER ftpUser
-f_variable_new VAR_GATEWAY defaultrouter
-f_variable_new VAR_GROUP group
-f_variable_new VAR_GROUP_GID groupGid
-f_variable_new VAR_GROUP_MEMBERS groupMembers
-f_variable_new VAR_GROUP_PASSWORD groupPassword
-f_variable_new VAR_HOSTNAME hostname
-f_variable_new VAR_HTTP_DIR httpDirectory
-f_variable_new VAR_HTTP_FTP_MODE httpFtpMode
-f_variable_new VAR_HTTP_HOST httpHost
-f_variable_new VAR_HTTP_PATH _httpPath
-f_variable_new VAR_HTTP_PORT httpPort
-f_variable_new VAR_HTTP_PROXY httpProxy
-f_variable_new VAR_HTTP_PROXY_HOST httpProxyHost
-f_variable_new VAR_HTTP_PROXY_PATH _httpProxyPath
-f_variable_new VAR_HTTP_PROXY_PORT httpProxyPort
-f_variable_new VAR_IFCONFIG ifconfig_
-f_variable_new VAR_IPADDR ipaddr
-f_variable_new VAR_IPV6ADDR ipv6addr
-f_variable_new VAR_IPV6_ENABLE ipv6_activate_all_interfaces
-f_variable_new VAR_KEYMAP keymap
-f_variable_new VAR_MEDIA_TIMEOUT MEDIA_TIMEOUT
-f_variable_new VAR_MEDIA_TYPE mediaType
-f_variable_new VAR_NAMESERVER nameserver
-f_variable_new VAR_NETINTERACTIVE netInteractive
-f_variable_new VAR_NETMASK netmask
-f_variable_new VAR_NETWORK_DEVICE netDev
-f_variable_new VAR_NFS_HOST nfsHost
-f_variable_new VAR_NFS_PATH nfsPath
-f_variable_new VAR_NFS_SECURE nfs_reserved_port_only
-f_variable_new VAR_NFS_TCP nfs_use_tcp
-f_variable_new VAR_NFS_V3 nfs_use_v3
-f_variable_new VAR_NONINTERACTIVE nonInteractive
-f_variable_new VAR_NO_CONFIRM noConfirm
-f_variable_new VAR_NO_ERROR noError
-f_variable_new VAR_NO_INET6 noInet6
-f_variable_new VAR_PACKAGE package
-f_variable_new VAR_PKG_TMPDIR PKG_TMPDIR
-f_variable_new VAR_PORTS_PATH ports
-f_variable_new VAR_RELNAME releaseName
-f_variable_new VAR_SLOW_ETHER slowEthernetCard
-f_variable_new VAR_TRY_DHCP tryDHCP
-f_variable_new VAR_TRY_RTSOL tryRTSOL
-f_variable_new VAR_UFS_PATH ufs
-f_variable_new VAR_USER user
-f_variable_new VAR_USER_ACCOUNT_EXPIRE userAccountExpire
-f_variable_new VAR_USER_DOTFILES_CREATE userDotfilesCreate
-f_variable_new VAR_USER_GECOS userGecos
-f_variable_new VAR_USER_GID userGid
-f_variable_new VAR_USER_GROUPS userGroups
-f_variable_new VAR_USER_GROUP_DELETE userGroupDelete
-f_variable_new VAR_USER_HOME userHome
-f_variable_new VAR_USER_HOME_CREATE userHomeCreate
-f_variable_new VAR_USER_HOME_DELETE userHomeDelete
-f_variable_new VAR_USER_LOGIN_CLASS userLoginClass
-f_variable_new VAR_USER_PASSWORD userPassword
-f_variable_new VAR_USER_PASSWORD_EXPIRE userPasswordExpire
-f_variable_new VAR_USER_SHELL userShell
-f_variable_new VAR_USER_UID userUid
-f_variable_new VAR_ZFSINTERACTIVE zfsInteractive
-
-#
-# Self-initialize unless requested otherwise
-#
-f_dprintf "%s: VARIABLE_SELF_INITIALIZE=[%s]" \
- variable.subr "$VARIABLE_SELF_INITIALIZE"
-case "$VARIABLE_SELF_INITIALIZE" in
-""|0|[Nn][Oo]|[Oo][Ff][Ff]|[Ff][Aa][Ll][Ss][Ee]) : do nothing ;;
-*) f_variable_set_defaults
-esac
-
-f_dprintf "%s: Successfully loaded." variable.subr
-
-fi # ! $_VARIABLE_SUBR