2009-06-27 17:05:10

by Jaswinder Singh Rajput

[permalink] [raw]
Subject: [PATCH] headers_check fix: linux/netfilter/xt_osf.h


fix the following 'make headers_check' warnings:

usr/include/linux/netfilter/xt_osf.h:40: found __[us]{8,16,32,64} type without #include <linux/types.h>

Signed-off-by: Jaswinder Singh Rajput <[email protected]>
---
include/linux/netfilter/xt_osf.h | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/include/linux/netfilter/xt_osf.h b/include/linux/netfilter/xt_osf.h
index fd2272e..18afa49 100644
--- a/include/linux/netfilter/xt_osf.h
+++ b/include/linux/netfilter/xt_osf.h
@@ -20,6 +20,8 @@
#ifndef _XT_OSF_H
#define _XT_OSF_H

+#include <linux/types.h>
+
#define MAXGENRELEN 32

#define XT_OSF_GENRE (1<<0)
--
1.6.0.6



2009-06-27 17:52:26

by Evgeniy Polyakov

[permalink] [raw]
Subject: Re: [PATCH] headers_check fix: linux/netfilter/xt_osf.h

Hi.

On Sat, Jun 27, 2009 at 10:01:04PM +0530, Jaswinder Singh Rajput ([email protected]) wrote:
> fix the following 'make headers_check' warnings:
>
> usr/include/linux/netfilter/xt_osf.h:40: found __[us]{8,16,32,64} type without #include <linux/types.h>
>
> Signed-off-by: Jaswinder Singh Rajput <[email protected]>

Looks good, thank you.
Patrick, please apply.

--
Evgeniy Polyakov

2009-06-27 22:24:39

by Sam Ravnborg

[permalink] [raw]
Subject: Re: [PATCH] headers_check fix: linux/netfilter/xt_osf.h

On Sat, Jun 27, 2009 at 09:52:09PM +0400, Evgeniy Polyakov wrote:
> Hi.
>
> On Sat, Jun 27, 2009 at 10:01:04PM +0530, Jaswinder Singh Rajput ([email protected]) wrote:
> > fix the following 'make headers_check' warnings:
> >
> > usr/include/linux/netfilter/xt_osf.h:40: found __[us]{8,16,32,64} type without #include <linux/types.h>
> >
> > Signed-off-by: Jaswinder Singh Rajput <[email protected]>
>
> Looks good, thank you.
> Patrick, please apply.

What about the other potential issues in the same file?
struct xt_osf_opt {
__u16 kind, length;
struct xt_osf_wc wc;
};

Do we know that struct xt_osf_wc is always aligned at a two byte
address also on 64 bit?
Do we know that sizeof(struct xt_osf_opt) is the same
on all platforms?

struct xt_osf_user_finger {
struct xt_osf_wc wss;

__u8 ttl, df;
__u16 ss, mss;
__u16 opt_num;

char genre[MAXGENRELEN];
char version[MAXGENRELEN];
char subtype[MAXGENRELEN];

/* MAX_IPOPTLEN is maximum if all options are NOPs or EOLs */
struct xt_osf_opt opt[MAX_IPOPTLEN];
};

Do we know that opt[MAX_IPOPTLEN] always start at the same offset
with different architectures?

struct xt_osf_nlmsg {
struct xt_osf_user_finger f;
struct iphdr ip;
struct tcphdr tcp;
};

We do not knwo struct iphdr/tcphdr - missing include.
Do we know the alignment of the above structs?
Are they always the same on all archs?

Sam

2009-06-28 05:18:45

by Jaswinder Singh Rajput

[permalink] [raw]
Subject: Re: [PATCH] headers_check fix: linux/netfilter/xt_osf.h

On Sun, 2009-06-28 at 00:00 +0200, Sam Ravnborg wrote:
> On Sat, Jun 27, 2009 at 09:52:09PM +0400, Evgeniy Polyakov wrote:
> > Hi.
> >
> > On Sat, Jun 27, 2009 at 10:01:04PM +0530, Jaswinder Singh Rajput ([email protected]) wrote:
> > > fix the following 'make headers_check' warnings:
> > >
> > > usr/include/linux/netfilter/xt_osf.h:40: found __[us]{8,16,32,64} type without #include <linux/types.h>
> > >
> > > Signed-off-by: Jaswinder Singh Rajput <[email protected]>
> >
> > Looks good, thank you.
> > Patrick, please apply.
>
> What about the other potential issues in the same file?
> struct xt_osf_opt {
> __u16 kind, length;
> struct xt_osf_wc wc;
> };
>
> Do we know that struct xt_osf_wc is always aligned at a two byte
> address also on 64 bit?
> Do we know that sizeof(struct xt_osf_opt) is the same
> on all platforms?
>
> struct xt_osf_user_finger {
> struct xt_osf_wc wss;
>
> __u8 ttl, df;
> __u16 ss, mss;
> __u16 opt_num;
>
> char genre[MAXGENRELEN];
> char version[MAXGENRELEN];
> char subtype[MAXGENRELEN];
>
> /* MAX_IPOPTLEN is maximum if all options are NOPs or EOLs */
> struct xt_osf_opt opt[MAX_IPOPTLEN];
> };
>
> Do we know that opt[MAX_IPOPTLEN] always start at the same offset
> with different architectures?
>
> struct xt_osf_nlmsg {
> struct xt_osf_user_finger f;
> struct iphdr ip;
> struct tcphdr tcp;
> };
>
> We do not knwo struct iphdr/tcphdr - missing include.
> Do we know the alignment of the above structs?
> Are they always the same on all archs?
>

If you want to fix it, then send it in different patch.

Do not mix up things, Please.

--
JSR


2009-06-28 09:56:55

by Evgeniy Polyakov

[permalink] [raw]
Subject: Re: [PATCH] headers_check fix: linux/netfilter/xt_osf.h

On Sun, Jun 28, 2009 at 12:00:07AM +0200, Sam Ravnborg ([email protected]) wrote:
> What about the other potential issues in the same file?
> struct xt_osf_opt {
> __u16 kind, length;
> struct xt_osf_wc wc;
> };
>
> Do we know that struct xt_osf_wc is always aligned at a two byte
> address also on 64 bit?

Why 2 bytes? It is 4 bytes aligned everywhere everytime.

> Do we know that sizeof(struct xt_osf_opt) is the same
> on all platforms?

Yes.

> struct xt_osf_user_finger {
> struct xt_osf_wc wss;
>
> __u8 ttl, df;
> __u16 ss, mss;
> __u16 opt_num;
>
> char genre[MAXGENRELEN];
> char version[MAXGENRELEN];
> char subtype[MAXGENRELEN];
>
> /* MAX_IPOPTLEN is maximum if all options are NOPs or EOLs */
> struct xt_osf_opt opt[MAX_IPOPTLEN];
> };
>
> Do we know that opt[MAX_IPOPTLEN] always start at the same offset
> with different architectures?

Yes.

> struct xt_osf_nlmsg {
> struct xt_osf_user_finger f;
> struct iphdr ip;
> struct tcphdr tcp;
> };
>
> We do not knwo struct iphdr/tcphdr - missing include.
> Do we know the alignment of the above structs?
> Are they always the same on all archs?

You won't believe...

--
Evgeniy Polyakov

2009-06-29 12:29:17

by Patrick McHardy

[permalink] [raw]
Subject: Re: [PATCH] headers_check fix: linux/netfilter/xt_osf.h

Jaswinder Singh Rajput wrote:
> fix the following 'make headers_check' warnings:
>
> usr/include/linux/netfilter/xt_osf.h:40: found __[us]{8,16,32,64} type without #include <linux/types.h>
>

Applied, thanks.