docs: def GetIpForwardTable():
      """Return all Windows routes (IPv4 only) from iphlpapi"""
      # We get the size first
      size = ULONG()
      res = _GetIpForwardTable(None, byref(size), False)
      if res != 0x7a:  # ERROR_INSUFFICIENT_BUFFER -> populate size
          raise RuntimeError("Error getting structure length (%d)" % res)
      # Now let's build our buffer
      pointer_type = PMIB_IPFORWARDTABLE
      buffer = create_string_buffer(size.value)
      pIpForwardTable = ctypes.cast(buffer, pointer_type)
      # And call GetAdaptersAddresses
      res = _GetIpForwardTable(pIpForwardTable, byref(size), True)
      if res != NO_ERROR:
          raise RuntimeError("Error retrieving table (%d)" % res)
      results = []
      for i in range(pIpForwardTable.contents.NumEntries):
          results.append(_struct_to_dict(pIpForwardTable.contents.Table[i]))
      del(pIpForwardTable)
      return results