[package] authors = ["ahcodedthat"] categories = ["command-line-interface", "config", "network-programming"] description = "Set up sockets according to command line option or configuration file" documentation = "https://docs.rs/socket_config" edition = "2021" homepage = "https://github.com/ahcodedthat/socket_config_rs" include = ["/examples", "/src", "/tests"] keywords = ["config", "network", "socket", "socket-activation", "systemd"] license = "MIT" name = "socket_config" repository = "https://github.com/ahcodedthat/socket_config_rs" rust-version = "1.70" version = "0.1.1" [package.metadata."docs.rs"] all-features = true [features] serde = ["dep:serde", "dep:serde_with"] tls-listener = ["dep:tls-listener", "tokio"] [dependencies] cfg-if = "1.0.0" clap = { version = "4.3.23", optional = true, default-features = false, features = ["derive", "std"] } derive_more = "0.99.17" futures = { version = "0.3.28", optional = true, default-features = false, features = ["std"] } once_cell = "1.18.0" pin-project = "1.1.3" serde = { version = "1.0.171", optional = true, features = ["derive"] } serde_with = { version = "3.3.0", optional = true } socket2 = { version = "0.5.3", features = ["all"] } thiserror = "1.0.47" tls-listener = { version = "0.9.0", optional = true, default-features = false, features = ["tokio-net"] } tokio = { version = "1.32.0", optional = true, features = ["net"] } [target."cfg(unix)".dependencies] libc = "0.2.147" nix = { version = "0.27.1", default-features = false, features = ["fs", "user"] } [target."cfg(windows)".dependencies] windows-sys = { version = "0.48.0", features = ["Win32_Foundation", "Win32_Storage_FileSystem", "Win32_System_Console", "Win32_System_SystemServices"] } [dev-dependencies] anyhow = "1.0.75" assert_matches = "1.5.0" clap = { version = "4.3.23", default-features = true } escargot = "0.5.8" once_cell = "1.18.0" serde_json = "1.0.105" [target.'cfg(not(any(target_os = "fuchsia", target_os = "solaris")))'.dev-dependencies] tokio = { version = "1.32.0", features = ["io-util", "macros", "net", "rt"] } [[example]] name = "chargen_once" required-features = ["clap"] [[example]] name = "echo_incr" required-features = ["clap", "tokio"]