[PATCH] wayland-client: Require base 10 for WAYLAND_SOCKET, explicitly
Yong Bakos
junk at humanoriented.com
Sat Jul 9 01:36:19 UTC 2016
On Jul 8, 2016, at 4:42 PM, Bryce Harrington <bryce at osg.samsung.com> wrote:
>
> The third arg to strtol() specifies the base to assume for the number.
> When 0 is passed, as is currently done in wayland-client.c, hexadecimal
> and octal numbers are permitted and automatically detected and
> converted.
>
> I can find no indication that we would ever expect use of hexadecimal or
> octal for socket fd's. So be explicit about what base we're assuming
> here and avoid any potential surprises.
>
> Signed-off-by: Bryce Harrington <bryce at osg.samsung.com>
I can think of no drawbacks to this.
Reviewed-by: Yong Bakos <ybakos at humanoriented.com>
Note that tests/exec-fd-leak-checker.c:40 also passes a 0 to strtol,
and the usage (see main's 'help_out:') alludes to a decimal, the number
of expected fd's. Might as well update that arg to 10 as well?
Regards,
yong
> ---
> src/wayland-client.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/src/wayland-client.c b/src/wayland-client.c
> index 03c087a..3d7361e 100644
> --- a/src/wayland-client.c
> +++ b/src/wayland-client.c
> @@ -1006,7 +1006,7 @@ wl_display_connect(const char *name)
> if (connection) {
> int prev_errno = errno;
> errno = 0;
> - fd = strtol(connection, &end, 0);
> + fd = strtol(connection, &end, 10);
> if (errno != 0 || connection == end || *end != '\0')
> return NULL;
> errno = prev_errno;
> --
> 1.9.1
>
> _______________________________________________
> wayland-devel mailing list
> wayland-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/wayland-devel
More information about the wayland-devel
mailing list