01 Jan, 2020

1 commit


25 May, 2019

1 commit

  • While it can be slightly beneficial for the build performance to use
    forward declarations instead of includes, the handling of them together
    with changes in the included headers makes it unnecessary complicated and
    fragile. Just replace them with actual includes since some parts (hwmon,
    ..) of the kernel even request avoidance of forward declarations and net/
    is mostly not using them in *.c file.

    Signed-off-by: Sven Eckelmann
    Signed-off-by: Simon Wunderlich

    Sven Eckelmann
     

25 Mar, 2019

1 commit

  • All files got a SPDX-License-Identifier with commit 7db7d9f369a4
    ("batman-adv: Add SPDX license identifier above copyright header"). All the
    required information about the license conditions can be found in
    LICENSES/.

    Signed-off-by: Sven Eckelmann
    Signed-off-by: Simon Wunderlich

    Sven Eckelmann
     

04 Jan, 2019

1 commit


27 Feb, 2018

1 commit


16 Dec, 2017

1 commit

  • The "Linux kernel licensing rules" require that each file has a SPDX
    license identifier as first line (and sometimes as second line).

    The FSFE REUSE practices [1] would also require the same tags but have no
    restrictions on the placement in the source file. Using the "Linux kernel
    licensing rules" is therefore also fulfilling the FSFE REUSE practices
    requirements at the same time.

    [1] https://reuse.software/practices/

    Signed-off-by: Sven Eckelmann
    Signed-off-by: Simon Wunderlich

    Sven Eckelmann
     

26 Jan, 2017

1 commit


10 May, 2016

3 commits


23 Feb, 2016

1 commit


02 Feb, 2016

1 commit


25 Aug, 2015

1 commit


07 Jun, 2015

1 commit

  • The header files could not be build indepdent from each other. This is
    happened because headers didn't include the files for things they've used.
    This was problematic because the success of a build depended on the
    knowledge about the right order of local includes.

    Also source files were not including everything they've used explicitly.
    Instead they required that transitive includes are always stable. This is
    problematic because some transitive includes are not obvious, depend on
    config settings and may not be stable in the future.

    The order for include blocks are:

    * primary headers (main.h and the *.h file of a *.c file)
    * global linux headers
    * required local headers
    * extra forward declarations for pointers in function/struct declarations

    The only exceptions are linux/bitops.h and linux/if_ether.h in packet.h.
    This header file is shared with userspace applications like batctl and must
    therefore build together with userspace applications. The header
    linux/bitops.h is not part of the uapi headers and linux/if_ether.h
    conflicts with the musl implementation of netinet/if_ether.h. The
    maintainers rejected the use of __KERNEL__ preprocessor checks and thus
    these two headers are only in main.h. All files using packet.h first have
    to include main.h to work correctly.

    Reported-by: Markus Pargmann
    Signed-off-by: Sven Eckelmann
    Signed-off-by: Marek Lindner

    Sven Eckelmann
     

29 May, 2015

1 commit


12 Jan, 2014

1 commit


09 Jan, 2014

1 commit


19 Oct, 2013

2 commits

  • Each VLAN can now have its own set of attributes which are
    exported through a new subfolder in the sysfs tree.
    Each VLAN created on top of a soft_iface will have its own
    subfolder.

    The subfolder is named "vlan%VID" and it is created inside
    the "mesh" sysfs folder belonging to batman-adv.

    Attributes corresponding to the untagged LAN are stored in
    the root sysfs folder as before.

    This patch also creates all the needed macros and data
    structures to easily handle new VLAN spacific attributes.

    Signed-off-by: Antonio Quartulli
    Signed-off-by: Marek Lindner

    Antonio Quartulli
     
  • Since batman-adv is now fully VLAN-aware, a proper framework
    able to handle per-vlan-interface attributes is needed.

    Those attributes will affect the associated VLAN interface
    only, rather than the real soft_iface (which would result
    in every vlan interface having the same attribute
    configuration).

    To make the code simpler and easier to extend, attributes
    associated to the standalone soft_iface are now treated
    like belonging to yet another vlan having a special vid.
    This vid is different from the others because it is made up
    by all zeros and the VLAN_HAS_TAG bit is not set.

    Signed-off-by: Antonio Quartulli
    Signed-off-by: Marek Lindner

    Antonio Quartulli
     

27 Mar, 2013

2 commits


19 Jan, 2013

1 commit


23 Aug, 2012

1 commit

  • In order to understand where a broadcast packet is coming from and use
    this information to detect not yet announced clients, this patch modifies the
    interface_rx() function by passing a new argument: the orig node
    corresponding to the node that originated the received packet (if known).
    This new argument if not NULL for broadcast packets only (other packets does not
    have source field).

    Signed-off-by: Antonio Quartulli

    Antonio Quartulli
     

02 Jul, 2012

1 commit


21 Jun, 2012

2 commits


11 Apr, 2012

1 commit


17 Feb, 2012

1 commit


20 Jun, 2011

1 commit


30 May, 2011

1 commit


05 Mar, 2011

2 commits


31 Jan, 2011

1 commit


17 Dec, 2010

1 commit

  • B.A.T.M.A.N. (better approach to mobile ad-hoc networking) is a routing
    protocol for multi-hop ad-hoc mesh networks. The networks may be wired or
    wireless. See http://www.open-mesh.org/ for more information and user space
    tools.

    Signed-off-by: Sven Eckelmann
    Signed-off-by: David S. Miller

    Sven Eckelmann