github.com/aporeto-inc/trireme-lib@v10.358.0+incompatible/controller/pkg/fqconfig/fqconfig.go (about)

     1  package fqconfig
     2  
     3  // FilterQueue captures the runtime configuration like the number of queues, dns servers.
     4  type FilterQueue interface {
     5  	GetNumQueues() int
     6  	GetDNSServerAddresses() []string
     7  }
     8  
     9  type filterQueue struct {
    10  	//NumNFQueues
    11  	numNFQueues int
    12  	// DNSServerAddress
    13  	DNSServerAddress []string
    14  }
    15  
    16  // NewFilterQueue returns an instance of FilterQueue
    17  func NewFilterQueue(numNFQueues int, dnsServerAddress []string) FilterQueue {
    18  	return &filterQueue{
    19  		numNFQueues:      numNFQueues,
    20  		DNSServerAddress: dnsServerAddress,
    21  	}
    22  }
    23  
    24  // GetMarkValue returns a mark value to be used by iptables action
    25  func (f *filterQueue) GetNumQueues() int {
    26  	return f.numNFQueues
    27  }
    28  
    29  func (f *filterQueue) GetDNSServerAddresses() []string {
    30  	return f.DNSServerAddress
    31  }