feat: Add analyzer for malysis query

This commit is contained in:
abhisek
2025-05-14 09:30:43 +05:30
parent 0883140732
commit 01f2fff82f
2 changed files with 83 additions and 0 deletions
+32
View File
@@ -0,0 +1,32 @@
package analyzer
import (
"context"
malysisv1 "buf.build/gen/go/safedep/api/protocolbuffers/go/safedep/messages/malysis/v1"
packagev1 "buf.build/gen/go/safedep/api/protocolbuffers/go/safedep/messages/package/v1"
)
// A base interface for all analyzers
type Analyzer interface {
Name() string
}
type MalysisResult struct {
AnalysisID string
Report *malysisv1.Report
}
func (m *MalysisResult) IsMalware() bool {
return m.Report.GetInference().GetIsMalware()
}
func (m *MalysisResult) Summary() string {
return m.Report.GetInference().GetSummary()
}
type MalysisAnalyzer interface {
Analyzer
Analyze(ctx context.Context, packageVersion *packagev1.PackageVersion) (*MalysisResult, error)
}