[prev in list] [next in list] [prev in thread] [next in thread] 

List:       busybox
Subject:    Re: [PATCH 7/7] libbb.h: Handle missing HOST_NAME_MAX; ensure MAXFOOLEN agrees with FOO_MAX
From:       James Clarke <jrtc27 () jrtc27 ! com>
Date:       2017-10-31 15:49:22
Message-ID: 95A3A9DF-A447-47D4-B962-FE7FF18AF8FB () jrtc27 ! com
[Download RAW message or body]

On 31 Oct 2017, at 15:06, Denys Vlasenko <vda.linux@googlemail.com> wrote:
> 
> How about this?
> 
> --- a/networking/traceroute.c
> +++ b/networking/traceroute.c
> @@ -709,6 +709,9 @@ packet_ok(int read_len, len_and_sockaddr *from_lsa,
> 
> # if ENABLE_FEATURE_TRACEROUTE_VERBOSE
>        if (verbose) {
> +#  ifndef MAXHOSTNAMELEN
> +#   define MAXHOSTNAMELEN 80
> +#  endif

80 is definitely not the right fallback value to use. As mentioned by Kang-Che
earlier in the thread, 255 is the POSIX defined minimum[0] for HOST_NAME_MAX.
In fact, it should really be using INET6_ADDRSTRLEN here since it's just being
used as the destination for inet_ntop with AF_INET6, and this has to be defined
in <netinet/in.h>, though the spec says it must be 46 so we could just use that
as a fallback if it isn't even defined.[1]

>                unsigned char *p;
>                char pa1[MAXHOSTNAMELEN];
>                char pa2[MAXHOSTNAMELEN];
> diff --git a/util-linux/fdisk_osf.c b/util-linux/fdisk_osf.c
> index 1141b78..1328c1f 100644
> --- a/util-linux/fdisk_osf.c
> +++ b/util-linux/fdisk_osf.c
> @@ -709,6 +709,9 @@ sync_disks(void)
> static void
> xbsd_write_bootstrap(void)
> {
> +#ifndef MAXPATHLEN
> +# define MAXPATHLEN 1024
> +#endif

This is linux-specific, which has MAXPATHLEN, so there's no point doing this.

>        char path[MAXPATHLEN];
>        const char *bootdir = BSD_LINUX_BOOTDIR;
>        const char *dkbasename;

Regards,
James

[0] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/limits.h.html
[1] http://pubs.opengroup.org/onlinepubs/000095399/basedefs/netinet/in.h.html

_______________________________________________
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic