]> git.pld-linux.org Git - packages/bnc.git/commitdiff
4a7807203607ab05d0de83700decba11 bncsetup.pld
authordjrzulf <djrzulf@pld-linux.org>
Sun, 25 Nov 2001 12:31:24 +0000 (12:31 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    bncsetup.pld -> 1.1

bncsetup.pld [new file with mode: 0755]

diff --git a/bncsetup.pld b/bncsetup.pld
new file mode 100755 (executable)
index 0000000..6d1016c
--- /dev/null
@@ -0,0 +1,378 @@
+#!/bin/sh
+# You NEED the dialog program to use this!
+MYPID=$$
+TMPFILE=.bnc$MYPID.tmp
+RSLFILE=.bnc$MYPID.rsl
+VHTFILE=.bnc$MYPID.vht
+BSVERSION="0.3 for BNC2.6.4"
+SAVEFILE=./bnc.conf
+
+bsclean()
+{
+  rm -f $TMPFILE $RSLFILE $VHTFILE
+  exit $1
+}
+
+saveit()
+{
+echo "Writing your configuration to $SAVEFILE"
+cat << EOF > $TMPFILE
+#!/home/myhome/bnc
+# BNCSetup $BSVERSION by IceWizard and pharos
+# automaticly generated configuration file.
+# edit the first line and chmod +x this file if you like to load bnc
+# by running its .conf file
+#               Here are additional options you may add:
+# C:6667                        Default Irc Server Port to Connect to
+# X:default.vhost.com           Default Virtual Host to Use
+# V:another.vhost.com           Other Vhosts That Can Be Used
+# V:different.vhost.com          As Many Vhosts as You Want
+# P:pid.bnc                     Name of PID File
+#                                *NOTE PID file is required if bnc is to be
+#                                *used with crontab
+# L:bnc.log                     Name of Log File
+# W:1                           enable dynamic idents on servers with
+#                                identwd installed
+# A:1:*.addy.net                Allow list of ip addresses that can use BNC
+S:$SUPERPASS
+D:$BNCPORT:$MAXUSERS:$BNCPASS
+
+EOF
+
+cat $TMPFILE $VHTFILE > $SAVEFILE
+echo "Finished! You may now edit $SAVEFILE to make any special changes"
+
+bsclean 0
+}
+
+altconf()
+{
+  echo "##" > $VHTFILE
+  echo "Running alt configuration tool"
+  echo -n "Port to listen on> " 
+  read BNCPORT
+  echo "How many users would you like to be allowed on BNC at the same time?"
+  echo "Please note, if you would like to allow unlimited users, enter a 0"
+  echo -n "> "
+  read MAXUSERS
+  echo -n "Pick a password >"
+  read BNCPASS
+  echo -n "Pick a password for the superuser >"
+  read SUPERPASS
+  saveit
+
+}
+
+if ! [ -e /usr/bin/bncmkpasswd ]
+then
+  echo "You need to Make the package before you can use this script"
+  echo "(required /usr/bin/bncmkpasswd)"
+  bsclean 0
+fi
+
+echo "BAD\$" > $TMPFILE
+echo "Test" | /usr/bin/bncmkpasswd -s >> $TMPFILE
+CRCYS=$(cat $TMPFILE | grep '\$' | tail -1 )
+
+
+if [ "BAD\$" = "$CRCYS" ]
+then
+  CRCY=ON
+else
+  echo "Your OS is using an unstandard Crypt lib, disabling encryption."
+  CRCY=OFF
+  echo "Continuing script in 4 seconds"
+  sleep 4
+fi
+
+dialog --clear
+ERRORLEVEL=$?
+if [ x$ERRORLEVEL != x0 ]
+then
+  echo "You appear to not have the program named dialog"
+  echo "This script depends on it heavily"
+  altconf
+  bsclean 0
+fi
+
+
+
+cat << EOF > $TMPFILE
+BNCSETUP v$BSVERSION
+
+Written by IceWizard <ice@walt-disney.com>
+Rewritten Pharos <Pharos@refract.com>
+BNCSetup is a quick BNC conf generator
+
+EOF
+clear
+dialog --title "BNCSETUP by IceWizard" --msgbox "$(cat $TMPFILE)" 10 50
+
+cat << EOF > $TMPFILE
+What port would you like BNC to listen on?
+This must be a number greater than 1024 and must not be in use.
+
+EOF
+
+BNCPORT=
+while [ -z "$BNCPORT" ]
+do
+
+  dialog --title "Port to listen on" --inputbox "$(cat $TMPFILE)" 10 68 "6669" 2> $RSLFILE
+  ERRORLEVEL=$?
+  BNCPORT="$(head -1 $RSLFILE)"
+  if [ x$ERRORLEVEL = x1 ]
+  then
+    clear
+    echo "BNC Configuration was cancelled..."
+    bsclean 0
+  fi
+done
+
+
+cat << EOF > $TMPFILE
+How many users would you like to be allowed on BNC at the same time?
+Please note, if you would like to allow unlimited users, enter a 0
+
+EOF
+
+MAXUSERS=
+while [ -z "$MAXUSERS" ]
+do
+  dialog --title "Maximum users" --inputbox "$(cat $TMPFILE)" 10 78 "0" 2> $RSLFILE
+  ERRORLEVEL=$?
+  MAXUSERS="$(head -1 $RSLFILE)"
+  if [ x$ERRORLEVEL = x1 ]
+  then
+    clear
+    echo "BNC Configuration was cancelled..."
+    bsclean 0
+  fi
+done
+
+cat << EOF > $TMPFILE
+Pick a password you would like to use for BNC?
+This is the pass that will be used upon
+/quote pass PASS
+when using bnc.
+
+EOF
+
+BNCPASS=
+while [ -z "$BNCPASS" ]
+do
+
+  dialog --title "Pick a password" --inputbox "$(cat $TMPFILE)" 12 60 2> $RSLFILE
+  ERRORLEVEL=$?
+  BNCPASS="$(head -1 $RSLFILE)"
+  if [ x$ERRORLEVEL = x1 ]
+  then
+    clear
+    echo "BNC Configuration was cancelled..."
+    bsclean 0
+  fi
+done
+
+cat << EOF > $TMPFILE
+Pick a superviser password you would like to use for BNC?
+If you are the only person to use your BNC,
+feel free to enter the same password.
+
+EOF
+
+SUPERPASS=
+while [ -z "$SUPERPASS" ]
+do
+  dialog --title "Pick a superviser password" --inputbox "$(cat $TMPFILE)" 10 62 2> $RSLFILE
+  ERRORLEVEL=$?
+  SUPERPASS="$(head -1 $RSLFILE)"
+  if [ x$ERRORLEVEL = x1 ]; then
+    clear
+    echo "BNC Configuration was cancelled..."
+    bsclean 0
+  fi
+done
+
+if [ xON = x$CRCY ]
+then
+
+dialog --yesno "Use encrypted passes in config file (Securety)" 5 60
+ERRORLEVEL=$?
+
+if [ x$ERRORLEVEL = x0 ]
+then 
+  if [ -x /usr/bin/bncmkpasswd ]
+  then
+    SUPERPASS="+"$(echo "$SUPERPASS" | /usr/bin/bncmkpasswd -s)
+    BNCPASS="+"$(echo "$BNCPASS" | /usr/bin/bncmkpasswd -s)
+  else
+    clear
+    echo "You have not did ./configure and make so there is no /usr/bin/bncmkpasswd"
+    echo "This program is required to produce the encryption"
+    bsclean 0
+  fi
+fi
+fi
+
+rm -f $VHTFILE
+dialog --radiolist "Choose Allow method" 10 70 3 \
+"0" "Allow ANY ip to use bnc if they know the pass" "on" \
+"1" "Go to menu for creating ip lists" "off" 2> $RSLFILE
+ERRORLEVEL=$?
+if [ x$ERRORLEVEL = x1 ]; then
+  clear
+  echo "BNC Configuration was cancelled..."
+  bsclean 0
+fi
+ERRORLEVEL="$(head -1 $RSLFILE)"
+
+cat << EOF > $TMPFILE
+Enter an IP to be allowed to use BNC.
+this ip can include *'s and ?'s and other wildcard stuff.
+enter q alone to end entering IP's
+EOF
+
+if [ x$ERRORLEVEL = x1 ]
+then
+BDONE=
+  while ! [ x$BDONE = xq ]
+  do
+    dialog --title "Enter Wildcard IP" --inputbox "$(cat $TMPFILE)" 10 62 2> $RSLFILE
+    BDONE="$(head -1 $RSLFILE)"
+    if ! [ -z BDONE ]
+    then
+      if ! [ x$BDONE = xq ]
+      then
+        echo "A:1:$BDONE" >> $VHTFILE
+      fi
+    fi
+  done
+fi
+
+if ! [ -e "$VHTFILE" ]
+then
+  echo "A:1:*" > $VHTFILE
+fi
+
+
+cat << EOF > $TMPFILE
+Enter a Default Vhost IP or DNS that bnc will use.
+EOF
+
+dialog --yesno "Enter a default Vhost to use?" 5 60
+ERRORLEVEL=$?
+
+if [ x$ERRORLEVEL = x0 ]
+then 
+  dialog --title "Enter Default Vhost" --inputbox "$(cat $TMPFILE)" 10 62 2> $RSLFILE
+  BDONE="$(head -1 $RSLFILE)"
+  if ! [ -z BDONE ]
+  then
+    echo "X:$BDONE" >> $VHTFILE
+  fi
+fi
+
+dialog --yesno "Enter a list of Vhost possiblities?" 5 60
+ERRORLEVEL=$?
+
+cat << EOF > $TMPFILE
+Enter an Vhost that can be used by this bnc.
+This has no bearing on how bnc functions but is simply
+what is listed when the user does:
+/quote vip
+enter q alone to end entering IP's
+EOF
+
+if [ x$ERRORLEVEL = x0 ]
+then
+BDONE=
+  while ! [ x$BDONE = xq ]
+  do
+    dialog --title "Enter Vhost possibility" --inputbox "$(cat $TMPFILE)" 15 62 2> $RSLFILE
+    BDONE="$(head -1 $RSLFILE)"
+    if ! [ -z BDONE ]
+    then
+      if ! [ x$BDONE = xq ]
+      then
+        echo "V:$BDONE" >> $VHTFILE
+      fi
+    fi
+  done
+fi
+
+
+dialog --yesno "Would you like bnc to log?" 5 60
+ERRORLEVEL=$?
+
+cat << EOF > $TMPFILE
+Pick a filename for bnc to write logging info into.
+if you do not want to use the default
+
+EOF
+
+if [ x$ERRORLEVEL = x0 ]
+then 
+  dialog --title "Enter logfile Filename" --inputbox "$(cat $TMPFILE)" 10 62 "bnc.log" 2> $RSLFILE
+  BDONE="$(head -1 $RSLFILE)"
+  if ! [ -z BDONE ]
+  then
+    echo "L:$BDONE" >> $VHTFILE
+  fi
+fi
+
+dialog --yesno "Would you like bnc to display a motd?" 5 60
+ERRORLEVEL=$?
+
+cat << EOF > $TMPFILE
+Pick a filename for bnc to show as a motd
+if you do not want to use the default
+
+EOF
+
+if [ x$ERRORLEVEL = x0 ]
+then 
+  dialog --title "Enter logfile Filename" --inputbox "$(cat $TMPFILE)" 10 62 "motd" 2> $RSLFILE
+  BDONE="$(head -1 $RSLFILE)"
+  if ! [ -z BDONE ]
+  then
+    echo "M:$BDONE" >> $VHTFILE
+  fi
+fi
+
+dialog --title "Requires Identwd to be installed." --yesno "Do you want bnc's dynamic ident support?" 5 60
+ERRORLEVEL=$?
+if [ x$ERRORLEVEL = x0 ]
+then
+  echo "W:1" >> $VHTFILE
+fi
+
+
+
+
+cat << EOF > $TMPFILE
+Pick a file to save the configuration in
+if you do not want to use the default
+
+EOF
+
+SAVEFILE=
+while [ -z "$SAVEFILE" ]
+do
+  dialog --title "Save as" --inputbox "$(cat $TMPFILE)" 10 45 "bnc.conf" 2> $RSLFILE
+  ERRORLEVEL=$?
+  SAVEFILE="$(head -1 $RSLFILE)"
+  if [ x$ERRORLEVEL = x1 ]; then
+    clear
+    echo "BNC Configuration was cancelled..."
+    bsclean 0
+  fi
+done
+clear
+if [ -e "$SAVEFILE" ]
+then
+  echo "BNCsetup found a configuration file already... saving it as $SAVEFILE.old"
+  mv $SAVEFILE "$SAVEFILE".old
+fi
+
+saveit
+
This page took 0.102197 seconds and 4 git commands to generate.