[package]
edition = "2021"
name = "slinger"
version = "0.2.14"
authors = ["Kali-Team <root@kali-team.cn>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "An HTTP Client for Rust designed for hackers."
homepage = "https://github.com/emo-crab/slinger"
readme = "README.md"
license = "GPL-3.0-only"
repository = "https://github.com/emo-crab/slinger"
[features]
charset = [
"dep:encoding_rs",
"dep:mime",
]
cookie = ["dep:cookie"]
default = []
dns = ["dep:hickory-resolver"]
gzip = ["flate2"]
http2 = [
"dep:h2",
"tls",
]
rustls = [
"tls",
"tokio-rustls",
"rustls-pki-types",
"rustls-native-certs",
]
schema = [
"dep:schemars",
"serde",
]
serde = [
"dep:serde",
"http-serde",
]
tls = []
[lib]
name = "slinger"
path = "src/lib.rs"
[[example]]
name = "async"
path = "examples/async.rs"
[[example]]
name = "base"
path = "examples/base.rs"
[[example]]
name = "certificate"
path = "examples/certificate.rs"
[[example]]
name = "cookies"
path = "examples/cookies.rs"
[[example]]
name = "custom_connector_builder"
path = "examples/custom_connector_builder.rs"
[[example]]
name = "custom_tls"
path = "examples/custom_tls.rs"
[[example]]
name = "cve-2019-5418"
path = "examples/cve-2019-5418.rs"
[[example]]
name = "dns"
path = "examples/dns.rs"
[[example]]
name = "gzip"
path = "examples/gzip.rs"
[[example]]
name = "http2"
path = "examples/http2.rs"
[[example]]
name = "http_record"
path = "examples/http_record.rs"
[[example]]
name = "http_to_command"
path = "examples/http_to_command.rs"
[[example]]
name = "native_tls_example"
path = "examples/native_tls_example.rs"
[[example]]
name = "proxy"
path = "examples/proxy.rs"
[[example]]
name = "redirect"
path = "examples/redirect.rs"
[[example]]
name = "request_budiler"
path = "examples/request_budiler.rs"
[[example]]
name = "rustls_custom_connector"
path = "examples/rustls_custom_connector.rs"
[[example]]
name = "schema"
path = "examples/schema.rs"
[[example]]
name = "smuggling"
path = "examples/smuggling.rs"
[[example]]
name = "streaming"
path = "examples/streaming.rs"
[[example]]
name = "tcp_socket"
path = "examples/tcp_socket.rs"
[[example]]
name = "tls"
path = "examples/tls.rs"
[[test]]
name = "tests"
path = "tests/tests.rs"
[dependencies.base64]
version = "0.22"
[dependencies.bytes]
version = "1.6.1"
[dependencies.cookie]
version = "0.18.1"
optional = true
[dependencies.encoding_rs]
version = "0.8"
optional = true
[dependencies.flate2]
version = "1.0"
features = ["default"]
optional = true
default-features = false
[dependencies.h2]
version = "0.4"
optional = true
[dependencies.hickory-resolver]
version = "0.25"
optional = true
[dependencies.http]
version = "1.3.1"
[dependencies.http-serde]
version = "2.1.0"
optional = true
[dependencies.mime]
version = "0.3.17"
optional = true
[dependencies.percent-encoding]
version = "2.1"
[dependencies.rustls-native-certs]
version = "0.8"
optional = true
[dependencies.rustls-pki-types]
version = "1.1.0"
features = ["alloc"]
optional = true
[dependencies.schemars]
version = "1.1.0"
features = ["bytes1"]
optional = true
[dependencies.serde]
version = "1"
features = ["derive"]
optional = true
[dependencies.socket2]
version = "0.6.1"
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = [
"net",
"io-util",
"time",
"rt",
]
default-features = false
[dependencies.tokio-rustls]
version = "0.26.4"
features = [
"ring",
"tls12",
]
optional = true
default-features = false
[dependencies.tracing]
version = "0.1"
[dev-dependencies.futures]
version = "0.3.31"
[dev-dependencies.serde_json]
version = "1"
[dev-dependencies.tokio]
version = "1"
features = [
"macros",
"rt-multi-thread",
]
default-features = false
[dev-dependencies.tokio-native-tls]
version = "0.3"