Brad Bishop | c342db3 | 2019-05-15 21:57:59 -0400 | [diff] [blame] | 1 | From 907e429d7548157016cd51aba4adc5d0c7d9f816 Mon Sep 17 00:00:00 2001 |
| 2 | From: =?UTF-8?q?Adam=20Go=C5=82=C4=99biowski?= <adamg@pld-linux.org> |
| 3 | Date: Wed, 14 Nov 2018 07:35:28 +0100 |
| 4 | Subject: extensions: format-security fixes in libip[6]t_icmp |
| 5 | MIME-Version: 1.0 |
| 6 | Content-Type: text/plain; charset=UTF-8 |
| 7 | Content-Transfer-Encoding: 8bit |
| 8 | |
| 9 | commit 61d6c3834de3 ("xtables: add 'printf' attribute to xlate_add") |
| 10 | introduced support for gcc feature to check format string against passed |
| 11 | argument. This commit adds missing bits to extenstions's libipt_icmp.c |
| 12 | and libip6t_icmp6.c that were causing build to fail. |
| 13 | |
| 14 | Fixes: 61d6c3834de3 ("xtables: add 'printf' attribute to xlate_add") |
| 15 | Signed-off-by: Adam Gołębiowski <adamg@pld-linux.org> |
| 16 | Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org> |
| 17 | |
| 18 | Upstream-Status: Backport |
| 19 | --- |
| 20 | extensions/libip6t_icmp6.c | 4 ++-- |
| 21 | extensions/libipt_icmp.c | 2 +- |
| 22 | 2 files changed, 3 insertions(+), 3 deletions(-) |
| 23 | |
| 24 | diff --git a/extensions/libip6t_icmp6.c b/extensions/libip6t_icmp6.c |
| 25 | index 45a71875..cc7bfaeb 100644 |
| 26 | --- a/extensions/libip6t_icmp6.c |
| 27 | +++ b/extensions/libip6t_icmp6.c |
| 28 | @@ -230,7 +230,7 @@ static unsigned int type_xlate_print(struct xt_xlate *xl, unsigned int icmptype, |
| 29 | type_name = icmp6_type_xlate(icmptype); |
| 30 | |
| 31 | if (type_name) { |
| 32 | - xt_xlate_add(xl, type_name); |
| 33 | + xt_xlate_add(xl, "%s", type_name); |
| 34 | } else { |
| 35 | for (i = 0; i < ARRAY_SIZE(icmpv6_codes); ++i) |
| 36 | if (icmpv6_codes[i].type == icmptype && |
| 37 | @@ -239,7 +239,7 @@ static unsigned int type_xlate_print(struct xt_xlate *xl, unsigned int icmptype, |
| 38 | break; |
| 39 | |
| 40 | if (i != ARRAY_SIZE(icmpv6_codes)) |
| 41 | - xt_xlate_add(xl, icmpv6_codes[i].name); |
| 42 | + xt_xlate_add(xl, "%s", icmpv6_codes[i].name); |
| 43 | else |
| 44 | return 0; |
| 45 | } |
| 46 | diff --git a/extensions/libipt_icmp.c b/extensions/libipt_icmp.c |
| 47 | index 54189976..e76257c5 100644 |
| 48 | --- a/extensions/libipt_icmp.c |
| 49 | +++ b/extensions/libipt_icmp.c |
| 50 | @@ -236,7 +236,7 @@ static unsigned int type_xlate_print(struct xt_xlate *xl, unsigned int icmptype, |
| 51 | if (icmp_codes[i].type == icmptype && |
| 52 | icmp_codes[i].code_min == code_min && |
| 53 | icmp_codes[i].code_max == code_max) { |
| 54 | - xt_xlate_add(xl, icmp_codes[i].name); |
| 55 | + xt_xlate_add(xl, "%s", icmp_codes[i].name); |
| 56 | return 1; |
| 57 | } |
| 58 | } |
| 59 | -- |
| 60 | cgit v1.2.1 |
| 61 | |