| 107 | self.net.undefine() |
| 108 | |
| 109 | def get_ipv4_network(self): |
| 110 | xml = self._XMLDesc(0) |
| 111 | if util.get_xml_path(xml, "/network/ip") is None: |
| 112 | return None |
| 113 | addrStr = util.get_xml_path(xml, "/network/ip/@address") |
| 114 | netmaskStr = util.get_xml_path(xml, "/network/ip/@netmask") |
| 115 | prefix = util.get_xml_path(xml, "/network/ip/@prefix") |
| 116 | |
| 117 | if prefix: |
| 118 | prefix = int(prefix) |
| 119 | binstr = ((prefix * "1") + ((32 - prefix) * "0")) |
| 120 | netmaskStr = str(IP(int(binstr, base=2))) |
| 121 | |
| 122 | if netmaskStr: |
| 123 | netmask = IP(netmaskStr) |
| 124 | gateway = IP(addrStr) |
| 125 | network = IP(gateway.int() & netmask.int()) |
| 126 | ret = IP(str(network) + "/" + netmaskStr) |
| 127 | else: |
| 128 | ret = IP(str(addrStr)) |
| 129 | |
| 130 | return ret |
| 131 | |
| 132 | def get_ipv4_forward(self): |
| 133 | xml = self._XMLDesc(0) |