The functions I suggested support both IPv4 and IPv6. For example in the
BIO_lookup() call the 4th parameter would be AF_INET for IPv4 and
AF_INET6 for IPv6.
Matt
On 07/10/2021 08:18, Shivakumar Poojari wrote:
Hi Matt,
The steps suggested are similarly to the deprecated function so simply
I used the same code in static function, But i need support for IPV6 as
well in the same function
The function needs to have compatibility to support for both ipv6 and
ipv4, do we have any new function to support both
thanks,
Shivakumar.
------------------------------------------------------------------------
*From:* Matt Caswell <matt@xxxxxxxxxxx>
*Sent:* Monday, September 27, 2021 3:05 PM
*To:* Shivakumar Poojari <Shivakumar.Poojari@xxxxxxxx>;
openssl-users@xxxxxxxxxxx <openssl-users@xxxxxxxxxxx>
*Cc:* Paramashivaiah, Sunil <Sunil.Paramashivaiah@xxxxxxxx>
*Subject:* [EXTERNAL] Re: Replacement for BIO_get_port(), BIO_get_host_ip()
On 24/09/2021 07:05, Shivakumar Poojari wrote:
Hi
BIO_get_port(), BIO_get_host_ip(), were deprecated in OpenSSL 1.1.0.
Trying for replacement for OpenSSl 3.0
Gone through the below man page, but not found alternative function.
https://clicktime.symantec.com/3Xv8ZiB6xAtjRGsCNHevANW6H2?u=https%3A%2F%2Fwww.openssl.org%2Fdocs%2Fmanmaster%2Fman3%2FBIO_connect.html
<https://clicktime.symantec.com/3Xv8ZiB6xAtjRGsCNHevANW6H2?u=https%3A%2F%2Fwww.openssl.org%2Fdocs%2Fmanmaster%2Fman3%2FBIO_connect.html>
<https://clicktime.symantec.com/3Xv8ZiB6xAtjRGsCNHevANW6H2?u=https%3A%2F%2Fwww.openssl.org%2Fdocs%2Fmanmaster%2Fman3%2FBIO_connect.html
<https://clicktime.symantec.com/3Xv8ZiB6xAtjRGsCNHevANW6H2?u=https%3A%2F%2Fwww.openssl.org%2Fdocs%2Fmanmaster%2Fman3%2FBIO_connect.html>>
please suggest,
These functions are deprecated because they only support IPv4.
Instead you can use BIO_lookup() (or possibly BIO_lookup_ex()) to lookup
the given host/service (first and second parameters to BIO_lookup()
respectively). Equivalent 3rd/4th/5th parameters to BIO_lookup() might
be BIO_LOOKUP_CLIENT, AF_INET (for IPv4) and SOCK_STREAM (for TCP).
This will return you an initialised BIO_ADDRINFO() object (which you
will have to later free using BIO_ADDRINFO_free()).
From the BIO_ADDRINFO object you can get a pointer to an underlying
BIO_ADDR using BIO_ADDRINFO_address(addrinfo). Finally you can use
BIO_ADDR_rawaddress() to get address info, or BIO_ADDR_rawport() to get
port info:
See:
https://clicktime.symantec.com/3EBngctzbwbGZ7EtRw3Ks6N6H2?u=https%3A%2F%2Fwww.openssl.org%2Fdocs%2Fman3.0%2Fman3%2FBIO_lookup.html
<https://clicktime.symantec.com/3EBngctzbwbGZ7EtRw3Ks6N6H2?u=https%3A%2F%2Fwww.openssl.org%2Fdocs%2Fman3.0%2Fman3%2FBIO_lookup.html>
https://clicktime.symantec.com/33SMrAMvMeCpangnxBCzSv96H2?u=https%3A%2F%2Fwww.openssl.org%2Fdocs%2Fman3.0%2Fman3%2FBIO_ADDR_rawaddress.html
<https://clicktime.symantec.com/33SMrAMvMeCpangnxBCzSv96H2?u=https%3A%2F%2Fwww.openssl.org%2Fdocs%2Fman3.0%2Fman3%2FBIO_ADDR_rawaddress.html>
Matt
Notice: This e-mail together with any attachments may contain
information of Ribbon Communications Inc. and its Affiliates that is
confidential and/or proprietary for the sole use of the intended
recipient. Any review, disclosure, reliance or distribution by others or
forwarding without express permission is strictly prohibited. If you are
not the intended recipient, please notify the sender immediately and
then delete all copies, including any attachments.