mirror of
https://github.com/speatzle/nfsense.git
synced 2025-05-11 02:48:21 +00:00
Move Addresses and Services ro Object
This commit is contained in:
parent
5b6889cbae
commit
de5efa2592
7 changed files with 22 additions and 8 deletions
|
@ -1,4 +1,4 @@
|
|||
package firewall
|
||||
package object
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
@ -13,8 +13,8 @@ type GetAddressesResult struct {
|
|||
Addresses map[string]definitions.Address
|
||||
}
|
||||
|
||||
func (f *Firewall) GetAddresses(ctx context.Context, params GetForwardRulesParameters) (GetAddressesResult, error) {
|
||||
func (f *Object) GetAddresses(ctx context.Context, params GetAddressesParameters) (GetAddressesResult, error) {
|
||||
return GetAddressesResult{
|
||||
Addresses: f.Conf.Firewall.Addresses,
|
||||
Addresses: f.Conf.Object.Addresses,
|
||||
}, nil
|
||||
}
|
7
internal/api/object/object.go
Normal file
7
internal/api/object/object.go
Normal file
|
@ -0,0 +1,7 @@
|
|||
package object
|
||||
|
||||
import "nfsense.net/nfsense/internal/definitions"
|
||||
|
||||
type Object struct {
|
||||
Conf *definitions.Config
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
package firewall
|
||||
package object
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
@ -13,8 +13,8 @@ type GetServicesResult struct {
|
|||
Services map[string]definitions.Service
|
||||
}
|
||||
|
||||
func (f *Firewall) GetServices(ctx context.Context, params GetForwardRulesParameters) (GetServicesResult, error) {
|
||||
func (f *Object) GetServices(ctx context.Context, params GetServicesParameters) (GetServicesResult, error) {
|
||||
return GetServicesResult{
|
||||
Services: f.Conf.Firewall.Services,
|
||||
Services: f.Conf.Object.Services,
|
||||
}, nil
|
||||
}
|
|
@ -10,6 +10,7 @@ import (
|
|||
type Config struct {
|
||||
ConfigVersion uint64 `json:"config_version" validate:"required,eq=1"`
|
||||
Firewall Firewall `json:"firewall" validate:"required,dive"`
|
||||
Object Object `json:"object" validate:"required,dive"`
|
||||
}
|
||||
|
||||
func ValidateConfig(conf *Config) error {
|
||||
|
|
|
@ -4,6 +4,4 @@ type Firewall struct {
|
|||
ForwardRules []ForwardRule `json:"forward_rules" validate:"required,dive"`
|
||||
DestinationNATRules []DestinationNATRule `json:"destination_nat_rules" validate:"required,dive"`
|
||||
SourceNATRules []SourceNATRule `json:"source_nat_rules" validate:"required,dive"`
|
||||
Addresses map[string]Address `json:"addresses" validate:"required,dive"`
|
||||
Services map[string]Service `json:"services" validate:"required,dive"`
|
||||
}
|
||||
|
|
6
internal/definitions/object.go
Normal file
6
internal/definitions/object.go
Normal file
|
@ -0,0 +1,6 @@
|
|||
package definitions
|
||||
|
||||
type Object struct {
|
||||
Addresses map[string]Address `json:"addresses" validate:"required,dive"`
|
||||
Services map[string]Service `json:"services" validate:"required,dive"`
|
||||
}
|
2
main.go
2
main.go
|
@ -12,6 +12,7 @@ import (
|
|||
|
||||
"golang.org/x/exp/slog"
|
||||
"nfsense.net/nfsense/internal/api/firewall"
|
||||
"nfsense.net/nfsense/internal/api/object"
|
||||
"nfsense.net/nfsense/internal/definitions"
|
||||
"nfsense.net/nfsense/internal/jsonrpc"
|
||||
"nfsense.net/nfsense/internal/nftables"
|
||||
|
@ -93,6 +94,7 @@ func LoadConfiguration(file string) (*definitions.Config, error) {
|
|||
|
||||
func RegisterAPIMethods(apiHandler *jsonrpc.Handler, conf *definitions.Config) {
|
||||
apiHandler.Register("Firewall", &firewall.Firewall{Conf: conf})
|
||||
apiHandler.Register("Object", &object.Object{Conf: conf})
|
||||
}
|
||||
|
||||
func apply(conf *definitions.Config) error {
|
||||
|
|
Loading…
Add table
Reference in a new issue