On Fri, Mar 16, 2018 at 04:21:15PM +0800, Zhiyi Zhang wrote:
Hi Uberdaff, On success, ConvertLengthToIpv4Mask returns NO_ERROR. Any nonzero return value indicates failure and the Mask parameter is set to INADDR_NONE defined in the Ws2def.h header file. MSDN says Mask parameter also gets set on failure.
if(MaskLength <= 32) return ERROR_INVALID_PARAMETER;
Maybe we should check MaskLength lower bound as well?
I haven't really look into it yet because even MSDN can be wrong. But I suggest you add a test to verify. If you're sending the patch on others behalf and you're not familiar with how to write a test, contact original author.
Yes, you should definitely add some tests. They will show that your implementation isn't correct.
Also, change the commit message to: iphlpapi: Add support for ConvertLengthToIpv4Mask().
and add the prototype to netioapi.h
Huw.