- Currently a pointer to potentially uninitialized IP_ADAPTER_INFO
struct is returned on error causing ill-defined behaviour.
Signed-off-by: Selva Nair <selva.nair@gmail.com>
Acked-by: Steffan Karger <steffan.karger@fox-it.com>
Acked-by: Simon Rozman <simon@rozman.si>
Message-Id: <1514952123-26616-1-git-send-email-selva.nair@gmail.com>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg16139.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
... | ... |
@@ -4178,15 +4178,12 @@ get_adapter_info_list(struct gc_arena *gc) |
4178 | 4178 |
else |
4179 | 4179 |
{ |
4180 | 4180 |
pi = (PIP_ADAPTER_INFO) gc_malloc(size, false, gc); |
4181 |
- if ((status = GetAdaptersInfo(pi, &size)) == NO_ERROR) |
|
4182 |
- { |
|
4183 |
- return pi; |
|
4184 |
- } |
|
4185 |
- else |
|
4181 |
+ if ((status = GetAdaptersInfo(pi, &size)) != NO_ERROR) |
|
4186 | 4182 |
{ |
4187 | 4183 |
msg(M_INFO, "GetAdaptersInfo #2 failed (status=%u) : %s", |
4188 | 4184 |
(unsigned int)status, |
4189 | 4185 |
strerror_win32(status, gc)); |
4186 |
+ pi = NULL; |
|
4190 | 4187 |
} |
4191 | 4188 |
} |
4192 | 4189 |
return pi; |