Revision abcdca83
Added by Ermal LUÇI about 14 years ago
etc/inc/filter.inc | ||
---|---|---|
532 | 532 |
/* Setup pf groups */ |
533 | 533 |
if(isset($config['aliases']['alias'])) { |
534 | 534 |
foreach ($config['aliases']['alias'] as $aliased) { |
535 |
$extraalias = "";
|
|
535 |
$extralias = ""; |
|
536 | 536 |
/* |
537 | 537 |
* XXX: i am not sure what this does so i am commenting it out for now, because as it is |
538 | 538 |
* its quite dangerous! |
... | ... | |
542 | 542 |
$aliasnesting = array(); |
543 | 543 |
$aliasaddrnesting = array(); |
544 | 544 |
$addrlist = filter_generate_nested_alias($aliased['name'], $aliased['address'], $aliasnesting, $aliasaddrnesting); |
545 |
if($aliased['type'] == "host" || $aliased['type'] == "network" || $aliased['type'] == "url") { |
|
545 |
switch ($aliased['type']) { |
|
546 |
case "host": |
|
547 |
case "network": |
|
548 |
case "url": |
|
546 | 549 |
$tableaddrs = "{$addrlist}{$extralias}"; |
547 | 550 |
if(empty($tableaddrs)) |
548 | 551 |
$aliases .= "table <{$aliased['name']}> persist\n"; |
... | ... | |
550 | 553 |
$aliases .= "table <{$aliased['name']}> { {$addrlist}{$extralias} } \n"; |
551 | 554 |
|
552 | 555 |
$aliases .= "{$aliased['name']} = \"<{$aliased['name']}>\"\n"; |
553 |
} else if($aliased['type'] == "openvpn") { |
|
556 |
break; |
|
557 |
case "openvpn": |
|
554 | 558 |
$openvpncfg = array(); |
555 | 559 |
if($config['openvpn']['user']) { |
556 | 560 |
/* XXX: Check if we have a correct ip? */ |
... | ... | |
570 | 574 |
} |
571 | 575 |
$aliases .= "table <{$aliased['name']}> { {$newaddress}{$extralias} } \n"; |
572 | 576 |
$aliases .= "{$aliased['name']} = \"<{$aliased['name']}>\"\n"; |
573 |
} elseif($aliased['type'] == "urltable") { |
|
577 |
break; |
|
578 |
case "urltable": |
|
574 | 579 |
$urlfn = alias_expand_urltable($aliased['name']); |
575 | 580 |
if ($urlfn) { |
576 | 581 |
$aliases .= "table <{$aliased['name']}> persist file \"{$urlfn}\"\n"; |
577 | 582 |
$aliases .= "{$aliased['name']} = \"<{$aliased['name']}>\"\n"; |
578 | 583 |
} |
579 |
} else |
|
584 |
break; |
|
585 |
case "port": |
|
586 |
$aliases .= "{$aliased['name']} = \"{ {$addrlist} }\"\n"; |
|
587 |
break; |
|
588 |
default: |
|
580 | 589 |
$aliases .= "{$aliased['name']} = \"{ {$aliased['address']}{$extralias} }\"\n"; |
590 |
break; |
|
591 |
} |
|
581 | 592 |
} |
582 | 593 |
} |
583 | 594 |
$result = "{$alias} \n"; |
Also available in: Unified diff
Fixes #1386. Correct unlooping nested port aliases.