- Notifications
You must be signed in to change notification settings - Fork42
add proxy lib tests without LD_PRELOAD#1480
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
base:main
Are you sure you want to change the base?
Uh oh!
There was an error while loading.Please reload this page.
Conversation
604b7aa todbd9999Comparedbd9999 to96333d2CompareThere was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Pull Request Overview
This PR adds tests that verify the proxy library functionality works correctly without requiring LD_PRELOAD, implementing additional runtime detection mechanisms for the proxy library and cleaning up initialization patterns.
- Adds proxy library detection via dlopen() in addition to LD_PRELOAD environment variable checking
- Simplifies constructor/destructor priorities and consolidates logger initialization to use a single initialization pattern
- Enhances CI testing to validate both proxy library usage scenarios
Reviewed Changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| test/utils/utils_log.cpp | Updates test expectations to reflect renamed logging function |
| src/utils/utils_log.c | Implements single logger initialization pattern with thread-safety |
| src/utils/utils_load_library.c | Adds debug logging for library open/close operations |
| src/utils/utils_common.h | Adds dlopen-based proxy library detection alongside LD_PRELOAD check |
| src/proxy_lib/proxy_lib_linux.c | Removes constructor/destructor priority specifications |
| src/coarse/coarse.c | Simplifies logger initialization by removing platform-specific patterns |
| .github/workflows/reusable_proxy_lib.yml | Adds test run without proxy library to CI workflow |
Tip: Customize your code reviews with copilot-instructions.md.Create the file orlearn how to get started.
src/utils/utils_common.h Outdated
| staticinlineintutils_is_running_in_proxy_lib(void) { | ||
| // check if the proxy library is loaded using dlopen() | ||
| void*proxy_lib_handle= | ||
| utils_open_library("libumf_proxy.so",UMF_UTIL_OPEN_LIBRARY_NO_LOAD); |
CopilotAIAug 20, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
The hardcoded library name "libumf_proxy.so" makes this code platform-specific to Linux. Consider using a platform-specific macro or variable to support different operating systems (e.g., "libumf_proxy.dll" on Windows).
96333d2 to46e66a2Compare46e66a2 to220aa29Compare
Uh oh!
There was an error while loading.Please reload this page.
add proxy lib tests without LD_PRELOAD + needed fixes