firewall

package
v0.0.8 Latest Latest
Warning

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

Go to latest
Published: Jan 15, 2023 License: MIT Imports: 2 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     *util.SpecialBool `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     *util.SpecialBool `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