[PATCH iproute2] Fix compile warning in get_addr_1

2016-12-13 Thread David Ahern
A recent cleanup causes a compile warning on Debian jessie:

CC   utils.o
utils.c: In function ‘get_addr_1’:
utils.c:486:21: warning: passing argument 1 of ‘ll_addr_a2n’ from incompatible 
pointer type
   len = ll_addr_a2n(&addr->data, sizeof(addr->data), name);
 ^
In file included from utils.c:34:0:
../include/rt_names.h:27:5: note: expected ‘char *’ but argument is of type 
‘__u32 (*)[8]’
 int ll_addr_a2n(char *lladdr, int len, const char *arg);
 ^

Revert the removal of the typecast

Fixes: e1933b928125 ("utils: cleanup style")
Signed-off-by: David Ahern 
---
 lib/utils.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/lib/utils.c b/lib/utils.c
index 316b048abcfc..83c9d097c608 100644
--- a/lib/utils.c
+++ b/lib/utils.c
@@ -483,7 +483,8 @@ int get_addr_1(inet_prefix *addr, const char *name, int 
family)
if (family == AF_PACKET) {
int len;
 
-   len = ll_addr_a2n(&addr->data, sizeof(addr->data), name);
+   len = ll_addr_a2n((char *) &addr->data, sizeof(addr->data),
+ name);
if (len < 0)
return -1;
 
-- 
2.1.4



Re: [PATCH iproute2] Fix compile warning in get_addr_1

2016-12-14 Thread Stephen Hemminger
On Tue, 13 Dec 2016 15:34:32 -0800
David Ahern  wrote:

> A recent cleanup causes a compile warning on Debian jessie:
> 
> CC   utils.o
> utils.c: In function ‘get_addr_1’:
> utils.c:486:21: warning: passing argument 1 of ‘ll_addr_a2n’ from 
> incompatible pointer type
>len = ll_addr_a2n(&addr->data, sizeof(addr->data), name);
>  ^
> In file included from utils.c:34:0:
> ../include/rt_names.h:27:5: note: expected ‘char *’ but argument is of type 
> ‘__u32 (*)[8]’
>  int ll_addr_a2n(char *lladdr, int len, const char *arg);
>  ^
> 
> Revert the removal of the typecast
> 
> Fixes: e1933b928125 ("utils: cleanup style")
> Signed-off-by: David Ahern 
> ---
>  lib/utils.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/lib/utils.c b/lib/utils.c
> index 316b048abcfc..83c9d097c608 100644
> --- a/lib/utils.c
> +++ b/lib/utils.c
> @@ -483,7 +483,8 @@ int get_addr_1(inet_prefix *addr, const char *name, int 
> family)
>   if (family == AF_PACKET) {
>   int len;
>  
> - len = ll_addr_a2n(&addr->data, sizeof(addr->data), name);
> + len = ll_addr_a2n((char *) &addr->data, sizeof(addr->data),
> +   name);
>   if (len < 0)
>   return -1;
>  

Thanks was accidental.