firewall

package
v0.0.4 Latest Latest
Warning

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

Go to latest
Published: Jan 15, 2023 License: MIT Imports: 1 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	// contains filtered or unexported fields
}

func New

func New(c HTTPClient) *Client

func (*Client) GetMacros

func (c *Client) GetMacros(ctx context.Context) (*GetMacrosResponse, error)

GetMacros List available macros

func (*Client) GetOptions

func (c *Client) GetOptions(ctx context.Context) (*GetOptionsResponse, error)

GetOptions Get Firewall options.

func (*Client) Index

func (c *Client) Index(ctx context.Context) (*IndexResponse, error)

Index Directory index.

func (*Client) Refs

func (c *Client) Refs(ctx context.Context, req *RefsRequest) (*RefsResponse, error)

Refs Lists possible IPSet/Alias reference which are allowed in source/dest properties.

func (*Client) SetOptions

func (c *Client) SetOptions(ctx context.Context, req *SetOptionsRequest) (*SetOptionsResponse, error)

SetOptions Set Firewall options.

type GetMacrosResponse

type GetMacrosResponse []*struct {
	Descr string `url:"descr",json:"descr"` // More verbose description (if available).
	Macro string `url:"macro",json:"macro"` // Macro name.

}

type GetOptionsResponse

type GetOptionsResponse struct {

	// The following parameters are optional
	Ebtables     *bool   `url:"ebtables,omitempty",json:"ebtables,omitempty"`           // Enable ebtables rules cluster wide.
	Enable       *int    `url:"enable,omitempty",json:"enable,omitempty"`               // Enable or disable the firewall cluster wide.
	LogRatelimit *string `url:"log_ratelimit,omitempty",json:"log_ratelimit,omitempty"` // Log ratelimiting settings
	PolicyIn     *string `url:"policy_in,omitempty",json:"policy_in,omitempty"`         // Input policy.
	PolicyOut    *string `url:"policy_out,omitempty",json:"policy_out,omitempty"`       // Output policy.
}

type HTTPClient

type HTTPClient interface {
	Do(context.Context, string, string, interface{}, interface{}) error
}

type IndexResponse

type IndexResponse []*map[string]interface{}

type RefsRequest

type RefsRequest struct {

	// The following parameters are optional
	Type *string `url:"type,omitempty",json:"type,omitempty"` // Only list references of specified type.
}

type RefsResponse

type RefsResponse []*struct {
	Name string `url:"name",json:"name"`
	Ref  string `url:"ref",json:"ref"`
	Type string `url:"type",json:"type"`

	// The following parameters are optional
	Comment *string `url:"comment,omitempty",json:"comment,omitempty"`
}

type SetOptionsRequest

type SetOptionsRequest struct {

	// The following parameters are optional
	Delete       *string `url:"delete,omitempty",json:"delete,omitempty"`               // A list of settings you want to delete.
	Digest       *string `url:"digest,omitempty",json:"digest,omitempty"`               // Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.
	Ebtables     *bool   `url:"ebtables,omitempty",json:"ebtables,omitempty"`           // Enable ebtables rules cluster wide.
	Enable       *int    `url:"enable,omitempty",json:"enable,omitempty"`               // Enable or disable the firewall cluster wide.
	LogRatelimit *string `url:"log_ratelimit,omitempty",json:"log_ratelimit,omitempty"` // Log ratelimiting settings
	PolicyIn     *string `url:"policy_in,omitempty",json:"policy_in,omitempty"`         // Input policy.
	PolicyOut    *string `url:"policy_out,omitempty",json:"policy_out,omitempty"`       // Output policy.
}

type SetOptionsResponse

type SetOptionsResponse map[string]interface{}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL