It's implemented by dnsapi.dll. Several things are missing that I'm putting in to try to make everything go. The main thing I'm doing now is working on GetNetworkParams in iphlpapi. Specifically, it needs to return a valid DNS server list.
I took iphlpapi_main from Juan Lang's wine version and merged it. The iphlpapi part needed by windns is totally done.
I finished off compatibility with wine. We have our own *_reactos.c files that have our OS-specific stuff. These will use the NtDeviceIoControl scheme with codes IOCTL_TCP_QUERY_INFORMATION_EX and IOCTL_TCP_SET_INFORMATION_EX. I need to have these types of information taken from tcpip:
entity type (CLASS_GENERIC/TYPE_PROVIDER/ENTITY_TYPE_ID) entity id set (done) interface mib (CLASS_PROTOCOL/TYPE_PROVIDER/IF_MIB_STATS_ID) tcpip mib (CLASS_PROTOCOL/TYPE_PROVIDER/IP_MIB_STATS_ID) route list (CLASS_PROTOCOL/TYPE_PROVIDER/IP_MIB_ROUTETABLE_ENTRY_ID) address list (CLASS_PROTOCOL/TYPE_PROVIDER/IP_MIB_ADDRTABLE_ENTRY_ID, partly done)
And these to be there:
Add/Delete route (both use CLASS_PROTOCOL/TYPE_PROVIDER/IP_MIB_ROUTETABLE_ENTRY_ID)
Side jaunt #2: be able to add a route to the reactos tcpip stack (also needs iphlpapi).
I started the tcp/ip part. There's some info retrieval there already but it was not hooked up. I've hooked in those functions and now am fleshing out the types of information that can be returned by IOCTL_TCP_QUERY_INFORMATION_EX. Also, I'm doing small patches to other parts of tcpip where applicable. I just made the 'SubnetMask' value in the registry effective.