Skip to main content

Crate sqlmap_rs

Crate sqlmap_rs 

Source
Expand description

§Sqlmap-RS

An asynchronous, strictly-typed Rust wrapper for the sqlmapapi REST Server.

Provides a panic-free API for orchestrating SQL injection scans using the world’s most powerful detection engine. Instead of parsing messy CLI outputs, this library communicates via sqlmap’s native REST API.

§Features

  • Full API coverage: start, stop, kill, log, data, option introspection.
  • Builder pattern: Fluent SqlmapOptions::builder() with 40+ sqlmap options.
  • Multi-format output: JSON, CSV, Markdown, and plain text.
  • RAII cleanup: Tasks and daemon processes are cleaned up on drop.
  • Port conflict detection: Prevents silent connection to wrong daemons.
  • Configurable polling: Custom intervals and HTTP timeouts.

§Architecture

The library spawns sqlmapapi.py under a Tokio background thread and uses HTTP polling to track scan lifecycles. When the engine drops, the daemon is killed. When a task drops, it is deleted from the daemon.

Re-exports§

pub use client::SqlmapEngine;
pub use error::SqlmapError;
pub use types::DataResponse;
pub use types::LogEntry;
pub use types::LogResponse;
pub use types::OutputFormat;
pub use types::SqlmapDataChunk;
pub use types::SqlmapFinding;
pub use types::SqlmapOptions;
pub use types::SqlmapOptionsBuilder;

Modules§

client
REST API Client Orchestration. Orchestrator for the sqlmapapi.py subprocess and its RESTful interface.
error
Typed Error Variants. Error definitions for the sqlmapapi binding.
types
Deserialization payloads, options builder, and output formatting. Core type definitions for SQLMap REST API (sqlmapapi) payloads.