1. 10 2月, 2016 1 次提交
  2. 02 2月, 2016 4 次提交
  3. 09 1月, 2016 2 次提交
  4. 25 8月, 2015 1 次提交
  5. 07 6月, 2015 2 次提交
    • S
      batman-adv: Add required includes to all files · 1e2c2a4f
      Sven Eckelmann 提交于
      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: NMarkus Pargmann <mpa@pengutronix.de>
      Signed-off-by: NSven Eckelmann <sven@narfation.org>
      Signed-off-by: NMarek Lindner <mareklindner@neomailbox.ch>
      1e2c2a4f
    • A
      batman-adv: split name from variable for uint mesh attributes · 6f70eb75
      Antonio Quartulli 提交于
      Some mesh attributes are behind substructs in the
      batadv_priv object and for this reason the name cannot be
      used anymore to refer to them.
      
      This patch allows to specify the variable name where the
      attribute is stored inside batadv_priv instead of using the
      name
      Signed-off-by: NAntonio Quartulli <antonio@open-mesh.com>
      Signed-off-by: NMarek Lindner <mareklindner@neomailbox.ch>
      6f70eb75
  6. 29 5月, 2015 1 次提交
  7. 08 1月, 2015 1 次提交
  8. 08 7月, 2014 1 次提交
  9. 18 5月, 2014 2 次提交
  10. 22 3月, 2014 1 次提交
  11. 12 1月, 2014 1 次提交
  12. 09 1月, 2014 4 次提交
  13. 19 10月, 2013 2 次提交
  14. 10 10月, 2013 4 次提交
  15. 28 8月, 2013 1 次提交
  16. 10 6月, 2013 1 次提交
  17. 27 3月, 2013 1 次提交
  18. 14 3月, 2013 2 次提交
    • M
      batman-adv: network coding - add the initial infrastructure code · d353d8d4
      Martin Hundebøll 提交于
      Network coding exploits the 802.11 shared medium to allow multiple
      packets to be sent in a single transmission. In brief, a relay can XOR
      two packets, and send the coded packet to two destinations. The
      receivers can decode one of the original packets by XOR'ing the coded
      packet with the other original packet. This will lead to increased
      throughput in topologies where two packets cross one relay.
      
      In a simple topology with three nodes, it takes four transmissions
      without network coding to get one packet from Node A to Node B and one
      from Node B to Node A:
      
       1.  Node A  ---- p1 --->  Node R                Node B
       2.  Node A                Node R  <--- p2 ----  Node B
       3.  Node A  <--- p2 ----  Node R                Node B
       4.  Node A                Node R  ---- p1 --->  Node B
      
      With network coding, the relay only needs one transmission, which saves
      us one slot of valuable airtime:
      
       1.  Node A  ---- p1 --->  Node R                Node B
       2.  Node A                Node R  <--- p2 ----  Node B
       3.  Node A  <- p1 x p2 -  Node R  - p1 x p2 ->  Node B
      
      The same principle holds for a topology including five nodes. Here the
      packets from Node A and Node B are overheard by Node C and Node D,
      respectively. This allows Node R to send a network coded packet to save
      one transmission:
      
         Node A                  Node B
      
          |     \              /    |
          |      p1          p2     |
          |       \          /      |
          p1       > Node R <       p2
          |                         |
          |         /      \        |
          |    p1 x p2    p1 x p2   |
          v       /          \      v
                 /            \
         Node C <              > Node D
      
      More information is available on the open-mesh.org wiki[1].
      
      This patch adds the initial code to support network coding in
      batman-adv. It sets up a worker thread to do house keeping and adds a
      sysfs file to enable/disable network coding. The feature is disabled by
      default, as it requires a wifi-driver with working promiscuous mode, and
      also because it adds a small delay at each hop.
      
      [1] http://www.open-mesh.org/projects/batman-adv/wiki/CatwomanSigned-off-by: NMartin Hundebøll <martin@hundeboll.net>
      Signed-off-by: NMarek Lindner <lindner_marek@yahoo.de>
      Signed-off-by: NAntonio Quartulli <ordex@autistici.org>
      d353d8d4
    • M
      batman-adv: replace redundant primary_if_get calls · 736292c2
      Marek Lindner 提交于
      The batadv_priv struct carries a pointer to its own interface
      struct. Therefore, it is not necessary to retrieve the soft_iface
      via the primary interface.
      Signed-off-by: NMarek Lindner <lindner_marek@yahoo.de>
      Signed-off-by: NAntonio Quartulli <ordex@autistici.org>
      736292c2
  19. 19 1月, 2013 1 次提交
  20. 15 11月, 2012 1 次提交
  21. 08 11月, 2012 1 次提交
  22. 29 10月, 2012 1 次提交
  23. 02 7月, 2012 4 次提交