All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Calendar Versioning.
For detailed code changes, please visit https://github.com/greenbone/gvm-tools/commits/master or get the entire source code repository and view log history:
$ git clone https://github.com/greenbone/gvm-tools.git
$ cd gvm-tools && git log
- Added new script
script/create-consolidated-reports.gmp.py
, that consolidates the last reports of tasks filtered by time period and tags #370 - Added new script
script/create-cve-report-from-json.gmp.py
that generates an CVE Report from an correctly formatted JSON. #376
- Added
in_asset
argument toimport_report()
toscript/combine-reports.gmp.py
#383
- Add ignore_pagination to get_report calls in
script/create-consolidated-reports.gmp.py
and `script/combine-reports.gmp.py [#399]greenbone#399)
21.1.0 - 2021-01-20
- Added
pretty_print
topyshell
by default, so it does not need to be manually imported #305 - Added tests for
helper
module #310 - Added tests for
parser
module #311 - Added tests for
scripts/send-target.gmp.py
#314 - Added tests for
scripts/send-tasks.gmp.py
#317 - Added tests for
scripts/send-schedules.gmp.py
#344 - Added tests for
script/start-alert-scan.gmp.py
#344 - Adding useful script helper functions to the
helper.py
#317 - CI tests Python 3.9 now. #353
- Added tests for
script/combine-reports.gmp.py
#366
- The
script/start-alert-scan.gmp.py
has been reworked with argparser #344 - Moved generic functions to generate random ids and ips from scripts to the
helper
module. #365
- Dropped Python 3.5 and Python 3.6 support. Python 3.7+ is required now. #353
- Fixed the
send-targets.gmp.py
script. #313 - Fixed the
pdf-report.gmp.py
script when an empty report is downloaded #328 - Fixed the
combine-reports.gmp.py
script, theimport_report()
command changed since v9.0. #366
20.10.1 - 2020-10-06
- Reverted changes in the dependency that causes CI failures.
20.10.0 - 2020-10-05
-
Fixed
send-schedule.gmp.py
script, because <timezone_abbrev> has been removed from Schedules, using instead. #299 -
Fixed
send-targets.gmp.py
script, because alive_test needs to be fromAliveTest
enum increate_target
function. #297 -
Added gmpv20.08 support to the
scan-new-system.gmp.py
script, ascreate_target
requires an argumentport_range
orport_list_id
now. #295 -
Using the
--log
argument is not casesensitive anymore. Use the lower-case or upper-case loglevel as the argument now.PR 276
- Fixed the
check-gmp.gmp.py
script, as it was not compatible to Python 3.5 anymore. PR 280 - Fixed the
check-gmp.gmp.py
script: results have not been loaded with-F host -T task --status
and probably some other cases. Addeddetails=True
to the command that requests the report. PR 280 - Fixed the
pdf-report.gmp.py
script. Joining the Content of the tag was not the correct way here ... we needed the tail of the<report_format>
tag ... PR 301
- Removed
gvm.version
module in favor of usingpontos.version
#254
2.1.0 - 2020-04-03
- Allow to specify hostname for SSH and TLS connections in the config file #239
- The script
random-report-gen.gmp
is able to addhost
,host details
,os
andapplication
data now, so the created reports are more realistic PR 218, PR 220 PR 225 - The script
random-report-gen.gmp
now uses argparser, to improve its usage PR 223 - Use .py ending for all gmp scripts to support auto highlighting PR 244
- Updated glossary in the documentation to reflect changes in GVM 11 PR 245
- Replaced
pipenv
withpoetry
for dependency management.poetry install
works a bit different thenpipenv install
. It installs dev packages by default and also gvmtools in editable mode. This means after runningpoetry install
all gvm-tools scripts are available in the created virtual environment. PR 246 - Fixed version handling after switching to poetry #249
- Exit with an error, if the
check_gmp.gmp
script is used with an temporary path, that has not the correct permissions. - Fixed
update-task-target.gmp
to create unique target names to support Gmpv8 - Fixed an error, where the
--sockpath
argument didn't worked as expected PR 216 - Catch exception from gvm lib PR 222 PR 224
- Fixed
send-targets.gmp
throwing an exception due to an improper check PR 248 - Fixed
send-targets.gmp
:hosts
andexclude_hosts
expecting lists PR 248
2.0.0 - 2019-09-19
- Added --duration switch to gvm-cli for command execution measurement PR 206
- Added --ssh-password switch for ssh connection PR 140
- Added a new console line interface
gvm-script
for only running GMP and OSP scripts without opening a python shell PR 152 - Forbid to run any gvm-tools cli as root user PR 183
- Added error message if invalid XML is passed to
gvm-cli
PR 198 - Added argument
--pretty
togvm-cli
to pretty format xml output PR 203
- Improved error messages if unix socket could not be found PR 78
- The structure for the config file (default is ~/.config/gvm-tools.conf) has changed. It's possible to set defaults for nearly all command line arguments PR 140
- The command line help for
gvm-cli
andgvm-pyshell
has been updated and made more consistent PR 138 - Renamed --ssh-user switch to --ssh-username PR 140
- Update
gvmtools.get_version
to return a fully compliant PEP 440 version string PR 150 - Refresh the dependencies specified via the
Pipfile.lock
file to their latest versions PR 186, PR 193 - Dropped global command line arguments from sub commands e.g. it must be
gvm-cli --config foo.conf socket ...
instead ofgvm-cli socket --config foo.conf
now. The latter didn't work actually but was listed in the--help
output #194 - Improved error message if a global argument is passed after the connection type to
gvm-cli
#196 - Renamed
clean-slave.gmp
toclean-sensor.gmp
PR 202
- Only running scripts with gvm-pyshell is deprecated PR 152
- [Auth] section in config file is deprecated and will be ignored in future releases PR 160
- Fix a bug which caused
gvm-pyshell
to immediately re-enter interactive mode upon exiting it for the first time PR 139 - Support [Auth] section in config file for backwards compatibility PR 160
- Fix using correct API to get single task and targets in update-task-target.gmp script PR 188
2.0.0.beta1 - 2018-11-13
gvm-tools got split into the command line interfaces (gvm-cli and gvm-pyshell) including the gmp (example) scripts and the Python API. The Python API can now be found at python-gvm. During this split the python package name for the API got changed from gmp to gvm. The API has also been refactored and stabilized. For details please take a look at python-gvm PR 126.
- It's now possible to write OSP scripts. Using the
--protocol=OSP
switchgvm-pyshell
adds a global osp object instead of the gmp one. - Added new client helper module.
- It's possible to get the current versions of gvm-tools via
__version__
and python-gvm via__api_version__
PR 127 - Use pipenv for development.
- The
__name__
variable is set to__gmp__
for GMP scripts and to__osp__
for OSP scripts (Remember: for normal Python scripts__name__
is set to__main__
). - Scripts are only getting two global variables now: gmp (or osp) and args. gmp and osp are the global objects to communicate with the remote gvmd or ospd daemon. args contains the parsed arguments for the script.
- The global args object only contains script related parameters now. These
username and password from the
--gmp-username
and--gmp-password
switches and the additional scripts parameters asargs.argv
. - GMPError got renamed to GvmError and must be imported from
gvm.errors
module.from gvm.errors import GvmError as GMPError
- pretty function isn't available as a global function in the scripts anymore.
It must be imported separately like
from gvmtools.helper import pretty_print as pretty
- The included gmp scripts have been cleaned up and adjusted for the new API.
- Removed experimental
gvm-dialog
application.
1.4.1 - 2018-08-10
This is the first maintenance release of the gvm-tools module 1.4 for the Greenbone Vulnerability Management (GVM) framework.
This release covers bug fixes in 'create' and 'modify' methods.
Many thanks to everyone who has contributed to this release: Raphael Grewe, Juan Jose Nicola and Jan-Oliver Wagner
Main changes compared to gvm-tools-1.4.0:
- Fix bugs for create and modify command methods.
- Improve unit tests.
- Improve documentation.
1.4.0 - 2018-08-09
This is the first release of the gvm-tools module 1.4 for the Greenbone Vulnerability Management (GVM) framework.
This release covers bug fixes, robustness improvements and an extended GMP scripts collection.
Many thanks to everyone who has contributed to this release: Raphael Grewe, Mirko Hansen, Henning Häcker, David Kleuker, Juan Jose Nicola, Timo Pollmeier, Bjoern Ricks, Joshua Schwartz, Jan-Oliver Wagner and Michael Wiegand.
Main changes compared to gvm-tools-1.3.1:
- Correct XML encoding for commands
- Fix bug for long GMP commands through SSHConnection
- Add new GMP scripts: create_targets_from_host_list.gmp, gen-random-targets.gmp, send-schedules.gmp, send-targets.gmp, send-tasks.gmp, send_delta_emails.gmp, startAlertScan.gmp, update-task-target.gmp.
- Improve and extend 'create' and 'modify' command methods
- Add support for accessing the raw response
- Improve unit tests
- Allow anonymous connections
- Require lxml and defusedxml python modules
- Improve documentation
- Several code improvements
1.3.1 - 2017-12-14
- Improved stability with ssh connections again
1.3.0 - 2017-12-12
- Improved stability with ssh connections
- Fixed bugs for create_target command
- Fixed some typos
- Added correct license file
- Improved setup (Only Python3 is allowed)
1.2.0 - 2017-08-04
- Improved feature to read from config file for gvm-cli
- Added feature to read from config file for gvm-pyshell
- Added feature to disable timeout on sockets for all clients
- Added new script to delete overrides by filter
- Removed requirement for username in gvm-cli
- Minor code improvement
1.1.0 - 2017-06-28
- Fixed hgignore file (Ignored important file)
- Fixed choice decision for the connectiontype
- Fixed quote bug in gvm_connection.py
- Changed quit function to sys.exit of non interactively used python files (f.e. scripts)
- Changed path of unixsocket from openvasmd.sock to gvmd.sock
- Added timeout functionality to all connection types
- Added GPL v3 licenses in all relevant files
- Added function create_report
- Added new script to sync tasks between to gsm
- Added new script to sync assets from a csv list
- Added experimental client gvm-dialog again
1.0.3 - 2017-06-01
- Fixed wrong library path
1.0.2 - 2017-06-01
- Changed directory structure and names, because of the generic names for python modules
- Directory libs is named gmp
- Directory clients is copied into gmp
1.0.1 - 2017-06-01
- Changed name to gvm-tools
- Bugfixes at the scripts
- Added new script to create dummy data for gsm
1.0 - 2017-05-31
- First stable release of gvm-tools