@@ 3712-3771 (lines=60) @@ | ||
3709 | cmd.add_element("copy", port_list_id) |
|
3710 | return self._send_xml_command(cmd) |
|
3711 | ||
3712 | def create_port_range( |
|
3713 | self, |
|
3714 | port_list_id: str, |
|
3715 | start: int, |
|
3716 | end: int, |
|
3717 | port_range_type: PortRangeType, |
|
3718 | *, |
|
3719 | comment: Optional[str] = None, |
|
3720 | ) -> Any: |
|
3721 | """Create new port range |
|
3722 | ||
3723 | Arguments: |
|
3724 | port_list_id: UUID of the port list to which to add the range |
|
3725 | start: The first port in the range |
|
3726 | end: The last port in the range |
|
3727 | port_range_type: The type of the ports: TCP, UDP, ... |
|
3728 | comment: Comment for the port range |
|
3729 | ||
3730 | Returns: |
|
3731 | The response. See :py:meth:`send_command` for details. |
|
3732 | """ |
|
3733 | if not port_list_id: |
|
3734 | raise RequiredArgument( |
|
3735 | function=self.create_port_range.__name__, |
|
3736 | argument='port_list_id', |
|
3737 | ) |
|
3738 | ||
3739 | if not port_range_type: |
|
3740 | raise RequiredArgument( |
|
3741 | function=self.create_port_range.__name__, |
|
3742 | argument='port_range_type', |
|
3743 | ) |
|
3744 | ||
3745 | if not start: |
|
3746 | raise RequiredArgument( |
|
3747 | function=self.create_port_range.__name__, argument='start' |
|
3748 | ) |
|
3749 | ||
3750 | if not end: |
|
3751 | raise RequiredArgument( |
|
3752 | function=self.create_port_range.__name__, argument='end' |
|
3753 | ) |
|
3754 | ||
3755 | if not isinstance(port_range_type, PortRangeType): |
|
3756 | raise InvalidArgumentType( |
|
3757 | function=self.create_port_range.__name__, |
|
3758 | argument='port_range_type', |
|
3759 | arg_type=PortRangeType.__name__, |
|
3760 | ) |
|
3761 | ||
3762 | cmd = XmlCommand("create_port_range") |
|
3763 | cmd.add_element("port_list", attrs={"id": port_list_id}) |
|
3764 | cmd.add_element("start", str(start)) |
|
3765 | cmd.add_element("end", str(end)) |
|
3766 | cmd.add_element("type", port_range_type.value) |
|
3767 | ||
3768 | if comment: |
|
3769 | cmd.add_element("comment", comment) |
|
3770 | ||
3771 | return self._send_xml_command(cmd) |
|
3772 | ||
3773 | def clone_report_format( |
|
3774 | self, report_format_id: [Union[str, ReportFormatType]] |
@@ 1240-1299 (lines=60) @@ | ||
1237 | cmd.add_element("copy", port_list_id) |
|
1238 | return self._send_xml_command(cmd) |
|
1239 | ||
1240 | def create_port_range( |
|
1241 | self, |
|
1242 | port_list_id: str, |
|
1243 | start: int, |
|
1244 | end: int, |
|
1245 | port_range_type: PortRangeType, |
|
1246 | *, |
|
1247 | comment: Optional[str] = None, |
|
1248 | ) -> Any: |
|
1249 | """Create new port range |
|
1250 | ||
1251 | Arguments: |
|
1252 | port_list_id: UUID of the port list to which to add the range |
|
1253 | start: The first port in the range |
|
1254 | end: The last port in the range |
|
1255 | port_range_type: The type of the ports: TCP, UDP, ... |
|
1256 | comment: Comment for the port range |
|
1257 | ||
1258 | Returns: |
|
1259 | The response. See :py:meth:`send_command` for details. |
|
1260 | """ |
|
1261 | if not port_list_id: |
|
1262 | raise RequiredArgument( |
|
1263 | function=self.create_port_range.__name__, |
|
1264 | argument='port_list_id', |
|
1265 | ) |
|
1266 | ||
1267 | if not port_range_type: |
|
1268 | raise RequiredArgument( |
|
1269 | function=self.create_port_range.__name__, |
|
1270 | argument='port_range_type', |
|
1271 | ) |
|
1272 | ||
1273 | if not start: |
|
1274 | raise RequiredArgument( |
|
1275 | function=self.create_port_range.__name__, argument='start' |
|
1276 | ) |
|
1277 | ||
1278 | if not end: |
|
1279 | raise RequiredArgument( |
|
1280 | function=self.create_port_range.__name__, argument='end' |
|
1281 | ) |
|
1282 | ||
1283 | if not isinstance(port_range_type, PortRangeType): |
|
1284 | raise InvalidArgumentType( |
|
1285 | function=self.create_port_range.__name__, |
|
1286 | argument='port_range_type', |
|
1287 | arg_type=PortRangeType.__name__, |
|
1288 | ) |
|
1289 | ||
1290 | cmd = XmlCommand("create_port_range") |
|
1291 | cmd.add_element("port_list", attrs={"id": port_list_id}) |
|
1292 | cmd.add_element("start", str(start)) |
|
1293 | cmd.add_element("end", str(end)) |
|
1294 | cmd.add_element("type", port_range_type.value) |
|
1295 | ||
1296 | if comment: |
|
1297 | cmd.add_element("comment", comment) |
|
1298 | ||
1299 | return self._send_xml_command(cmd) |
|
1300 | ||
1301 | def import_report( |
|
1302 | self, |