diff options
author | Jo-Philipp Wich <jo@mein.io> | 2021-05-31 11:25:54 +0200 |
---|---|---|
committer | Jo-Philipp Wich <jo@mein.io> | 2021-05-31 11:25:54 +0200 |
commit | c4cdfcbe5121d5959dac1e18ed11b8611a86fb9e (patch) | |
tree | 6567e2371584c3f0d8dbaac5ecdf75283e274d1d /applications/luci-app-samba4/htdocs/luci-static | |
parent | 00d518d697fb37e40f405e7d9e7d6540f7243b0f (diff) |
luci-app-samba4: prevent calling split() on array or null values
Since `uci.get()` may return null or array values, we cannot blindly call
split() on the result. Use the safe `L.toArray()` helper which is intended
to deal with such situations.
Also clean up whitespace while we're at.
Fixes: #5080
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Diffstat (limited to 'applications/luci-app-samba4/htdocs/luci-static')
-rw-r--r-- | applications/luci-app-samba4/htdocs/luci-static/resources/view/samba4.js | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/applications/luci-app-samba4/htdocs/luci-static/resources/view/samba4.js b/applications/luci-app-samba4/htdocs/luci-static/resources/view/samba4.js index 3c6319f93d..268aad86d3 100644 --- a/applications/luci-app-samba4/htdocs/luci-static/resources/view/samba4.js +++ b/applications/luci-app-samba4/htdocs/luci-static/resources/view/samba4.js @@ -19,7 +19,7 @@ return view.extend({ render: function(stats) { var m, s, o, v; v = ''; - + m = new form.Map('samba4', _('Network Shares')); if (stats[5] && stats[5].code === 0) { @@ -35,7 +35,7 @@ return view.extend({ _('Listen only on the given interface or, if unspecified, on lan')); o.multiple = true; o.cfgvalue = function(section_id) { - return uci.get('samba4', section_id, 'interface').split(' '); + return L.toArray(uci.get('samba4', section_id, 'interface')); }; o.write = function(section_id, formvalue) { var cfgvalue = this.cfgvalue(section_id), @@ -53,30 +53,30 @@ return view.extend({ o = s.taboption('general', form.Value, 'description', _('Description')); o.placeholder = 'Samba4 on OpenWrt'; - + s.taboption('general', form.Flag, 'enable_extra_tuning', _('Enable extra Tuning'), _('Enable some community driven tuning parameters, that may improve write speeds and better operation via WiFi.\ Not recommend if multiple clients write to the same files, at the same time!')); - + s.taboption('general', form.Flag, 'disable_async_io', _('Force synchronous I/O'), _('On lower-end devices may increase speeds, by forceing synchronous I/O instead of the default asynchronous.')); s.taboption('general', form.Flag, 'macos', _('Enable macOS compatible shares'), _('Enables Apple\'s AAPL extension globally and adds macOS compatibility options to all shares.')); - + s.taboption('general', form.Flag, 'allow_legacy_protocols', _('Allow legacy (insecure) protocols/authentication.'), _('Allow legacy smb(v1)/Lanman connections, needed for older devices without smb(v2.1/3) support.')); if (stats[2].type === 'file') { - s.taboption('general', form.Flag, 'disable_netbios', _('Disable Netbios')) + s.taboption('general', form.Flag, 'disable_netbios', _('Disable Netbios')) } if (stats[3].type === 'file') { - s.taboption('general', form.Flag, 'disable_ad_dc', _('Disable Active Directory Domain Controller')) + s.taboption('general', form.Flag, 'disable_ad_dc', _('Disable Active Directory Domain Controller')) } if (stats[4].type === 'file') { - s.taboption('general', form.Flag, 'disable_winbind', _('Disable Winbind')) + s.taboption('general', form.Flag, 'disable_winbind', _('Disable Winbind')) } - + o = s.taboption('template', form.TextValue, '_tmpl', _('Edit the template that is used for generating the samba configuration.'), _("This is the content of the file '/etc/samba/smb.conf.template' from which your samba configuration will be generated. \ @@ -127,7 +127,7 @@ return view.extend({ o.enabled = 'yes'; o.disabled = 'no'; o.default = 'no'; - + o = s.option(form.Flag, 'inherit_owner', _('Inherit owner')); o.enabled = 'yes'; o.disabled = 'no'; @@ -144,12 +144,12 @@ return view.extend({ o.default = '0777'; // smb.conf default is '0755' o.placeholder = '0777'; o.rmempty = false; - + o = s.option(form.Value, 'vfs_objects', _('Vfs objects')); o.rmempty = true; - + s.option(form.Flag, 'timemachine', _('Apple Time-machine share')); - + o = s.option(form.Value, 'timemachine_maxsize', _('Time-machine size in GB')); o.rmempty = true; o.maxlength = 5; |