dissect.target icon indicating copy to clipboard operation
dissect.target copied to clipboard

Improve Citrix Netscaler support

Open JSCU-CNI opened this issue 1 month ago • 3 comments

This PR improves Citrix Netscaler support in Dissect.

  • Add support for mounting the kernel root filesystem ("ramdisk") embedded in the kernel
  • Improve Netscaler OS detection (filesystem detection, hostname, config parsing, language, install date, shell history)

JSCU-CNI avatar Nov 24 '25 11:11 JSCU-CNI

Is there some unit test you could add that at least tests a subset of the added features?

At this time, unfortunately not.

JSCU-CNI avatar Nov 24 '25 16:11 JSCU-CNI

At this time, unfortunately not.

Could you explain why, because of no time right now? In that case I can try to see if there's a willing soul that can create some mock tests.

Schamper avatar Nov 24 '25 17:11 Schamper

Could you explain why, because of no time right now? In that case I can try to see if there's a willing soul that can create some mock tests.

I have added some tests for the history, locale and generic plugins in a55c1b7. I do not have time to add a test that mocks an ELF section and mounts the FFS filesystem.

JSCU-CNI avatar Nov 25 '25 10:11 JSCU-CNI

Codecov Report

:x: Patch coverage is 55.17241% with 39 lines in your changes missing coverage. Please review. :white_check_mark: Project coverage is 80.73%. Comparing base (34a9714) to head (3dd0145). :warning: Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
dissect/target/plugins/os/unix/bsd/citrix/_os.py 33.33% 26 Missing :warning:
dissect/target/plugins/os/unix/bsd/_os.py 0.00% 6 Missing :warning:
...issect/target/plugins/os/unix/bsd/citrix/locale.py 82.60% 4 Missing :warning:
...ssect/target/plugins/os/unix/bsd/citrix/generic.py 87.50% 2 Missing :warning:
dissect/target/plugins/os/unix/generic.py 0.00% 1 Missing :warning:
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1407      +/-   ##
==========================================
- Coverage   80.79%   80.73%   -0.07%     
==========================================
  Files         388      390       +2     
  Lines       34139    34217      +78     
==========================================
+ Hits        27584    27626      +42     
- Misses       6555     6591      +36     
Flag Coverage Δ
unittests 80.73% <55.17%> (-0.07%) :arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

:rocket: New features to boost your workflow:
  • :snowflake: Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

codecov[bot] avatar Dec 09 '25 11:12 codecov[bot]

CodSpeed Performance Report

Merging #1407 will not alter performance

Comparing JSCU-CNI:citrix-improvements (3dd0145) with main (0b743d3)[^unexpected-base] [^unexpected-base]: No successful run was found on main (34a9714) during the generation of this report, so 0b743d3 was used instead as the comparison base. There might be some changes unrelated to this pull request in this report.

Summary

✅ 9 untouched

codspeed-hq[bot] avatar Dec 09 '25 11:12 codspeed-hq[bot]