| @@ 139-227 (lines=89) @@ | ||
| 136 | ||
| 137 | return self._send_xml_command(cmd) |
|
| 138 | ||
| 139 | def create_override( |
|
| 140 | self, |
|
| 141 | text: str, |
|
| 142 | nvt_oid: str, |
|
| 143 | *, |
|
| 144 | days_active: Optional[int] = None, |
|
| 145 | hosts: Optional[List[str]] = None, |
|
| 146 | port: Optional[int] = None, |
|
| 147 | result_id: Optional[str] = None, |
|
| 148 | severity: Optional[Severity] = None, |
|
| 149 | new_severity: Optional[Severity] = None, |
|
| 150 | task_id: Optional[str] = None, |
|
| 151 | threat: Optional[SeverityLevel] = None, |
|
| 152 | new_threat: Optional[SeverityLevel] = None, |
|
| 153 | ) -> Any: |
|
| 154 | """Create a new override |
|
| 155 | ||
| 156 | Arguments: |
|
| 157 | text: Text of the new override |
|
| 158 | nvt_id: OID of the nvt to which override applies |
|
| 159 | days_active: Days override will be active. -1 on always, 0 off |
|
| 160 | hosts: A list of host addresses |
|
| 161 | port: Port to which the override applies |
|
| 162 | result_id: UUID of a result to which override applies |
|
| 163 | severity: Severity to which override applies |
|
| 164 | new_severity: New severity for result |
|
| 165 | task_id: UUID of task to which override applies |
|
| 166 | threat: Severity level to which override applies. Will be converted |
|
| 167 | to severity. |
|
| 168 | new_threat: New severity level for results. Will be converted to |
|
| 169 | new_severity. |
|
| 170 | ||
| 171 | Returns: |
|
| 172 | The response. See :py:meth:`send_command` for details. |
|
| 173 | """ |
|
| 174 | if not text: |
|
| 175 | raise RequiredArgument( |
|
| 176 | function=self.create_override.__name__, argument='text' |
|
| 177 | ) |
|
| 178 | ||
| 179 | if not nvt_oid: |
|
| 180 | raise RequiredArgument( |
|
| 181 | function=self.create_override.__name__, argument='nvt_oid' |
|
| 182 | ) |
|
| 183 | ||
| 184 | cmd = XmlCommand("create_override") |
|
| 185 | cmd.add_element("text", text) |
|
| 186 | cmd.add_element("nvt", attrs={"oid": nvt_oid}) |
|
| 187 | ||
| 188 | if days_active is not None: |
|
| 189 | cmd.add_element("active", str(days_active)) |
|
| 190 | ||
| 191 | if hosts: |
|
| 192 | cmd.add_element("hosts", _to_comma_list(hosts)) |
|
| 193 | ||
| 194 | if port: |
|
| 195 | cmd.add_element("port", str(port)) |
|
| 196 | ||
| 197 | if result_id: |
|
| 198 | cmd.add_element("result", attrs={"id": result_id}) |
|
| 199 | ||
| 200 | if severity: |
|
| 201 | cmd.add_element("severity", str(severity)) |
|
| 202 | ||
| 203 | if new_severity: |
|
| 204 | cmd.add_element("new_severity", str(new_severity)) |
|
| 205 | ||
| 206 | if task_id: |
|
| 207 | cmd.add_element("task", attrs={"id": task_id}) |
|
| 208 | ||
| 209 | if threat is not None: |
|
| 210 | deprecation( |
|
| 211 | "The threat parameter has been removed in GMP" |
|
| 212 | " version {}{}".format( |
|
| 213 | self.get_protocol_version()[0], |
|
| 214 | self.get_protocol_version()[1], |
|
| 215 | ) |
|
| 216 | ) |
|
| 217 | ||
| 218 | if new_threat is not None: |
|
| 219 | deprecation( |
|
| 220 | "The new_threat parameter has been removed in GMP" |
|
| 221 | " version {}{}".format( |
|
| 222 | self.get_protocol_version()[0], |
|
| 223 | self.get_protocol_version()[1], |
|
| 224 | ) |
|
| 225 | ) |
|
| 226 | ||
| 227 | return self._send_xml_command(cmd) |
|
| 228 | ||
| 229 | def create_target( |
|
| 230 | self, |
|
| @@ 428-516 (lines=89) @@ | ||
| 425 | ||
| 426 | return self._send_xml_command(cmd) |
|
| 427 | ||
| 428 | def modify_override( |
|
| 429 | self, |
|
| 430 | override_id: str, |
|
| 431 | text: str, |
|
| 432 | *, |
|
| 433 | days_active: Optional[int] = None, |
|
| 434 | hosts: Optional[List[str]] = None, |
|
| 435 | port: Optional[int] = None, |
|
| 436 | result_id: Optional[str] = None, |
|
| 437 | severity: Optional[Severity] = None, |
|
| 438 | new_severity: Optional[Severity] = None, |
|
| 439 | task_id: Optional[str] = None, |
|
| 440 | threat: Optional[SeverityLevel] = None, |
|
| 441 | new_threat: Optional[SeverityLevel] = None, |
|
| 442 | ) -> Any: |
|
| 443 | """Modifies an existing override. |
|
| 444 | ||
| 445 | Arguments: |
|
| 446 | override_id: UUID of override to modify. |
|
| 447 | text: The text of the override. |
|
| 448 | days_active: Days override will be active. -1 on always, |
|
| 449 | 0 off. |
|
| 450 | hosts: A list of host addresses |
|
| 451 | port: Port to which override applies. |
|
| 452 | result_id: Result to which override applies. |
|
| 453 | severity: Severity to which override applies. |
|
| 454 | new_severity: New severity score for result. |
|
| 455 | task_id: Task to which override applies. |
|
| 456 | threat: Threat level to which override applies. |
|
| 457 | Will be converted to severity. |
|
| 458 | new_threat: New threat level for results. Will be converted to |
|
| 459 | new_severity. |
|
| 460 | ||
| 461 | Returns: |
|
| 462 | The response. See :py:meth:`send_command` for details. |
|
| 463 | """ |
|
| 464 | if not override_id: |
|
| 465 | raise RequiredArgument( |
|
| 466 | function=self.modify_override.__name__, argument='override_id' |
|
| 467 | ) |
|
| 468 | if not text: |
|
| 469 | raise RequiredArgument( |
|
| 470 | function=self.modify_override.__name__, argument='text' |
|
| 471 | ) |
|
| 472 | ||
| 473 | cmd = XmlCommand("modify_override") |
|
| 474 | cmd.set_attribute("override_id", override_id) |
|
| 475 | cmd.add_element("text", text) |
|
| 476 | ||
| 477 | if days_active is not None: |
|
| 478 | cmd.add_element("active", str(days_active)) |
|
| 479 | ||
| 480 | if hosts: |
|
| 481 | cmd.add_element("hosts", _to_comma_list(hosts)) |
|
| 482 | ||
| 483 | if port: |
|
| 484 | cmd.add_element("port", str(port)) |
|
| 485 | ||
| 486 | if result_id: |
|
| 487 | cmd.add_element("result", attrs={"id": result_id}) |
|
| 488 | ||
| 489 | if severity: |
|
| 490 | cmd.add_element("severity", str(severity)) |
|
| 491 | ||
| 492 | if new_severity: |
|
| 493 | cmd.add_element("new_severity", str(new_severity)) |
|
| 494 | ||
| 495 | if task_id: |
|
| 496 | cmd.add_element("task", attrs={"id": task_id}) |
|
| 497 | ||
| 498 | if threat is not None: |
|
| 499 | deprecation( |
|
| 500 | "The threat parameter has been removed in GMP" |
|
| 501 | " version {}{}".format( |
|
| 502 | self.get_protocol_version()[0], |
|
| 503 | self.get_protocol_version()[1], |
|
| 504 | ) |
|
| 505 | ) |
|
| 506 | ||
| 507 | if new_threat is not None: |
|
| 508 | deprecation( |
|
| 509 | "The new_threat parameter has been removed in GMP" |
|
| 510 | " version {}{}".format( |
|
| 511 | self.get_protocol_version()[0], |
|
| 512 | self.get_protocol_version()[1], |
|
| 513 | ) |
|
| 514 | ) |
|
| 515 | ||
| 516 | return self._send_xml_command(cmd) |
|
| 517 | ||
| 518 | def modify_target( |
|
| 519 | self, |
|