{"id":17310496,"url":"https://github.com/kpcyrd/nessus-rs","last_synced_at":"2025-04-14T14:11:40.960Z","repository":{"id":57644292,"uuid":"99622216","full_name":"kpcyrd/nessus-rs","owner":"kpcyrd","description":"Nessus Vulnerability Scanner API client","archived":false,"fork":false,"pushed_at":"2017-12-08T14:40:19.000Z","size":694,"stargazers_count":8,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-28T03:11:12.456Z","etag":null,"topics":["nessus","nessus-api","nessus-parser"],"latest_commit_sha":null,"homepage":"https://docs.rs/nessus/","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kpcyrd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-08-07T21:30:54.000Z","updated_at":"2023-02-28T09:49:18.000Z","dependencies_parsed_at":"2022-08-30T08:01:58.052Z","dependency_job_id":null,"html_url":"https://github.com/kpcyrd/nessus-rs","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kpcyrd%2Fnessus-rs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kpcyrd%2Fnessus-rs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kpcyrd%2Fnessus-rs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kpcyrd%2Fnessus-rs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kpcyrd","download_url":"https://codeload.github.com/kpcyrd/nessus-rs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248809037,"owners_count":21164895,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["nessus","nessus-api","nessus-parser"],"created_at":"2024-10-15T12:37:23.264Z","updated_at":"2025-04-14T14:11:40.930Z","avatar_url":"https://github.com/kpcyrd.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# nessus-rs [![Build Status][travis-img]][travis] [![crates.io][crates-img]][crates] [![docs.rs][docs-img]][docs]\n\n[travis-img]:   https://travis-ci.org/kpcyrd/nessus-rs.svg?branch=master\n[travis]:       https://travis-ci.org/kpcyrd/nessus-rs\n[crates-img]:   https://img.shields.io/crates/v/nessus.svg\n[crates]:       https://crates.io/crates/nessus\n[docs-img]:     https://docs.rs/nessus/badge.svg\n[docs]:         https://docs.rs/nessus\n\nNessus Vulnerability Scanner API client.\n\n```toml\n[dependencies]\nnessus = \"0.4\"\n```\n\n## Usage\n\n```rust,no_run\nextern crate nessus;\n\nuse std::time::Duration;\n\nfn main() {\n    let scan_id = 31337;\n    let client = nessus::Client::new(\"https://nessus.example.com\", \"yourtoken\", \"secrettoken\").unwrap();\n\n    let scan = client.launch_scan(scan_id).unwrap();\n    scan.wait(\u0026client, Duration::from_secs(60), Some(30)).unwrap();\n\n    let export = client.export_scan(scan_id).unwrap();\n    export.wait(\u0026client, Duration::from_secs(3), Some(40)).unwrap();\n\n    let report = export.download(\u0026client).unwrap();\n    println!(\"download: {:?}\", report);\n}\n```\n\nSee `examples/`.\n\n## Why are there so many releases?\n\nnessus-rs is still being tested for production use and while there is some documentation from tenable.com, the response\nobjects aren't sufficiently documented to deserialize them properly. While this library should work for you most of the\ntime, there are edgecases which cause the deserialization to fail and require updates to the struct definition. One\nmight argue those are 0.0.X updates, but since they are technically breaking changes to the library, they are\nreleased as 0.X.0 updates. If you experience `JsonError`s there's a good chance updating your nessus-rs dependency\nresolves those. Updating the dependency should be fairly safe and usually doesn't require updates on your code.\n\nIf you work for tenable.com, please consider documenting which fields might be null or missing and file an issue.\n\n## License\n\nLGPL3\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkpcyrd%2Fnessus-rs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkpcyrd%2Fnessus-rs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkpcyrd%2Fnessus-rs/lists"}