mirror of
				https://github.com/Ysurac/openmptcprouter-feeds.git
				synced 2025-03-09 15:40:03 +00:00 
			
		
		
		
	Add sourcefilter support in luci-mod-network and various updates
This commit is contained in:
		
							parent
							
								
									38c232e12b
								
							
						
					
					
						commit
						39bccc349c
					
				
					 1 changed files with 45 additions and 2 deletions
				
			
		| 
						 | 
				
			
			@ -245,6 +245,25 @@ function has_peerdns(proto) {
 | 
			
		|||
	return false;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function has_sourcefilter(proto) {
 | 
			
		||||
	switch (proto) {
 | 
			
		||||
	case '3g':
 | 
			
		||||
	case 'dhcpv6':
 | 
			
		||||
	case 'directip':
 | 
			
		||||
	case 'mbim':
 | 
			
		||||
	case 'modemmanager':
 | 
			
		||||
	case 'ncm':
 | 
			
		||||
	case 'ppp':
 | 
			
		||||
	case 'pppoa':
 | 
			
		||||
	case 'pppoe':
 | 
			
		||||
	case 'pptp':
 | 
			
		||||
	case 'qmi':
 | 
			
		||||
		return true;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return false;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var cbiRichListValue = form.ListValue.extend({
 | 
			
		||||
	renderWidget: function(section_id, option_index, cfgvalue) {
 | 
			
		||||
		var choices = this.transformChoices();
 | 
			
		||||
| 
						 | 
				
			
			@ -537,6 +556,11 @@ return view.extend({
 | 
			
		|||
				tdEl.lastChild.childNodes[3].disabled = true;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			if (dynamic) {
 | 
			
		||||
				//disable the 'Edit' button on dynamic interfaces
 | 
			
		||||
				tdEl.lastChild.childNodes[2].disabled = true;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			return tdEl;
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -588,6 +612,10 @@ return view.extend({
 | 
			
		|||
				o.nobridges = false;
 | 
			
		||||
				o.optional = false;
 | 
			
		||||
				o.network = ifc.getName();
 | 
			
		||||
				o.exclude = '@' + ifc.getName();
 | 
			
		||||
 | 
			
		||||
				o = s.taboption('general', form.Flag, 'disabled', _('Disable this interface'));
 | 
			
		||||
				o.modalonly = true;
 | 
			
		||||
 | 
			
		||||
				o = s.taboption('general', form.Flag, 'auto', _('Bring up on boot'));
 | 
			
		||||
				o.modalonly = true;
 | 
			
		||||
| 
						 | 
				
			
			@ -1043,7 +1071,7 @@ return view.extend({
 | 
			
		|||
				for (var i = 0; i < rtTables.length; i++)
 | 
			
		||||
					o.value(rtTables[i][1], '%s (%d)'.format(rtTables[i][1], rtTables[i][0]));
 | 
			
		||||
 | 
			
		||||
				if (protoval == 'dhcpv6') {
 | 
			
		||||
				if (has_sourcefilter(protoval)) {
 | 
			
		||||
					o = nettools.replaceOption(s, 'advanced', form.Flag, 'sourcefilter', _('IPv6 source routing'), _('Automatically handle multiple uplink interfaces using source-based policy routing.'));
 | 
			
		||||
					o.default = o.enabled;
 | 
			
		||||
				}
 | 
			
		||||
| 
						 | 
				
			
			@ -1550,9 +1578,24 @@ return view.extend({
 | 
			
		|||
		o = s.option(form.Value, 'ula_prefix', _('IPv6 ULA-Prefix'), _('Unique Local Address - in the range <code>fc00::/7</code>.  Typically only within the ‘local’ half <code>fd00::/8</code>. ULA for IPv6 is analogous to IPv4 private network addressing. This prefix is randomly generated at first install.'));
 | 
			
		||||
		o.datatype = 'cidr6';
 | 
			
		||||
 | 
			
		||||
		o = s.option(form.Flag, 'packet_steering', _('Packet Steering'), _('Enable packet steering across all CPUs. May help or hinder network speed.'));
 | 
			
		||||
		o = s.option(form.ListValue, 'packet_steering', _('Packet Steering'), _('Enable packet steering across CPUs. May help or hinder network speed.'));
 | 
			
		||||
		o.value('', _('Disabled'));
 | 
			
		||||
		o.value('1',_('Enabled'));
 | 
			
		||||
		o.value('2',_('Enabled (all CPUs)'));
 | 
			
		||||
		o.optional = true;
 | 
			
		||||
 | 
			
		||||
		var steer_flow = uci.get('network', 'globals', 'steering_flows');
 | 
			
		||||
 | 
			
		||||
		o = s.option(form.Value, 'steering_flows', _('Steering flows (<abbr title="Receive Packet Steering">RPS</abbr>)'),
 | 
			
		||||
		    _('Directs packet flows to specific CPUs where the local socket owner listens (the local service).') + ' ' +
 | 
			
		||||
		    _('Note: this setting is for local services on the device only (not for forwarding).'));
 | 
			
		||||
		o.value('', _('Standard: none'));
 | 
			
		||||
		o.value('128', _('Suggested: 128'));
 | 
			
		||||
		o.value('256', _('256'));
 | 
			
		||||
		o.depends('packet_steering', '1');
 | 
			
		||||
		o.depends('packet_steering', '2');
 | 
			
		||||
		o.datatype = 'uinteger';
 | 
			
		||||
		o.default = steer_flow;
 | 
			
		||||
 | 
			
		||||
		if (dslModemType != null) {
 | 
			
		||||
			s = m.section(form.TypedSection, 'dsl', _('DSL'));
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue