An error occurred fetching the project authors.
  1. 02 Mar, 2018 1 commit
  2. 02 Feb, 2018 1 commit
  3. 26 Oct, 2017 1 commit
    • Paul Chaignon's avatar
      Trace external pointers through maps · eae0acfb
      Paul Chaignon authored
      The bcc rewriter currently traces external pointers using
      ProbeVisitor in order to replace dereferences with calls to
      bpf_probe_read. It is, however, unable to trace them through maps.
      
      This commit remedy this for simple (yet common) cases. Through a
      first traversal of the Clang AST, MapVisitor looks for calls to
      update (and insert) to find maps with an external pointer as value.
      When ProbeVisitor runs, in a second time, it looks for calls to
      lookup (and lookup_or_init). If the map was registered as having an
      external pointer as value, the l-value of the lookup assignment is
      marked as being an external pointer.
      
      Two traversals of the Clang AST are needed because the update of a
      map may happen after the lookup in the AST. Therefore, the first
      traversal makes sure we inspect all updates before acting on lookups.
      To implement this two-stage traversal without parsing the AST twice,
      ProbeConsumer and BTypeConsumer now implement HandleTranslationUnit,
      which is called after a whole translation unit has been parsed.
      eae0acfb
  4. 26 Mar, 2017 1 commit
    • Rafael F's avatar
      Python 3 compatibility fixes around string handling (#986) · 78948e4a
      Rafael F authored
      This fixes the bcc module and all the affected tools for issues related to string handling in Python 3. Specifically, when passing Python strings to C libraries they are encoded as ASCII, and when constructing Python strings from C strings, they are decoded first.
      78948e4a
  5. 16 Sep, 2016 1 commit
    • chantra's avatar
      [tcpconnect] filter traced connection based on destination ports · 52938058
      chantra authored
      Test:
      While running:
      while [ 1 ]; do nc -w 1 100.127.0.1 80; nc -w 1 100.127.0.1 81; done
      
      root@vagrant:/mnt/bcc# ./tools/tcpconnect.py
      PID    COMM         IP SADDR            DADDR            DPORT
      19978  nc           4  10.0.2.15        100.127.0.1      80
      19979  nc           4  10.0.2.15        100.127.0.1      81
      19980  nc           4  10.0.2.15        100.127.0.1      80
      19981  nc           4  10.0.2.15        100.127.0.1      81
      root@vagrant:/mnt/bcc# ./tools/tcpconnect.py  -P 80
      PID    COMM         IP SADDR            DADDR            DPORT
      19987  nc           4  10.0.2.15        100.127.0.1      80
      19989  nc           4  10.0.2.15        100.127.0.1      80
      19991  nc           4  10.0.2.15        100.127.0.1      80
      19993  nc           4  10.0.2.15        100.127.0.1      80
      19995  nc           4  10.0.2.15        100.127.0.1      80
      root@vagrant:/mnt/bcc# ./tools/tcpconnect.py  -P 80,81
      PID    COMM         IP SADDR            DADDR            DPORT
      8725   nc           4  10.0.2.15        100.127.0.1      80
      8726   nc           4  10.0.2.15        100.127.0.1      81
      8727   nc           4  10.0.2.15        100.127.0.1      80
      8728   nc           4  10.0.2.15        100.127.0.1      81
      8729   nc           4  10.0.2.15        100.127.0.1      80
      
      Fixes #681
      52938058
  6. 26 Jun, 2016 1 commit
    • Mark Drayton's avatar
      IPv6 support for tcp* tools (#582) · 11de2985
      Mark Drayton authored
      * tcpretrans: support full IPv6 addresses, fix --lossprobe
      
      * tcpaccept: support full IPv6 addresses, fix timestamps
      
      * tcpconnect: support full IPv6 addresses, fix timestamps
      
      * tcpconnlat: support full IPv6 addresses, fix timestamps
      11de2985
  7. 05 May, 2016 1 commit
  8. 30 Mar, 2016 1 commit
  9. 28 Mar, 2016 1 commit
  10. 15 Feb, 2016 1 commit
  11. 27 Jan, 2016 1 commit
    • Brenden Blanco's avatar
      Updates to use cmake GLOB and libbcc.so.0 in python init · 5bd0eb21
      Brenden Blanco authored
      In order not to miss some files in the tools and examples source
      directories, use cmake file(GLOB) to collect relevant files. To ease the
      implementation, move all tools to be .py suffixed in the source, but
      sans-suffix in the installation (same as before)
      
      In addition, to prevent future API breakage confusion (though of course
      that may still happen), use CDLL("libbcc.so.0") in the bcc __init__.py.
      
      Fixes: #317
      Signed-off-by: default avatarBrenden Blanco <bblanco@plumgrid.com>
      5bd0eb21
  12. 14 Jan, 2016 1 commit
  13. 16 Oct, 2015 1 commit