@@ 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, |
@@ 3744-3803 (lines=60) @@ | ||
3741 | cmd.add_element("copy", port_list_id) |
|
3742 | return self._send_xml_command(cmd) |
|
3743 | ||
3744 | def create_port_range( |
|
3745 | self, |
|
3746 | port_list_id: str, |
|
3747 | start: int, |
|
3748 | end: int, |
|
3749 | port_range_type: PortRangeType, |
|
3750 | *, |
|
3751 | comment: Optional[str] = None, |
|
3752 | ) -> Any: |
|
3753 | """Create new port range |
|
3754 | ||
3755 | Arguments: |
|
3756 | port_list_id: UUID of the port list to which to add the range |
|
3757 | start: The first port in the range |
|
3758 | end: The last port in the range |
|
3759 | port_range_type: The type of the ports: TCP, UDP, ... |
|
3760 | comment: Comment for the port range |
|
3761 | ||
3762 | Returns: |
|
3763 | The response. See :py:meth:`send_command` for details. |
|
3764 | """ |
|
3765 | if not port_list_id: |
|
3766 | raise RequiredArgument( |
|
3767 | function=self.create_port_range.__name__, |
|
3768 | argument='port_list_id', |
|
3769 | ) |
|
3770 | ||
3771 | if not port_range_type: |
|
3772 | raise RequiredArgument( |
|
3773 | function=self.create_port_range.__name__, |
|
3774 | argument='port_range_type', |
|
3775 | ) |
|
3776 | ||
3777 | if not start: |
|
3778 | raise RequiredArgument( |
|
3779 | function=self.create_port_range.__name__, argument='start' |
|
3780 | ) |
|
3781 | ||
3782 | if not end: |
|
3783 | raise RequiredArgument( |
|
3784 | function=self.create_port_range.__name__, argument='end' |
|
3785 | ) |
|
3786 | ||
3787 | if not isinstance(port_range_type, PortRangeType): |
|
3788 | raise InvalidArgumentType( |
|
3789 | function=self.create_port_range.__name__, |
|
3790 | argument='port_range_type', |
|
3791 | arg_type=PortRangeType.__name__, |
|
3792 | ) |
|
3793 | ||
3794 | cmd = XmlCommand("create_port_range") |
|
3795 | cmd.add_element("port_list", attrs={"id": port_list_id}) |
|
3796 | cmd.add_element("start", str(start)) |
|
3797 | cmd.add_element("end", str(end)) |
|
3798 | cmd.add_element("type", port_range_type.value) |
|
3799 | ||
3800 | if comment: |
|
3801 | cmd.add_element("comment", comment) |
|
3802 | ||
3803 | return self._send_xml_command(cmd) |
|
3804 | ||
3805 | def clone_report_format( |
|
3806 | self, report_format_id: [Union[str, ReportFormatType]] |