]> git.ipfire.org Git - thirdparty/strongswan.git/commitdiff
dumm: Fix -Wformat warning in ruby extension
authorMartin Willi <martin@revosec.ch>
Wed, 10 Dec 2014 13:26:14 +0000 (14:26 +0100)
committerMartin Willi <martin@revosec.ch>
Wed, 10 Dec 2014 13:29:19 +0000 (14:29 +0100)
In recent ruby versions, extensions get built with -Wformat. As we use custom
printf specifiers, that does not work for us. As there does not seem to be a
reliable way to override -Wformat, we use a variable for the format string,
which prevents gcc from doing the -Wformat check in that particular situation.

src/dumm/ext/dumm.c

index d791c089d17edc9326d3e72f19c1ed82ab087d93..df7ec47032ada998f75c86a444af4884d17eae58 100644 (file)
@@ -629,7 +629,7 @@ static VALUE iface_each_addr(int argc, VALUE *argv, VALUE self)
        linked_list_t *list;
        iface_t *iface;
        host_t *addr;
-       char buf[64];
+       char buf[64], *fmt = "%H";
 
        if (!rb_block_given_p())
        {
@@ -645,7 +645,7 @@ static VALUE iface_each_addr(int argc, VALUE *argv, VALUE self)
        enumerator->destroy(enumerator);
        while (list->remove_first(list, (void**)&addr) == SUCCESS)
        {
-               snprintf(buf, sizeof(buf), "%H", addr);
+               snprintf(buf, sizeof(buf), fmt, addr);
                addr->destroy(addr);
                rb_yield(rb_str_new2(buf));
        }