Hi,
I couldn't apply the patch (its not against master? )
Also it looks like the memory leak not properly fixed (see below).
But before making a new version please see the general comment in the
following mail too.
in win32.c
> +}
> +
> +bool
> +win_wfp_uninit()
> +{
> + dmsg (D_LOW, "Uninitializing WFP");
> + DWORD dwFwAPiRetCode = ERROR_BAD_COMMAND;
unused variable ?
> +
> +bool
> +win_wfp_block_dns (const NET_IFINDEX index)
> +{
> + dmsg (D_LOW, "Blocking DNS using WFP");
> + NET_LUID tapluid;
> + NETIO_STATUS ret;
unused variable ?
> + DWORD dwFwAPiRetCode = ERROR_BAD_COMMAND;
unused variable? I feel like a compiler
[..]
> + dmsg (D_LOW, "Filter (Permit IPv6 DNS queries from TAP) added with
> ID=%I64d", filterid);
> +
You need another free(openvpnblob) here, isn't it?
> + return true;
> +
> + err:
> + free(openvpnblob);
> + return false;
> +}
> +
in win32.h
> +bool win_wfp_add_filter (HANDLE engineHandle,
> + const FWPM_FILTER0 *filter,
> + PSECURITY_DESCRIPTOR sd,
> + UINT64 *id);
No need to expose this --- could be made static in win32.c and removed
from here...
Thanks,
Selva