1616
1717#include < iostream>
1818
19- #include < ipfixprobe/pluginFactory/pluginManifest.hpp>
20- #include < ipfixprobe/pluginFactory/pluginRegistrar.hpp>
21- // #include <pluginManifest.hpp>
22- // #include <pluginRegistrar.hpp>
23- // #include <pluginFactory.hpp>
2419#include < fieldGroup.hpp>
2520#include < fieldManager.hpp>
26- #include < tcpData.hpp>
2721#include < ipfixprobe/options.hpp>
22+ #include < ipfixprobe/pluginFactory/pluginManifest.hpp>
23+ #include < ipfixprobe/pluginFactory/pluginRegistrar.hpp>
24+ #include < tcpData.hpp>
2825
2926namespace ipxp {
3027
@@ -42,59 +39,83 @@ static const PluginManifest basicPlusPluginManifest = {
4239 },
4340};
4441
45-
46- static FieldGroup createBasicPlusSchema (FieldManager& fieldManager, FieldHandlers<BasicPlusFields>& handlers)
42+ static FieldGroup
43+ createBasicPlusSchema (FieldManager& fieldManager, FieldHandlers<BasicPlusFields>& handlers)
4744{
4845 FieldGroup schema = fieldManager.createFieldGroup (" basicplus" );
4946
5047 auto [ipTTLField, ipTTLRevField] = schema.addScalarDirectionalFields (
51- " IP_TTL" , " IP_TTL_REV" ,
52- [](const void * context) { return reinterpret_cast <const BasicPlusData*>(context)->ipTTL [Direction::Forward]; },
53- [](const void * context) { return reinterpret_cast <const BasicPlusData*>(context)->ipTTL [Direction::Reverse]; }
54- );
48+ " IP_TTL" ,
49+ " IP_TTL_REV" ,
50+ [](const void * context) {
51+ return reinterpret_cast <const BasicPlusData*>(context)->ipTTL [Direction::Forward];
52+ },
53+ [](const void * context) {
54+ return reinterpret_cast <const BasicPlusData*>(context)->ipTTL [Direction::Reverse];
55+ });
5556 handlers.insert (BasicPlusFields::IP_TTL, ipTTLField);
5657 handlers.insert (BasicPlusFields::IP_TTL_REV, ipTTLRevField);
5758
5859 auto [ipFlagField, ipFlagRevField] = schema.addScalarDirectionalFields (
59- " IP_FLG" , " IP_FLG_REV" ,
60- [](const void * context) { return reinterpret_cast <const BasicPlusData*>(context)->ipFlag [Direction::Forward]; },
61- [](const void * context) { return reinterpret_cast <const BasicPlusData*>(context)->ipFlag [Direction::Reverse]; }
62- );
60+ " IP_FLG" ,
61+ " IP_FLG_REV" ,
62+ [](const void * context) {
63+ return reinterpret_cast <const BasicPlusData*>(context)->ipFlag [Direction::Forward];
64+ },
65+ [](const void * context) {
66+ return reinterpret_cast <const BasicPlusData*>(context)->ipFlag [Direction::Reverse];
67+ });
6368 handlers.insert (BasicPlusFields::IP_FLG, ipFlagField);
6469 handlers.insert (BasicPlusFields::IP_FLG_REV, ipFlagRevField);
6570
6671 auto [tcpWinField, tcpWinRevField] = schema.addScalarDirectionalFields (
67- " TCP_WIN" , " TCP_WIN_REV" ,
68- [](const void * context) { return reinterpret_cast <const BasicPlusData*>(context)->tcpWindow [Direction::Forward]; },
69- [](const void * context) { return reinterpret_cast <const BasicPlusData*>(context)->tcpWindow [Direction::Reverse]; }
70- );
72+ " TCP_WIN" ,
73+ " TCP_WIN_REV" ,
74+ [](const void * context) {
75+ return reinterpret_cast <const BasicPlusData*>(context)->tcpWindow [Direction::Forward];
76+ },
77+ [](const void * context) {
78+ return reinterpret_cast <const BasicPlusData*>(context)->tcpWindow [Direction::Reverse];
79+ });
7180 handlers.insert (BasicPlusFields::TCP_WIN, tcpWinField);
7281 handlers.insert (BasicPlusFields::TCP_WIN_REV, tcpWinRevField);
7382
7483 auto [tcpOptField, tcpOptRevField] = schema.addScalarDirectionalFields (
75- " TCP_OPT" , " TCP_OPT_REV" ,
76- [](const void * context) { return reinterpret_cast <const BasicPlusData*>(context)->tcpOption [Direction::Forward]; },
77- [](const void * context) { return reinterpret_cast <const BasicPlusData*>(context)->tcpOption [Direction::Reverse]; }
78- );
84+ " TCP_OPT" ,
85+ " TCP_OPT_REV" ,
86+ [](const void * context) {
87+ return reinterpret_cast <const BasicPlusData*>(context)->tcpOption [Direction::Forward];
88+ },
89+ [](const void * context) {
90+ return reinterpret_cast <const BasicPlusData*>(context)->tcpOption [Direction::Reverse];
91+ });
7992 handlers.insert (BasicPlusFields::TCP_OPT, tcpOptField);
8093 handlers.insert (BasicPlusFields::TCP_OPT_REV, tcpOptRevField);
8194
8295 auto [tcpMSSField, tcpMSSRevField] = schema.addScalarDirectionalFields (
83- " TCP_MSS" , " TCP_MSS_REV" ,
84- [](const void * context) { return reinterpret_cast <const BasicPlusData*>(context)->tcpMSS [Direction::Forward]; },
85- [](const void * context) { return reinterpret_cast <const BasicPlusData*>(context)->tcpMSS [Direction::Reverse]; }
86- );
96+ " TCP_MSS" ,
97+ " TCP_MSS_REV" ,
98+ [](const void * context) {
99+ return reinterpret_cast <const BasicPlusData*>(context)->tcpMSS [Direction::Forward];
100+ },
101+ [](const void * context) {
102+ return reinterpret_cast <const BasicPlusData*>(context)->tcpMSS [Direction::Reverse];
103+ });
87104 handlers.insert (BasicPlusFields::TCP_MSS, tcpMSSField);
88105 handlers.insert (BasicPlusFields::TCP_MSS_REV, tcpMSSRevField);
89106
90- handlers.insert (BasicPlusFields::TCP_SYN_SIZE, schema.addScalarField (" TCP_SYN_SIZE" , [](const void * context) {
91- return static_cast <const BasicPlusData*>(context)->tcpSynSize ;
92- }));
107+ handlers.insert (
108+ BasicPlusFields::TCP_SYN_SIZE,
109+ schema.addScalarField (" TCP_SYN_SIZE" , [](const void * context) {
110+ return static_cast <const BasicPlusData*>(context)->tcpSynSize ;
111+ }));
93112
94113 return schema;
95114}
96115
97- BasicPlusPlugin::BasicPlusPlugin ([[maybe_unused]]const std::string& params, FieldManager& fieldManager)
116+ BasicPlusPlugin::BasicPlusPlugin (
117+ [[maybe_unused]] const std::string& params,
118+ FieldManager& fieldManager)
98119{
99120 createBasicPlusSchema (fieldManager, m_fieldHandlers);
100121}
@@ -142,8 +163,8 @@ PluginInitResult BasicPlusPlugin::onInit(const FlowContext& flowContext, void* p
142163PluginUpdateResult BasicPlusPlugin::onUpdate (const FlowContext& flowContext, void * pluginContext)
143164{
144165 auto * pluginData = reinterpret_cast <BasicPlusData*>(pluginContext);
145-
146- pluginData->ipTTL [flowContext.packet .source_pkt ]
166+
167+ pluginData->ipTTL [flowContext.packet .source_pkt ]
147168 = std::min (pluginData->ipTTL [flowContext.packet .source_pkt ], flowContext.packet .ip_ttl );
148169
149170 constexpr std::size_t TCP = 6 ;
@@ -184,7 +205,7 @@ PluginUpdateResult BasicPlusPlugin::onUpdate(const FlowContext& flowContext, voi
184205 };
185206}
186207
187- void BasicPlusPlugin::onDestroy (void * pluginContext)
208+ void BasicPlusPlugin::onDestroy (void * pluginContext)
188209{
189210 std::destroy_at (reinterpret_cast <BasicPlusData*>(pluginContext));
190211}
@@ -197,6 +218,7 @@ PluginDataMemoryLayout BasicPlusPlugin::getDataMemoryLayout() const noexcept
197218 };
198219}
199220
200- static const PluginRegistrar<BasicPlusPlugin, ProcessPluginFactory> basicPlusRegistrar (basicPlusPluginManifest);
221+ static const PluginRegistrar<BasicPlusPlugin, ProcessPluginFactory>
222+ basicPlusRegistrar (basicPlusPluginManifest);
201223
202224} // namespace ipxp
0 commit comments