|
@@ 5354-5445 (lines=92) @@
|
| 5351 |
|
|
| 5352 |
|
return self._send_xml_command(cmd) |
| 5353 |
|
|
| 5354 |
|
def modify_override( |
| 5355 |
|
self, |
| 5356 |
|
override_id: str, |
| 5357 |
|
text: str, |
| 5358 |
|
*, |
| 5359 |
|
seconds_active: Optional[int] = None, |
| 5360 |
|
hosts: Optional[List[str]] = None, |
| 5361 |
|
port: Optional[int] = None, |
| 5362 |
|
result_id: Optional[str] = None, |
| 5363 |
|
severity: Optional[Severity] = None, |
| 5364 |
|
new_severity: Optional[Severity] = None, |
| 5365 |
|
task_id: Optional[str] = None, |
| 5366 |
|
threat: Optional[SeverityLevel] = None, |
| 5367 |
|
new_threat: Optional[SeverityLevel] = None |
| 5368 |
|
) -> Any: |
| 5369 |
|
"""Modifies an existing override. |
| 5370 |
|
|
| 5371 |
|
Arguments: |
| 5372 |
|
override_id: UUID of override to modify. |
| 5373 |
|
text: The text of the override. |
| 5374 |
|
seconds_active: Seconds override will be active. -1 on always, |
| 5375 |
|
0 off. |
| 5376 |
|
hosts: A list of host addresses |
| 5377 |
|
port: Port to which override applies. |
| 5378 |
|
result_id: Result to which override applies. |
| 5379 |
|
severity: Severity to which override applies. |
| 5380 |
|
new_severity: New severity score for result. |
| 5381 |
|
task_id: Task to which override applies. |
| 5382 |
|
threat: Threat level to which override applies. |
| 5383 |
|
Will be converted to severity. |
| 5384 |
|
new_threat: New threat level for results. Will be converted to |
| 5385 |
|
new_severity. |
| 5386 |
|
|
| 5387 |
|
Returns: |
| 5388 |
|
The response. See :py:meth:`send_command` for details. |
| 5389 |
|
""" |
| 5390 |
|
if not override_id: |
| 5391 |
|
raise RequiredArgument( |
| 5392 |
|
"modify_override requires a override_id argument" |
| 5393 |
|
) |
| 5394 |
|
if not text: |
| 5395 |
|
raise RequiredArgument("modify_override requires a text argument") |
| 5396 |
|
|
| 5397 |
|
cmd = XmlCommand("modify_override") |
| 5398 |
|
cmd.set_attribute("override_id", override_id) |
| 5399 |
|
cmd.add_element("text", text) |
| 5400 |
|
|
| 5401 |
|
if not seconds_active is None: |
| 5402 |
|
cmd.add_element("active", str(seconds_active)) |
| 5403 |
|
|
| 5404 |
|
if hosts: |
| 5405 |
|
cmd.add_element("hosts", _to_comma_list(hosts)) |
| 5406 |
|
|
| 5407 |
|
if port: |
| 5408 |
|
cmd.add_element("port", str(port)) |
| 5409 |
|
|
| 5410 |
|
if result_id: |
| 5411 |
|
cmd.add_element("result", attrs={"id": result_id}) |
| 5412 |
|
|
| 5413 |
|
if severity: |
| 5414 |
|
cmd.add_element("severity", str(severity)) |
| 5415 |
|
|
| 5416 |
|
if new_severity: |
| 5417 |
|
cmd.add_element("new_severity", str(new_severity)) |
| 5418 |
|
|
| 5419 |
|
if task_id: |
| 5420 |
|
cmd.add_element("task", attrs={"id": task_id}) |
| 5421 |
|
|
| 5422 |
|
if threat is not None: |
| 5423 |
|
if not isinstance(threat, SeverityLevel): |
| 5424 |
|
raise InvalidArgument( |
| 5425 |
|
"modify_override threat argument {} is invalid. threat " |
| 5426 |
|
"must be a SeverityLevel instance".format(threat), |
| 5427 |
|
function="modify_override", |
| 5428 |
|
argument="threat", |
| 5429 |
|
) |
| 5430 |
|
cmd.add_element("threat", threat.value) |
| 5431 |
|
|
| 5432 |
|
if new_threat is not None: |
| 5433 |
|
if not isinstance(new_threat, SeverityLevel): |
| 5434 |
|
raise InvalidArgument( |
| 5435 |
|
"modify_override new_threat argument {} is invalid. " |
| 5436 |
|
"new_threat must be a SeverityLevel instance".format( |
| 5437 |
|
new_threat |
| 5438 |
|
), |
| 5439 |
|
function="modify_override", |
| 5440 |
|
argument="new_threat", |
| 5441 |
|
) |
| 5442 |
|
|
| 5443 |
|
cmd.add_element("new_threat", new_threat.value) |
| 5444 |
|
|
| 5445 |
|
return self._send_xml_command(cmd) |
| 5446 |
|
|
| 5447 |
|
def modify_permission( |
| 5448 |
|
self, |
|
@@ 1564-1654 (lines=91) @@
|
| 1561 |
|
cmd.add_element("copy", note_id) |
| 1562 |
|
return self._send_xml_command(cmd) |
| 1563 |
|
|
| 1564 |
|
def create_override( |
| 1565 |
|
self, |
| 1566 |
|
text: str, |
| 1567 |
|
nvt_oid: str, |
| 1568 |
|
*, |
| 1569 |
|
seconds_active: Optional[int] = None, |
| 1570 |
|
hosts: Optional[List[str]] = None, |
| 1571 |
|
port: Optional[int] = None, |
| 1572 |
|
result_id: Optional[str] = None, |
| 1573 |
|
severity: Optional[Severity] = None, |
| 1574 |
|
new_severity: Optional[Severity] = None, |
| 1575 |
|
task_id: Optional[str] = None, |
| 1576 |
|
threat: Optional[SeverityLevel] = None, |
| 1577 |
|
new_threat: Optional[SeverityLevel] = None |
| 1578 |
|
) -> Any: |
| 1579 |
|
"""Create a new override |
| 1580 |
|
|
| 1581 |
|
Arguments: |
| 1582 |
|
text: Text of the new override |
| 1583 |
|
nvt_id: OID of the nvt to which override applies |
| 1584 |
|
seconds_active: Seconds override will be active. -1 on always, 0 off |
| 1585 |
|
hosts: A list of host addresses |
| 1586 |
|
port: Port to which the override applies |
| 1587 |
|
result_id: UUID of a result to which override applies |
| 1588 |
|
severity: Severity to which override applies |
| 1589 |
|
new_severity: New severity for result |
| 1590 |
|
task_id: UUID of task to which override applies |
| 1591 |
|
threat: Severity level to which override applies. Will be converted |
| 1592 |
|
to severity. |
| 1593 |
|
new_threat: New severity level for results. Will be converted to |
| 1594 |
|
new_severity. |
| 1595 |
|
|
| 1596 |
|
Returns: |
| 1597 |
|
The response. See :py:meth:`send_command` for details. |
| 1598 |
|
""" |
| 1599 |
|
if not text: |
| 1600 |
|
raise RequiredArgument("create_override requires a text argument") |
| 1601 |
|
|
| 1602 |
|
if not nvt_oid: |
| 1603 |
|
raise RequiredArgument( |
| 1604 |
|
"create_override requires a nvt_oid " "argument" |
| 1605 |
|
) |
| 1606 |
|
|
| 1607 |
|
cmd = XmlCommand("create_override") |
| 1608 |
|
cmd.add_element("text", text) |
| 1609 |
|
cmd.add_element("nvt", attrs={"oid": nvt_oid}) |
| 1610 |
|
|
| 1611 |
|
if not seconds_active is None: |
| 1612 |
|
cmd.add_element("active", str(seconds_active)) |
| 1613 |
|
|
| 1614 |
|
if hosts: |
| 1615 |
|
cmd.add_element("hosts", _to_comma_list(hosts)) |
| 1616 |
|
|
| 1617 |
|
if port: |
| 1618 |
|
cmd.add_element("port", str(port)) |
| 1619 |
|
|
| 1620 |
|
if result_id: |
| 1621 |
|
cmd.add_element("result", attrs={"id": result_id}) |
| 1622 |
|
|
| 1623 |
|
if severity: |
| 1624 |
|
cmd.add_element("severity", str(severity)) |
| 1625 |
|
|
| 1626 |
|
if new_severity: |
| 1627 |
|
cmd.add_element("new_severity", str(new_severity)) |
| 1628 |
|
|
| 1629 |
|
if task_id: |
| 1630 |
|
cmd.add_element("task", attrs={"id": task_id}) |
| 1631 |
|
|
| 1632 |
|
if threat is not None: |
| 1633 |
|
if not isinstance(threat, SeverityLevel): |
| 1634 |
|
raise InvalidArgument( |
| 1635 |
|
"create_override threat argument {0} is invalid. threat " |
| 1636 |
|
"must be a SeverityLevel instance".format(threat), |
| 1637 |
|
function="create_override", |
| 1638 |
|
argument="threat", |
| 1639 |
|
) |
| 1640 |
|
|
| 1641 |
|
cmd.add_element("threat", threat.value) |
| 1642 |
|
|
| 1643 |
|
if new_threat is not None: |
| 1644 |
|
if not isinstance(new_threat, SeverityLevel): |
| 1645 |
|
raise InvalidArgument( |
| 1646 |
|
"create_override new_threat argument {0} is invalid. " |
| 1647 |
|
"new_threat be a SeverityLevel instance".format(new_threat), |
| 1648 |
|
function="create_override", |
| 1649 |
|
argument="new_threat", |
| 1650 |
|
) |
| 1651 |
|
|
| 1652 |
|
cmd.add_element("new_threat", new_threat.value) |
| 1653 |
|
|
| 1654 |
|
return self._send_xml_command(cmd) |
| 1655 |
|
|
| 1656 |
|
def clone_override(self, override_id: str) -> Any: |
| 1657 |
|
"""Clone an existing override |