(vm_name, vm_id, vm_ip, vm_ip6, vm_mac, vif, brname, sec_ips, is_first_nic=False)
| 506 | logging.debug("Failed to program ebtables rules for secondary ip %s for vm %s with action %s" % (ip, vmname, action)) |
| 507 | |
| 508 | def check_default_network_rules(vm_name, vm_id, vm_ip, vm_ip6, vm_mac, vif, brname, sec_ips, is_first_nic=False): |
| 509 | brfw = get_br_fw(brname) |
| 510 | vmchain_default = '-'.join(vm_name.split('-')[:-1]) + "-def" |
| 511 | try: |
| 512 | rules = execute("iptables-save |grep -w %s |grep -w %s |grep -w %s" % (brfw, vif, vmchain_default)) |
| 513 | except: |
| 514 | rules = None |
| 515 | if not rules: |
| 516 | logging.debug("iptables rules do not exist, programming default rules for %s %s" % (vm_name,vif)) |
| 517 | default_network_rules(vm_name, vm_id, vm_ip, vm_ip6, vm_mac, vif, brname, sec_ips, is_first_nic) |
| 518 | else: |
| 519 | vmchain_in = vm_name + "-in" |
| 520 | try: |
| 521 | rules = execute("ebtables -t nat -L PREROUTING | grep %s |grep -w %s" % (vmchain_in, vif)) |
| 522 | except: |
| 523 | rules = None |
| 524 | if not rules: |
| 525 | logging.debug("ebtables rules do not exist, programming default ebtables rules for %s %s" % (vm_name,vif)) |
| 526 | default_ebtables_rules(vm_name, vm_ip, vm_mac, vif, is_first_nic) |
| 527 | ips = sec_ips.split(';') |
| 528 | ips.pop() |
| 529 | ebtables_rules_vmip(vm_name, vm_mac, ips, "-I") |
| 530 | return True |
| 531 | |
| 532 | def default_network_rules(vm_name, vm_id, vm_ip, vm_ip6, vm_mac, vif, brname, sec_ips, is_first_nic=False): |
| 533 | if not add_fw_framework(brname): |
no test coverage detected