[PATCH v2 5/5] inet: Implement inet_ntoa on top of inet_ntop

Collin Funk collin.funk1@gmail.com
Thu Jun 5 02:17:22 GMT 2025


Adhemerval Zanella <adhemerval.zanella@linaro.org> writes:

> Checked on aarch64-linux-gnu and x86_64-linux-gnu.
> ---
>  inet/inet_ntoa.c | 7 ++-----
>  1 file changed, 2 insertions(+), 5 deletions(-)
>
> diff --git a/inet/inet_ntoa.c b/inet/inet_ntoa.c
> index a4543f630d..2efd24ef18 100644
> --- a/inet/inet_ntoa.c
> +++ b/inet/inet_ntoa.c
> @@ -23,15 +23,12 @@
>  /* The interface of this function is completely stupid, it requires a
>     static buffer.  We relax this a bit in that we allow one buffer for
>     each thread.  */
> -static __thread char buffer[18];
> +static __thread char buffer[INET_ADDRSTRLEN];

Thanks for doing this patch for me.

>  
>  char *
>  inet_ntoa (struct in_addr in)
>  {
> -  unsigned char *bytes = (unsigned char *) ∈
> -  __snprintf (buffer, sizeof (buffer), "%d.%d.%d.%d",
> -	      bytes[0], bytes[1], bytes[2], bytes[3]);
> -
> +  __inet_ntop (AF_INET, &in, buffer, sizeof buffer);
>    return buffer;
>  }

Nothing major, but can't you just do:

    return __inet_ntop (AF_INET, &in, buffer, sizeof buffer);

Or does that cause a warning about a discard const qualifier?

Collin


More information about the Libc-alpha mailing list