[OpenWrt-Devel] [PATCH] firewall: Fix Wformat-nonliteral warning

Rosen Penev rosenp at gmail.com
Sun Dec 1 21:08:40 EST 2019


> On Dec 1, 2019, at 5:55 AM, Jonas Gorski <jonas.gorski at gmail.com> wrote:
> 
> Hi,
> 
>> On Fri, 29 Nov 2019 at 22:06, Rosen Penev <rosenp at gmail.com> wrote:
>> 
>> Allows GCC to check the formats by switching to a define, which is a
>> constant expression.
>> 
>> Fixes:
>> 
>> warning: format not a string literal, argument types not checked
>> [-Wformat-nonliteral]
>>  207 |  snprintf(buf, sizeof(buf), tmpl, include->path);
>> 
>> Signed-off-by: Rosen Penev <rosenp at gmail.com>
>> ---
>> includes.c | 10 +++++-----
>> 1 file changed, 5 insertions(+), 5 deletions(-)
>> 
>> diff --git a/includes.c b/includes.c
>> index 23b2244..1e759fb 100644
>> --- a/includes.c
>> +++ b/includes.c
>> @@ -188,11 +188,11 @@ run_include(struct fw3_include *include)
>> {
>>        int rv;
>>        struct stat s;
>> -       const char *tmpl =
>> -               "config() { "
>> -                       "echo \"You cannot use UCI in firewall includes!\" >&2; "
>> -                       "exit 1; "
>> -               "}; . %s";
>> +       #define tmpl \
>> +               "config() { " \
>> +                       "echo \"You cannot use UCI in firewall includes!\" >&2; " \
>> +                       "exit 1; " \
>> +               "}; . %s"
> 
> defines are global
Unfortunately 
> , so they should be at top of the file, use caps for
> the name, and have a less generic name than "templ" (or "format").
> Same comment for the other patches doing the same thing.
I’ll see about doing that.
> 
> 
> Regards
> Jonas

_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


More information about the openwrt-devel mailing list