faf7d3771c
The WintunCreateAdapter()+CreateAdapter() and WintunDeleteAdapter()+ DeleteAdapter() communicate using Unicode anonymous pipes now. This allows the WintunCreateAdapter() to exactly determine the adapter CreateAdapter() just created by its GUID rather than its name - avoiding the possible ambiguity caused by same-adapter-name ordinal suffixes. This also allows exact retrieval of the result code and pending reboot flag from the rundll32 child process. Furthermore, CreateAdapter() and DeleteAdapter() are now available in _DEBUG for all platforms to allow testing. It took a #pragma comment( linker, "/EXPORT") trick to stop compiler from decorating function names and exporting as _CreateAdapter@16() and _DeleteAdapter@16() in x86. Signed-off-by: Simon Rozman <simon@rozman.si> |
||
---|---|---|
.. | ||
adapter.c | ||
adapter.h | ||
api.c | ||
api.h | ||
api.vcxproj | ||
api.vcxproj.filters | ||
driver.c | ||
driver.h | ||
exports.def | ||
logger.c | ||
logger.h | ||
namespace.c | ||
namespace.h | ||
nci.c | ||
nci.h | ||
pch.c | ||
pch.h | ||
registry.c | ||
registry.h | ||
resource.c | ||
resource.h | ||
resources.rc | ||
rundll32.c | ||
wintun.h |