Version: v0.0.0-...-dd22d64 Latest Latest

This package is not in the latest version of its module.

Go to latest
Published: Mar 4, 2021 License: AGPL-3.0 Imports: 19 Imported by: 0



Package analyze implements a netutil.Analyzer client and a ready to use service component.

This package is a work in progress and makes no API stability promises.



View Source
const (
	APIName    = "luids.netutil"
	APIVersion = "v1"
	APIService = "Analyze"

Constants for api description.


This section is empty.


func ClientBuilder

func ClientBuilder(opt ...ClientOption) apiservice.BuildFn

ClientBuilder returns builder function for the apiservice.

func RegisterServer

func RegisterServer(server *grpc.Server, service *Service)

RegisterServer registers a service in the grpc server.

func ServiceName

func ServiceName() string

ServiceName returns service name.


type Client

type Client struct {
	// contains filtered or unexported fields

Client provides a grpc client.

func NewClient

func NewClient(conn *grpc.ClientConn, opt ...ClientOption) *Client

NewClient returns a new client.

func (*Client) API

func (c *Client) API() string

API returns API service name implemented.

func (*Client) Close

func (c *Client) Close() error

Close closes the client.

func (*Client) Ping

func (c *Client) Ping() error

Ping checks connectivity with the api.

func (*Client) SendPacket

func (c *Client) SendPacket(layer netutil.Layer, md netutil.PacketMetadata, data []byte) error

SendPacket implements netutil.Analyzer interface.

type ClientOption

type ClientOption func(*clientOpts)

ClientOption encapsules options for client.

func CloseConnection

func CloseConnection(b bool) ClientOption

CloseConnection option closes grpc connection on shutdown.

func SetLogger

func SetLogger(l yalogi.Logger) ClientOption

SetLogger option allows set a custom logger.

func SetPacketBuffer

func SetPacketBuffer(i int) ClientOption

SetPacketBuffer option sets packet buffer.

type Service

type Service struct {
	// contains filtered or unexported fields

Service implements a grpc service wrapper.

func NewService

func NewService(f netutil.AnalyzerFactory, opt ...ServiceOption) *Service

NewService returns a new Service.

func (*Service) SendPackets

func (s *Service) SendPackets(stream pb.Analyze_SendPacketsServer) error

SendPackets implements grpc api.

type ServiceOption

type ServiceOption func(*serviceOpts)

ServiceOption is used for service configuration

func SetPacketExpiration

func SetPacketExpiration(d time.Duration) ServiceOption

SetPacketExpiration option allows set packet expire time.

func SetServiceLogger

func SetServiceLogger(l yalogi.Logger) ServiceOption

SetServiceLogger option allows set a custom logger.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
t or T : Toggle theme light dark auto
y or Y : Canonical URL