ACK: [PATCH] lib: fwts_hwinfo: clean up type punning, fixes warning with gcc-6
Alex Hung
alex.hung at canonical.com
Mon Jan 18 06:57:12 UTC 2016
On 2016-01-14 12:09 AM, Colin King wrote:
> From: Colin Ian King <colin.king at canonical.com>
>
> Signed-off-by: Colin Ian King <colin.king at canonical.com>
> ---
> src/lib/src/fwts_hwinfo.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/src/lib/src/fwts_hwinfo.c b/src/lib/src/fwts_hwinfo.c
> index 6a0a9aa..e8f7c05 100644
> --- a/src/lib/src/fwts_hwinfo.c
> +++ b/src/lib/src/fwts_hwinfo.c
> @@ -381,7 +381,7 @@ static int fwts_hwinfo_net_get(
>
> while ((d = readdir(dp)) != NULL) {
> struct ifreq buf;
> - struct in_addr in_addr;
> + struct sockaddr_in *sockaddr;
> fwts_net_config *net_config;
>
> if (d->d_name[0] == '.')
> @@ -416,8 +416,8 @@ static int fwts_hwinfo_net_get(
> fwts_log_error(fw, "Cannot get address for device %s.", d->d_name);
> }
> /* GCC 4.4 is rather overly pedantic in strict aliasing warnings, this avoids it */
> - in_addr = (struct in_addr)((struct sockaddr_in *)&buf.ifr_addr)->sin_addr;
> - net_config->addr = strdup(inet_ntoa(in_addr));
> + sockaddr = (struct sockaddr_in *)&buf.ifr_addr;
> + net_config->addr = strdup(inet_ntoa((struct in_addr)sockaddr->sin_addr));
> if (net_config->addr == NULL) {
> fwts_log_error(fw, "Cannot allocate net config H/W address.");
> fwts_hwinfo_net_free(net_config);
>
Acked-by: Alex Hung <alex.hung at canonical.com>
More information about the fwts-devel
mailing list