From 2a195bc33b9a838a53c87fa5c0443f465c820a3e Mon Sep 17 00:00:00 2001 From: Julien VAUBOURG Date: Sat, 14 Mar 2015 15:44:48 +0100 Subject: [PATCH] * Add "Install non-free firmwares" option * Add Enable/Disable Service feature * Add Secure/Unsecure Wifi feature --- conf/hostapd.conf.tpl | 10 +- conf/init_ynh-hotspot | 15 +++ manifest.json | 9 ++ manifest.json.options | 9 ++ screenshot.png | Bin 73942 -> 80641 bytes scripts/install | 11 +- sources/controller.php | 172 ++++++++++++++++++-------------- sources/public/js/custom.js | 16 +++ sources/views/settings.html.php | 36 ++++++- 9 files changed, 189 insertions(+), 89 deletions(-) diff --git a/conf/hostapd.conf.tpl b/conf/hostapd.conf.tpl index 8e73836..4246c72 100644 --- a/conf/hostapd.conf.tpl +++ b/conf/hostapd.conf.tpl @@ -27,8 +27,8 @@ macaddr_acl=0 auth_algs=1 ignore_broadcast_ssid=0 -wpa=2 -wpa_passphrase= -wpa_key_mgmt=WPA-PSK -wpa_pairwise=TKIP -rsn_pairwise=CCMP +wpa=2 +wpa_passphrase= +wpa_key_mgmt=WPA-PSK +wpa_pairwise=TKIP +rsn_pairwise=CCMP diff --git a/conf/init_ynh-hotspot b/conf/init_ynh-hotspot index 74d3a63..eba1b37 100644 --- a/conf/init_ynh-hotspot +++ b/conf/init_ynh-hotspot @@ -150,6 +150,12 @@ start_hostapd() { sed "s||#|g" -i /etc/hostapd/hostapd.conf fi + if [ "${ynh_wifi_secure}" -eq 1 ]; then + sed "s|||g" -i /etc/hostapd/hostapd.conf + else + sed "s||#|g" -i /etc/hostapd/hostapd.conf + fi + service hostapd start } @@ -235,8 +241,10 @@ if [ "$1" != restart ]; then echo -n "Retrieving Yunohost settings... " + ynh_service_enabled=$(moulinette_get service_enabled) ynh_wifi_device=$(moulinette_get wifi_device) ynh_wifi_ssid=$(moulinette_get wifi_ssid) + ynh_wifi_secure=$(moulinette_get wifi_secure) ynh_wifi_passphrase=$(moulinette_get wifi_passphrase) ynh_wifi_channel=$(moulinette_get wifi_channel) ynh_wifi_n=$(moulinette_get wifi_n) @@ -284,6 +292,8 @@ case "$1" in start) if is_running; then echo "Already started" + elif [ "${ynh_service_enabled}" -eq 0 ]; then + echo "Disabled service" else echo "[hotspot] Starting..." touch /tmp/.ynh-hotspot-started @@ -386,6 +396,11 @@ case "$1" in status) exitcode=0 + if [ "${ynh_service_enabled}" -eq 0 ]; then + echo "[ERR] Hotspot Service disabled" + exitcode=1 + fi + echo "[INFO] Autodetected internet interface: ${new_internet_device} (last start: ${old_internet_device})" if has_ip6delegatedprefix; then diff --git a/manifest.json b/manifest.json index 4b9c6be..1ce9263 100644 --- a/manifest.json +++ b/manifest.json @@ -47,6 +47,15 @@ "fr": "Choisissez un mot de passe wifi (au minimum 8 caractères pour le WPA2)" }, "example": "VhegT8oev0jZI" + }, + { + "name": "firmware_nonfree", + "ask": { + "en": "Install non-free firmwares for the wifi dongle (yes/no)", + "fr": "Installer des firmwares non-libres pour la clé USB wifi (yes/no)" + }, + "example": "yes", + "default": "yes" } ] } diff --git a/manifest.json.options b/manifest.json.options index 576cb45..aa9d696 100644 --- a/manifest.json.options +++ b/manifest.json.options @@ -48,6 +48,15 @@ }, "example": "VhegT8oev0jZI" }, + { + "name": "firmware_nonfree", + "ask": { + "en": "Install non-free firmwares for the wifi dongle (yes/no)", + "fr": "Installer des firmwares non-libres pour la clé USB wifi (yes/no)" + }, + "example": "yes", + "default": "yes" + }, { "name": "ip6_net", "ask": { diff --git a/screenshot.png b/screenshot.png index b038635e7b375d59e20220f59bbc6bf9737347ff..138179c88cf68c06359b91c082bad863cc531a85 100644 GIT binary patch literal 80641 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 z zk$`@@k%dCSLRGMV83eh)GDUVk-T^KOH0%&)2pJ}3S;?Y0IK#U4{ig&yDR_T$tc$N5d6Lf3irMzYg( z&O}nSoZh$?8oG%6@o~fEet)Frdi~6fkvS$zhBm#W&A^&0fEPg{T-IWpid>^D1Qa`kflE#hkBKtlxzf)Q!9uvG@+$Ky; zwJK{i_WcWSLcwnsP%J9>4xJaR)YlFg8DMQD&6xVN&R{EVb-cm0V^4STx?bB4O`bc@ z*A*P@;G4EV&5z857tmII&3mpNdz07KJ9HszPeYpQHtO6D8oXE@V~5Eb(!fVLKQ)hs zXvA#eppV1Okt7~t4*IpKYQVR-y^(0As&#@8h zh`=I_&wepZ&o@N~Rr#KKS4%fAJY%5Par6<_#$h{zm`2!NNvOJR^b>JV+zg-NFK@jm z&Q%^E(x-*-;2t{&Fyf@+6~QMAC|ISEF7RyH+Q}#?_<+L&zSlyLla0)66ivQFt<*%( z7}HU#22sJ@UNlIfx7Qf!P!Ev%w<3ybepN(a+d>sRcYC{Q*lOv#bVP1U?|8Nzam6uY zLdP2W0(gn6!1=RD@!6qx_G9bwRT(u!g(PH)P%PB_YuyDB*W**cCf~QJ4|sR8m$-Q# z6b|h=lTcCg`Gtlu_}`JyPkZt=F9mm$vw_JBTyv=yAkeb2qSM?WjYhc|$MEZO(75KR z#j-wjAKhJ%Eko2B@m3D=(syEUG&w85+CA>$l-DeWhk%&}TF4Z-RM0y7M>0CP&B^W* z6?LQMg&z3q1o=p~R!_|>V%e5!_uWa*4)L2tzBQ3k`A_0+gD(dBVmkOA3A1k({l3T# z^#es+`j@#3=5#&`6vkMLUtILWj6PvqFCU%sgZ+Y;naH-6AE|s@j0F8!UQqM+l|FDN zR$m`BhtcEzBiV6c4;zU70*}UZMK-!_7&$WvK6)tivWz@CMy=B!v-UXwAE^h<(O@s_wm?$31bl;gIxHDkoFyDMp?{wQ(!hxh(Ck%En9 zbg}`nAAU49(TAkqc?}!wPglIk5jPy`XIE`3T7vMzMwvB6 s+yeeTtPusF=zloJ@c;LIGWG=L1utQVjrryckN^gfk&qX!6g3R|U*3~Pc>n+a diff --git a/scripts/install b/scripts/install index 6402588..9271065 100644 --- a/scripts/install +++ b/scripts/install @@ -22,13 +22,14 @@ domain=${1} url_path=${2} wifi_ssid=${3} wifi_passphrase=${4} +firmware_nonfree=${5} ## ## These arguments are optional but YunoHost is not yet able to handle them with the web installer ## See manifest.json.options ## # -#ip6_net=${5} +#ip6_net=${6} # Check arguments if [ -z "${wifi_ssid}" -o -z "${wifi_passphrase}" ]; then @@ -59,7 +60,11 @@ packages='php5-fpm sipcalc hostapd iptables wireless-tools dnsmasq' # Packaged USB Wireless Device firmwares # Based on https://wiki.debian.org/WiFi#USB_Devices -packages="$packages firmware-atheros atmel-firmware firmware-linux-free firmware-linux-nonfree firmware-realtek firmware-ralink firmware-libertas zd1211-firmware" +if [ "${firmware_nonfree}" == yes ]; then + packages="$packages firmware-atheros atmel-firmware firmware-linux-free firmware-linux-nonfree firmware-realtek firmware-ralink firmware-libertas zd1211-firmware" +else + packages="$packages firmware-linux-free" +fi sudo apt-get --assume-yes --force-yes install ${packages} @@ -109,7 +114,9 @@ if [ $? -eq 0 ]; then fi # Save arguments +sudo yunohost app setting hotspot service_enabled -v 1 sudo yunohost app setting hotspot wifi_ssid -v "${wifi_ssid}" +sudo yunohost app setting hotspot wifi_secure -v 1 sudo yunohost app setting hotspot wifi_passphrase -v "${wifi_passphrase}" sudo yunohost app setting hotspot wifi_device -v "${wifi_device}" sudo yunohost app setting hotspot wifi_channel -v 6 diff --git a/sources/controller.php b/sources/controller.php index f9cb0fc..f8a1700 100644 --- a/sources/controller.php +++ b/sources/controller.php @@ -87,7 +87,9 @@ dispatch('/', function() { $ip6_net = ($ip6_net == 'none') ? '' : $ip6_net; $ip4_nat_prefix = moulinette_get('ip4_nat_prefix'); + set('service_enabled', moulinette_get('service_enabled')); set('wifi_ssid', moulinette_get('wifi_ssid')); + set('wifi_secure', moulinette_get('wifi_secure')); set('wifi_passphrase', moulinette_get('wifi_passphrase')); set('wifi_channel', moulinette_get('wifi_channel')); set('wifi_n', moulinette_get('wifi_n')); @@ -111,95 +113,111 @@ dispatch_put('/settings', function() { $ip6_net = empty($_POST['ip6_net']) ? 'none' : $_POST['ip6_net']; $ip6_addr = 'none'; + $service_enabled = isset($_POST['service_enabled']) ? 1 : 0; + $wifi_secure = isset($_POST['wifi_secure']) ? 1 : 0; - try { - if(empty($_POST['wifi_ssid']) || empty($_POST['wifi_passphrase']) || empty($_POST['wifi_channel'])) { - throw new Exception(T_('Your Wifi Hotspot needs a name, a password and a channel')); - } - - if(strlen($_POST['wifi_passphrase']) < 8 || strlen($_POST['wifi_passphrase']) > 63) { - throw new Exception(T_('Your password must from 8 to 63 characters (WPA2 passphrase)')); - } - - if(preg_match('/[^[:print:]]/', $_POST['wifi_passphrase'])) { - throw new Exception(T_('Only printable ASCII characters are permitted in your password')); - } - - if(!$wifi_device_exists) { - throw new Exception(T_('The wifi antenna interface seems not exist on the system')); - } - - if($ip6_net != 'none') { - $ip6_net = ipv6_expanded($ip6_net); - - if(empty($ip6_net)) { - throw new Exception(T_('The IPv6 Delegated Prefix format looks bad')); + if($service_enabled == 1) { + try { + if(empty($_POST['wifi_ssid']) || empty($_POST['wifi_passphrase']) || empty($_POST['wifi_channel'])) { + throw new Exception(T_('Your Wifi Hotspot needs a name, a password and a channel')); } - $ip6_blocs = explode(':', $ip6_net); - $ip6_addr = "${ip6_blocs[0]}:${ip6_blocs[1]}:${ip6_blocs[2]}:${ip6_blocs[3]}:${ip6_blocs[4]}:${ip6_blocs[5]}:${ip6_blocs[6]}:42"; + if(strlen($_POST['wifi_passphrase']) < 8 || strlen($_POST['wifi_passphrase']) > 63) { + throw new Exception(T_('Your password must from 8 to 63 characters (WPA2 passphrase)')); + } - $ip6_net = ipv6_compressed($ip6_net); - $ip6_addr = ipv6_compressed($ip6_addr); + if(preg_match('/[^[:print:]]/', $_POST['wifi_passphrase'])) { + throw new Exception(T_('Only printable ASCII characters are permitted in your password')); + } + + if(!$wifi_device_exists) { + throw new Exception(T_('The wifi antenna interface seems not exist on the system')); + } + + if($ip6_net != 'none') { + $ip6_net = ipv6_expanded($ip6_net); + + if(empty($ip6_net)) { + throw new Exception(T_('The IPv6 Delegated Prefix format looks bad')); + } + + $ip6_blocs = explode(':', $ip6_net); + $ip6_addr = "${ip6_blocs[0]}:${ip6_blocs[1]}:${ip6_blocs[2]}:${ip6_blocs[3]}:${ip6_blocs[4]}:${ip6_blocs[5]}:${ip6_blocs[6]}:42"; + + $ip6_net = ipv6_compressed($ip6_net); + $ip6_addr = ipv6_compressed($ip6_addr); + } + + $ip6_dns0 = ipv6_expanded($ip6_dns0); + + if(empty($_POST['ip6_dns0'])) { + throw new Exception(T_('The format of the first IPv6 DNS Resolver looks bad')); + } + + $ip6_dns0 = ipv6_compressed($ip6_dns0); + $ip6_dns1 = ipv6_expanded($ip6_dns1); + + if(empty($_POST['ip6_dns1'])) { + throw new Exception(T_('The format of the second IPv6 DNS Resolver looks bad')); + } + + $ip6_dns1 = ipv6_compressed($ip6_dns1); + + if(inet_pton($_POST['ip4_dns0']) === false) { + throw new Exception(T_('The format of the first IPv4 DNS Resolver looks bad')); + } + + if(inet_pton($_POST['ip4_dns1']) === false) { + throw new Exception(T_('The format of the second IPv4 DNS Resolver looks bad')); + } + + if(inet_pton("${_POST['ip4_nat_prefix']}.0") === false) { + throw new Exception(T_('The format of the IPv4 NAT Prefix (/24) looks bad : x.x.x expected)')); + } + + if(filter_var("${_POST['ip4_nat_prefix']}.0", FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE) !== false) { + throw new Exception(T_('The IPv4 NAT Prefix must be from a private range')); + } + + } catch(Exception $e) { + flash('error', $e->getMessage().' ('.T_('configuration not updated').').'); + goto redirect; } - - $ip6_dns0 = ipv6_expanded($ip6_dns0); - - if(empty($_POST['ip6_dns0'])) { - throw new Exception(T_('The format of the first IPv6 DNS Resolver looks bad')); - } - - $ip6_dns0 = ipv6_compressed($ip6_dns0); - $ip6_dns1 = ipv6_expanded($ip6_dns1); - - if(empty($_POST['ip6_dns1'])) { - throw new Exception(T_('The format of the second IPv6 DNS Resolver looks bad')); - } - - $ip6_dns1 = ipv6_compressed($ip6_dns1); - - if(inet_pton($_POST['ip4_dns0']) === false) { - throw new Exception(T_('The format of the first IPv4 DNS Resolver looks bad')); - } - - if(inet_pton($_POST['ip4_dns1']) === false) { - throw new Exception(T_('The format of the second IPv4 DNS Resolver looks bad')); - } - - if(inet_pton("${_POST['ip4_nat_prefix']}.0") === false) { - throw new Exception(T_('The format of the IPv4 NAT Prefix (/24) looks bad : x.x.x expected)')); - } - - if(filter_var("${_POST['ip4_nat_prefix']}.0", FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE) !== false) { - throw new Exception(T_('The IPv4 NAT Prefix must be from a private range')); - } - - } catch(Exception $e) { - flash('error', $e->getMessage().' ('.T_('configuration not updated').').'); - goto redirect; } stop_service(); - moulinette_set('wifi_ssid', $_POST['wifi_ssid']); - moulinette_set('wifi_passphrase', $_POST['wifi_passphrase']); - moulinette_set('wifi_channel', $_POST['wifi_channel']); - moulinette_set('wifi_n', isset($_POST['wifi_n']) ? 1 : 0); - moulinette_set('wifi_device', $_POST['wifi_device']); - moulinette_set('ip6_net', $ip6_net); - moulinette_set('ip6_addr', $ip6_addr); - moulinette_set('ip6_dns0', $_POST['ip6_dns0']); - moulinette_set('ip6_dns1', $_POST['ip6_dns1']); - moulinette_set('ip4_nat_prefix', $_POST['ip4_nat_prefix']); - moulinette_set('ip4_dns0', $_POST['ip4_dns0']); - moulinette_set('ip4_dns1', $_POST['ip4_dns1']); + moulinette_set('service_enabled', $service_enabled); - $retcode = start_service(); + if($service_enabled == 1) { + moulinette_set('wifi_ssid', $_POST['wifi_ssid']); + moulinette_set('wifi_secure', $wifi_secure); + + if($wifi_secure == 1) { + moulinette_set('wifi_passphrase', $_POST['wifi_passphrase']); + } + + moulinette_set('wifi_channel', $_POST['wifi_channel']); + moulinette_set('wifi_n', isset($_POST['wifi_n']) ? 1 : 0); + moulinette_set('wifi_device', $_POST['wifi_device']); + moulinette_set('ip6_net', $ip6_net); + moulinette_set('ip6_addr', $ip6_addr); + moulinette_set('ip6_dns0', $_POST['ip6_dns0']); + moulinette_set('ip6_dns1', $_POST['ip6_dns1']); + moulinette_set('ip4_nat_prefix', $_POST['ip4_nat_prefix']); + moulinette_set('ip4_dns0', $_POST['ip4_dns0']); + moulinette_set('ip4_dns1', $_POST['ip4_dns1']); + + $retcode = start_service(); + + if($retcode == 0) { + flash('success', T_('Configuration updated and service successfully reloaded')); + } else { + flash('error', T_('Configuration updated but service reload failed')); + } - if($retcode == 0) { - flash('success', T_('Configuration updated and service successfully reloaded')); } else { - flash('error', T_('Configuration updated but service reload failed')); + flash('success', T_('Service successfully disabled')); } redirect: diff --git a/sources/public/js/custom.js b/sources/public/js/custom.js index 0e9a8a7..d2a651f 100644 --- a/sources/public/js/custom.js +++ b/sources/public/js/custom.js @@ -101,6 +101,22 @@ $(document).ready(function() { $('#wifiparty_close').click(function() { $('#wifiparty_screen').hide(); }); + + $('#wifi_secure').change(function() { + if($('#wifi_secure').parent().hasClass('off')) { + $('.secure').hide('slow'); + } else { + $('.secure').show('slow'); + } + }); + + $('#service_enabled').change(function() { + if($('#service_enabled').parent().hasClass('off')) { + $('.enabled').hide('slow'); + } else { + $('.enabled').show('slow'); + } + }); }); $(document).keydown(function(e) { diff --git a/sources/views/settings.html.php b/sources/views/settings.html.php index 4e6e0a4..2c6c2ce 100644 --- a/sources/views/settings.html.php +++ b/sources/views/settings.html.php @@ -64,6 +64,23 @@
+
+

+
+ +
+
+ +
"> +
+ /> +
+
+
+
+
+ +
>

@@ -75,8 +92,17 @@
- +
+ +
+
+ /> +
+
+
+ +
>
@@ -107,8 +133,8 @@
-
- +