scanfile/server/internal/processing/yara/yara.go
2025-07-25 12:43:28 +02:00

31 lines
622 B
Go

package yara
import (
"git.jmbit.de/jmb/scanfile/server/internal/database"
"git.jmbit.de/jmb/scanfile/server/internal/sqlc"
)
func InitYara() error {
return compileSourcesFromFiles()
}
func YaraProcessing(job sqlc.ProcessingJob) error {
database.StartProcessingJob(job.ID)
results, err := scanFile(job.FileID.String())
if err != nil {
database.FailProcessingJob(job.ID, err)
return err
}
params := sqlc.InsertYaraResultsParams{
FileID: job.FileID,
Matched: results,
}
err = database.InsertYaraResults(params)
if err != nil {
database.FailProcessingJob(job.ID, err)
return err
}
return nil
}