diff --git a/backend/src/api/nftables_api.py b/backend/src/api/nftables_api.py index ae3f0e3..9951582 100644 --- a/backend/src/api/nftables_api.py +++ b/backend/src/api/nftables_api.py @@ -41,18 +41,18 @@ _current_version: Optional[str] = None # ---------------------- Pydantic models ---------------------- class MatchModel(BaseModel): - iif: Optional[str] - oif: Optional[str] - meta_length: Optional[Union[int, str]] # allow "100-200" - ip_proto: Optional[str] - tcp_dport: Optional[int] - udp_dport: Optional[int] + iif: Optional[str] = None + oif: Optional[str] = None + meta_length: Optional[Union[int, str]] = None # allow integers or ranges like "100-200" + ip_proto: Optional[str] = None + tcp_dport: Optional[int] = None + udp_dport: Optional[int] = None class ActionModel(BaseModel): type: str # drop | accept | queue | redirect - queue_num: Optional[int] - redirect_port: Optional[int] + queue_num: Optional[int] = None + redirect_port: Optional[int] = None class RuleModel(BaseModel): @@ -64,6 +64,7 @@ class RuleModel(BaseModel): action: ActionModel + class ReplaceResult(BaseModel): version: str applied: bool