]> granicus.if.org Git - curl/commitdiff
addrinfo: fix compiler warning on offsetof() use
authorDaniel Stenberg <daniel@haxx.se>
Fri, 13 Jan 2017 22:58:22 +0000 (23:58 +0100)
committerDaniel Stenberg <daniel@haxx.se>
Fri, 13 Jan 2017 23:00:07 +0000 (00:00 +0100)
curl_addrinfo.c:519:20: error: conversion to ‘curl_socklen_t {aka
unsigned int}’ from ‘long unsigned int’ may alter its value
[-Werror=conversion]

Follow-up to 1d786faee1046f

lib/curl_addrinfo.c

index 7182a0066f745d2d18c823811e5d9a08c1dbf3b2..3dbfb3ebf4388a8da6edb76d271664caea6468bd 100644 (file)
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -516,7 +516,8 @@ Curl_addrinfo *Curl_unix2addr(const char *path, bool *longpath, bool abstract)
 
   ai->ai_family = AF_UNIX;
   ai->ai_socktype = SOCK_STREAM; /* assume reliable transport for HTTP */
-  ai->ai_addrlen = offsetof(struct sockaddr_un, sun_path) + path_len;
+  ai->ai_addrlen = (curl_socklen_t)
+    ((offsetof(struct sockaddr_un, sun_path) + path_len) & 0x7FFFFFFF);
 
   /* Abstract Unix domain socket have NULL prefix instead of suffix */
   if(abstract)