Patchwork [iproute2] Fix compilation error of m_ipt.c with -Werror enabled

login
register
mail settings
Submitter Vijay Subramanian
Date Feb. 26, 2013, 7:12 p.m.
Message ID <1361905927-31534-1-git-send-email-subramanian.vijay@gmail.com>
Download mbox | patch
Permalink /patch/223375/
State Accepted
Delegated to: stephen hemminger
Headers show

Comments

Vijay Subramanian - Feb. 26, 2013, 7:12 p.m.
Commit (5a650703d47e10aa386406c855eff5a593b2120b Makefile: make warnings into
errors ) causes the following build error.

gcc -Wall -Wstrict-prototypes -Werror -Wmissing-prototypes
-Wmissing-declarations -Wold-style-definition -O2 -I../include
-DRESOLVE_HOSTNAMES -DLIBDIR=\"/usr/lib\" -DCONFDIR=\"/etc/iproute2\"
-D_GNU_SOURCE -DCONFIG_GACT -DCONFIG_GACT_PROB -DIPT_LIB_DIR=\"/lib/xtables\"
-DYY_NO_INPUT   -c -o m_ipt.o m_ipt.c
cc1: warnings being treated as errors
m_ipt.c:72: error: no previous prototype for 'xtables_register_target'
m_ipt.c:361: error: no previous prototype for 'build_st'
make[1]: *** [m_ipt.o] Error 1

This is fixed by adding the prototype in the header include/iptables.h

I am not sure if this is due to something wrong on my build system but I am
using current glibc 2.17.


Signed-off-by: Vijay Subramanian <subramanian.vijay@gmail.com>
---
 include/iptables.h |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)
Vijay Subramanian - Feb. 26, 2013, 7:23 p.m.
On 26 February 2013 11:12, Vijay Subramanian
<subramanian.vijay@gmail.com> wrote:
> Commit (5a650703d47e10aa386406c855eff5a593b2120b Makefile: make warnings into
> errors ) causes the following build error.
>

A similar error occurs for misc/ss.c

gcc -Wall -Wstrict-prototypes -Werror -Wmissing-prototypes
-Wmissing-declarations -Wold-style-definition -O2
-I../include -DRESOLVE_HOSTNAMES -DLIBDIR=\"/usr/lib\"
-DCONFDIR=\"/etc/iproute2\" -D_GNU_SOURCE   -c -o ss.o ss.c
cc1: warnings being treated as errors
ss.c: In function 'user_ent_hash_build':
ss.c:300: error: ignoring return value of 'fscanf', declared with
attribute warn_unused_result
ss.c: In function 'get_slabstat':
ss.c:382: error: ignoring return value of 'fgets', declared with
attribute warn_unused_result
ss.c: In function 'init_service_resolver':
ss.c:506: error: ignoring return value of 'fgets', declared with
attribute warn_unused_result
---cut---

Not sure what is the best fix for this but can send a patch based on
suggestions.
I am using "Ubuntu 10.04.1 LTS" with ldd (GNU libc) 2.17.


Vijay
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
stephen hemminger - Feb. 27, 2013, 1:36 a.m.
On Tue, 26 Feb 2013 11:12:07 -0800
Vijay Subramanian <subramanian.vijay@gmail.com> wrote:

> Commit (5a650703d47e10aa386406c855eff5a593b2120b Makefile: make warnings into
> errors ) causes the following build error.
> 
> gcc -Wall -Wstrict-prototypes -Werror -Wmissing-prototypes
> -Wmissing-declarations -Wold-style-definition -O2 -I../include
> -DRESOLVE_HOSTNAMES -DLIBDIR=\"/usr/lib\" -DCONFDIR=\"/etc/iproute2\"
> -D_GNU_SOURCE -DCONFIG_GACT -DCONFIG_GACT_PROB -DIPT_LIB_DIR=\"/lib/xtables\"
> -DYY_NO_INPUT   -c -o m_ipt.o m_ipt.c
> cc1: warnings being treated as errors
> m_ipt.c:72: error: no previous prototype for 'xtables_register_target'
> m_ipt.c:361: error: no previous prototype for 'build_st'
> make[1]: *** [m_ipt.o] Error 1
> 
> This is fixed by adding the prototype in the header include/iptables.h
> 
> I am not sure if this is due to something wrong on my build system but I am
> using current glibc 2.17.
> 
> 
> Signed-off-by: Vijay Subramanian <subramanian.vijay@gmail.com>

Applied, thanks

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Petr Sabata - Feb. 27, 2013, 2:53 p.m.
On Tue, Feb 26, 2013 at 11:23:45AM -0800, Vijay Subramanian wrote:
> On 26 February 2013 11:12, Vijay Subramanian
> <subramanian.vijay@gmail.com> wrote:
> > Commit (5a650703d47e10aa386406c855eff5a593b2120b Makefile: make warnings into
> > errors ) causes the following build error.
> >
> 
> A similar error occurs for misc/ss.c

Yep, also in misc/ifstat.c and misc/nstat.c on ftruncate() ...

P

Patch

diff --git a/include/iptables.h b/include/iptables.h
index dd844c1..f1e62e2 100644
--- a/include/iptables.h
+++ b/include/iptables.h
@@ -143,6 +143,8 @@  extern int line;
 /* Your shared library should call one of these. */
 extern void register_match(struct iptables_match *me);
 extern void register_target(struct iptables_target *me);
+extern void xtables_register_target(struct iptables_target *me);
+extern int build_st(struct iptables_target *target, struct ipt_entry_target *t);
 
 extern struct in_addr *dotted_to_addr(const char *dotted);
 extern char *addr_to_dotted(const struct in_addr *addrp);