Add Firewall Get Rule API Methods

This commit is contained in:
Samuel Lorch 2023-03-05 21:44:42 +01:00
parent 3d943ea77d
commit 5f5ff34337
5 changed files with 71 additions and 1 deletions

View file

@ -0,0 +1,20 @@
package firewall
import (
"context"
"nfsense.net/nfsense/pkg/definitions"
)
type GetDestinationNATRulesParameters struct {
}
type GetDestinationNATRulesResult struct {
DestinationNATRules []definitions.DestinationNATRule
}
func (f *Firewall) GetDestinationNATRules(ctx context.Context, params GetForwardRulesParameters) (GetDestinationNATRulesResult, error) {
return GetDestinationNATRulesResult{
DestinationNATRules: f.Conf.Firewall.DestinationNATRules,
}, nil
}

9
api/firewall/firewall.go Normal file
View file

@ -0,0 +1,9 @@
package firewall
import (
"nfsense.net/nfsense/pkg/definitions"
)
type Firewall struct {
Conf *definitions.Config
}

View file

@ -0,0 +1,20 @@
package firewall
import (
"context"
"nfsense.net/nfsense/pkg/definitions"
)
type GetForwardRulesParameters struct {
}
type GetForwardRulesResult struct {
ForwardRules []definitions.ForwardRule
}
func (f *Firewall) GetForwardRules(ctx context.Context, params GetForwardRulesParameters) (GetForwardRulesResult, error) {
return GetForwardRulesResult{
ForwardRules: f.Conf.Firewall.ForwardRules,
}, nil
}

View file

@ -0,0 +1,20 @@
package firewall
import (
"context"
"nfsense.net/nfsense/pkg/definitions"
)
type GetSourceNATRulesParameters struct {
}
type GetSourceNATRulesResult struct {
SourceNATRules []definitions.SourceNATRule
}
func (f *Firewall) GetSourceNATRules(ctx context.Context, params GetForwardRulesParameters) (GetSourceNATRulesResult, error) {
return GetSourceNATRulesResult{
SourceNATRules: f.Conf.Firewall.SourceNATRules,
}, nil
}

View file

@ -1,10 +1,11 @@
package main
import (
"nfsense.net/nfsense/api/firewall"
"nfsense.net/nfsense/pkg/definitions"
"nfsense.net/nfsense/pkg/jsonrpc"
)
func RegisterAPIMethods(apiHandler *jsonrpc.Handler, conf *definitions.Config) {
apiHandler.Register("Firewall", &firewall.Firewall{Conf: conf})
}