- add interface status information
- remove 'enabled' parameter
This commit is contained in:
Stanislav Ievlev 2007-05-31 15:51:53 +04:00
parent 939c4c6e8f
commit 80724bf28c
10 changed files with 170 additions and 108 deletions

@ -2,7 +2,7 @@
Name: alterator-net-eth
Version: 0.7
Release: alt3
Release: alt5
Packager: Stanislav Ievlev <inger@altlinux.org>
@ -42,23 +42,21 @@ alterator module for tcp/ip connections configuration
%makeinstall HTMLROOT=%buildroot%_var/www/
%find_lang %name
%post
%update_menus
%postun
%clean_menus
%files -f %name.lang
%_sysconfdir/alterator/profile.d/*
%_bindir/*
%_altdata_dir/maps/*
%_altdata_dir/ui/*/
%_var/www/html/*
%_desktopdir/*
%_alterator_backend3dir/*
%changelog
* Thu May 31 2007 Stanislav Ievlev <inger@altlinux.org> 0.7-alt5
- add interface status information
- remove 'enabled' parameter
* Thu May 31 2007 Stanislav Ievlev <inger@altlinux.org> 0.7-alt4
- rebuild with latest standalone
- add interface status information
* Thu May 10 2007 Stanislav Ievlev <inger@altlinux.org> 0.7-alt3
- fix information about non-configured devices

@ -3,14 +3,13 @@ DESCRIPTION="IP interfaces"
INSTALL=/usr/bin/install
all: build-profile build-tools
clean: clean-po clean-profile
install: install-backend install-ui install-po install-profile install-tools install-html
all: build-tools
clean: clean-po
install: install-backend install-ui install-po install-tools install-html
include /usr/share/alterator/build/po.mak
include /usr/share/alterator/build/ui2.mak
include /usr/share/alterator/build/backend.mak
include /usr/share/alterator/build/standalone.mak
include /usr/share/alterator/build/fbi.mak
include /usr/share/alterator/build/html-messages.mak

@ -61,22 +61,18 @@ update_iftab()
list_mask()
{
echo '('
for i in `seq 32 -1 0`; do
printf '("%s" label "/%s (%s)")' "$i" "$i" "$(maskname "$i")"
done
echo ')'
}
list_iface()
{
echo '('
/sbin/ip -o a l|
sed -ne 's|^[0-9]\+: \([^:]\+\): [^/]* link/ether .*|\1|p'|
while read iface; do
printf '("%s" label "%s (%s)")' "$iface" "$iface" "$(ifaceinfo "$iface")"
done
echo ')'
}
restart_iface()
@ -92,10 +88,34 @@ restart_all_ifaces() {
done >&2
}
is_up_iface()
{
/sbin/ip -o link show dev "$1" 2>/dev/null |cut -d' ' -f3 |grep -qs -- '[<,]UP[,>]'
}
is_plug_iface()
{
/usr/sbin/ifplugstatus "$1" >/dev/null 2>/dev/null
echo "$?"
}
read_iface()
{
local name="$1" && shift
echo "("
#collect general information
local info=
is_up_iface "$name" && info="`_ "interface is up"`" || info="`_ "interface is down"`"
[ -d "/sys/class/net/$name/wireless" ] ||
case "$(is_plug_iface "$name")" in
2) info="$info, `_ "plugged"`" ;;
3) info="$info, `_ "unplugged"`" ;;
esac
printf 'info "%s"' "$info"
printf 'wireless %s' "$([ -d "/sys/class/net/$name/wireless" ] && echo "#t" || echo "#f")"
@ -116,8 +136,7 @@ read_iface()
$(grep '^default' "/etc/net/ifaces/$name/ipv4route" | sed -r 's,default[[:space:]]+via[[:space:]],,' || echo "")
([ -d "/etc/net/ifaces/$name" ] && eval $("$ifdumptool" "$name")
[ "$BOOTPROTO" = "dhcp" ] && echo "dhcp #t" || echo "dhcp #f"
is_yes "$DISABLED" && echo "state #f" || echo "state #t")
[ "$BOOTPROTO" = "dhcp" ] && echo "dhcp #t" || echo "dhcp #f")
echo ")"
}
@ -141,10 +160,6 @@ write_iface()
shell_add_or_subst "BOOTPROTO=" \
$([ "$in_dhcp" = "#t" ] && echo "dhcp" || echo "static")\
"$options"
[ -n "$in_state" ] &&
shell_add_or_subst "DISABLED=" \
$([ "$in_state" = "#t" ] && echo "no" || echo "yes") \
"$options"
}
_()
@ -163,8 +178,7 @@ on_message()
case "$in_action" in
constraints)
echo '('
printf 'state (exclude (#f ip) exclude (#f default) exclude (#f mask) exclude (#f dhcp) default #f label "%s")' \
"`_ "Interface is enabled"`"
printf 'info (label "%s")' "`_ "Interface state"`"
printf 'dhcp (exclude (#t ip) exclude (#t default) exclude (#t mask) default #f label "%s")' \
"`_ "Use DHCP"`"
printf 'ip (required #t ipv4-address #t label "%s")' \
@ -176,11 +190,13 @@ on_message()
echo ')'
;;
list)
echo '('
if [ "$in__objects" == "/" ];then
list_iface
else
list_mask
fi
echo ')'
;;
read)
if [ "$in__objects" == "/" ];then

@ -20,42 +20,36 @@
</form>
<hr/>
<form method="POST" class="selector-data">
<span class="alterator-label" name="info"/>
<br/>
<br/>
<table>
<div class="selector-name">
</div>
<tbody>
<tr>
<td colspan="2">
<a href="/net-wifi/" class="alterator-ref2">
<span translate="_">Wireless settings</span>
</a>
</td>
</tr>
<tr>
<td colspan="2">&nbsp;</td>
</tr>
<tr>
<td><label for="state">state</label></td>
<td><input type="checkbox" name="state"/></td>
</tr>
<tr>
<td><label for="dhcp">dhcp</label></td>
<td><label for="dhcp"/></td>
<td><input type="checkbox" name="dhcp"/></td>
</tr>
<tr>
<td><label for="ip">ip</label></td>
<td><label for="ip"/></td>
<td><input type="text" name="ip" class="text"/></td>
</tr>
<tr>
<td><label for="mask">mask</label></td>
<td><label for="mask"/></td>
<td><select name="mask" optionlist="avail_masks"></select></td>
</tr>
<tr>
<td><label for="default">default</label></td>
<td><label for="default"/></td>
<td><input type="text" name="default" class="text"/></td>
</tr>
</tbody>
</table>
<a href="/net-wifi/" class="alterator-ref2">
<span translate="_">Wireless settings</span>
</a>
<br/>
<br/>
<input type="submit" name="card-index-apply" value="Apply" class="btn"/>
&nbsp;
<input type="reset" name="card-index-reset" value="Reset" class="btn"/>

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-05-04 16:18+0400\n"
"POT-Creation-Date: 2007-05-31 17:37+0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -20,39 +20,35 @@ msgstr ""
msgid "Interface"
msgstr ""
#: ui/net-eth/index.scm:22 ui/net-eth/html-messages.scm:4
msgid "Wireless settings"
msgstr ""
#: ui/net-eth/index.scm:26 backend3/net-eth:170
msgid "Interface is enabled"
msgstr ""
#: ui/net-eth/index.scm:31 backend3/net-eth:172
#: ui/net-eth/index.scm:28 backend3/net-eth:183
msgid "Use DHCP"
msgstr ""
#: ui/net-eth/index.scm:36 backend3/net-eth:174
#: ui/net-eth/index.scm:33 backend3/net-eth:185
msgid "IP address"
msgstr ""
#: ui/net-eth/index.scm:41
#: ui/net-eth/index.scm:38
msgid "Netmask"
msgstr ""
#: ui/net-eth/index.scm:46 backend3/net-eth:176
#: ui/net-eth/index.scm:43 backend3/net-eth:187
msgid "Default gateway"
msgstr ""
#: ui/net-eth/index.scm:54 ui/net-eth/html-messages.scm:6
#: ui/net-eth/index.scm:50 ui/net-eth/html-messages.scm:4
msgid "Wireless settings"
msgstr ""
#: ui/net-eth/index.scm:59 ui/net-eth/html-messages.scm:6
msgid "Apply"
msgstr ""
#: ui/net-eth/index.scm:55 ui/net-eth/html-messages.scm:5
#: ui/net-eth/index.scm:60 ui/net-eth/html-messages.scm:5
msgid "Reset"
msgstr ""
#: ui/net-eth/index.scm:56
#: ui/net-eth/index.scm:61
msgid "Quit"
msgstr ""
@ -68,11 +64,31 @@ msgstr ""
msgid "apply current settings and restart interface"
msgstr ""
#: backend3/net-eth:155 backend3/template-net-eth:5
#: backend3/net-eth:110
msgid "interface is up"
msgstr ""
#: backend3/net-eth:110
msgid "interface is down"
msgstr ""
#: backend3/net-eth:112
msgid "plugged"
msgstr ""
#: backend3/net-eth:114
msgid "unplugged"
msgstr ""
#: backend3/net-eth:167 backend3/template-net-eth:5
msgid "alterator-net-eth"
msgstr ""
#: backend3/net-eth:178
#: backend3/net-eth:181
msgid "Interface state"
msgstr ""
#: backend3/net-eth:189
msgid "NetMask"
msgstr ""

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-05-04 16:18+0400\n"
"POT-Creation-Date: 2007-05-31 17:37+0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -19,39 +19,35 @@ msgstr ""
msgid "Interface"
msgstr "Интерфейс"
#: ui/net-eth/index.scm:22 ui/net-eth/html-messages.scm:4
msgid "Wireless settings"
msgstr "Настройки для беспроводных интерфейсов"
#: ui/net-eth/index.scm:26 backend3/net-eth:170
msgid "Interface is enabled"
msgstr "Интерфейс включён"
#: ui/net-eth/index.scm:31 backend3/net-eth:172
#: ui/net-eth/index.scm:28 backend3/net-eth:183
msgid "Use DHCP"
msgstr "Использовать DHCP"
#: ui/net-eth/index.scm:36 backend3/net-eth:174
#: ui/net-eth/index.scm:33 backend3/net-eth:185
msgid "IP address"
msgstr "IP-адрес"
#: ui/net-eth/index.scm:41
#: ui/net-eth/index.scm:38
msgid "Netmask"
msgstr "Маска сети"
#: ui/net-eth/index.scm:46 backend3/net-eth:176
#: ui/net-eth/index.scm:43 backend3/net-eth:187
msgid "Default gateway"
msgstr "Шлюз по умолчанию"
#: ui/net-eth/index.scm:54 ui/net-eth/html-messages.scm:6
#: ui/net-eth/index.scm:50 ui/net-eth/html-messages.scm:4
msgid "Wireless settings"
msgstr "Настройки для беспроводных интерфейсов"
#: ui/net-eth/index.scm:59 ui/net-eth/html-messages.scm:6
msgid "Apply"
msgstr "Применить"
#: ui/net-eth/index.scm:55 ui/net-eth/html-messages.scm:5
#: ui/net-eth/index.scm:60 ui/net-eth/html-messages.scm:5
msgid "Reset"
msgstr "Cброс"
#: ui/net-eth/index.scm:56
#: ui/net-eth/index.scm:61
msgid "Quit"
msgstr "Выход"
@ -67,11 +63,31 @@ msgstr "Выбрать"
msgid "apply current settings and restart interface"
msgstr "применить текущие настройки и перезапустить интерфейс"
#: backend3/net-eth:155 backend3/template-net-eth:5
#: backend3/net-eth:110
msgid "interface is up"
msgstr "интерфейс включён"
#: backend3/net-eth:110
msgid "interface is down"
msgstr "интерфейс выключен"
#: backend3/net-eth:112
msgid "plugged"
msgstr "провод подсоединён"
#: backend3/net-eth:114
msgid "unplugged"
msgstr "провод отсоединён"
#: backend3/net-eth:167 backend3/template-net-eth:5
msgid "alterator-net-eth"
msgstr ""
#: backend3/net-eth:178
#: backend3/net-eth:181
msgid "Interface state"
msgstr "Состояние интерфейса"
#: backend3/net-eth:189
msgid "NetMask"
msgstr "Маска сети"
@ -82,3 +98,4 @@ msgstr "Управление IP-интерфейсами"
#: backend3/template-net-eth:32
msgid "Network"
msgstr "Сеть"

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-05-04 16:18+0400\n"
"POT-Creation-Date: 2007-05-31 17:37+0400\n"
"PO-Revision-Date: 2007-03-29 18:05+0300\n"
"Last-Translator: Michael Shigorin <mike@altlinux.org>\n"
"Language-Team: Ukrainian <ru@li.org>\n"
@ -19,39 +19,35 @@ msgstr ""
msgid "Interface"
msgstr "Інтерфейс"
#: ui/net-eth/index.scm:22 ui/net-eth/html-messages.scm:4
msgid "Wireless settings"
msgstr "Налаштування бездротових інтерфейсів"
#: ui/net-eth/index.scm:26 backend3/net-eth:170
msgid "Interface is enabled"
msgstr "Інтерфейс ввімкнено"
#: ui/net-eth/index.scm:31 backend3/net-eth:172
#: ui/net-eth/index.scm:28 backend3/net-eth:183
msgid "Use DHCP"
msgstr "Використовувати DHCP"
#: ui/net-eth/index.scm:36 backend3/net-eth:174
#: ui/net-eth/index.scm:33 backend3/net-eth:185
msgid "IP address"
msgstr "IP-адреса"
#: ui/net-eth/index.scm:41
#: ui/net-eth/index.scm:38
msgid "Netmask"
msgstr "Мережева маска"
#: ui/net-eth/index.scm:46 backend3/net-eth:176
#: ui/net-eth/index.scm:43 backend3/net-eth:187
msgid "Default gateway"
msgstr "Шлюз по змовчуванню"
#: ui/net-eth/index.scm:54 ui/net-eth/html-messages.scm:6
#: ui/net-eth/index.scm:50 ui/net-eth/html-messages.scm:4
msgid "Wireless settings"
msgstr "Налаштування бездротових інтерфейсів"
#: ui/net-eth/index.scm:59 ui/net-eth/html-messages.scm:6
msgid "Apply"
msgstr "Застосувати"
#: ui/net-eth/index.scm:55 ui/net-eth/html-messages.scm:5
#: ui/net-eth/index.scm:60 ui/net-eth/html-messages.scm:5
msgid "Reset"
msgstr "Скинути"
#: ui/net-eth/index.scm:56
#: ui/net-eth/index.scm:61
msgid "Quit"
msgstr "Вийти"
@ -67,11 +63,34 @@ msgstr "Вибрати"
msgid "apply current settings and restart interface"
msgstr ""
#: backend3/net-eth:155 backend3/template-net-eth:5
#: backend3/net-eth:110
#, fuzzy
msgid "interface is up"
msgstr "IP-інтерфейси"
#: backend3/net-eth:110
#, fuzzy
msgid "interface is down"
msgstr "Інтерфейс ввімкнено"
#: backend3/net-eth:112
msgid "plugged"
msgstr ""
#: backend3/net-eth:114
msgid "unplugged"
msgstr ""
#: backend3/net-eth:167 backend3/template-net-eth:5
msgid "alterator-net-eth"
msgstr ""
#: backend3/net-eth:178
#: backend3/net-eth:181
#, fuzzy
msgid "Interface state"
msgstr "Інтерфейс"
#: backend3/net-eth:189
msgid "NetMask"
msgstr "Мережева маска"

@ -8,7 +8,7 @@
(define (update-interface name)
(and (not-empty-string? name)
(let ((cmd (woo-read-first (string-append "/net-eth" "/" name))))
(iface-enabled state (woo-get-option cmd 'state #f))
(iface-info text (string-append "<small>(" (woo-get-option cmd 'info) ")</small>"))
(iface-dhcp state (woo-get-option cmd 'dhcp #f))
(iface-ip text (woo-get-option cmd 'ip))
(iface-mask current (string-list-index (woo-get-option cmd 'mask "24") (map car avail-masks)))
@ -21,7 +21,6 @@
(thunk
(apply
woo-write/constraints (string-append "/net-eth" "/" name)
'state (iface-enabled state)
'dhcp (iface-dhcp state)
'ip (iface-ip text)
'mask (current-mask)

@ -17,15 +17,12 @@
(document:id ifaces (combobox layout-policy 20 -1))
(spacer)
(spacer)
(spacer)
(document:id w-button (button (_ "Wireless settings")))
(spacer)
;;
(spacer)
(document:id iface-enabled (checkbox (_ "Interface is enabled") widget-name "state"))
(spacer)
(document:id iface-info (label ""))
(spacer)
;;
(spacer)
(document:id iface-dhcp (checkbox (_ "Use DHCP") widget-name "dhcp"))
@ -45,7 +42,15 @@
(spacer)
(label (_ "Default gateway") align "right")
(document:id iface-gw (edit "" widget-name "default"))
(spacer))
(spacer)
;;
(spacer)
(spacer)
(document:id w-button (button (_ "Wireless settings")))
(spacer)
)
;;;;;;;;;;;;;;;

@ -7,7 +7,6 @@
(and (not-empty-string? name)
(apply
woo-write (string-append "/autoinstall/net-eth" "/" name)
'state (iface-enabled state)
'dhcp (iface-dhcp state)
'ip (iface-ip text)
'mask (current-mask)