| @@ 524-552 (lines=29) @@ | ||
| 521 | p.errors, |
|
| 522 | ) |
|
| 523 | ||
| 524 | @patch('ospd_openvas.db.KbDB') |
|
| 525 | def test_snmp_unknown_priv_alg_credentials(self, mock_kb): |
|
| 526 | w = DummyDaemon() |
|
| 527 | ||
| 528 | creds = { |
|
| 529 | 'snmp': { |
|
| 530 | 'type': 'snmp', |
|
| 531 | 'username': 'username', |
|
| 532 | 'password': 'pass', |
|
| 533 | 'community': 'some comunity', |
|
| 534 | 'auth_algorithm': 'sha1', |
|
| 535 | 'privacy_password': 'privacy pass', |
|
| 536 | 'privacy_algorithm': 'das', |
|
| 537 | }, |
|
| 538 | } |
|
| 539 | ||
| 540 | w.scan_collection.get_credentials = MagicMock(return_value=creds) |
|
| 541 | ||
| 542 | p = PreferenceHandler('1234-1234', mock_kb, w.scan_collection, None) |
|
| 543 | p.scan_id = '456-789' |
|
| 544 | p.kbdb.add_scan_preferences = MagicMock() |
|
| 545 | r = p.prepare_credentials_for_openvas() |
|
| 546 | ||
| 547 | self.assertFalse(r) |
|
| 548 | self.assertIn( |
|
| 549 | "Unknows privacy algorithm used: " |
|
| 550 | + "das" |
|
| 551 | + ". Use 'aes', 'des' or '' (none).", |
|
| 552 | p.errors, |
|
| 553 | ) |
|
| 554 | ||
| 555 | @patch('ospd_openvas.db.KbDB') |
|
| @@ 582-608 (lines=27) @@ | ||
| 579 | p.errors, |
|
| 580 | ) |
|
| 581 | ||
| 582 | @patch('ospd_openvas.db.KbDB') |
|
| 583 | def test_snmp_unknown_auth_alg_credentials(self, mock_kb): |
|
| 584 | w = DummyDaemon() |
|
| 585 | ||
| 586 | creds = { |
|
| 587 | 'snmp': { |
|
| 588 | 'type': 'snmp', |
|
| 589 | 'username': 'username', |
|
| 590 | 'password': 'pass', |
|
| 591 | 'community': 'some comunity', |
|
| 592 | 'auth_algorithm': 'sha2', |
|
| 593 | }, |
|
| 594 | } |
|
| 595 | ||
| 596 | w.scan_collection.get_credentials = MagicMock(return_value=creds) |
|
| 597 | ||
| 598 | p = PreferenceHandler('1234-1234', mock_kb, w.scan_collection, None) |
|
| 599 | p.scan_id = '456-789' |
|
| 600 | p.kbdb.add_scan_preferences = MagicMock() |
|
| 601 | r = p.prepare_credentials_for_openvas() |
|
| 602 | ||
| 603 | self.assertFalse(r) |
|
| 604 | self.assertIn( |
|
| 605 | "Unknown authentification algorithm: " |
|
| 606 | + "sha2" |
|
| 607 | + ". Use 'md5' or 'sha1'.", |
|
| 608 | p.errors, |
|
| 609 | ) |
|
| 610 | ||
| 611 | @patch('ospd_openvas.db.KbDB') |
|
| @@ 495-521 (lines=27) @@ | ||
| 492 | p.errors, |
|
| 493 | ) |
|
| 494 | ||
| 495 | @patch('ospd_openvas.db.KbDB') |
|
| 496 | def test_snmp_no_priv_alg_but_pw_credentials(self, mock_kb): |
|
| 497 | w = DummyDaemon() |
|
| 498 | ||
| 499 | creds = { |
|
| 500 | 'snmp': { |
|
| 501 | 'type': 'snmp', |
|
| 502 | 'username': 'username', |
|
| 503 | 'password': 'pass', |
|
| 504 | 'community': 'some comunity', |
|
| 505 | 'auth_algorithm': 'sha1', |
|
| 506 | 'privacy_password': 'privacy pass', |
|
| 507 | }, |
|
| 508 | } |
|
| 509 | ||
| 510 | w.scan_collection.get_credentials = MagicMock(return_value=creds) |
|
| 511 | ||
| 512 | p = PreferenceHandler('1234-1234', mock_kb, w.scan_collection, None) |
|
| 513 | p.scan_id = '456-789' |
|
| 514 | p.kbdb.add_scan_preferences = MagicMock() |
|
| 515 | r = p.prepare_credentials_for_openvas() |
|
| 516 | ||
| 517 | self.assertFalse(r) |
|
| 518 | self.assertIn( |
|
| 519 | "When no privacy algorithm is used, the privacy" |
|
| 520 | + " password also has to be empty.", |
|
| 521 | p.errors, |
|
| 522 | ) |
|
| 523 | ||
| 524 | @patch('ospd_openvas.db.KbDB') |
|