mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 14:48:21 +00:00
31 lines
726 B
C++
31 lines
726 B
C++
// See the file "COPYING" in the main distribution directory for copyright.
|
|
|
|
#pragma once
|
|
|
|
#include <packet_analysis/Analyzer.h>
|
|
#include <packet_analysis/Component.h>
|
|
|
|
namespace zeek::packet_analysis::Ethernet {
|
|
|
|
class EthernetAnalyzer : public Analyzer {
|
|
public:
|
|
EthernetAnalyzer();
|
|
~EthernetAnalyzer() override = default;
|
|
|
|
void Initialize() override;
|
|
AnalyzerResult Analyze(Packet* packet, const uint8_t*& data) override;
|
|
|
|
static zeek::packet_analysis::AnalyzerPtr Instantiate()
|
|
{
|
|
return std::make_shared<EthernetAnalyzer>();
|
|
}
|
|
|
|
private:
|
|
AnalyzerPtr SNAPAnalyzer = nullptr;
|
|
AnalyzerPtr NovellRawAnalyzer = nullptr;
|
|
AnalyzerPtr LLCAnalyzer = nullptr;
|
|
|
|
AnalyzerPtr LoadAnalyzer(const std::string& name);
|
|
};
|
|
|
|
}
|