Skip to content
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 our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Convert DBsync and Sysinfo from shared to static library #251

Closed
7 tasks done
Tracked by #241
cborla opened this issue Oct 25, 2024 · 2 comments · Fixed by #262
Closed
7 tasks done
Tracked by #241

Convert DBsync and Sysinfo from shared to static library #251

cborla opened this issue Oct 25, 2024 · 2 comments · Fixed by #262
Assignees
Labels
level/task Task issue module/inventory Inventory module mvp Minimum Viable Product refinement type/enhancement Enhancement issue

Comments

@cborla
Copy link
Member

cborla commented Oct 25, 2024

Parent Issue: #241

Description

The objective of this issue is to remove shared libraries from the Inventory module. Specifically, the DBsync and Sysinfo libraries should be converted from shared to static to improve compatibility across platforms.

Tasks

  • Convert the DBsync library from shared to static.
  • Convert the Sysinfo library from shared to static.
  • Validate Inventory functionality across the following platforms:
    • Linux
    • Windows
    • macOS
  • Enable the Module Manager test for Windows, which previously failed due to missing DLL files.

Acceptance Criteria

  • DBsync and Sysinfo libraries are successfully converted to static libraries without impacting existing functionality.
  • Inventory module passes functionality tests on Linux, Windows, and macOS platforms.
  • Windows Module Manager tests run successfully without DLL or dependency errors.
  • No shared library dependencies remain in the Inventory module after conversion.
@cborla cborla changed the title Conver DBsync and Sysinfo from shared to static library Convert DBsync and Sysinfo from shared to static library Oct 25, 2024
@cborla cborla added level/task Task issue type/enhancement Enhancement issue phase/mvp module/inventory Inventory module labels Oct 25, 2024
@cborla cborla assigned cborla and nbertoldo and unassigned cborla Oct 25, 2024
@nbertoldo
Copy link
Member

Update 2024/10/25

  • Converting sysinfo and dbsync from shared to static library.

@wazuhci wazuhci moved this to In progress in XDR+SIEM/Release 5.0.0 Oct 28, 2024
@havidarou havidarou removed the mvp label Oct 28, 2024
@nbertoldo nbertoldo linked a pull request Oct 30, 2024 that will close this issue
3 tasks
@vikman90 vikman90 added the mvp Minimum Viable Product refinement label Oct 30, 2024
@vikman90 vikman90 mentioned this issue Oct 30, 2024
53 tasks
@nbertoldo
Copy link
Member

Update 2024/10/30

When changing sysinfo from SHARED to STATIC library I get these errors that occur at the time of linking wazuh-agent executable:

[ 95%] Linking CXX executable wazuh-agent
/usr/bin/ld: vcpkg_installed/x64-linux/debug/lib/librpm.a(rpmscript.o): in function `next_file':
/home/vagrant/wazuh-agent/src/vcpkg/buildtrees/librpm/x64-linux-dbg/lib/.././../src/9ed556c157-1b82a7a6d4.clean/lib/rpmscript.c:101:(.text+0x83): undefined reference to `lua_touserdata'
/usr/bin/ld: /home/vagrant/wazuh-agent/src/vcpkg/buildtrees/librpm/x64-linux-dbg/lib/.././../src/9ed556c157-1b82a7a6d4.clean/lib/rpmscript.c:102:(.text+0xad): undefined reference to `lua_pushstring'
...

It appears that librpm cannot find references to lua functions.

@wazuhci wazuhci moved this from In progress to Done in XDR+SIEM/Release 5.0.0 Oct 31, 2024
@vikman90 vikman90 added this to the MVP Agent refinement (I) milestone Jan 15, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
level/task Task issue module/inventory Inventory module mvp Minimum Viable Product refinement type/enhancement Enhancement issue
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

4 participants