Documentation
¶
Index ¶
- Variables
- func ActivityProtoToSdk(activity *proto.Activity) types.Activity
- func ComponentProtoToSdk(comp *proto.Component) types.Component
- func EvidenceProtoToSdk(evidence *proto.Evidence) *types.Evidence
- func EvidenceStatusStateFromEnum(in proto.EvidenceStatusState) string
- func InventoryItemProtoToSdk(in *proto.InventoryItem) types.InventoryItem
- func LinkProtoToSdk(link *proto.Link) types.Link
- func NewApiHelper(logger hclog.Logger, client *sdk.Client, agentLabels map[string]string) *apiHelper
- func OriginActorProtoToSdk(actor *proto.OriginActor) types.OriginActor
- func OriginProtoToSdk(origin *proto.Origin) types.Origin
- func PropertyProtoToSdk(property *proto.Property) types.Property
- func ProtoToSdk[I any, O any](ins []I, transformer func(I) O) *[]O
- func ProtocolProtoToSdk(protocol *proto.Protocol) types.Protocol
- func StepProtoToSdk(step *proto.Step) types.Step
- func SubjectProtoToSdk(subject *proto.Subject) types.Subject
- func SubjectTypeFromEnum(in proto.SubjectType) string
- type ApiHelper
- type GRPCApiHelperClient
- type GRPCApiHelperServer
- type GRPCClient
- type GRPCServer
- type Runner
- type RunnerGRPCPlugin
Constants ¶
This section is empty.
Variables ¶
View Source
var HandshakeConfig = plugin.HandshakeConfig{
ProtocolVersion: 1,
MagicCookieKey: "RUNNER_PLUGIN",
MagicCookieValue: "AC755DCE-C118-481A-8EFA-18D8675D8122",
}
View Source
var PluginMap = map[string]plugin.Plugin{ "runner": &RunnerGRPCPlugin{}, }
Functions ¶
func ActivityProtoToSdk ¶ added in v0.1.0
func ComponentProtoToSdk ¶ added in v0.2.0
func EvidenceProtoToSdk ¶ added in v0.2.0
func EvidenceStatusStateFromEnum ¶ added in v0.2.0
func EvidenceStatusStateFromEnum(in proto.EvidenceStatusState) string
func InventoryItemProtoToSdk ¶ added in v0.2.0
func InventoryItemProtoToSdk(in *proto.InventoryItem) types.InventoryItem
func NewApiHelper ¶ added in v0.1.0
func OriginActorProtoToSdk ¶ added in v0.1.0
func OriginActorProtoToSdk(actor *proto.OriginActor) types.OriginActor
func PropertyProtoToSdk ¶ added in v0.1.0
func ProtoToSdk ¶ added in v0.2.0
func ProtocolProtoToSdk ¶ added in v0.2.0
func SubjectProtoToSdk ¶ added in v0.2.0
func SubjectTypeFromEnum ¶ added in v0.2.0
func SubjectTypeFromEnum(in proto.SubjectType) string
Types ¶
type GRPCApiHelperClient ¶ added in v0.0.13
type GRPCApiHelperClient struct {
// contains filtered or unexported fields
}
func (*GRPCApiHelperClient) CreateEvidence ¶ added in v0.2.0
type GRPCApiHelperServer ¶ added in v0.0.13
type GRPCApiHelperServer struct {
// This is the real implementation
Impl ApiHelper
}
func (*GRPCApiHelperServer) CreateEvidence ¶ added in v0.2.0
func (m *GRPCApiHelperServer) CreateEvidence(ctx context.Context, req *proto.CreateEvidenceRequest) (resp *proto.CreateEvidenceResponse, err error)
type GRPCClient ¶
type GRPCClient struct {
// contains filtered or unexported fields
}
GRPCClient is an implementation of KV that talks over RPC.
func (*GRPCClient) Configure ¶
func (m *GRPCClient) Configure(request *proto.ConfigureRequest) (*proto.ConfigureResponse, error)
func (*GRPCClient) Eval ¶
func (m *GRPCClient) Eval(request *proto.EvalRequest, a ApiHelper) (*proto.EvalResponse, error)
type GRPCServer ¶
type GRPCServer struct {
Impl Runner
// contains filtered or unexported fields
}
func (*GRPCServer) Configure ¶
func (m *GRPCServer) Configure(ctx context.Context, req *proto.ConfigureRequest) (*proto.ConfigureResponse, error)
func (*GRPCServer) Eval ¶
func (m *GRPCServer) Eval(ctx context.Context, req *proto.EvalRequest) (*proto.EvalResponse, error)
type Runner ¶
type Runner interface {
Configure(request *proto.ConfigureRequest) (*proto.ConfigureResponse, error)
Eval(request *proto.EvalRequest, a ApiHelper) (*proto.EvalResponse, error)
}
type RunnerGRPCPlugin ¶
func (*RunnerGRPCPlugin) GRPCClient ¶
func (p *RunnerGRPCPlugin) GRPCClient(ctx context.Context, broker *plugin.GRPCBroker, c *grpc.ClientConn) (interface{}, error)
func (*RunnerGRPCPlugin) GRPCServer ¶
func (p *RunnerGRPCPlugin) GRPCServer(broker *plugin.GRPCBroker, s *grpc.Server) error
Click to show internal directories.
Click to hide internal directories.