mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-28 15:24:43 +02:00
8188855: Fix VS10 build after "8187658: Bigger buffer for GetAdaptersAddresses"
Reviewed-by: vtewari, simonis
This commit is contained in:
parent
9f2615c4de
commit
f3bad9d19b
1 changed files with 5 additions and 3 deletions
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 2003, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
|
@ -79,6 +79,7 @@ static int getAdapters (JNIEnv *env, IP_ADAPTER_ADDRESSES **adapters) {
|
||||||
strlen("IP Helper Library GetAdaptersAddresses function failed"
|
strlen("IP Helper Library GetAdaptersAddresses function failed"
|
||||||
" with error == ") + 10;
|
" with error == ") + 10;
|
||||||
int _ret = 0;
|
int _ret = 0;
|
||||||
|
int try;
|
||||||
|
|
||||||
|
|
||||||
adapterInfo = (IP_ADAPTER_ADDRESSES *) malloc(BUFF_SIZE);
|
adapterInfo = (IP_ADAPTER_ADDRESSES *) malloc(BUFF_SIZE);
|
||||||
|
@ -94,7 +95,7 @@ static int getAdapters (JNIEnv *env, IP_ADAPTER_ADDRESSES **adapters) {
|
||||||
flags |= GAA_FLAG_INCLUDE_PREFIX;
|
flags |= GAA_FLAG_INCLUDE_PREFIX;
|
||||||
ret = GetAdaptersAddresses(AF_UNSPEC, flags, NULL, adapterInfo, &len);
|
ret = GetAdaptersAddresses(AF_UNSPEC, flags, NULL, adapterInfo, &len);
|
||||||
|
|
||||||
for (int try = 0; ret == ERROR_BUFFER_OVERFLOW && try < MAX_TRIES; ++try) {
|
for (try = 0; ret == ERROR_BUFFER_OVERFLOW && try < MAX_TRIES; ++try) {
|
||||||
IP_ADAPTER_ADDRESSES * newAdapterInfo = NULL;
|
IP_ADAPTER_ADDRESSES * newAdapterInfo = NULL;
|
||||||
if (len < (ULONG_MAX - BUFF_SIZE)) {
|
if (len < (ULONG_MAX - BUFF_SIZE)) {
|
||||||
len += BUFF_SIZE;
|
len += BUFF_SIZE;
|
||||||
|
@ -160,6 +161,7 @@ IP_ADAPTER_ADDRESSES *getAdapter (JNIEnv *env, jint index) {
|
||||||
size_t error_msg_buf_size =
|
size_t error_msg_buf_size =
|
||||||
strlen("IP Helper Library GetAdaptersAddresses function failed with error == ") + 10;
|
strlen("IP Helper Library GetAdaptersAddresses function failed with error == ") + 10;
|
||||||
int _ret = 0;
|
int _ret = 0;
|
||||||
|
int try;
|
||||||
adapterInfo = (IP_ADAPTER_ADDRESSES *) malloc(BUFF_SIZE);
|
adapterInfo = (IP_ADAPTER_ADDRESSES *) malloc(BUFF_SIZE);
|
||||||
if (adapterInfo == NULL) {
|
if (adapterInfo == NULL) {
|
||||||
JNU_ThrowByName(env, "java/lang/OutOfMemoryError",
|
JNU_ThrowByName(env, "java/lang/OutOfMemoryError",
|
||||||
|
@ -171,7 +173,7 @@ IP_ADAPTER_ADDRESSES *getAdapter (JNIEnv *env, jint index) {
|
||||||
flags |= GAA_FLAG_SKIP_MULTICAST;
|
flags |= GAA_FLAG_SKIP_MULTICAST;
|
||||||
flags |= GAA_FLAG_INCLUDE_PREFIX;
|
flags |= GAA_FLAG_INCLUDE_PREFIX;
|
||||||
val = GetAdaptersAddresses(AF_UNSPEC, flags, NULL, adapterInfo, &len);
|
val = GetAdaptersAddresses(AF_UNSPEC, flags, NULL, adapterInfo, &len);
|
||||||
for (int try = 0; val == ERROR_BUFFER_OVERFLOW && try < MAX_TRIES; ++try) {
|
for (try = 0; val == ERROR_BUFFER_OVERFLOW && try < MAX_TRIES; ++try) {
|
||||||
IP_ADAPTER_ADDRESSES * newAdapterInfo = NULL;
|
IP_ADAPTER_ADDRESSES * newAdapterInfo = NULL;
|
||||||
if (len < (ULONG_MAX - BUFF_SIZE)) {
|
if (len < (ULONG_MAX - BUFF_SIZE)) {
|
||||||
len += BUFF_SIZE;
|
len += BUFF_SIZE;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue