From b128fe7e69304ee26a293d508e31bd7f63c12f2d Mon Sep 17 00:00:00 2001 From: Arne Fitzenreiter Date: Sun, 6 Oct 2013 08:59:35 +0200 Subject: [PATCH] setup: add nic identify function. --- langs/de/install/lang_de.c | 6 ++++++ langs/en/install/lang_en.c | 6 ++++++ langs/es/install/lang_es.c | 6 ++++++ langs/fr/install/lang_fr.c | 6 ++++++ langs/nl/install/lang_nl.c | 6 ++++++ langs/pl/install/lang_pl.c | 6 ++++++ langs/ru/install/lang_ru.c | 6 ++++++ langs/tr/install/lang_tr.c | 6 ++++++ src/install+setup/libsmooth/netstuff.c | 17 +++++++++++++++-- 9 files changed, 63 insertions(+), 2 deletions(-) diff --git a/langs/de/install/lang_de.c b/langs/de/install/lang_de.c index 85db8677d..8c935865e 100644 --- a/langs/de/install/lang_de.c +++ b/langs/de/install/lang_de.c @@ -591,4 +591,10 @@ char *de_tr[] = { "Beim Herunterladen ist ein Fehler aufgetreten!", /* TR_DHCP_FORCE_MTU */ "DHCP MTU setzen:", +/* TR_IDENTIFY */ +"Identifizieren", +/* TR_IDENTIFY_SHOULD_BLINK */ +"Die Leds dieses Netzwerkports sollten jetzt blinken ...", +/* TR_IDENTIFY_NOT_SUPPORTED */ +"Dieser Netzwerkport untestützt die Funktion leider nicht.", }; diff --git a/langs/en/install/lang_en.c b/langs/en/install/lang_en.c index 87f8d2fa9..12ac4b557 100644 --- a/langs/en/install/lang_en.c +++ b/langs/en/install/lang_en.c @@ -587,4 +587,10 @@ char *en_tr[] = { "Error while downloading!", /* TR_DHCP_FORCE_MTU */ "Force DHCP mtu:", +/* TR_IDENTIFY */ +"Identify", +/* TR_IDENTIFY_SHOULD_BLINK */ +"Selected port should blink now ...", +/* TR_IDENTIFY_NOT_SUPPORTED */ +"Function is not supported by this port.", }; diff --git a/langs/es/install/lang_es.c b/langs/es/install/lang_es.c index a1808fe51..4a08748cc 100644 --- a/langs/es/install/lang_es.c +++ b/langs/es/install/lang_es.c @@ -583,4 +583,10 @@ char *es_tr[] = { "Error while downloading!", /* TR_DHCP_FORCE_MTU */ "Force DHCP mtu:", +/* TR_IDENTIFY */ +"Identify", +/* TR_IDENTIFY_SHOULD_BLINK */ +"Selected port should blink now ...", +/* TR_IDENTIFY_NOT_SUPPORTED */ +"Function is not supported by this port.", }; diff --git a/langs/fr/install/lang_fr.c b/langs/fr/install/lang_fr.c index 03fa9be87..188e0fd1a 100644 --- a/langs/fr/install/lang_fr.c +++ b/langs/fr/install/lang_fr.c @@ -583,4 +583,10 @@ char *fr_tr[] = { "Erreur pendant le téléchargement!", /* TR_DHCP_FORCE_MTU */ "Force DHCP mtu:", +/* TR_IDENTIFY */ +"Identify", +/* TR_IDENTIFY_SHOULD_BLINK */ +"Selected port should blink now ...", +/* TR_IDENTIFY_NOT_SUPPORTED */ +"Function is not supported by this port.", }; diff --git a/langs/nl/install/lang_nl.c b/langs/nl/install/lang_nl.c index b9a8ec42d..aa0fa2f01 100644 --- a/langs/nl/install/lang_nl.c +++ b/langs/nl/install/lang_nl.c @@ -587,4 +587,10 @@ char *nl_tr[] = { "Fout tijdens downloaden!", /* TR_DHCP_FORCE_MTU */ "Forceer DHCP mtu:", +/* TR_IDENTIFY */ +"Identify", +/* TR_IDENTIFY_SHOULD_BLINK */ +"Selected port should blink now ...", +/* TR_IDENTIFY_NOT_SUPPORTED */ +"Function is not supported by this port.", }; diff --git a/langs/pl/install/lang_pl.c b/langs/pl/install/lang_pl.c index eb428d5bb..dddf551a6 100644 --- a/langs/pl/install/lang_pl.c +++ b/langs/pl/install/lang_pl.c @@ -583,4 +583,10 @@ char *pl_tr[] = { "Błąd podczas pobierania!", /* TR_DHCP_FORCE_MTU */ "Wymuś mtu DHCP:", +/* TR_IDENTIFY */ +"Identify", +/* TR_IDENTIFY_SHOULD_BLINK */ +"Selected port should blink now ...", +/* TR_IDENTIFY_NOT_SUPPORTED */ +"Function is not supported by this port.", }; diff --git a/langs/ru/install/lang_ru.c b/langs/ru/install/lang_ru.c index 1e96b6120..40293a209 100644 --- a/langs/ru/install/lang_ru.c +++ b/langs/ru/install/lang_ru.c @@ -581,4 +581,10 @@ char *ru_tr[] = { "Во время загрузки произошла ошибка!", /* TR_DHCP_FORCE_MTU */ "Форсировать DHCP mtu:", +/* TR_IDENTIFY */ +"Identify", +/* TR_IDENTIFY_SHOULD_BLINK */ +"Selected port should blink now ...", +/* TR_IDENTIFY_NOT_SUPPORTED */ +"Function is not supported by this port.", }; diff --git a/langs/tr/install/lang_tr.c b/langs/tr/install/lang_tr.c index 3a959b7ad..3131dd14f 100644 --- a/langs/tr/install/lang_tr.c +++ b/langs/tr/install/lang_tr.c @@ -587,4 +587,10 @@ char *tr_tr[] = { "İndirirken hata!", /* TR_DHCP_FORCE_MTU */ "DHCP mtu zorla:", +/* TR_IDENTIFY */ +"Identify", +/* TR_IDENTIFY_SHOULD_BLINK */ +"Selected port should blink now ...", +/* TR_IDENTIFY_NOT_SUPPORTED */ +"Function is not supported by this port.", }; diff --git a/src/install+setup/libsmooth/netstuff.c b/src/install+setup/libsmooth/netstuff.c index de5c558c0..1c6eb42e6 100644 --- a/src/install+setup/libsmooth/netstuff.c +++ b/src/install+setup/libsmooth/netstuff.c @@ -615,6 +615,7 @@ int nicmenu(int colour) int rc, choise = 0, count = 0, kcount = 0, mcount = 0, i, j, nic_in_use; int found_NIC_as_Card[4]; char message[STRING_SIZE]; + char temp[STRING_SIZE]; char cMenuInhalt[STRING_SIZE]; char MenuInhalt[20][180]; @@ -657,8 +658,20 @@ int nicmenu(int colour) pMenuInhalt[mcount] = NULL; sprintf(message, ctr[TR_CHOOSE_NETCARD], ucolourcard[colour]); - rc = newtWinMenu( ctr[TR_NETCARDMENU2], message, 50, 5, 5, 6, pMenuInhalt, &choise, ctr[TR_OK], ctr[TR_SELECT], ctr[TR_CANCEL], NULL); - + rc=2; + while ( rc == 2 ) { + rc = newtWinMenu( ctr[TR_NETCARDMENU2], message, 50, 5, 5, 6, pMenuInhalt, &choise, ctr[TR_SELECT], ctr[TR_IDENTIFY], ctr[TR_CANCEL], NULL); + if ( rc == 2 ) { + sprintf(temp, "/sbin/ip link set %s up", nics[found_NIC_as_Card[choise]].nic); + mysystem(temp); + sprintf(temp, "/usr/sbin/ethtool -p %s 10", nics[found_NIC_as_Card[choise]].nic); + if (runcommandwithstatus(temp,ctr[TR_IDENTIFY_SHOULD_BLINK]) != 0) { + errorbox(ctr[TR_IDENTIFY_NOT_SUPPORTED]); + sprintf(temp, "/sbin/ip link set %s down", nics[found_NIC_as_Card[choise]].nic); + mysystem(temp); + } + } + } if ( rc == 0 || rc == 1) { write_configs_netudev(found_NIC_as_Card[choise], colour); } -- 2.39.2