import ipaddress import typing def make_subnet(subnet): network = ipaddress.IPv4Network(subnet) return { "address": str(network.network_address), "with_prefix": network.with_prefixlen, "prefix": network.prefixlen, "with_netmask": network.with_netmask, "netmask": str(network.netmask) } def polyfill_field(data, field, value): if isinstance(data, list): for item in data: if not field in item: item[field] = value elif isinstance(data, dict): for item_name in data: item = data[item_name] if not field in item: item[field] = value def polyfill_deleted(data): polyfill_field(data, "deleted", False)