]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
curl_setup: provide a CURL_SA_FAMILY_T type if none exists
authorDaniel Stenberg <daniel@haxx.se>
Fri, 6 Apr 2018 13:26:04 +0000 (15:26 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Sat, 7 Apr 2018 09:19:46 +0000 (11:19 +0200)
... and use this type instead of 'sa_family_t' in the code since several
platforms don't have it.

Closes #2463

lib/curl_addrinfo.c
lib/curl_setup.h
lib/tftp.c

index 01775f7042582b0c4e71786e310a052597650404..55d5a3942dab6e22156154234150cd019c644dfc 100644 (file)
@@ -345,7 +345,7 @@ Curl_he2ai(const struct hostent *he, int port)
       addr = (void *)ai->ai_addr; /* storage area for this info */
 
       memcpy(&addr->sin_addr, curr, sizeof(struct in_addr));
-      addr->sin_family = (sa_family_t)(he->h_addrtype);
+      addr->sin_family = (CURL_SA_FAMILY_T)(he->h_addrtype);
       addr->sin_port = htons((unsigned short)port);
       break;
 
@@ -354,7 +354,7 @@ Curl_he2ai(const struct hostent *he, int port)
       addr6 = (void *)ai->ai_addr; /* storage area for this info */
 
       memcpy(&addr6->sin6_addr, curr, sizeof(struct in6_addr));
-      addr6->sin6_family = (sa_family_t)(he->h_addrtype);
+      addr6->sin6_family = (CURL_SA_FAMILY_T)(he->h_addrtype);
       addr6->sin6_port = htons((unsigned short)port);
       break;
 #endif
index e4503c64caccc63a602371d2824097e7b2291415..5593a3b5c29e424b6b36792536df6c8d837a0260 100644 (file)
@@ -795,4 +795,9 @@ endings either CRLF or LF so 't' is appropriate.
 #  endif
 # endif
 
+/* for systems that don't detect this in configure, use a sensible default */
+#ifndef CURL_SA_FAMILY_T
+#define CURL_SA_FAMILY_T unsigned short
+#endif
+
 #endif /* HEADER_CURL_SETUP_H */
index 7fd7b375182bb6cb06468955aba869a47344b2d2..b32960f82b8b9d2aa2ac29062bd51eda4d6bd15c 100644 (file)
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, 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
@@ -1010,7 +1010,7 @@ static CURLcode tftp_connect(struct connectdata *conn, bool *done)
   state->requested_blksize = blksize;
 
   ((struct sockaddr *)&state->local_addr)->sa_family =
-    (sa_family_t)(conn->ip_addr->ai_family);
+    (CURL_SA_FAMILY_T)(conn->ip_addr->ai_family);
 
   tftp_set_timeouts(state);