setupStaticIP() { ifconfig "$INTERFACE" | grep ' UP ' >> $DEBUG_OUTPUT 2>&1 if [ ! $? -eq 0 ];then # wired interface (wireless will be up by now) cleanUpInterface "$INTERFACE" #ifconfig "$INTERFACE" up fi BROADCAST=$(ipcalc -b "$IP_ADDRESS" "$NETMASK" | cut -d= -f2) #ifconfig "$INTERFACE" down CONVO="ifconfig $INTERFACE $IP_ADDRESS netmask $NETMASK broadcast $BROADCAST" CONVG="route add -net default gw $GATEWAY" #dev $INTERFACE" # Dougal: add a cleanup, just in case #cleanUpInterface "$INTERFACE" >> $DEBUG_OUTPUT 2>&1 # do the work # Dougal: add getting error message ERROR=$(ifconfig "$INTERFACE" "$IP_ADDRESS" netmask "$NETMASK" broadcast "$BROADCAST" 2>&1) #up if [ $? -eq 0 ];then MODECOMMANDS="STATIC_IP='yes'\nIP_ADDRESS='$IP_ADDRESS'\nNETMASK='$NETMASK'" # Configure a nameserver, if we're supposed to. # This now replaces any existing resolv.conf, which # we will try to back up. if [ "$DNS_SERVER1" != "0.0.0.0" ] ; then # remove old backups rm /etc/resolv.conf.[0-9][0-9]* 2>/dev/null # backup previous one mv -f /etc/resolv.conf /etc/resolv.conf.old echo "nameserver $DNS_SERVER1" > /etc/resolv.conf if [ "$DNS_SERVER2" != "0.0.0.0" ] ; then echo "nameserver $DNS_SERVER2" >> /etc/resolv.conf fi fi MODECOMMANDS="$MODECOMMANDS\nDNS_SERVER1='$DNS_SERVER1'" MODECOMMANDS="$MODECOMMANDS\nDNS_SERVER2='$DNS_SERVER2'" # add default route, if we're supposed to if [ "$GATEWAY" ] ; then # Dougal: add getting error message ERROR=$(route add -net default gw "$GATEWAY" 2>&1) if [ $? -eq 0 ];then #0=ok. Xdialog --center --title "$L_TITLE_Netwiz_Static_IP" --msgbox "$(eval echo $L_MESSAGE_Route_Set)" 0 0 MODECOMMANDS="${MODECOMMANDS}\nGATEWAY='$GATEWAY'" else giveErrorDialog "$L_MESSAGE_Route_Failed_p1 $GATEWAY. $L_MESSAGE_Route_Failed_p2 $CONVG $L_MESSAGE_Route_Failed_p3 $ERROR " ifconfig "$INTERFACE" down return 1 fi fi return 0 else giveErrorDialog "$L_MESSAGE_Ifconfig_Failed_p1 $CONVO $L_MESSAGE_Ifconfig_Failed_p2 $ERROR $L_MESSAGE_Ifconfig_Failed_p3" ifconfig "$INTERFACE" down MODECOMMANDS="" return 1 fi } #end of setupStaticIP