[lib] name = "e_libscanner" # dylib cdylib staticlib rlib proc-macro lib # https://doc.rust-lang.org/reference/linkage.html?highlight=ffi#linkage # crate-type = ["cdylib", "staticlib", "rlib"] [features] async = ["async-io", "futures-lite", "futures"] service = ["native-tls", "sync"] os = [] sync = [] full = ["async", "sync", "os", "service"] default = ["sync"] [dependencies] socket2 = { version = "0.4.4", features = ["all"] } rayon = "1.5.3" async-io = { version = "1.7.0", optional = true } native-tls = { version = "0.2.10", optional = true } futures = { version = "0.3.21", features = [ "executor", "thread-pool", ], optional = true } futures-lite = { version = "1.12.0", optional = true } pnet_packet = { version = "0.31.0" } pnet_datalink = { version = "0.31.0" } once_cell = "^1.1" serde = { version = "1.0", features = ["derive"] } serde_derive = "1.0.140" structopt = "0.3.26" ipnet = "2.5" e-utils = { version = "^0.1.20", features = [ "random", "dns", "traceroute", ], default-features = false } [target.'cfg(windows)'.dependencies] windows = { version = "0.30.0", features = [ "Win32_Foundation", "Win32_NetworkManagement_IpHelper", "Win32_Networking_WinSock", ] } libc = "0.2" [[example]] name = "port_scan" path = "examples/port_scan.rs" required-features = ["sync"] [[example]] name = "host_scan" path = "examples/host_scan.rs" required-features = ["sync"] [[example]] name = "async_port_scan" path = "examples/async_port_scan.rs" required-features = ["async"] [[example]] name = "async_host_scan" path = "examples/async_host_scan.rs" required-features = ["async"] [[example]] name = "service_detection" path = "examples/service_detection.rs" required-features = ["service"] [[example]] name = "os" path = "examples/os.rs" required-features = ["os"] [[example]] name = "cmd_input" path = "examples/cmd_input.rs" required-features = [] [[example]] name = "dns" path = "examples/dns.rs" required-features = [] [[example]] name = "tracert" path = "examples/tracert.rs" required-features = [] [package.metadata.docs.rs] # To build locally: # RUSTDOCFLAGS="--cfg doc_cfg" cargo +nightly doc --all-features --no-deps --open all-features = true rustdoc-args = ["--cfg", "doc_cfg"] [package] name = "e-libscanner" version = "0.1.8" authors = ["Eternal "] license-file = "GNU-LICENSE" edition = "2021" readme = "README.md" rust-version = "1.62.0" description = "The bottom layer is scanned by capturing packets" documentation = "https://docs.rs/e-libscanner" homepage = "https://github.com/EternalNight996" repository = "https://github.com/EternalNight996/e-libscanner" include = ["src/", "Cargo.toml", "*-LICENSE", "*.md"] keywords = ["net", "scan", "async", "e-libscanner", "e-"] categories = [ "network-programming", "asynchronous", "os", "command-line-utilities", ] # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html