* Fix build break from VS 2022 17.8.2
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
* Fix conflicting C++ versions
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
* New depenedency on kernel32.dll
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
* Pickup latests usersim
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
---------
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
Co-authored-by: Alan Jowett <alan.jowett@microsoft.com>
* Initial Commit
* Added tail call max exceed native test case
* Initial commit
* Initial commit
* Added bpf2c_tests/expected changed files
* Fixed the return value in bind_tailcall_max_native_test
* Addressed PR comments
* Update tests/unit/libbpf_test.cpp
Co-authored-by: Dave Thaler <dthaler@microsoft.com>
* Update tests/unit/libbpf_test.cpp
Co-authored-by: Dave Thaler <dthaler@microsoft.com>
* tests/unit/libbpf_test.cpp
* Moved MAX_TAIL_CALL_CNT to ebpf_structs.h as suggested
* Removed MAX_TAIL_CALL_CNT in api_test and stress_tests_km file
* Add the generated expected file for tail_call_max_exceed
* Removed MAX_TAIL_CALL_CNT from bpf_helpers.h
---------
Co-authored-by: Dave Thaler <dthaler@microsoft.com>
* build ebpfcore under usersim
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Work around analysis warnings
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix installer project
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Temporarily use ubpf branch with memory fix
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* WIP
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* WIP
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Create project for files shared between ebpfapi and the ebpf runtime
Move existing files from libs/platform either to:
* libs/shared, if meant to be common between user-mode and ebpf runtime
* libs/runtime, if meant to be used by the ebpf runtime only (whether in
user or kernel mode)
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Move ebpf_tracelog.c to shared
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Create shared_user and shared_kernel projects
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* WIP
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* WIP
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Remove usersim from ebpfsvc
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Update to cxplat branch of usersim
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Use cxplat_utf8_string
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Cleanup
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix build errors
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix ebpf_allocate_with_tag
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fixes
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Bug fixes
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix use of ebpf_reallocate to not pass a null pointer
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix printf tests
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix memory leaks
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Temporary change to help debug double-free in test
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Update to latest usersim
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix analysis warnings
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Update to latest usersim
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Update usersim to latest
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Change native module to use latest usersim
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Update nuget package
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Only call cxplat_cleanup if cxplat_initialize succeeds
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
* Revert setup_build.vcxproj change
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Update usersim to latest
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
---------
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
Co-authored-by: Alan Jowett <alan.jowett@microsoft.com>
Other projects can now consume ebpf-for-windows in binary form,
using either nuget or MSI install. We no longer need to build
ebpf-for-windows both ways, so removing the cmake build to free
up build resources and reduce the development cost of maintaining
both msbuild and cmake builds.
Fixes#2743
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Use usersim as DLL
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Convert usersim to a DLL
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Make cmake build clear program info state like VS build does
PR #1192 updated the vcxproj file but not the corresponding CMakeLists.txt file
for export_program_info
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Pick up latest usersim fix
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix deadlock in epoch_test_stale_items test
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Don't throw exceptions in unit tests
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix single instance hook initialization in test cases
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix deadlock in performance test
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Add usersim.dll to installer files
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
---------
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Update usersim library for DPC API support
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Flush queued DPCs before terminating usersim platform
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix fault injection test
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix test bugs found by fault injection
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Use usersim Ke*Timer apis
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix bad uses of REQUIRE in netebpfext_unit constructors/destructors
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix mismatched initiate/terminate calls
Move Test-FaultInjection.ps1 to the usersim repo
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Use REQUIRE instead of throwing exceptions from unit tests
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Don't use REQUIRE in constructors
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix memory leak bug in netebpf_ext_helper destructor
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix reference count leak in net_ebpf_extension_sock_ops_flow_established_classify
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
---------
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* More usersim library cleanup
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix analyze warning
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Use TraceLogging for printk
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix analysis warnings
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix deadlock in core_helper_fuzzer
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Update usersim library
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix call to RpcStringFreeA
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
---------
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Use usersim repo
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Remove DISPATCH test code from _preprocess_load_native_module
Per Anurag: the code was added earlier to execute the 2 paths in
native module, and it is not needed anmore IIRC, as the "DISPATCH"
code has been removed now from the native module
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Bug fixes
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Unify some APIs
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Fix warnings and clean up code
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* updated
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
---------
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Remove JIT and interpreter code from NativeOnly builds
Fixes#2030Fixes#2488
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Try conditional project references
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Various test fixes
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Native-only fixes to deploy-ebpf.ps1
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Native-only support for setup-ebpf.ps1
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Native-only support for api_test.exe
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Add connect_redirect_tests to deploy-ebpf.ps1
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* PR feedback from Anurag
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
---------
Signed-off-by: Dave Thaler <dthaler@microsoft.com>
* Add stress test for tail calls
* Added the code generated bindmonitor_mt_tailcall files
* Added the test case description to readme.md
* Update tests/stress/km/stress_tests_km.cpp
Co-authored-by: Dave Thaler <dthaler@microsoft.com>
* Update tests/stress/km/stress_tests_km.cpp
Co-authored-by: Dave Thaler <dthaler@microsoft.com>
* Addressed PR comments and Fixed merge conflicts with latest
* Fixed function name
* Regenerated the expected files, after the macro MAX TAIL CNT change done yesterday
* Update tests/stress/readme.md
Co-authored-by: Dave Thaler <dthaler@microsoft.com>
* Removed clean_up tail call
* Add bind in loop
* updated the readme
* Addressed PR comments
* Changed LOG_VERBOSE to LOG_ERROR
* Updated readme and addressed PR comment
---------
Co-authored-by: Dave Thaler <dthaler@microsoft.com>