12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- 'use strict';
- 'require uci';
- 'require form';
- 'require network';
- network.registerPatternVirtual(/^l2tp-.+$/);
- return network.registerProtocol('l2tp', {
- getI18n: function() {
- return _('L2TP');
- },
- getIfname: function() {
- return this._ubus('l3_device') || 'l2tp-%s'.format(this.sid);
- },
- getOpkgPackage: function() {
- return 'xl2tpd';
- },
- isFloating: function() {
- return true;
- },
- isVirtual: function() {
- return true;
- },
- getDevices: function() {
- return null;
- },
- containsDevice: function(ifname) {
- return (network.getIfnameOf(ifname) == this.getIfname());
- },
- renderFormOptions: function(s) {
- var dev = this.getL3Device() || this.getDevice(), o;
- o = s.taboption('general', form.Value, 'server', _('L2TP Server'));
- o.datatype = 'or(host(1), hostport(1))';
- s.taboption('general', form.Value, 'username', _('PAP/CHAP username'));
- o = s.taboption('general', form.Value, 'password', _('PAP/CHAP password'));
- o.password = true;
- if (L.hasSystemFeature('ipv6')) {
- o = s.taboption('advanced', form.ListValue, 'ppp_ipv6', _('Obtain IPv6 address'), _('Enable IPv6 negotiation on the PPP link'));
- o.ucioption = 'ipv6';
- o.value('auto', _('Automatic'));
- o.value('0', _('Disabled'));
- o.value('1', _('Manual'));
- o.default = 'auto';
- }
- o = s.taboption('advanced', form.Value, 'mtu', _('Override MTU'));
- o.placeholder = dev ? (dev.getMTU() || '1500') : '1500';
- o.datatype = 'max(9200)';
- }
- });
|