]> git.meshlink.io Git - catta/commitdiff
Fix varargs warning for catta_server_add_service().
authorGuus Sliepen <guus@sliepen.org>
Mon, 23 Sep 2019 12:12:28 +0000 (14:12 +0200)
committerGuus Sliepen <guus@sliepen.org>
Mon, 23 Sep 2019 12:12:28 +0000 (14:12 +0200)
Promote the type of the port argument, which comes right before any variable
arguments, to ensure va_start() doesn't run into undefined behaviour.

The alternative would be to shuffle the arguments so that a pointer is
the last non-variable argument, but that would break the ABI.

include/catta/publish.h
src/entry.c

index ac39c9642b7ae31e8c03e37f0e45491f9902960b..1ebedb6ac53a25e46af4e9e1648c6d3c4530b6c3 100644 (file)
@@ -114,7 +114,7 @@ int catta_server_add_service(
     const char *type,         /**< DNS-SD type, e.g. "_http._tcp" */
     const char *domain,
     const char *host,         /**< Host name where this servcie resides, or NULL if on the local host */
-    uint16_t port,              /**< Port number of the service */
+    unsigned int port,        /**< Port number of the service */
     ...  /**< Text records, terminated by NULL */) CATTA_GCC_SENTINEL;
 
 /** Mostly identical to catta_server_add_service(), but takes an CattaStringList object for the TXT records.  The CattaStringList object is copied. */
index afa972adb4bc5d1dbc56766e6042575af6cc7a84..b408701a3024259a44a8e7ab2f96ccb0158aad7b 100644 (file)
@@ -715,7 +715,7 @@ int catta_server_add_service(
     const char *type,
     const char *domain,
     const char *host,
-    uint16_t port,
+    unsigned int port,
     ... ){
 
     va_list va;