slitaz-tools annotate tinyutils/netbox @ rev 226

netbox: simplify wifi tab, add firmware install
author Pascal Bellard <pascal.bellard@slitaz.org>
date Thu Jul 10 21:15:09 2008 +0000 (2008-07-10)
parents cc5a810e2c09
children 74935d005590
rev   line source
pankso@33 1 #!/bin/sh
pankso@194 2 #
pankso@33 3 # Gtkdialog box to manage network connexion.
pankso@33 4 # - SliTaz GNU/Linux 2008.
pankso@33 5 #
pankso@33 6 VERSION=20080113
pankso@33 7
pankso@33 8 # Check if user is root.
pankso@33 9 check_root()
pankso@33 10 {
pankso@33 11 if test $(id -u) != 0 ; then
pankso@33 12 echo -e "
pankso@194 13 You must be root to run `basename $0`. Please type 'su' and
pankso@33 14 root password to become super-user.\n"
pankso@33 15 exit 0
pankso@33 16 fi
pankso@33 17 }
pankso@33 18
pascal@177 19 set_ipup()
pascal@177 20 {
pascal@177 21 [ -f /etc/ppp/ip-up ] && return
pascal@177 22 cat > /etc/ppp/ip-up <<EOT
pascal@177 23 #!/bin/sh
pascal@177 24 exec $0 call ipup \$@
pascal@177 25 EOT
pascal@177 26 chmod +x /etc/ppp/ip-up
pascal@177 27 }
pascal@177 28
pascal@225 29 # Detect WIFI_INTERFACE and update /etc/network.conf
pascal@224 30 . /etc/network.conf
pascal@225 31 if ! iwconfig $WIFI_INTERFACE 2>&1 | grep -iq "essid"; then
pascal@224 32 WIFI_INTERFACE=$(grep : /proc/net/dev | cut -d: -f1 | \
pascal@224 33 while read dev; do iwconfig $dev 2>&1 | \
pascal@224 34 grep -iq "essid" && { echo $dev ; break; }; \
pascal@224 35 done)
pascal@224 36 [ -n "$WIFI_INTERFACE" ] && sed -i "s/^WIFI_INTERFACE=.*/WIFI_INTERFACE=\"$WIFI_INTERFACE\"/" /etc/network.conf
pascal@224 37 fi
pascal@224 38
pascal@225 39 ESSIDS=""
pascal@225 40 # Detect ESSID list
pascal@225 41 if ! iwconfig $WIFI_INTERFACE 2>&1 | grep -iq "essid"; then
pascal@225 42 for i in $(iwlist $WIFI_INTERFACE scanning | grep "ESSID" | \
pascal@225 43 grep -v "<hidden>" | sed -n 's/ESSID:"//p' | sed -n 's/"//p'); do
pascal@225 44 ESSIDS="$ESSIDS<item>$linessid</item>"
pascal@225 45 done
pascal@225 46 fi
pascal@225 47
pascal@177 48 if [ "$1" = "call" ]; then
pascal@177 49 ppp="pppd local lock notty"
pascal@177 50 pppup=""
pascal@177 51 sub=$2
pascal@177 52 shift 2
pascal@177 53 case "$sub" in
pascal@177 54 sendsshkey)
pascal@177 55 check_root
pascal@177 56 dropbearkey -y -f /etc/dropbear/dropbear_rsa_host_key | \
pascal@177 57 grep ^ssh | ssh $1 "mkdir .ssh 2> /dev/null ; while read key; do for i in authorized_keys authorized_keys2; do grep -q \$key .ssh/\$i || echo \$key >> .ssh/\$i; done; done; chmod 700 .ssh ; chmod 600 .ssh/authorized_keys*"
pascal@177 58 exit 0;;
pascal@177 59 vpnssh) check_root
pascal@177 60 set_ipup
pascal@177 61 ps ww | grep -q "$ppp $2:$3" && exit 1
pascal@177 62 pipe="/tmp/ssh$$"
pascal@177 63 mkfifo $pipe
pascal@177 64 [ -n "$4" ] && pppup="ipparam 'addroutes,$(echo $4 | sed 's/ /,/g')'"
pascal@177 65 cat $pipe | dbclient -i /etc/dropbear/dropbear_rsa_host_key \
pascal@177 66 $1 "$ppp" | $ppp $2:$3 $pppup > $pipe
pascal@177 67 rm -f $pipe
pascal@177 68 exit 0;;
pascal@177 69 killvpnssh)
pascal@177 70 check_root
pascal@177 71 kill $(ps x | grep dbclient | grep "$ppp" | awk '{ print $1 }')
pascal@177 72 exit 0;;
pascal@177 73 ipup)
pascal@177 74 # Arg Name Example
pascal@177 75 # $1 Interface name ppp0
pascal@177 76 # $2 The tty ttyS1
pascal@177 77 # $3 The link speed 38400
pascal@177 78 # $4 Local IP number 12.34.56.78
pascal@177 79 # $5 Peer IP number 12.34.56.99
pascal@177 80 # $6 Optional ``ipparam'' value foo
pascal@177 81 iface=$1
pascal@177 82 # skip tty if present
pascal@177 83 case "$2" in [0-9]*);; *) shift; esac
pascal@177 84 peer=$4
pascal@177 85 IFS=","; set -- $(eval echo $5); unset IFS
pascal@177 86 set -- $1
pascal@177 87 if [ "$1" = "addroutes" ]; then
pascal@177 88 while [ -n "$2" ]; do
pascal@177 89 eval $(ipcalc -n $2)
pascal@177 90 eval $(ipcalc -m $2)
pascal@177 91 route add -net $NETWORK netmask $NETMASK \
pascal@177 92 gw $peer $iface
pascal@177 93 shift
pascal@177 94 done
pascal@177 95 fi
pascal@177 96 exit 0;;
pascal@177 97 esac
pascal@177 98 echo "call $sub unsupported."
pascal@177 99 exit 1
pascal@177 100 fi
pascal@177 101
pankso@194 102 # English/French help dialod.
pankso@194 103 export HELP='
pankso@194 104 <window title="Network status" icon-name="network-wire">
pankso@194 105 <vbox>
pankso@194 106 <text use-markup="true">
pankso@194 107 <label>"
pankso@194 108 <b>SliTaz - Netbox</b>"
pankso@194 109 </label>
pankso@194 110 </text>
pankso@194 111 <frame English>
pankso@194 112 <text wrap="true" width-chars="58">
pankso@194 113 <label>
pankso@194 114 "Netbox let you manage network connections getting dynamic IP by DHCP
pankso@194 115 or static IP, and setup servers. Netbox can start or stop networking,
pankso@197 116 configure network interfaces or directly edit files."
pankso@194 117 </label>
pascal@216 118 </text>
pascal@216 119 </frame>
pascal@216 120 <frame Francais>
pascal@216 121 <text wrap="true" width-chars="58">
pascal@216 122 <label>
pascal@216 123 "Netbox vous permet de gerer les connexions reseau avec une IP
pascal@216 124 statique ou en obtenant une IP dynamique par DHCP, et de parametrer
pascal@216 125 les serveurs. Netbox peut demarrer ou arreter le reseau, configurer
pascal@216 126 les interfaces reseau ou editer directement les fichiers."
pascal@216 127 </label>
pascal@216 128 </text>
pascal@216 129 </frame>
pankso@194 130 </vbox>
pankso@194 131 </window>
pankso@194 132 '
pankso@194 133
pankso@33 134 # Interafce status with ifconfig without arguments to show all
pankso@33 135 # active connections.
pankso@33 136 #
pankso@33 137 export IFCONFIG='
pankso@194 138 <window title="Network status" icon-name="network-wire">
pankso@33 139 <vbox>
pankso@33 140 <text wrap="false">
pankso@33 141 <input>date</input>
pankso@33 142 </text>
pascal@177 143 <notebook labels="Network interfaces'
pascal@177 144 [ -x /usr/sbin/iwlist ] && IFCONFIG="$IFCONFIG|Wireless interfaces|Wireless networks"
pascal@177 145 tmp='|Routing|Servers">
pankso@33 146 <frame Ifconfig>
pankso@33 147 <text wrap="false" width-chars="58">
pankso@33 148 <input>ifconfig</input>
pankso@33 149 </text>
pascal@177 150 </frame>'
pascal@177 151 IFCONFIG="$IFCONFIG$tmp"
pascal@177 152 tmp='<frame Iwconfig>
pascal@177 153 <text wrap="false" width-chars="58">
pascal@177 154 <input>iwconfig</input>
pascal@177 155 </text>
pankso@33 156 </frame>
pascal@177 157 <frame Wireless networks>
pascal@177 158 <text wrap="false" width-chars="58">
pascal@177 159 <input>iwlist scan</input>
pascal@177 160 </text>
pascal@177 161 </frame>'
pascal@177 162 [ -x /usr/sbin/iwlist ] && IFCONFIG="$IFCONFIG$tmp"
pascal@177 163 tmp='<frame Routing>
pascal@177 164 <frame Nameservers>
pascal@177 165 <text wrap="false" width-chars="58">
pascal@177 166 <input>cat /etc/resolv.conf</input>
pascal@177 167 </text>
pascal@177 168 </frame>
pascal@177 169 <frame Routing table>
pascal@177 170 <text wrap="false" width-chars="58">
pascal@177 171 <input>route</input>
pascal@177 172 </text>
pascal@177 173 </frame>
pascal@177 174 <frame Arp table>
pascal@177 175 <text wrap="false" width-chars="58">
pascal@177 176 <input>arp</input>
pascal@177 177 </text>
pascal@177 178 </frame>
pascal@177 179 </frame>
pascal@129 180 <frame Servers>
pascal@129 181 <text wrap="false" width-chars="58">
pascal@177 182 <input>for i in dropbear inetd udhcpd dnsd rsync lighttpd smbd nmbd x11vnc pppd; do ps ww | grep $i | grep -v grep | fold -s; done</input>
pascal@129 183 </text>
pascal@129 184 </frame>
pascal@177 185 </notebook>
pankso@33 186 <hbox>
pankso@33 187 <button>
pankso@185 188 <input file icon="gtk-close"></input>
pankso@33 189 <action type="closewindow">IFCONFIG</action>
pankso@33 190 </button>
pankso@33 191 </hbox>
pankso@33 192 </vbox>
pankso@38 193 </window>
pankso@33 194 '
pascal@177 195 IFCONFIG="$IFCONFIG$tmp"
pankso@33 196
pankso@34 197 # The main dialog with notebook, start/stop buttons and all options.
pankso@34 198 # Note than /etc/network.conf is seded wehwn an interafce is activate
pankso@33 199 #
pascal@126 200 NET_BOX='
pankso@194 201 <window title="SliTaz Netbox Manager" icon-name="network-wired">
pankso@33 202 <vbox>
pankso@194 203
pankso@194 204 <hbox>
pankso@194 205 <text use-markup="true">
pankso@194 206 <label>"<b>Network/Server Manager</b>"</label>
pankso@194 207 </text>
pankso@194 208 <pixmap>
pankso@194 209 <input file>/usr/share/pixmaps/netbox.png</input>
pankso@194 210 </pixmap>
pankso@194 211 </hbox>
pankso@194 212
pankso@33 213 <frame General>
pankso@33 214 <hbox>
pankso@33 215 <text use-markup="true">
pankso@34 216 <label>"<b>Interface :</b>"</label>
pankso@33 217 </text>
pascal@225 218 <combobox>
pascal@225 219 <variable>INTERFACE</variable>'
pascal@225 220 . /etc/network.conf
pascal@225 221 NET_BOX="$NET_BOX<item>$INTERFACE</item>$(
pascal@225 222 grep : /proc/net/dev | cut -d: -f1 | while read dev; do
pascal@225 223 [ "$(echo $dev)" = "$INTERFACE" ] && continue
pascal@225 224 echo "<item>$dev</item>"
pascal@225 225 done)"
pascal@225 226 tmp=' </combobox>
pankso@33 227 </hbox>
pankso@33 228 </frame>
pankso@194 229
pascal@217 230 <notebook labels="DHCP|PPPoE|PPP|Static IP'
pascal@225 231 NET_BOX="$NET_BOX$tmp"
pascal@196 232 [ -x /usr/sbin/iwconfig ] && NET_BOX="$NET_BOX|Wifi"
pascal@196 233 NET_BOX="$NET_BOX|System wide|VPN|Servers"
pascal@137 234 [ -x /sbin/iptables ] && NET_BOX="$NET_BOX|Firewall"
pascal@141 235 tmp='|Etherwake">
pankso@194 236
pankso@33 237 <frame Udhcpc>
pankso@33 238 <hbox>
pankso@33 239 <text use-markup="true">
pascal@126 240 <label>"<b>Options :</b>"</label>
pankso@33 241 </text>
pankso@33 242 <entry>
pankso@33 243 <default>-b</default>
pankso@33 244 <variable>UDHCPC_OPTS</variable>
pankso@33 245 </entry>
pascal@126 246 <button>
pascal@126 247 <input file icon="help"></input>
pascal@126 248 <action>xterm -fa MiscFixed -fs 11 -bg gray93 -fg black -geometry 80x27 -title "udhcpc help" -e "udhcpc --help ; echo -e \"----\nENTER to continue...\" && read close"</action>
pascal@126 249 </button>
pankso@33 250 </hbox>
pankso@33 251 <hbox>
pankso@33 252 <button>
pankso@33 253 <label>Start</label>
pankso@33 254 <input file icon="forward"></input>
pankso@33 255 <action>sed -i s/`cat /etc/network.conf | grep ^INTERFACE=`/INTERFACE=\"$INTERFACE\"/ /etc/network.conf</action>
pankso@33 256 <action>sed -i s/DHCP=\"no\"/DHCP=\"yes\"/ /etc/network.conf</action>
pankso@33 257 <action>sed -i s/STATIC=\"yes\"/STATIC=\"no\"/ /etc/network.conf</action>
pankso@33 258 <action>udhcpc $UDHCPC_OPTS -i $INTERFACE -p /var/run/udhcpc.$INTERFACE.pid</action>
pankso@33 259 </button>
pankso@33 260 <button>
pankso@33 261 <label>Stop</label>
pankso@33 262 <input file icon="stop"></input>
pankso@33 263 <action>echo -n "Stopping interface : $INTERFACE... "</action>
pankso@33 264 <action>ifconfig $INTERFACE down</action>
pankso@33 265 <action>killall -q udhcpc; echo "done"</action>
pankso@33 266 </button>
pankso@33 267 </hbox>
pankso@33 268 </frame>
pankso@194 269
pascal@177 270 <frame PPPoE>
pascal@177 271 <hbox>
pascal@177 272 <text use-markup="true">
pascal@177 273 <label>"<b>Name :</b>"</label>
pascal@177 274 </text>
pascal@177 275 <entry>
pascal@177 276 <input>NAME=$(grep -s ^name /etc/ppp/options); echo "${NAME#* }"</input>
pascal@177 277 <variable>NAME</variable>
pascal@177 278 </entry>
pascal@177 279 </hbox>
pascal@177 280 <hbox>
pascal@177 281 <text use-markup="true">
pascal@177 282 <label>"<b>Username :</b>"</label>
pascal@177 283 </text>
pascal@177 284 <entry>
pascal@177 285 <variable>USER</variable>
pascal@177 286 </entry>
pascal@177 287 </hbox>
pascal@177 288 <hbox>
pascal@177 289 <text use-markup="true">
pascal@177 290 <label>"<b>Password :</b>"</label>
pascal@177 291 </text>
pascal@177 292 <entry>
pascal@217 293 <variable>PASS</variable>
pascal@177 294 </entry>
pascal@177 295 </hbox>
pascal@177 296 <hbox>
pascal@177 297 <button>
pascal@218 298 <input file icon="help"></input>
pascal@218 299 <label>Help</label>
pascal@218 300 <action>xterm -fa MiscFixed -fs 11 -bg gray93 -fg black -geometry 80x30 -title "pppd help (q to quit)" -e "pppd --help 2>&1 | less"</action>
pascal@218 301 </button>
pascal@218 302 <button>
pascal@177 303 <input file icon="accessories-text-editor"></input>
pascal@177 304 <label>Tune</label>
pascal@177 305 <action>[ -n "$NAME" ] && sed -i "s/^name .*/name $NAME/" /etc/ppp/options</action>
pascal@177 306 <action type="lauch">leafpad /etc/ppp/options</action>
pascal@177 307 </button>
pascal@177 308 <button>
pascal@177 309 <label>Start</label>
pascal@177 310 <input file icon="forward"></input>
pascal@177 311 <action>[ -n "$USER" ] && grep -qs "^\"$USER\"" /etc/ppp/pap-secrets
pascal@177 312 && echo "\"$USER\" * \"$PASS\"" >> /etc/ppp/pap-secrets</action>
pascal@177 313 <action>[ -n "$USER" ] && grep -qs "^\"$USER\"" /etc/ppp/chap-secrets
pascal@177 314 && echo "\"$USER\" * \"$PASS\"" >> /etc/ppp/chap-secrets</action>
pascal@177 315 <action>[ -n "$NAME" ] && sed -i "s/^name .*/name $NAME/" /etc/ppp/options</action>
pascal@177 316 <action>killall udhcpc</action>
pascal@177 317 <action>sed -i "s/DHCP=\"yes\"/DHCP=\"no\"/" /etc/network.conf</action>
pascal@177 318 <action>sed -i "s/PPPOE=\"no\"/PPPOE=\"yes\"/" /etc/network.conf</action>
pascal@177 319 <action>pppd $INTERFACE &</action>
pascal@177 320 </button>
pascal@177 321 <button>
pascal@177 322 <label>Stop</label>
pascal@177 323 <input file icon="stop"></input>
pascal@177 324 <action>sed -i "s/PPPOE=\"yes\"/PPPOE=\"no\"/" /etc/network.conf</action>
pascal@177 325 <action>killall pppd</action>
pascal@177 326 </button>
pascal@177 327 </hbox>
pascal@177 328 </frame>
pankso@194 329
pascal@217 330 <frame PPP>
pascal@217 331 <hbox>
pascal@217 332 <text use-markup="true">
pascal@217 333 <label>"<b>Username :</b>"</label>
pascal@217 334 </text>
pascal@217 335 <entry>
pascal@217 336 <input>USER=$(grep -s ^ACCOUNT= /etc/ppp/scripts/ppp-on | cut -f1); echo "${USER#*=}"</input>
pascal@217 337 <variable>USER</variable>
pascal@217 338 </entry>
pascal@217 339 </hbox>
pascal@217 340 <hbox>
pascal@217 341 <text use-markup="true">
pascal@217 342 <label>"<b>Password :</b>"</label>
pascal@217 343 </text>
pascal@217 344 <entry>
pascal@217 345 <input>PASS=$(grep -s ^PASSWORD= /etc/ppp/scripts/ppp-on | cut -f1); echo "${PASS#*=}"</input>
pascal@217 346 <variable>PASS</variable>
pascal@217 347 </entry>
pascal@217 348 </hbox>
pascal@217 349 <hbox>
pascal@217 350 <text use-markup="true">
pascal@217 351 <label>"<b>Telephone:</b>"</label>
pascal@217 352 </text>
pascal@217 353 <entry>
pascal@217 354 <input>PHONE=$(grep -s ^TELEPHONE= /etc/ppp/scripts/ppp-on | cut -f1); echo "${PHONE#*=}"</input>
pascal@217 355 <variable>PHONE</variable>
pascal@217 356 </entry>
pascal@217 357 </hbox>
pascal@217 358 <hbox>
pascal@217 359 <button>
pascal@218 360 <input file icon="help"></input>
pascal@218 361 <label>Help</label>
pascal@218 362 <action>xterm -fa MiscFixed -fs 11 -bg gray93 -fg black -geometry 80x30 -title "pppd help (q to quit)" -e "pppd --help 2>&1 | less"</action>
pascal@218 363 </button>
pascal@218 364 <button>
pascal@217 365 <input file icon="accessories-text-editor"></input>
pascal@217 366 <label>Tune</label>
pascal@218 367 <action>[ -n "$NAME" ] && sed -i "s/^ACCOUNT=.*/ACCOUNT=$NAME/" /etc/ppp/scripts/ppp-on</action>
pascal@218 368 <action>[ -n "$PASS" ] && sed -i "s/^PASSWORD=.*/PASSWORD=$PASS/" /etc/ppp/scripts/ppp-on</action>
pascal@218 369 <action>[ -n "$PHONE" ] && sed -i "s/^TELEPHONE=.*/TELEPHONE=$PHONE/" /etc/ppp/scripts/ppp-on</action>
pascal@217 370 <action type="lauch">leafpad /etc/ppp/scripts/ppp-on</action>
pascal@217 371 </button>
pascal@217 372 <button>
pascal@217 373 <label>Start</label>
pascal@217 374 <input file icon="forward"></input>
pascal@217 375 <action>[ -n "$USER" ] && grep -qs "^\"$USER\"" /etc/ppp/pap-secrets
pascal@217 376 && echo "\"$USER\" * \"$PASS\"" >> /etc/ppp/pap-secrets</action>
pascal@217 377 <action>[ -n "$USER" ] && grep -qs "^\"$USER\"" /etc/ppp/chap-secrets
pascal@217 378 && echo "\"$USER\" * \"$PASS\"" >> /etc/ppp/chap-secrets</action>
pascal@217 379 <action>[ -n "$NAME" ] && sed -i "s/^name .*/name $NAME/" /etc/ppp/options</action>
pascal@217 380 <action>/etc/ppp/scripts/ppp-off</action>
pascal@217 381 <action>/etc/ppp/scripts/ppp-on &</action>
pascal@217 382 </button>
pascal@217 383 <button>
pascal@217 384 <label>Stop</label>
pascal@217 385 <input file icon="stop"></input>
pascal@217 386 <action>/etc/ppp/scripts/ppp-off</action>
pascal@217 387 </button>
pascal@217 388 </hbox>
pascal@217 389 </frame>
pascal@217 390
pankso@33 391 <frame Configuration>
pankso@33 392 <hbox>
pankso@33 393 <text use-markup="true">
pankso@34 394 <label>"<b>IP :</b>"</label>
pankso@33 395 </text>
pankso@33 396 <entry>
pankso@33 397 <input>. /etc/network.conf; echo "$IP"</input>
pankso@33 398 <variable>IP</variable>
pankso@33 399 </entry>
pankso@33 400 </hbox>
pankso@33 401 <hbox>
pankso@33 402 <text use-markup="true">
pankso@34 403 <label>"<b>Netmask :</b>"</label>
pankso@33 404 </text>
pankso@33 405 <entry>
pankso@33 406 <input>. /etc/network.conf; echo "$NETMASK"</input>
pankso@33 407 <variable>NETMASK</variable>
pankso@33 408 </entry>
pankso@33 409 </hbox>
pankso@33 410 <hbox>
pankso@33 411 <text use-markup="true">
pankso@34 412 <label>"<b>Gateway :</b>"</label>
pankso@33 413 </text>
pankso@33 414 <entry>
pankso@33 415 <input>. /etc/network.conf; echo "$GATEWAY"</input>
pankso@33 416 <variable>GATEWAY</variable>
pankso@33 417 </entry>
pankso@33 418 </hbox>
pankso@33 419 <hbox>
pankso@33 420 <text use-markup="true">
pankso@34 421 <label>"<b>DNS server :</b>"</label>
pankso@33 422 </text>
pankso@33 423 <entry>
pankso@33 424 <input>. /etc/network.conf; echo "$DNS_SERVER"</input>
pankso@33 425 <variable>DNS_SERVER</variable>
pankso@33 426 </entry>
pankso@33 427 </hbox>
pankso@33 428 <hbox>
pankso@33 429 <button>
pankso@33 430 <label>Start</label>
pankso@33 431 <input file icon="forward"></input>
pankso@33 432 <action>ifconfig lo down</action>
pankso@33 433 <action>ifconfig $INTERFACE down</action>
pankso@33 434 <action>sed -i s/`cat /etc/network.conf | grep ^INTERFACE=`/INTERFACE=\"$INTERFACE\"/ /etc/network.conf</action>
pankso@33 435 <action>sed -i s/DHCP=\"yes\"/DHCP=\"no\"/ /etc/network.conf</action>
pankso@33 436 <action>sed -i s/STATIC=\"no\"/STATIC=\"yes\"/ /etc/network.conf</action>
pankso@33 437 <action>sed -i s/`cat /etc/network.conf | grep ^IP=`/IP=\"$IP\"/ /etc/network.conf</action>
pankso@33 438 <action>sed -i s/`cat /etc/network.conf | grep ^NETMASK=`/NETMASK=\"$NETMASK\"/ /etc/network.conf</action>
pankso@33 439 <action>sed -i s/`cat /etc/network.conf | grep ^GATEWAY=`/GATEWAY=\"$GATEWAY\"/ /etc/network.conf</action>
pankso@33 440 <action>sed -i s/`cat /etc/network.conf | grep ^DNS_SERVER=`/DNS_SERVER=\"$DNS_SERVER\"/ /etc/network.conf</action>
pankso@33 441 <action>/etc/init.d/network.sh</action>
pankso@33 442 </button>
pankso@33 443 <button>
pankso@33 444 <label>Stop</label>
pankso@33 445 <input file icon="stop"></input>
pankso@33 446 <action>echo -n "Stopping interface : $INTERFACE... "</action>
pankso@33 447 <action>ifconfig $INTERFACE down; echo "done"</action>
pankso@33 448 </button>
pankso@33 449 </hbox>
pascal@196 450 </frame>'
pascal@196 451 NET_BOX="$NET_BOX$tmp"
pascal@196 452 tmp='<frame Wireless>
pascal@226 453 <notebook labels="Interface|Extra parameters'
pascal@196 454 [ -d /lib/modules/`uname -r`/kernel/drivers/net/wireless ] && tmp="$tmp|Kernel Modules"
pascal@196 455 tmp2='">
pascal@196 456 <vbox>
pascal@196 457 <hbox>
pascal@196 458 <text use-markup="true">
pascal@196 459 <label>"<b>Interface :</b>"</label>
pascal@196 460 </text>
pascal@196 461 <entry>
pascal@196 462 <input>. /etc/network.conf; echo "$WIFI_INTERFACE"</input>
pascal@196 463 <variable>WIFI_INTERFACE</variable>
pascal@196 464 </entry>
pascal@196 465 <text use-markup="true">
pascal@226 466 <label>"<b>ESSID :</b>"</label>
pascal@196 467 </text>
pascal@225 468 <combobox>'
pascal@225 469 . /etc/network.conf
pascal@225 470 tmp2="$tmp2<item>$WIFI_ESSID</item>$ESSIDS"
pascal@225 471 tmp3='</combobox>
pascal@196 472 </hbox>
pascal@226 473 <hbox>
pascal@226 474 <text use-markup="true">
pascal@226 475 <label>"<b>Key :</b>"</label>
pascal@226 476 </text>
pascal@226 477 <entry>
pascal@226 478 <input>. /etc/network.conf; echo "$WIFI_KEY"</input>
pascal@226 479 <variable>WIFI_KEY</variable>
pascal@226 480 </entry>
pascal@226 481 <combobox>
pascal@226 482 <item>none</item>
pascal@226 483 <item>WEP</item>
pascal@226 484 <item>WPA</item>
pascal@226 485 <item>any</item>
pascal@226 486 <variable>WIFI_KEY_TYPE</variable>
pascal@226 487 </combobox>
pascal@226 488 </hbox>
pascal@196 489 </vbox>
pascal@196 490 <vbox>
pascal@196 491 <hbox>
pascal@196 492 <text use-markup="true">
pascal@196 493 <label>"<b>Channel :</b>"</label>
pascal@196 494 </text>
pascal@196 495 <entry>
pascal@196 496 <input>. /etc/network.conf; echo "$WIFI_CHANNEL"</input>
pascal@196 497 <variable>WIFI_CHANNEL</variable>
pascal@196 498 </entry>
pascal@196 499 <text use-markup="true">
pascal@196 500 <label>"<b>Mode :</b>"</label>
pascal@196 501 </text>
pascal@196 502 <combobox>
pascal@196 503 <variable>WIFI_MODE</variable>'
pascal@225 504 tmp2="$tmp2$tmp3<item>$WIFI_MODE</item>"
pascal@196 505 for i in managed ad-hoc master repeater secondary monitor; do
pascal@196 506 [ "$i" = "$WIFI_MODE" ] || tmp2="$tmp2<item>$i</item>"
pascal@196 507 done
pascal@196 508 tmp3='</combobox>
pascal@196 509 </hbox>
pascal@196 510 </vbox>'
pascal@196 511 tmp="$tmp$tmp2$tmp3"
pascal@196 512 tmp2='<vbox>
pascal@196 513 <hbox>
pascal@196 514 <button>
pascal@196 515 <label>Load</label>
pascal@196 516 <input file icon="forward"></input>
pascal@196 517 <action>modprobe $MODULE</action>
pascal@196 518 </button>
pascal@196 519 <button>
pascal@196 520 <label>Unload</label>
pascal@196 521 <input file icon="forward"></input>
pascal@196 522 <action>modprobe -r $MODULE</action>
pascal@196 523 </button>
pascal@196 524 <text use-markup="true">
pascal@196 525 <label>"<b>Wifi Module :</b>"</label>
pankso@197 526 </text>
pascal@196 527 <combobox>
pascal@196 528 <variable>MODULE</variable>'
pascal@196 529 tmp2="$tmp2$(find /lib/modules/$(uname -r)/kernel/drivers/net/wireless -type f | sed 's,/.*/\(.*\).ko.gz,<item>\1</item>,')"
pascal@196 530 tmp3='</combobox>
pascal@196 531 <button>
pascal@196 532 <label>Lsmod</label>
pascal@196 533 <input file icon="computer"></input>
pascal@196 534 <action>xterm -fa MiscFixed -fs 11 -bg gray93 -fg black -geometry 80x25 -title "Modules (q to quit)" -e "lsmod | less"</action>
pascal@196 535 </button>
pascal@226 536 </hbox>'
pascal@226 537 tmp2="$tmp2$tmp3"
pascal@226 538 tmp3=$(for i in /usr/bin/get*firmware; do [ -x $i ] || continue; [ -d /var/lib/tazpkg/installed/${i#/usr/bin/get-} ] && continue; echo "<item>${i#/usr/bin/get-}</item>"; done)
pascal@226 539 [ -n "$tmp3" ] && tmp3="
pascal@226 540 <hbox>
pascal@226 541 <text use-markup=\"true\">
pascal@226 542 <label>\"<b>Firmware :</b>\"</label>
pascal@226 543 </text>
pascal@226 544 <combobox><variable>FIRMWARE</variable>$tmp3</combobox>
pascal@226 545 <button>
pascal@226 546 <label>Install</label>
pascal@226 547 <input file icon=\"go-jump\"></input>
pascal@226 548 <action>xterm -fa MiscFixed -fs 11 -bg gray93 -fg black -geometry 80x25 -title \"Install \$FIRMWARE\" -e \"get-\$FIRMWARE\"</action>
pascal@226 549 </button>
pascal@196 550 </hbox>
pascal@226 551 "
pascal@226 552 tmp2="$tmp2$tmp3"
pascal@226 553 tmp3=""
pascal@226 554 [ -x /usr/sbin/ndiswrapper ] && tmp3='
pascal@196 555 <hbox>
pascal@196 556 <text use-markup="true">
pascal@226 557 <label>"<b>Ndiswrapper drivers :</b>"</label>
pascal@196 558 </text>
pascal@196 559 <entry>
pascal@196 560 <input>. /etc/network.conf; echo "$NDISWRAPPER_DRIVERS"</input>
pascal@196 561 <variable>NDISWRAPPER_DRIVERS</variable>
pascal@196 562 </entry>
pascal@196 563 <button>
pascal@196 564 <label>Restart</label>
pascal@196 565 <input file icon="reload"></input>
pascal@196 566 <action>rmmod ndiswrapper</action>
pascal@196 567 <action>for i in $NDISWRAPPER_DRIVERS; do ndiswrapper -i $i; done</action>
pascal@196 568 <action>modprobe ndiswrapper</action>
pascal@196 569 </button>
pascal@196 570 </hbox>
pascal@226 571 '
pascal@226 572 tmp3="$tmp3</vbox>"
pascal@226 573 [ -d /lib/modules/`uname -r`/kernel/drivers/net/wireless ] && tmp="$tmp$tmp2$tmp3"
pascal@196 574 tmp2='</notebook>
pascal@196 575 <hbox>
pascal@196 576 <button>
pascal@196 577 <label>Start</label>
pascal@196 578 <input file icon="forward"></input>
pascal@226 579 <action>[ "$WIFI_KEY_TYPE" = "WPA" -a ! -x /usr/bin/wpa_supplicant ] && xterm -fa MiscFixed -fs 11 -bg gray93 -fg black -geometry 80x17 -title "wpa_supplicant install" -e "tazpkg get-install wpa_supplicant ; echo -e "----\n\nENTER to continue..." && read close"</action>
pascal@196 580 <action>sed -i s/`cat /etc/network.conf | grep ^WIFI_INTERFACE=`/WIFI_INTERFACE=\"$WIFI_INTERFACE\"/ /etc/network.conf</action>
pascal@196 581 <action>sed -i s/`cat /etc/network.conf | grep ^WIFI_ESSID=`/WIFI_ESSID=\"$WIFI_ESSID\"/ /etc/network.conf</action>
pascal@196 582 <action>sed -i s/`cat /etc/network.conf | grep ^WIFI_KEY=`/WIFI_KEY=\"$WIFI_KEY\"/ /etc/network.conf</action>
pascal@226 583 <action>sed -i s/`cat /etc/network.conf | grep ^WIFI_KEY_TYPE=`/WIFI_KEY_TYPE=\"$WIFI_KEY_TYPE\"/ /etc/network.conf</action>
pascal@196 584 <action>sed -i s/`cat /etc/network.conf | grep ^WIFI_MODE=`/WIFI_MODE=\"$WIFI_MODE\"/ /etc/network.conf</action>
pascal@196 585 <action>sed -i s/`cat /etc/network.conf | grep ^WIFI_CHANNEL=`/WIFI_CHANNEL=\"$WIFI_CHANNEL\"/ /etc/network.conf</action>
pascal@196 586 <action>[ -s /var/run/udhcpc.$WIFI_INTERFACE.pid ] && kill `cat /var/run/udhcpc.$WIFI_INTERFACE.pid`</action>
pascal@196 587 <action>ifconfig $WIFI_INTERFACE down</action>
pascal@226 588 <action>iwconfig $WIFI_INTERFACE txpower on</action>
pascal@196 589 <action>/etc/init.d/network.sh</action>
pascal@196 590 </button>
pascal@196 591 <button>
pascal@196 592 <label>Stop</label>
pascal@196 593 <input file icon="stop"></input>
pascal@226 594 <action>[ -x /etc/init.d/wpa_supplicant ] && /etc/init.d/wpa_supplicant stop</action>
pascal@196 595 <action>ifconfig $WIFI_INTERFACE down</action>
pascal@226 596 <action>iwconfig $WIFI_INTERFACE txpower off</action>
pascal@196 597 <action>[ -s /var/run/udhcpc.$WIFI_INTERFACE.pid ] && kill `cat /var/run/udhcpc.$WIFI_INTERFACE.pid`</action>
pascal@196 598 </button>
pascal@196 599 </hbox>
pascal@196 600 </frame>'
pascal@196 601 [ -x /usr/sbin/iwconfig ] && NET_BOX="$NET_BOX$tmp$tmp2"
pascal@196 602 tmp='<frame Configuration files>
pankso@33 603 <hbox>
pankso@33 604 <text use-markup="true">
pankso@34 605 <label>"<b>Hosts :</b>"</label>
pankso@33 606 </text>
pankso@33 607 <entry editable="false">
pankso@33 608 <default>/etc/hosts</default>
pankso@33 609 <variable>HOSTS</variable>
pankso@33 610 </entry>
pankso@33 611 <button>
pankso@33 612 <input file icon="accessories-text-editor"></input>
pankso@33 613 <action type="lauch">leafpad $HOSTS</action>
pankso@33 614 </button>
pankso@33 615 </hbox>
pankso@33 616 <hbox>
pankso@33 617 <text use-markup="true">
pankso@34 618 <label>"<b>Host name :</b>"</label>
pankso@33 619 </text>
pankso@33 620 <entry editable="false">
pankso@33 621 <default>/etc/hostname</default>
pankso@33 622 <variable>HOSTNAME</variable>
pankso@33 623 </entry>
pankso@33 624 <button>
pankso@33 625 <input file icon="accessories-text-editor"></input>
pankso@33 626 <action type="lauch">leafpad $HOSTNAME</action>
pankso@33 627 </button>
pankso@33 628 </hbox>
pankso@33 629 <hbox>
pankso@33 630 <text use-markup="true">
pankso@34 631 <label>"<b>Network :</b>"</label>
pankso@33 632 </text>
pankso@33 633 <entry editable="false">
pankso@33 634 <default>/etc/network.conf</default>
pankso@33 635 <variable>CONFIG_FILE</variable>
pankso@33 636 </entry>
pankso@33 637 <button>
pankso@33 638 <input file icon="accessories-text-editor"></input>
pankso@33 639 <action type="lauch">leafpad $CONFIG_FILE</action>
pankso@33 640 </button>
pankso@33 641 </hbox>
pankso@33 642 <hbox>
pankso@33 643 <button>
pankso@33 644 <label>Restart</label>
pankso@33 645 <input file icon="reload"></input>
pankso@33 646 <action>echo -n "Stopping interface : $INTERFACE... "</action>
pankso@33 647 <action>ifconfig lo down</action>
pankso@33 648 <action>ifconfig $INTERFACE down</action>
pankso@33 649 <action>killall -q udhcpc; echo "done"</action>
pankso@33 650 <action>/etc/init.d/network.sh</action>
pankso@33 651 </button>
pankso@33 652 </hbox>
pankso@33 653 </frame>
pankso@194 654
pascal@177 655 <frame Virtual Private Network with PPP/SSH>
pascal@177 656 <hbox>
pascal@177 657 <text use-markup="true">
pascal@177 658 <label>"<b>Peer :</b>"</label>
pascal@177 659 </text>
pascal@177 660 <entry>
pascal@177 661 <variable>DROPBEAR_PEERVPN</variable>
pascal@177 662 <default>user@elsewhere</default>
pascal@177 663 </entry>
pascal@177 664 </hbox>
pascal@177 665 <hbox>
pascal@177 666 <text use-markup="true">
pascal@177 667 <label>"<b>Local IP :</b>"</label>
pascal@177 668 </text>
pascal@177 669 <entry>
pascal@177 670 <variable>DROPBEAR_LOCAL</variable>
pascal@177 671 <default>192.168.254.1</default>
pascal@177 672 </entry>
pascal@177 673 </hbox>
pascal@177 674 <hbox>
pascal@177 675 <text use-markup="true">
pascal@177 676 <label>"<b>Remote IP :</b>"</label>
pascal@177 677 </text>
pascal@177 678 <entry>
pascal@177 679 <variable>DROPBEAR_REMOTE</variable>
pascal@177 680 <default>192.168.254.2</default>
pascal@177 681 </entry>
pascal@177 682 </hbox>
pascal@177 683 <hbox>
pascal@177 684 <text use-markup="true">
pascal@177 685 <label>"<b>Route(s) :</b>"</label>
pascal@177 686 </text>
pascal@177 687 <entry>
pascal@177 688 <variable>DROPBEAR_ROUTE</variable>
pascal@177 689 <default>192.168.10.0/24 192.168.20.0/28</default>
pascal@177 690 </entry>
pascal@177 691 </hbox>
pascal@177 692 <hbox>
pascal@177 693 <button>
pascal@177 694 <input file icon="forward"></input>
pascal@177 695 <label>Connect</label>
pascal@177 696 <action>netbox call vpnssh $DROPBEAR_PEERVPN $DROPBEAR_LOCAL $DROPBEAR_REMOTE "$DROPBEAR_ROUTE" &</action>
pascal@177 697 </button>
pascal@177 698 <button>
pascal@177 699 <input file icon="stop"></input>
pascal@177 700 <label>Disconnect</label>
pascal@177 701 <action>netbox call killvpnssh</action>
pascal@177 702 </button>
pascal@177 703 <button>
pascal@177 704 <input file icon="go-up"></input>
pascal@177 705 <label>Send key</label>
pascal@177 706 <action>xterm -fa MiscFixed -fs 11 -bg gray93 -fg black -geometry 80x10 -title "dropbear help" -e "netbox call sendsshkey $DROPBEAR_PEERVPN; echo -e \"----\nENTER to continue...\" && read close"</action>
pascal@177 707 </button>
pascal@177 708 </hbox>
pascal@177 709 </frame>
pascal@126 710 <notebook labels="'
pascal@137 711 NET_BOX="$NET_BOX$tmp"
pascal@126 712 tmp=''
pascal@126 713 [ -x /usr/sbin/dropbear ] && NET_BOX="${NET_BOX}${tmp}SSH" && tmp='|'
pankso@194 714 [ -x /usr/sbin/inetd ] && NET_BOX="${NET_BOX}${tmp}INETD" && tmp='|'
pascal@215 715 [ -x /sbin/zcip ] && NET_BOX="${NET_BOX}${tmp}ZEROCONF" && tmp='|'
pankso@194 716 [ -x /usr/sbin/udhcpd ] && NET_BOX="${NET_BOX}${tmp}DHCP" && tmp='|'
pascal@126 717 [ -f /usr/share/boot/pxelinux.0.lzma -a -x /usr/bin/tftpd -a \
pascal@151 718 -x /usr/sbin/inetd -a -x /usr/sbin/udhcpd ] \
pascal@151 719 && NET_BOX="${NET_BOX}${tmp}PXE" && tmp='|'
pankso@194 720 [ -x /usr/sbin/dnsd ] && NET_BOX="${NET_BOX}${tmp}DNS" && tmp='|'
pankso@194 721 [ -x /usr/bin/rsync ] && NET_BOX="${NET_BOX}${tmp}RSYNC" && tmp='|'
pankso@194 722 [ -x /usr/sbin/lighttpd ] && NET_BOX="${NET_BOX}${tmp}HTTP" && tmp='|'
pankso@194 723 [ -x /usr/sbin/smbd ] && NET_BOX="${NET_BOX}${tmp}WINS" && tmp='|'
pankso@194 724 [ -x /usr/bin/x11vnc ] && NET_BOX="${NET_BOX}${tmp}VNC" && tmp='|'
pascal@126 725 . /etc/daemons.conf
pascal@126 726 set -- $DROPBEAR_OPTIONS
pascal@126 727 while [ -n "$2" ]; do
pascal@126 728 [ "$1" = "-b" ] && DROPBEAR_BANNER="$2" && break
pascal@126 729 shift
pascal@126 730 done
pascal@126 731 NET_BOX="${NET_BOX}\">"
pascal@126 732 tmp='<frame Dropbear>
pascal@126 733 <hbox>
pascal@126 734 <text use-markup="true">
pascal@126 735 <label>"<b>DROPBEAR_OPTIONS</b>"</label>
pascal@126 736 </text>
pascal@126 737 <entry editable="false">'
pascal@126 738 [ -n "$DROPBEAR_OPTIONS" ] && tmp="$tmp<default>$DROPBEAR_OPTIONS</default>"
pascal@126 739 tmp2='
pascal@126 740 <variable>DROPBEAR_OPTS</variable>
pascal@126 741 </entry>
pascal@126 742 <button>
pascal@126 743 <input file icon="help"></input>
pascal@126 744 <action>xterm -fa MiscFixed -fs 11 -bg gray93 -fg black -geometry 80x30 -title "dropbear help" -e "dropbear --help ; echo -e \"----\nENTER to continue...\" && read close"</action>
pascal@126 745 </button>
pascal@126 746 <button>
pascal@126 747 <input file icon="accessories-text-editor"></input>
pascal@126 748 <action type="lauch">leafpad /etc/daemons.conf</action>
pascal@126 749 </button>
pascal@126 750 </hbox>
pascal@126 751 <hbox>
pascal@126 752 <text use-markup="true">
pascal@126 753 <label>"<b>Banner :</b>"</label>
pascal@126 754 </text>
pascal@126 755 <entry editable="false">'
pascal@126 756 [ -n "$DROPBEAR_BANNER" ] && tmp="$tmp$tmp2<default>$DROPBEAR_BANNER</default>"
pascal@126 757 tmp2='
pascal@126 758 <variable>DROPBEAR_BANNER</variable>
pascal@126 759 </entry>
pascal@126 760 <button>
pascal@126 761 <input file icon="accessories-text-editor"></input>
pascal@126 762 <action type="lauch">leafpad $DROPBEAR_BANNER</action>
pascal@126 763 </button>
pascal@126 764 </hbox>
pascal@126 765 <hbox>
pascal@177 766 <text use-markup="true">
pascal@177 767 <label>"<b>Remote :</b>"</label>
pascal@177 768 </text>
pascal@177 769 <entry>
pascal@177 770 <variable>DROPBEAR_PEER</variable>
pascal@177 771 <default>user@elsewhere</default>
pascal@177 772 </entry>
pascal@177 773 <button>
pascal@177 774 <input file icon="utilities-terminal"></input>
pascal@177 775 <label>Connect</label>
pascal@177 776 <action>xterm -fa MiscFixed -fs 11 -bg black -fg white -geometry 80x25 -title "$DROPBEAR_PEER" -e "dbclient -i /etc/dropbear/dropbear_rsa_host_key $DROPBEAR_PEER ; echo -e \"----\nENTER to continue...\" && read close" &</action>
pascal@177 777 </button>
pascal@177 778 <button>
pascal@177 779 <input file icon="go-up"></input>
pascal@177 780 <label>Send key</label>
pascal@177 781 <action>xterm -fa MiscFixed -fs 11 -bg gray93 -fg black -geometry 80x10 -title "dropbear help" -e "netbox call sendsshkey $DROPBEAR_PEER; echo -e \"----\nENTER to continue...\" && read close"</action>
pascal@177 782 </button>
pascal@177 783 </hbox>
pascal@177 784 <hbox>
pascal@126 785 <button>
pascal@126 786 <label>Start</label>
pascal@126 787 <input file icon="forward"></input>
pascal@126 788 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)dropbear \?\(.*\)\"/RUN_DAEMONS=\"\1\2\"/" /etc/rcS.conf</action>
pascal@126 789 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)\"/RUN_DAEMONS=\"dropbear \1\"/" /etc/rcS.conf</action>
pascal@126 790 <action>/etc/init.d/dropbear start</action>
pascal@126 791 </button>
pascal@126 792 <button>
pascal@126 793 <label>Stop</label>
pascal@126 794 <input file icon="stop"></input>
pascal@126 795 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)dropbear \?\(.*\)\"/RUN_DAEMONS=\"\1\2\"/" /etc/rcS.conf</action>
pascal@126 796 <action>/etc/init.d/dropbear stop</action>
pascal@126 797 </button>
pascal@126 798 </hbox>
pascal@126 799 </frame>
pascal@126 800 '
pascal@126 801 [ -x /usr/sbin/dropbear ] && NET_BOX="${NET_BOX}${tmp}${tmp2}"
pascal@151 802 tmp='<frame Inetd>
pascal@126 803 <hbox>
pascal@126 804 <text use-markup="true">
pascal@151 805 <label>"<b>INETD_OPTIONS</b>"</label>
pascal@126 806 </text>
pascal@126 807 <entry editable="false">'
pascal@151 808 [ -n "$INETD_OPTS" ] && tmp="$tmp<default>$INETD_OPTS</default>"
pascal@126 809 tmp2='
pascal@151 810 <variable>INETD_OPTS</variable>
pascal@126 811 </entry>
pascal@126 812 <button>
pascal@126 813 <input file icon="help"></input>
pascal@151 814 <action>xterm -fa MiscFixed -fs 11 -bg gray93 -fg black -geometry 60x14 -title "inetd help" -e "inetd --help ; echo -e \"----\nENTER to continue...\" && read close"</action>
pascal@126 815 </button>
pascal@126 816 <button>
pascal@126 817 <input file icon="accessories-text-editor"></input>
pascal@126 818 <action type="lauch">leafpad /etc/daemons.conf</action>
pascal@126 819 </button>
pascal@126 820 </hbox>
pascal@126 821 <hbox>
pascal@126 822 <text use-markup="true">
pascal@151 823 <label>"<b>Configuration :</b>"</label>
pascal@126 824 </text>
pascal@151 825 <entry editable="false">
pascal@151 826 <default>/etc/inetd.conf</default>
pascal@151 827 <variable>INETD_CONF</variable>
pascal@126 828 </entry>
pascal@151 829 <button>
pascal@151 830 <input file icon="accessories-text-editor"></input>
pascal@151 831 <action type="lauch">leafpad $INETD_CONF</action>
pascal@151 832 </button>
pascal@126 833 </hbox>
pascal@126 834 <hbox>
pascal@151 835 '
pascal@151 836 tmp="$tmp$tmp2"
pascal@151 837 for i in $(grep bin /etc/inetd.conf | awk '{ print $6}'); do
pascal@151 838 i=$(basename $i)
pascal@151 839 tmp2="
pascal@151 840 <button>
pascal@151 841 <input file icon=\"help\"></input>
pascal@151 842 <label>$i</label>
pascal@151 843 <action>xterm -fa MiscFixed -fs 11 -bg gray93 -fg black -geometry 60x19 -title \"$i help\" -e \"$i --help ; echo -e \\\"----\nENTER to continue...\\\" && read close\"</action>
pascal@151 844 </button>
pascal@151 845 "
pascal@151 846 tmp="$tmp$tmp2"
pascal@151 847 done
pascal@151 848 tmp2='
pascal@126 849 <button>
pascal@126 850 <label>Start</label>
pascal@126 851 <input file icon="forward"></input>
pascal@151 852 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)inetd \?\(.*\)\"/RUN_DAEMONS=\"\1\2\"/" /etc/rcS.conf</action>
pascal@151 853 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)\"/RUN_DAEMONS=\"inetd \1\"/" /etc/rcS.conf</action>
pascal@151 854 <action>/etc/init.d/inetd start</action>
pascal@126 855 </button>
pascal@126 856 <button>
pascal@126 857 <label>Stop</label>
pascal@126 858 <input file icon="stop"></input>
pascal@151 859 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)inetd \?\(.*\)\"/RUN_DAEMONS=\"\1\2\"/" /etc/rcS.conf</action>
pascal@151 860 <action>/etc/init.d/inetd stop</action>
pascal@126 861 </button>
pascal@126 862 </hbox>
pascal@126 863 </frame>
pascal@126 864 '
pankso@194 865 [ -x /usr/sbin/inetd ] && NET_BOX="${NET_BOX}${tmp}${tmp2}"
pascal@215 866 if [ -x /sbin/zcip -a -z "$ZCIP_OPTS" ]; then
pascal@215 867 ZCIP_OPTS="eth0 /etc/zcip.script"
pascal@215 868 cat >> /etc/daemons.conf <<EOT
pascal@215 869 # ZeroConf options
pascal@215 870 ZCIP_OPTS="$ZCIP_OPTS"
pascal@215 871
pascal@215 872 EOT
pascal@215 873 fi
pascal@215 874 tmp='<frame Zcip>
pascal@215 875 <hbox>
pascal@215 876 <text use-markup="true">
pascal@215 877 <label>"<b>ZCIP_OPTIONS</b>"</label>
pascal@215 878 </text>
pascal@215 879 <entry editable="false">'
pascal@215 880 [ -n "$ZCIP_OPTS" ] && tmp="$tmp<default>$ZCIP_OPTS</default>"
pascal@215 881 tmp2='
pascal@215 882 <variable>CZIP_OPTS</variable>
pascal@215 883 </entry>
pascal@215 884 <button>
pascal@215 885 <input file icon="help"></input>
pascal@215 886 <action>xterm -fa MiscFixed -fs 11 -bg gray93 -fg black -geometry 60x14 -title "zcip help" -e "zcip --help ; echo -e \"----\nENTER to continue...\" && read close"</action>
pascal@215 887 </button>
pascal@215 888 <button>
pascal@215 889 <input file icon="accessories-text-editor"></input>
pascal@215 890 <action type="lauch">leafpad /etc/daemons.conf</action>
pascal@215 891 </button>
pascal@215 892 </hbox>
pascal@215 893 <hbox>
pascal@215 894 <text use-markup="true">
pascal@215 895 <label>"<b>Script :</b>"</label>
pascal@215 896 </text>
pascal@215 897 <entry editable="false">
pascal@215 898 <default>/etc/zcip.script</default>
pascal@215 899 <variable>CZIP_SCRIPT</variable>
pascal@215 900 </entry>
pascal@215 901 <button>
pascal@215 902 <input file icon="accessories-text-editor"></input>
pascal@215 903 <action type="lauch">leafpad $CZIP_SCRIPT</action>
pascal@215 904 </button>
pascal@215 905 </hbox>
pascal@215 906 <hbox>
pascal@215 907 <button>
pascal@215 908 <label>Start</label>
pascal@215 909 <input file icon="forward"></input>
pascal@215 910 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)zcip \?\(.*\)\"/RUN_DAEMONS=\"\1\2\"/" /etc/rcS.conf</action>
pascal@215 911 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)\"/RUN_DAEMONS=\"zcip \1\"/" /etc/rcS.conf</action>
pascal@215 912 <action>/etc/init.d/zcip start</action>
pascal@215 913 </button>
pascal@215 914 <button>
pascal@215 915 <label>Stop</label>
pascal@215 916 <input file icon="stop"></input>
pascal@215 917 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)zcip \?\(.*\)\"/RUN_DAEMONS=\"\1\2\"/" /etc/rcS.conf</action>
pascal@215 918 <action>/etc/init.d/zcip stop</action>
pascal@215 919 </button>
pascal@215 920 </hbox>
pascal@215 921 </frame>
pascal@215 922 '
pascal@215 923 [ -x /sbin/zcip ] && NET_BOX="${NET_BOX}$tmp$tmp2"
pascal@126 924 tmp='<frame Dhcpd>
pascal@126 925 <hbox>
pascal@126 926 <text use-markup="true">
pascal@155 927 <label>"<b>UDHCPD_OPTIONS</b>"</label>
pascal@155 928 </text>
pascal@155 929 <entry editable="false">'
pascal@155 930 [ -n "$UDHCPD_OPTS" ] && tmp="$tmp<default>$UDHCPD_OPTS</default>"
pascal@155 931 tmp2='
pascal@155 932 <variable>UDHCPD_OPTS</variable>
pascal@155 933 </entry>
pascal@155 934 <button>
pascal@155 935 <input file icon="help"></input>
pascal@155 936 <action>xterm -fa MiscFixed -fs 11 -bg gray93 -fg black -geometry 60x14 -title "udhcpd help" -e "udhcpd --help ; echo -e \"----\nENTER to continue...\" && read close"</action>
pascal@155 937 </button>
pascal@155 938 <button>
pascal@155 939 <input file icon="accessories-text-editor"></input>
pascal@155 940 <action type="lauch">leafpad /etc/daemons.conf</action>
pascal@155 941 </button>
pascal@155 942 </hbox>
pascal@155 943 <hbox>
pascal@155 944 <text use-markup="true">
pascal@126 945 <label>"<b>Configuration :</b>"</label>
pascal@126 946 </text>
pascal@126 947 <entry editable="false">
pascal@126 948 <default>/etc/udhcpd.conf</default>
pascal@126 949 <variable>UDHCPD_CONF</variable>
pascal@126 950 </entry>
pascal@126 951 <button>
pascal@126 952 <input file icon="accessories-text-editor"></input>
pascal@126 953 <action type="lauch">leafpad $UDHCPD_CONF</action>
pascal@126 954 </button>
pascal@126 955 </hbox>
pascal@126 956 <hbox>
pascal@215 957 <text use-markup="true">
pascal@215 958 <label>"<b>Script :</b>"</label>
pascal@215 959 </text>
pascal@215 960 <entry editable="false">
pascal@215 961 <default>/usr/share/udhcpc/default.script</default>
pascal@215 962 <variable>UDHCPD_SCRIPT</variable>
pascal@215 963 </entry>
pascal@215 964 <button>
pascal@215 965 <input file icon="accessories-text-editor"></input>
pascal@215 966 <action type="lauch">leafpad $UDHCPD_SCRIPT</action>
pascal@215 967 </button>
pascal@215 968 </hbox>
pascal@215 969 <hbox>
pascal@126 970 <button>
pascal@126 971 <label>Start</label>
pascal@126 972 <input file icon="forward"></input>
pascal@126 973 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)udhcpd \?\(.*\)\"/RUN_DAEMONS=\"\1\2\"/" /etc/rcS.conf</action>
pascal@126 974 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)\"/RUN_DAEMONS=\"udhcpd \1\"/" /etc/rcS.conf</action>
pascal@126 975 <action>/etc/init.d/udhcpd start</action>
pascal@126 976 </button>
pascal@126 977 <button>
pascal@126 978 <label>Stop</label>
pascal@126 979 <input file icon="stop"></input>
pascal@126 980 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)udhcpd \?\(.*\)\"/RUN_DAEMONS=\"\1\2\"/" /etc/rcS.conf</action>
pascal@126 981 <action>/etc/init.d/udhcpd stop</action>
pascal@126 982 </button>
pascal@126 983 </hbox>
pascal@126 984 </frame>
pascal@126 985 '
pankso@194 986 [ -x /usr/sbin/udhcpd ] && NET_BOX="${NET_BOX}$tmp$tmp2"
pascal@126 987 tmp='<frame Pxelinux>
pascal@126 988 <hbox>
pascal@126 989 <text wrap="true">
pascal@126 990 <label>
pascal@151 991 "Launch Dhcpd and Inetd with Tftpd to start the PXE service."
pascal@126 992 </label>
pascal@126 993 </text>
pascal@126 994 </hbox>
pascal@126 995 <hbox>
pascal@126 996 <text use-markup="true">
pascal@126 997 <label>"<b>Configuration :</b>"</label>
pascal@126 998 </text>
pascal@126 999 <entry editable="false">
pascal@152 1000 <default>'
pascal@152 1001 tmp="$tmp$(grep bin/tftpd /etc/inetd.conf | awk '{ print $NF }')"
pascal@152 1002 tmp2='/pxelinux.cfg/default</default>
pascal@126 1003 <variable>PXE_CONF</variable>
pascal@126 1004 </entry>
pascal@126 1005 <button>
pascal@126 1006 <input file icon="accessories-text-editor"></input>
pascal@152 1007 <action>dir=$(dirname $PXE_CONF); [ -d $dir ] || mkdir -p $dir</action>
pascal@152 1008 <action>lzma d /usr/share/boot/pxelinux.0.lzma $(dirname $PXE_CONF)/../pxelinux.0</action>
pascal@154 1009 <action>grep -q "^boot_file" $UDHCPD_CONF || echo "boot_file pxelinux.0" >> $UDHCPD_CONF</action>
pascal@164 1010 <action>grep -q "^siaddr" $UDHCPD_CONF || echo "siaddr $(ifconfig $INTERFACE | grep inet.ad | cut -d: -f2 | cut -d\ -f1)" >> $UDHCPD_CONF</action>
pascal@164 1011 <action>[ -f $PXE_CONF ] || echo -e "label linux\n\tkernel bzImage\n\tappend initrd=rootfs.gz rw root=/dev/null vga=normal" > $PXE_CONF</action>
pascal@152 1012 <action type="lauch">leafpad $PXE_CONF</action>
pascal@126 1013 </button>
pascal@126 1014 </hbox>
pascal@169 1015 <hbox>
pascal@169 1016 <button>
pascal@169 1017 <input file icon="system-file-manager"></input>
pascal@169 1018 <label>Network boot files</label>
pascal@169 1019 <action>xterm -fa MiscFixed -fs 11 -bg gray93 -fg black -geometry 100x25 -title "Network boot files (q to quit)" -e "find $(dirname $(dirname $PXE_CONF)) -exec ls -ld {} \; | less"</action>
pascal@169 1020 </button>
pascal@169 1021 </hbox>
pascal@126 1022 </frame>
pascal@126 1023 '
pascal@127 1024 [ -f /usr/share/boot/pxelinux.0.lzma -a -x /usr/bin/tftpd -a \
pascal@152 1025 -x /usr/sbin/inetd -a -x /usr/sbin/udhcpd ] && NET_BOX="$NET_BOX$tmp$tmp2"
pascal@126 1026 tmp='<frame Dnsd>
pascal@126 1027 <hbox>
pascal@126 1028 <text use-markup="true">
pascal@126 1029 <label>"<b>DNSD_OPTIONS</b>"</label>
pascal@126 1030 </text>
pascal@126 1031 <entry editable="false">'
pascal@126 1032 [ -n "$DNSD_OPTIONS" ] && tmp="$tmp<default>$DNSD_OPTIONS</default>"
pascal@126 1033 tmp2='
pascal@126 1034 <variable>DNSD_OPTS</variable>
pascal@126 1035 </entry>
pascal@126 1036 <button>
pascal@126 1037 <input file icon="help"></input>
pascal@126 1038 <action>xterm -fa MiscFixed -fs 11 -bg gray93 -fg black -geometry 80x15 -title "dnsd help" -e "dnsd --help ; echo -e \"----\nENTER to continue...\" && read close"</action>
pascal@126 1039 </button>
pascal@126 1040 <button>
pascal@126 1041 <input file icon="accessories-text-editor"></input>
pascal@126 1042 <action type="lauch">leafpad /etc/daemons.conf</action>
pascal@126 1043 </button>
pascal@126 1044 </hbox>
pascal@126 1045 <hbox>
pascal@126 1046 <text use-markup="true">
pascal@126 1047 <label>"<b>Configuration :</b>"</label>
pascal@126 1048 </text>
pascal@126 1049 <entry editable="false">
pascal@126 1050 <default>/etc/dnsd.conf</default>
pascal@126 1051 <variable>DNSD_CONF</variable>
pascal@126 1052 </entry>
pascal@126 1053 <button>
pascal@126 1054 <input file icon="accessories-text-editor"></input>
pascal@126 1055 <action type="lauch">leafpad $DNSD_CONF</action>
pascal@126 1056 </button>
pascal@126 1057 </hbox>
pascal@126 1058 <hbox>
pascal@126 1059 <button>
pascal@126 1060 <label>Start</label>
pascal@126 1061 <input file icon="forward"></input>
pascal@126 1062 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)dnsd \?\(.*\)\"/RUN_DAEMONS=\"\1\2\"/" /etc/rcS.conf</action>
pascal@126 1063 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)\"/RUN_DAEMONS=\"dnsd \1\"/" /etc/rcS.conf</action>
pascal@126 1064 <action>/etc/init.d/dnsd start</action>
pascal@126 1065 </button>
pascal@126 1066 <button>
pascal@126 1067 <label>Stop</label>
pascal@126 1068 <input file icon="stop"></input>
pascal@126 1069 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)dnsd \?\(.*\)\"/RUN_DAEMONS=\"\1\2\"/" /etc/rcS.conf</action>
pascal@126 1070 <action>/etc/init.d/dnsd stop</action>
pascal@126 1071 </button>
pascal@126 1072 </hbox>
pascal@126 1073 </frame>
pascal@126 1074 '
pankso@194 1075 [ -x /usr/sbin/dnsd ] && NET_BOX="${NET_BOX}${tmp}${tmp2}"
pascal@126 1076 tmp='<frame Rsync>
pascal@126 1077 <hbox>
pascal@126 1078 <text use-markup="true">
pascal@126 1079 <label>"<b>RSYNCD_OPTIONS</b>"</label>
pascal@126 1080 </text>
pascal@126 1081 <entry editable="false">'
pascal@126 1082 [ -n "${RSYNCD_OPTIONS#* }" ] && tmp="$tmp<default>${RSYNCD_OPTIONS#* }</default>"
pascal@126 1083 tmp2='
pascal@126 1084 <variable>RSYNC_OPTS</variable>
pascal@126 1085 </entry>
pascal@126 1086 <button>
pascal@126 1087 <input file icon="help"></input>
pascal@137 1088 <action>xterm -fa MiscFixed -fs 11 -bg gray93 -fg black -geometry 80x31 -title "rsync daemon help" -e "rsync --daemon --help ; echo -e \"----\nENTER to continue...\" && read close"</action>
pascal@126 1089 </button>
pascal@126 1090 <button>
pascal@126 1091 <input file icon="accessories-text-editor"></input>
pascal@126 1092 <action type="lauch">leafpad /etc/daemons.conf</action>
pascal@126 1093 </button>
pascal@126 1094 </hbox>
pascal@126 1095 <hbox>
pascal@126 1096 <text use-markup="true">
pascal@126 1097 <label>"<b>Configuration :</b>"</label>
pascal@126 1098 </text>
pascal@126 1099 <entry editable="false">
pascal@126 1100 <default>/etc/rsyncd.conf</default>
pascal@126 1101 <variable>RSYNCD_CONF</variable>
pascal@126 1102 </entry>
pascal@126 1103 <button>
pascal@126 1104 <input file icon="accessories-text-editor"></input>
pascal@126 1105 <action type="lauch">leafpad $RSYNCD_CONF</action>
pascal@126 1106 </button>
pascal@126 1107 </hbox>
pascal@126 1108 <hbox>
pascal@126 1109 <text use-markup="true">
pascal@126 1110 <label>"<b>Secrets file :</b>"</label>
pascal@126 1111 </text>
pascal@126 1112 <entry editable="true">
pascal@126 1113 <default>/etc/rsyncd.secrets</default>
pascal@126 1114 <variable>RSYNCD_SECRETS</variable>
pascal@126 1115 </entry>
pascal@126 1116 <button>
pascal@126 1117 <input file icon="accessories-text-editor"></input>
pascal@126 1118 <action type="lauch">leafpad $RSYNCD_SECRETS</action>
pascal@126 1119 </button>
pascal@126 1120 </hbox>
pascal@126 1121 <hbox>
pascal@126 1122 <button>
pascal@126 1123 <label>Start</label>
pascal@126 1124 <input file icon="forward"></input>
pascal@126 1125 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)rsyncd \?\(.*\)\"/RUN_DAEMONS=\"\1\2\"/" /etc/rcS.conf</action>
pascal@126 1126 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)\"/RUN_DAEMONS=\"rsyncd \1\"/" /etc/rcS.conf</action>
pascal@126 1127 <action>/etc/init.d/rsyncd start</action>
pascal@126 1128 </button>
pascal@126 1129 <button>
pascal@126 1130 <label>Stop</label>
pascal@126 1131 <input file icon="stop"></input>
pascal@126 1132 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)rsyncd \?\(.*\)\"/RUN_DAEMONS=\"\1\2\"/" /etc/rcS.conf</action>
pascal@126 1133 <action>/etc/init.d/rsyncd stop</action>
pascal@126 1134 </button>
pascal@126 1135 </hbox>
pascal@126 1136 </frame>
pascal@126 1137 '
pankso@194 1138 [ -x /usr/bin/rsync ] && NET_BOX="${NET_BOX}${tmp}${tmp2}"
pascal@168 1139 tmp='<frame Lighttpd>'
pascal@168 1140 tmp2='<frame PHP>
pascal@168 1141 <hbox>
pascal@168 1142 <text use-markup="true">
pascal@168 1143 <label>"<b>Configuration :</b>"</label>
pascal@168 1144 </text>
pascal@168 1145 <entry editable="false">
pascal@168 1146 <default>/etc/php.ini</default>
pascal@168 1147 <variable>PHP_CONF</variable>
pascal@168 1148 </entry>
pascal@168 1149 <button>
pascal@168 1150 <input file icon="accessories-text-editor"></input>
pascal@168 1151 <action type="lauch">leafpad $PHP_CONF</action>
pascal@168 1152 </button>
pascal@168 1153 </hbox>
pascal@168 1154 </frame>
pascal@168 1155 '
pankso@194 1156 [ -f /etc/php.ini ] && tmp="${tmp}${tmp2}"
pascal@168 1157 tmp2='<hbox>
pascal@126 1158 <text use-markup="true">
pascal@126 1159 <label>"<b>Configuration :</b>"</label>
pascal@126 1160 </text>
pascal@126 1161 <entry editable="false">
pascal@126 1162 <default>/etc/lighttpd/lighttpd.conf</default>
pascal@126 1163 <variable>LIGHTTPD_CONF</variable>
pascal@126 1164 </entry>
pascal@126 1165 <button>
pascal@126 1166 <input file icon="accessories-text-editor"></input>
pascal@126 1167 <action type="lauch">leafpad $LIGHTTPD_CONF</action>
pascal@126 1168 </button>
pascal@126 1169 </hbox>
pascal@126 1170 <hbox>
pascal@126 1171 <button>
pascal@126 1172 <label>Start</label>
pascal@126 1173 <input file icon="forward"></input>
pascal@126 1174 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)lighttpd \?\(.*\)\"/RUN_DAEMONS=\"\1\2\"/" /etc/rcS.conf</action>
pascal@126 1175 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)\"/RUN_DAEMONS=\"lighttpd \1\"/" /etc/rcS.conf</action>
pascal@126 1176 <action>/etc/init.d/lighttpd start</action>
pascal@126 1177 </button>
pascal@126 1178 <button>
pascal@126 1179 <label>Stop</label>
pascal@126 1180 <input file icon="stop"></input>
pascal@126 1181 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)lighttpd \?\(.*\)\"/RUN_DAEMONS=\"\1\2\"/" /etc/rcS.conf</action>
pascal@126 1182 <action>/etc/init.d/lighttpd stop</action>
pascal@126 1183 </button>
pascal@126 1184 </hbox>
pascal@126 1185 </frame>
pascal@126 1186 '
pankso@194 1187 [ -x /usr/sbin/lighttpd ] && NET_BOX="${NET_BOX}${tmp}${tmp2}"
pascal@137 1188 tmp='<frame Samba: smbd & nmbd>
pascal@137 1189 <hbox>
pascal@137 1190 <text use-markup="true">
pascal@137 1191 <label>"<b>Configuration :</b>"</label>
pascal@137 1192 </text>
pascal@137 1193 <entry editable="false">
pascal@137 1194 <default>/etc/samba/smb.conf</default>
pascal@137 1195 <variable>SMBD_CONF</variable>
pascal@137 1196 </entry>
pascal@137 1197 <button>
pascal@137 1198 <input file icon="accessories-text-editor"></input>
pascal@137 1199 <action type="lauch">leafpad $SMBD_CONF</action>
pascal@137 1200 </button>
pascal@137 1201 </hbox>
pascal@137 1202 <hbox>
pascal@137 1203 <button>
pascal@137 1204 <label>Reload</label>
pascal@137 1205 <input file icon="reload"></input>
pascal@137 1206 <action>/etc/init.d/samba reload</action>
pascal@137 1207 </button>
pascal@137 1208 <button>
pascal@137 1209 <label>Start</label>
pascal@137 1210 <input file icon="forward"></input>
pascal@137 1211 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)samba \?\(.*\)\"/RUN_DAEMONS=\"\1\2\"/" /etc/rcS.conf</action>
pascal@137 1212 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)\"/RUN_DAEMONS=\"samba \1\"/" /etc/rcS.conf</action>
pascal@163 1213 <action>/etc/init.d/samba start</action>
pascal@137 1214 </button>
pascal@137 1215 <button>
pascal@137 1216 <label>Stop</label>
pascal@137 1217 <input file icon="stop"></input>
pascal@137 1218 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)samba \?\(.*\)\"/RUN_DAEMONS=\"\1\2\"/" /etc/rcS.conf</action>
pascal@163 1219 <action>/etc/init.d/samba stop</action>
pascal@137 1220 </button>
pascal@137 1221 </hbox>
pascal@137 1222 </frame>
pascal@137 1223 '
pascal@137 1224 [ -x /usr/sbin/smbd ] && NET_BOX="${NET_BOX}${tmp}"
pascal@163 1225 tmp='<frame x11vnc>
pascal@163 1226 <hbox>
pascal@163 1227 <text use-markup="true">
pascal@163 1228 <label>"<b>X11VNC_OPTIONS</b>"</label>
pascal@163 1229 </text>
pascal@163 1230 <entry editable="false">'
pascal@163 1231 [ -n "$X11VNC_OPTIONS" ] && tmp="$tmp<default>$X11VNC_OPTIONS</default>"
pascal@163 1232 tmp2='
pascal@163 1233 <variable>X11VNC_OPTS</variable>
pascal@163 1234 </entry>
pascal@163 1235 <button>
pascal@163 1236 <input file icon="help"></input>
pascal@163 1237 <action>xterm -fa MiscFixed -fs 11 -bg gray93 -fg black -geometry 80x30 -title "x11vnc daemon help (q to quit)" -e "x11vnc --help | less"</action>
pascal@163 1238 </button>
pascal@163 1239 <button>
pascal@163 1240 <input file icon="accessories-text-editor"></input>
pascal@163 1241 <action type="lauch">leafpad /etc/daemons.conf</action>
pascal@163 1242 </button>
pascal@163 1243 </hbox>
pascal@163 1244 <hbox>
pascal@163 1245 <text use-markup="true">
pascal@163 1246 <label>"<b>New password</b>"</label>
pascal@163 1247 </text>
pascal@163 1248 <entry>
pascal@163 1249 <variable>X11VNC_PASSWD</variable>
pascal@163 1250 </entry>
pascal@163 1251 <button>
pascal@163 1252 <input file icon="reload"></input>
pascal@163 1253 <label>Update</label>
pascal@163 1254 <action>x11vnc -storepasswd $X11VNC_PASSWD /etc/vnc.secret</action>
pascal@163 1255 </button>
pascal@163 1256 </hbox>
pascal@163 1257 <hbox>
pascal@163 1258 <button>
pascal@163 1259 <label>Start</label>
pascal@163 1260 <input file icon="forward"></input>
pascal@163 1261 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)x11vnc \?\(.*\)\"/RUN_DAEMONS=\"\1\2\"/" /etc/rcS.conf</action>
pascal@163 1262 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)\"/RUN_DAEMONS=\"x11vnc \1\"/" /etc/rcS.conf</action>
pascal@163 1263 <action>/etc/init.d/x11vnc start</action>
pascal@163 1264 </button>
pascal@163 1265 <button>
pascal@163 1266 <label>Stop</label>
pascal@163 1267 <input file icon="stop"></input>
pascal@163 1268 <action>sed -i "s/RUN_DAEMONS=\"\(.*\)x11vnc \?\(.*\)\"/RUN_DAEMONS=\"\1\2\"/" /etc/rcS.conf</action>
pascal@163 1269 <action>/etc/init.d/x11vnc stop</action>
pascal@163 1270 </button>
pascal@163 1271 </hbox>
pascal@163 1272 </frame>
pascal@163 1273 '
pascal@163 1274 [ -x /usr/bin/x11vnc ] && NET_BOX="${NET_BOX}${tmp}${tmp2}"
pascal@137 1275 NET_BOX="${NET_BOX}
pascal@137 1276 </notebook>
pascal@137 1277 "
pascal@137 1278 tmp='<frame Iptables>
pascal@137 1279 <hbox>
pascal@137 1280 <text use-markup="true">
pascal@137 1281 <label>"<b>Configuration :</b>"</label>
pascal@137 1282 </text>
pascal@137 1283 <entry editable="false">
pascal@137 1284 <default>/etc/iptables.conf</default>
pascal@137 1285 <variable>IPTABLES_CONF</variable>
pascal@137 1286 </entry>
pascal@137 1287 <button>
pascal@137 1288 <input file icon="accessories-text-editor"></input>
pascal@137 1289 <action type="lauch">leafpad $IPTABLES_CONF</action>
pascal@137 1290 </button>
pascal@137 1291 </hbox>
pascal@137 1292 <hbox>
pascal@137 1293 <button>
pascal@137 1294 <label>Load</label>
pascal@137 1295 <input file icon="reload"></input>
pascal@181 1296 <action>cat $IPTABLES_CONF | /sbin/iptables-restore</action>
pascal@137 1297 </button>
pascal@137 1298 <button>
pascal@137 1299 <label>Save</label>
pascal@137 1300 <input file icon="go-jump"></input>
pascal@180 1301 <action>/sbin/iptables-save > $IPTABLES_CONF</action>
pascal@137 1302 </button>
pascal@137 1303 </hbox>
pascal@137 1304 </frame>
pascal@137 1305 '
pascal@137 1306 [ -x /sbin/iptables ] && NET_BOX="$NET_BOX${tmp}"
pascal@126 1307 tmp='
pascal@141 1308 <frame Ether-wake>
pascal@141 1309 <hbox>
pascal@141 1310 <text use-markup="true">
pascal@151 1311 <label>"<b>Machines :</b>"</label>
pascal@151 1312 </text>
pascal@151 1313 <entry editable="false">
pascal@151 1314 <default>/etc/ethers</default>
pascal@151 1315 <variable>ETHERS</variable>
pascal@151 1316 </entry>
pascal@151 1317 <button>
pascal@151 1318 <input file icon="accessories-text-editor"></input>
pascal@151 1319 <action>[ -s $ETHERS ] || echo "#00:01:02:03:04:05 mystation" >$ETHERS</action>
pascal@151 1320 <action type="lauch">leafpad $ETHERS</action>
pascal@151 1321 </button>
pascal@151 1322 </hbox>
pascal@151 1323 <hbox>
pascal@151 1324 <text use-markup="true">
pascal@141 1325 <label>"<b>Options : </b>"</label>
pascal@141 1326 </text>
pascal@141 1327 <entry editable="false">
pascal@141 1328 <variable>ETHERWAKE_OPTS</variable>
pascal@141 1329 </entry>
pascal@141 1330 <button>
pascal@141 1331 <input file icon="help"></input>
pascal@141 1332 <action>xterm -fa MiscFixed -fs 11 -bg gray93 -fg black -geometry 80x15 -title "dnsd help" -e "ether-wake --help ; echo -e \"----\nENTER to continue...\" && read close"</action>
pascal@141 1333 </button>
pascal@141 1334 <button>
pascal@141 1335 <label>Start</label>
pascal@141 1336 <input file icon="forward"></input>
pascal@141 1337 <action>ether-wake $ETHERWAKE_OPTS</action>
pascal@141 1338 </button>
pascal@141 1339 </hbox>
pascal@141 1340 </frame>
pascal@126 1341 </notebook>
pankso@33 1342
pankso@33 1343 <hbox>
pankso@33 1344 <button>
pankso@33 1345 <label>Status</label>
pankso@194 1346 <input file icon="dialog-information"></input>
pankso@33 1347 <action type="launch">IFCONFIG</action>
pankso@33 1348 </button>
pankso@194 1349 <button help>
pankso@194 1350 <label>Help</label>
pankso@194 1351 <action type="launch">HELP</action>
pankso@194 1352 </button>
pankso@33 1353 <button>
pankso@185 1354 <label>Quit</label>
pankso@33 1355 <input file icon="exit"></input>
pankso@33 1356 <action type="exit">Exit</action>
pankso@33 1357 </button>
pankso@33 1358 </hbox>
pankso@194 1359
pankso@33 1360 </vbox>
pankso@38 1361 </window>
pankso@33 1362 '
pankso@194 1363 NET_BOX="${NET_BOX}${tmp}"
pascal@126 1364
pascal@126 1365 export NET_BOX
pascal@126 1366
pascal@163 1367 # TODO: Modules(Network kernel modules) VPN(OpenVPN)
pankso@33 1368
pankso@33 1369 # Only root can configure network.
pankso@33 1370 check_root
pascal@177 1371 # Configure and connect if button Connect was pressed.
pascal@177 1372 if ! grep -qs ^name /etc/ppp/options ; then
pascal@177 1373 # Generate /etc/ppp/options
pascal@177 1374 cat > /etc/ppp/options << _EOT_
pascal@177 1375 plugin rp-pppoe.so
pascal@177 1376 name provider-ID
pascal@177 1377 noipdefault
pascal@177 1378 defaultroute
pascal@177 1379 mtu 1492
pascal@177 1380 mru 1492
pascal@177 1381 lock
pascal@177 1382 _EOT_
pascal@177 1383 # Generate /etc/ppp/pap-secrets
pascal@177 1384 cat > /etc/ppp/pap-secrets << _EOT_
pascal@177 1385 # Secrets for authentication using PAP
pascal@177 1386 # client server secret IP addresses
pascal@177 1387 _EOT_
pascal@177 1388 # Generate /etc/ppp/chap-secrets
pascal@177 1389 cat > /etc/ppp/chap-secrets << _EOT_
pascal@177 1390 # Secrets for authentication using CHAP
pascal@177 1391 # client server secret IP addresses
pascal@177 1392 _EOT_
pascal@177 1393 fi
pankso@97 1394 gtkdialog --center --program=NET_BOX
pankso@33 1395
pankso@33 1396 exit 0