Skip to content

Commit 130f9a4

Browse files
authored
fix(panos.objects.ServiceObject): Add support for overrides (#449)
fixes #437
1 parent 745b8c8 commit 130f9a4

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed

panos/objects.py

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -214,6 +214,10 @@ class ServiceObject(VersionedPanObject):
214214
destination_port (str): Destination port of the service
215215
description (str): Description of this object
216216
tag (list): Administrative tags
217+
enable_override_timeout (str): (PAN-OS 8.1+) Override session timeout value.
218+
override_timeout (int): (PAN-OS 8.1+) The TCP or UDP session timeout value (in seconds).
219+
override_half_close_timeout (int): (PAN-OS 8.1+) TCP session half-close tieout value (in seconds).
220+
override_time_wait_timeout (int): (PAN-OS 8.1+) TCP session time-wait timeout value (in seconds).
217221
218222
"""
219223

@@ -235,6 +239,9 @@ def _setup(self):
235239
default="tcp",
236240
)
237241
)
242+
params[-1].add_profile(
243+
"8.1.0", path="protocol/{protocol}", values=["tcp", "udp", "sctp"],
244+
)
238245
params.append(
239246
VersionedParamPath("source_port", path="protocol/{protocol}/source-port")
240247
)
@@ -243,6 +250,35 @@ def _setup(self):
243250
)
244251
params.append(VersionedParamPath("description", path="description"))
245252
params.append(VersionedParamPath("tag", path="tag", vartype="member"))
253+
params.append(
254+
VersionedParamPath("enable_override_timeout", default="no", exclude=True)
255+
)
256+
params[-1].add_profile(
257+
"8.1.0",
258+
values=["no", "yes"],
259+
path="protocol/{protocol}/override/{enable_override_timeout}",
260+
)
261+
params.append(VersionedParamPath("override_timeout", exclude=True))
262+
params[-1].add_profile(
263+
"8.1.0",
264+
vartype="int",
265+
condition={"enable_override_timeout": "yes"},
266+
path="protocol/{protocol}/override/{enable_override_timeout}/timeout",
267+
)
268+
params.append(VersionedParamPath("override_half_close_timeout", exclude=True))
269+
params[-1].add_profile(
270+
"8.1.0",
271+
vartype="int",
272+
condition={"enable_override_timeout": "yes", "protocol": "tcp",},
273+
path="protocol/{protocol}/override/{enable_override_timeout}/halfclose-timeout",
274+
)
275+
params.append(VersionedParamPath("override_time_wait_timeout", exclude=True))
276+
params[-1].add_profile(
277+
"8.1.0",
278+
vartype="int",
279+
condition={"enable_override_timeout": "yes", "protocol": "tcp",},
280+
path="protocol/{protocol}/override/{enable_override_timeout}/timewait-timeout",
281+
)
246282

247283
self._params = tuple(params)
248284

0 commit comments

Comments
 (0)