1. 06 9月, 2018 1 次提交
    • S
      batman-adv: Fix segfault when writing to throughput_override · b9fd14c2
      Sven Eckelmann 提交于
      The per hardif sysfs file "batman_adv/throughput_override" prints the
      resulting change as info text when the users writes to this file. It uses
      the helper function batadv_info to add it at the same time to the kernel
      ring buffer and to the batman-adv debug log (when CONFIG_BATMAN_ADV_DEBUG
      is enabled).
      
      The function batadv_info requires as first parameter the batman-adv softif
      net_device. This parameter is then used to find the private buffer which
      contains the debug log for this batman-adv interface. But
      batadv_store_throughput_override used as first argument the slave
      net_device. This slave device doesn't have the batadv_priv private data
      which is access by batadv_info.
      
      Writing to this file with CONFIG_BATMAN_ADV_DEBUG enabled can either lead
      to a segfault or to memory corruption.
      
      Fixes: 0b5ecc68 ("batman-adv: add throughput override attribute to hard_ifaces")
      Signed-off-by: NSven Eckelmann <sven@narfation.org>
      Acked-by: NMarek Lindner <mareklindner@neomailbox.ch>
      Signed-off-by: NSimon Wunderlich <sw@simonwunderlich.de>
      b9fd14c2
  2. 27 2月, 2018 1 次提交
  3. 22 12月, 2017 1 次提交
  4. 16 12月, 2017 5 次提交
  5. 28 9月, 2017 1 次提交
  6. 26 1月, 2017 1 次提交
  7. 19 10月, 2016 1 次提交
  8. 09 8月, 2016 4 次提交
  9. 04 7月, 2016 1 次提交
  10. 30 6月, 2016 4 次提交
  11. 10 5月, 2016 2 次提交
  12. 29 2月, 2016 3 次提交
  13. 23 2月, 2016 2 次提交
  14. 10 2月, 2016 1 次提交
  15. 02 2月, 2016 4 次提交
  16. 09 1月, 2016 2 次提交
  17. 25 8月, 2015 1 次提交
  18. 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
  19. 29 5月, 2015 1 次提交
  20. 08 1月, 2015 1 次提交
  21. 08 7月, 2014 1 次提交