Documentation
¶
Overview ¶
Package plugin is the public API for the fingerprint plugin subsystem.
It bridges three internal subsystems that serve distinct domains:
- internal/plugin: Generic plugin lifecycle (Analyzer, Transformer, Exporter, Validator) with a Manager for registration and discovery.
- internal/extension: TLS extension analysis framework (Parser, Analyzer, Handler) with a global ExtensionRegistry.
- internal/plugins: Fingerprint profile data model (FingerprintMetadata, ClientHelloSpec) used internally by the contrib builder; not re-exported here.
Callers should use this package rather than importing internal packages directly.
Index ¶
- Constants
- func GetRegistryStats() map[string]interface{}
- func LoadPlugins(configPath string) error
- func RegisterAnalyzer(extType ExtensionType, analyzer Analyzer) error
- func RegisterExtension(metadata *ExtensionMetadata) error
- func RegisterHandler(extType ExtensionType, handler Handler) error
- func RegisterParser(extType ExtensionType, parser Parser) error
- func RegisterPlugin(name string, plugin Plugin) error
- type AnalysisResult
- type Analyzer
- type BasePlugin
- type EventResult
- type ExtensionData
- type ExtensionEvent
- type ExtensionMetadata
- type ExtensionRegistry
- type ExtensionType
- type Handler
- type Manager
- type Parser
- type Plugin
- type PluginInfo
- type PluginType
- type ValidationResult
Constants ¶
const ( TypeAnalyzer = ip.TypeAnalyzer TypeTransformer = ip.TypeTransformer TypeExporter = ip.TypeExporter TypeValidator = ip.TypeValidator )
Plugin types
Variables ¶
This section is empty.
Functions ¶
func GetRegistryStats ¶
func GetRegistryStats() map[string]interface{}
GetRegistryStats returns registry statistics.
func LoadPlugins ¶
LoadPlugins loads plugins from the given config path.
func RegisterAnalyzer ¶
func RegisterAnalyzer(extType ExtensionType, analyzer Analyzer) error
RegisterAnalyzer registers an analyzer for the given extension type.
func RegisterExtension ¶
func RegisterExtension(metadata *ExtensionMetadata) error
RegisterExtension registers extension metadata in the global registry.
func RegisterHandler ¶
func RegisterHandler(extType ExtensionType, handler Handler) error
RegisterHandler registers a handler for the given extension type.
func RegisterParser ¶
func RegisterParser(extType ExtensionType, parser Parser) error
RegisterParser registers a parser for the given extension type.
func RegisterPlugin ¶
RegisterPlugin registers a named plugin.
Types ¶
type AnalysisResult ¶
type AnalysisResult = ip.AnalysisResult
AnalysisResult contains analysis results
type EventResult ¶
type EventResult = ie.EventResult
EventResult holds the result of event processing
type ExtensionData ¶
type ExtensionData = ie.ExtensionData
ExtensionData is the interface for parsed extension data
type ExtensionEvent ¶
type ExtensionEvent = ie.ExtensionEvent
ExtensionEvent represents an event for handler processing
type ExtensionMetadata ¶
type ExtensionMetadata = ie.ExtensionMetadata
ExtensionMetadata holds metadata for a registered extension
type ExtensionRegistry ¶
type ExtensionRegistry = ie.ExtensionRegistry
ExtensionRegistry is the global registry for extensions
func GetRegistry ¶
func GetRegistry() *ExtensionRegistry
GetRegistry returns the global extension registry.
type ExtensionType ¶
type ExtensionType = ie.ExtensionType
ExtensionType represents a TLS extension type identifier
type ValidationResult ¶
type ValidationResult = ip.ValidationResult
ValidationResult contains validation results