PcapPlusPlus icon indicating copy to clipboard operation
PcapPlusPlus copied to clipboard

GVCP support

Open tigercosmos opened this issue 2 years ago • 10 comments

Per #1321

This PR supported the GVCP protocol, including the GVCP request and GVCP acknowledgment.

Also, the PR added the most common commands of GVCP: Discovery command, ForceIP command, Read register Command, and Write register command.

tigercosmos avatar Apr 12 '24 09:04 tigercosmos

@seladb The PR is ready. Please take a look.

tigercosmos avatar Aug 12 '24 08:08 tigercosmos

Codecov Report

Attention: Patch coverage is 93.68030% with 34 lines in your changes missing coverage. Please review.

Project coverage is 83.02%. Comparing base (a600a70) to head (b144e60). Report is 12 commits behind head on dev.

Files with missing lines Patch % Lines
Packet++/src/GvcpLayer.cpp 70.52% 25 Missing and 3 partials :warning:
Packet++/header/GvcpLayer.h 96.29% 6 Missing :warning:
Additional details and impacted files
@@            Coverage Diff             @@
##              dev    #1357      +/-   ##
==========================================
+ Coverage   82.94%   83.02%   +0.08%     
==========================================
  Files         273      276       +3     
  Lines       46353    46799     +446     
  Branches     9642     9568      -74     
==========================================
+ Hits        38446    38856     +410     
+ Misses       7280     7083     -197     
- Partials      627      860     +233     
Flag Coverage Δ
fedora39 74.60% <91.05%> (+0.04%) :arrow_up:
macos-12 81.04% <95.64%> (+0.14%) :arrow_up:
macos-13 80.47% <95.65%> (+0.16%) :arrow_up:
macos-14 80.40% <95.65%> (+0.16%) :arrow_up:
mingw32 70.29% <72.13%> (-1.17%) :arrow_down:
mingw64 70.26% <72.13%> (-1.20%) :arrow_down:
npcap 84.77% <86.69%> (-0.13%) :arrow_down:
rhel94 74.40% <90.00%> (+0.06%) :arrow_up:
ubuntu2004 57.71% <46.26%> (-0.20%) :arrow_down:
ubuntu2004-zstd 57.83% <46.26%> (-0.22%) :arrow_down:
ubuntu2204 74.34% <90.00%> (+0.06%) :arrow_up:
ubuntu2204-icpx 58.56% <72.95%> (+0.09%) :arrow_up:
ubuntu2404 74.61% <91.32%> (+0.08%) :arrow_up:
unittest 83.02% <93.68%> (+0.08%) :arrow_up:
windows-2019 84.89% <86.69%> (-0.06%) :arrow_down:
windows-2022 84.89% <86.69%> (-0.06%) :arrow_down:
winpcap 84.87% <86.69%> (-0.05%) :arrow_down:
xdp 49.48% <90.00%> (+0.19%) :arrow_up:

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.

codecov[bot] avatar Aug 12 '24 09:08 codecov[bot]

Don't know why the fuzz tests failed?

tigercosmos avatar Aug 13 '24 04:08 tigercosmos

@seladb Reading your sample code, basically I got your intention. So "Discovery" and "ForceIP" have their own layer, and for other commands, they will fall back to general GVCPRequestLayer and GvcpAcknowledgeLayer. I don't see a problem for now, and I will try to refactor the PR based on this and see if I encounter any issues.

tigercosmos avatar Aug 18 '24 11:08 tigercosmos

@seladb Reading your sample code, basically I got your intention. So "Discovery" and "ForceIP" have their own layer, and for other commands, they will fall back to general GVCPRequestLayer and GvcpAcknowledgeLayer. I don't see a problem for now, and I will try to refactor the PR based on this and see if I encounter any issues.

Yes, other messages should fall under GvcpRequestLayer or GvcpAckLayer. In that way we can create specific layers for more messages in the future

seladb avatar Aug 18 '24 23:08 seladb