RFR: 8286781: Replace the deprecated/obsolete gethostbyname and inet_addr calls
David Holmes
dholmes at openjdk.org
Thu Mar 2 22:47:05 UTC 2023
We can replace `gethostbyname`, which is deprecated on Windows and Linux, with `getaddrinfo`. This API is available on all supported platforms and so can be placed in shared code. @djelinski pointed out that `getaddrinfo` can resolve both IP addresses and host names so the two step approach used in `networkStream::connect` is not necessary and we can do away with `os::get_host_by_name()` completely.
The build is updated to enable winsock deprecation warnings, and now we need to use `ws2_32.lib` we can drop `wsock32.lib` (as it is basically a subset - again thanks @djelinski ).
Testing
- all Oracle builds in tiers 1-5
- All GHA builds
The actual code change has to be manually tested because the code is only used by Ideal Graph Printing to connect to the Ideal Graph Visualizer. I've manually tested on Windows and Linux and @tobiasholenstein tested macOS.
Thanks.
-------------
Commit messages:
- 8286781: Replace the deprecated/obsolete gethostbyname and inet_addr calls
Changes: https://git.openjdk.org/jdk/pull/12842/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=12842&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8286781
Stats: 41 lines in 6 files changed: 13 ins; 17 del; 11 mod
Patch: https://git.openjdk.org/jdk/pull/12842.diff
Fetch: git fetch https://git.openjdk.org/jdk pull/12842/head:pull/12842
PR: https://git.openjdk.org/jdk/pull/12842
More information about the build-dev
mailing list