13 Sep, 2019

2 commits


13 Aug, 2019

1 commit


24 Apr, 2018

1 commit

  • EBT_MATCH and EBT_NOMATCH are used to change return value.
    match functions(ebt_xxx.c) return false when received frame is not matched
    and returns true when received frame is matched.
    but, EBT_MATCH_ITERATE understands oppositely.
    so, to change return value, EBT_MATCH and EBT_NOMATCH are used.
    but, we can use operation '!' simply.

    Signed-off-by: Taehee Yoo
    Signed-off-by: Pablo Neira Ayuso

    Taehee Yoo
     

02 Nov, 2017

1 commit

  • Many source files in the tree are missing licensing information, which
    makes it harder for compliance tools to determine the correct license.

    By default all files without license information are under the default
    license of the kernel, which is GPL version 2.

    Update the files which contain no license information with the 'GPL-2.0'
    SPDX license identifier. The SPDX identifier is a legally binding
    shorthand, which can be used instead of the full boiler plate text.

    This patch is based on work done by Thomas Gleixner and Kate Stewart and
    Philippe Ombredanne.

    How this work was done:

    Patches were generated and checked against linux-4.14-rc6 for a subset of
    the use cases:
    - file had no licensing information it it.
    - file was a */uapi/* one with no licensing information in it,
    - file was a */uapi/* one with existing licensing information,

    Further patches will be generated in subsequent months to fix up cases
    where non-standard license headers were used, and references to license
    had to be inferred by heuristics based on keywords.

    The analysis to determine which SPDX License Identifier to be applied to
    a file was done in a spreadsheet of side by side results from of the
    output of two independent scanners (ScanCode & Windriver) producing SPDX
    tag:value files created by Philippe Ombredanne. Philippe prepared the
    base worksheet, and did an initial spot review of a few 1000 files.

    The 4.13 kernel was the starting point of the analysis with 60,537 files
    assessed. Kate Stewart did a file by file comparison of the scanner
    results in the spreadsheet to determine which SPDX license identifier(s)
    to be applied to the file. She confirmed any determination that was not
    immediately clear with lawyers working with the Linux Foundation.

    Criteria used to select files for SPDX license identifier tagging was:
    - Files considered eligible had to be source code files.
    - Make and config files were included as candidates if they contained >5
    lines of source
    - File already had some variant of a license header in it (even if
    Reviewed-by: Philippe Ombredanne
    Reviewed-by: Thomas Gleixner
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     

29 Sep, 2017

1 commit


20 Jun, 2017

1 commit


16 May, 2017

1 commit

  • The info->target comes from userspace and it would be used directly.
    So we need to add the sanity check to make sure it is a valid standard
    target, although the ebtables tool has already checked it. Kernel needs
    to validate anything coming from userspace.

    If the target is set as an evil value, it would break the ebtables
    and cause a panic. Because the non-standard target is treated as one
    offset.

    Now add one helper function ebt_invalid_target, and we would replace
    the macro INVALID_TARGET later.

    Signed-off-by: Gao Feng
    Signed-off-by: Pablo Neira Ayuso

    Gao Feng
     

26 Apr, 2017

1 commit


03 Jul, 2016

1 commit

  • netfilter uses multiple FWINV #defines with identical form that hide a
    specific structure variable and dereference it with a invflags member.

    $ git grep "#define FWINV"
    include/linux/netfilter_bridge/ebtables.h:#define FWINV(bool,invflg) ((bool) ^ !!(info->invflags & invflg))
    net/bridge/netfilter/ebtables.c:#define FWINV2(bool, invflg) ((bool) ^ !!(e->invflags & invflg))
    net/ipv4/netfilter/arp_tables.c:#define FWINV(bool, invflg) ((bool) ^ !!(arpinfo->invflags & (invflg)))
    net/ipv4/netfilter/ip_tables.c:#define FWINV(bool, invflg) ((bool) ^ !!(ipinfo->invflags & (invflg)))
    net/ipv6/netfilter/ip6_tables.c:#define FWINV(bool, invflg) ((bool) ^ !!(ip6info->invflags & (invflg)))
    net/netfilter/xt_tcpudp.c:#define FWINVTCP(bool, invflg) ((bool) ^ !!(tcpinfo->invflags & (invflg)))

    Consolidate these macros into a single NF_INVF macro.

    Miscellanea:

    o Neaten the alignment around these uses
    o A few lines are > 80 columns for intelligibility

    Signed-off-by: Joe Perches
    Signed-off-by: Pablo Neira Ayuso

    Joe Perches
     

19 Sep, 2015

1 commit

  • Nearly everything thing of interest to ebt_do_table is already present
    in nf_hook_state. Simplify ebt_do_table by just passing in the skb,
    nf_hook_state, and the table. This make the code easier to read and
    maintenance easier.

    To support this create an nf_hook_state on the stack in ebt_broute
    (the only caller without a nf_hook_state already available). This new
    nf_hook_state adds no new computations to ebt_broute, but does use a
    few more bytes of stack.

    Signed-off-by: "Eric W. Biederman"
    Signed-off-by: Pablo Neira Ayuso

    Eric W. Biederman
     

24 Jun, 2015

1 commit

  • Pull trivial tree updates from Jiri Kosina:
    "As usual, mostly comment, kerneldoc and printk() fixes"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial:
    lpfc: Grammar s/an negative/a negative/
    ARM: lib/lib1funcs.S: fix typo s/substractions/subtractions/
    cx25821: cx25821-medusa-reg.h: fix 0x0x prefix
    lib: crc-itu-t.[ch] fix 0x0x prefix in integer constants
    rapidio: Fix kerneldoc and comment
    qla4xxx: Fix printk() in qla4_83xx_read_reset_template() and qla4_83xx_pre_loopback_config()
    treewide: Kconfig: fix wording / spelling
    usb/serial: fix grammar in Kconfig help text for FTDI_SIO
    megaraid_sas: fix kerneldoc
    netfilter: ebtables: fix comment grammar
    drm/radeon: fix comment
    isdn: fix grammar in comment
    ARM: KVM: fix comment

    Linus Torvalds
     

26 May, 2015

1 commit


14 Apr, 2015

1 commit

  • linux/if.h creates conflicts in userspace with net/if.h

    By using it here we force userspace to use linux/if.h while
    net/if.h may be needed.

    Note that:

    include/linux/netfilter_ipv4/ip_tables.h and
    include/linux/netfilter_ipv6/ip6_tables.h

    don't include linux/if.h and they also refer to IFNAMSIZ, so they are
    expecting userspace to include use net/if.h from the client program.

    Signed-off-by: Arturo Borrero Gonzalez
    Signed-off-by: Pablo Neira Ayuso

    Pablo Neira Ayuso
     

17 Oct, 2012

1 commit

  • Remove non-UAPI Kbuild files that have become empty as a result of UAPI
    disintegration. They used to have only header-y lines in them and those have
    now moved to the Kbuild files in the corresponding uapi/ directories.

    Possibly these should not be removed but rather have a comment inserted to say
    they are intentionally left blank. This would make it easier to add generated
    header lines in future without having to restore the infrastructure.

    Note that at this point not all the UAPI disintegration parts have been merged,
    so it is likely that more empty Kbuild files will turn up.

    It is probably necessary to make the files non-empty to prevent the patch
    program from automatically deleting them when it reduces them to nothing.

    Signed-off-by: David Howells

    David Howells
     

09 Oct, 2012

1 commit


21 Feb, 2012

1 commit

  • ebt_among extension of ebtables uses __alignof__(_xt_align) while the
    corresponding kernel module uses __alignof__(ebt_replace) to determine
    the alignment in EBT_ALIGN().

    These are the results of these values on different platforms:

    x86 x86_64 ppc
    __alignof__(_xt_align) 4 8 8
    __alignof__(ebt_replace) 4 8 4

    ebtables fails to add rules which use the among extension.

    I'm using kernel 2.6.33 and ebtables 2.0.10-4

    According to Bart De Schuymer, userspace alignment was changed to
    _xt_align to fix an alignment issue on a userspace32-kernel64 system
    (he thinks it was for an ARM device). So userspace must be right.
    The kernel alignment macro needs to change so it also uses _xt_align
    instead of ebt_replace. The userspace changes date back from
    June 29, 2009.

    Signed-off-by: Joerg Willmann
    Signed-off by: Bart De Schuymer
    Signed-off-by: Pablo Neira Ayuso

    Joerg Willmann
     

31 Mar, 2011

1 commit


21 Jan, 2011

1 commit


18 Jan, 2011

1 commit


13 Jan, 2011

1 commit


18 Oct, 2010

1 commit


15 Aug, 2010

1 commit


18 Jan, 2010

1 commit


05 Nov, 2009

1 commit

  • This cleanup patch puts struct/union/enum opening braces,
    in first line to ease grep games.

    struct something
    {

    becomes :

    struct something {

    Signed-off-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Eric Dumazet
     

24 Aug, 2009

1 commit


04 Nov, 2008

2 commits

  • * return ebt_table from ebt_register_table(), module code will save it into
    per-netns data for unregistration
    * duplicate ebt_table at the very beginning of registration -- it's added into
    list, so one ebt_table wouldn't end up in many lists (and each netns has
    different one)
    * introduce underscored tables in individial modules, this is temporary to not
    break bisection.

    Signed-off-by: Alexey Dobriyan
    Signed-off-by: Patrick McHardy

    Alexey Dobriyan
     
  • * propagate netns from userspace, register table in passed netns
    * remporarily register every ebt_table in init_net

    P. S.: one needs to add ".netns_ok = 1" to igmp_protocol to test with
    ebtables(8) in netns.

    Signed-off-by: Alexey Dobriyan
    Signed-off-by: Patrick McHardy

    Alexey Dobriyan
     

08 Oct, 2008

9 commits


10 Jun, 2008

1 commit

  • It implements matching functions for IPv6 address & traffic class
    (merged from the patch sent by Jan Engelhardt [jengelh@computergmbh.de]
    http://marc.info/?l=netfilter-devel&m=120182168424052&w=2), protocol,
    and layer-4 port id. Corresponding watcher logging function is also
    added for IPv6.

    Signed-off-by: Kuo-lang Tseng
    Signed-off-by: Patrick McHardy
    Signed-off-by: David S. Miller

    Kuo-lang Tseng
     

14 Apr, 2008

1 commit


16 Oct, 2007

1 commit