Documentation
¶
Index ¶
- Constants
- type FilterQueue
- func (f *FilterQueue) GetApplicationQueueAckStr() string
- func (f *FilterQueue) GetApplicationQueueSize() uint32
- func (f *FilterQueue) GetApplicationQueueStart() uint16
- func (f *FilterQueue) GetApplicationQueueSvcStr() string
- func (f *FilterQueue) GetApplicationQueueSynAckStr() string
- func (f *FilterQueue) GetApplicationQueueSynStr() string
- func (f *FilterQueue) GetMarkValue() int
- func (f *FilterQueue) GetNetworkQueueAckStr() string
- func (f *FilterQueue) GetNetworkQueueSize() uint32
- func (f *FilterQueue) GetNetworkQueueStart() uint16
- func (f *FilterQueue) GetNetworkQueueSvcStr() string
- func (f *FilterQueue) GetNetworkQueueSynAckStr() string
- func (f *FilterQueue) GetNetworkQueueSynStr() string
- func (f *FilterQueue) GetNumApplicationQueues() uint16
- func (f *FilterQueue) GetNumNetworkQueues() uint16
Constants ¶
const ( // DefaultQueueSeperation specifies if we should use separate queues for packet types DefaultQueueSeperation = true // DefaultNumberOfQueues is the default number of queues used in NFQUEUE DefaultNumberOfQueues = 4 // DefaultQueueStart represents the queue number to start DefaultQueueStart = 0 // DefaultQueueSize is the size of the queues DefaultQueueSize = 500 // DefaultMarkValue is the default Mark for packets in the raw chain DefaultMarkValue = 0x1111 )
Default parameters for the NFQUEUE configuration. Parameters can be changed after an isolator has been created and before its started. Change in parameters after the isolator is started has no effect
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type FilterQueue ¶
type FilterQueue struct {
// QueueSeparation specifies if we should use separate queues per packet type
QueueSeparation bool
// MarkValue is the default mark to set in packets in the RAW chain
MarkValue int
// NetworkQueue is the queue number of the base queue for network packets
NetworkQueue uint16
// NumberOfApplicationQueues is the number of queues that must be allocated
NumberOfApplicationQueues uint16
// numberOfNetworkQueues is the number of network queues allocated
NumberOfNetworkQueues uint16
// ApplicationQueue is the queue number of the first application queue
ApplicationQueue uint16
// ApplicationQueueSize is the size of the application queue
ApplicationQueueSize uint32
// NetworkQueueSize is the size of the network queue
NetworkQueueSize uint32
// NetworkQueuesSynStr is the queue string for network syn
NetworkQueuesSynStr string
// NetworkQueuesAckStr is the queue string for network ack
NetworkQueuesAckStr string
// NetworkQueuesSynAckStr is the queue string for network synack packets
NetworkQueuesSynAckStr string
// NetworkQueuesSvcStr is the queue string for services
NetworkQueuesSvcStr string
// ApplicationQueuesSynStr is the queue string for application syn packets
ApplicationQueuesSynStr string
// ApplicationQueuesAckStr is the queue string for application ack packets
ApplicationQueuesAckStr string
// ApplicationQueuesSvcStr is the queue string for application service packets
ApplicationQueuesSvcStr string
// ApplicationQueuesSynAckStr is the queue string for application synack packets
ApplicationQueuesSynAckStr string
// DNSServerAddress
DNSServerAddress []string
}
FilterQueue captures all the configuration parameters of the NFQUEUEs and Iptables configuration.
func NewFilterQueue ¶
func NewFilterQueue(queueSeparation bool, MarkValue int, QueueStart, NumberOfNetworkQueues, NumberOfApplicationQueues uint16, NetworkQueueSize, ApplicationQueueSize uint32, dnsServerAddress []string) *FilterQueue
NewFilterQueue returns an instance of FilterQueue
func NewFilterQueueWithDefaults ¶
func NewFilterQueueWithDefaults() *FilterQueue
NewFilterQueueWithDefaults return a default filter queue config
func (*FilterQueue) GetApplicationQueueAckStr ¶
func (f *FilterQueue) GetApplicationQueueAckStr() string
GetApplicationQueueAckStr returns a queue id string to be used by iptables action
func (*FilterQueue) GetApplicationQueueSize ¶
func (f *FilterQueue) GetApplicationQueueSize() uint32
GetApplicationQueueSize returns size of application queues to be used by iptables action
func (*FilterQueue) GetApplicationQueueStart ¶
func (f *FilterQueue) GetApplicationQueueStart() uint16
GetApplicationQueueStart returns start of application queues to be used by iptables action
func (*FilterQueue) GetApplicationQueueSvcStr ¶
func (f *FilterQueue) GetApplicationQueueSvcStr() string
GetApplicationQueueSvcStr returns a queue id string to be used by iptables action
func (*FilterQueue) GetApplicationQueueSynAckStr ¶
func (f *FilterQueue) GetApplicationQueueSynAckStr() string
GetApplicationQueueSynAckStr returns a queue id string to be used by iptables action
func (*FilterQueue) GetApplicationQueueSynStr ¶
func (f *FilterQueue) GetApplicationQueueSynStr() string
GetApplicationQueueSynStr returns a queue id string to be used by iptables action
func (*FilterQueue) GetMarkValue ¶
func (f *FilterQueue) GetMarkValue() int
GetMarkValue returns a mark value to be used by iptables action
func (*FilterQueue) GetNetworkQueueAckStr ¶
func (f *FilterQueue) GetNetworkQueueAckStr() string
GetNetworkQueueAckStr returns a queue id string to be used by iptables action
func (*FilterQueue) GetNetworkQueueSize ¶
func (f *FilterQueue) GetNetworkQueueSize() uint32
GetNetworkQueueSize returns size of network queues to be used by iptables action
func (*FilterQueue) GetNetworkQueueStart ¶
func (f *FilterQueue) GetNetworkQueueStart() uint16
GetNetworkQueueStart returns start of network queues to be used by iptables action
func (*FilterQueue) GetNetworkQueueSvcStr ¶
func (f *FilterQueue) GetNetworkQueueSvcStr() string
GetNetworkQueueSvcStr returns a queue id string to be used by iptables action
func (*FilterQueue) GetNetworkQueueSynAckStr ¶
func (f *FilterQueue) GetNetworkQueueSynAckStr() string
GetNetworkQueueSynAckStr returns a queue id string to be used by iptables action
func (*FilterQueue) GetNetworkQueueSynStr ¶
func (f *FilterQueue) GetNetworkQueueSynStr() string
GetNetworkQueueSynStr returns a queue id string to be used by iptables action
func (*FilterQueue) GetNumApplicationQueues ¶
func (f *FilterQueue) GetNumApplicationQueues() uint16
GetNumApplicationQueues returns number of application queues to be used by iptables action
func (*FilterQueue) GetNumNetworkQueues ¶
func (f *FilterQueue) GetNumNetworkQueues() uint16
GetNumNetworkQueues returns number of network queues to be used by iptables action