2 releases
0.1.1 | Mar 10, 2024 |
---|---|
0.1.0 | Mar 7, 2024 |
#205 in #port
335 downloads per month
Used in 3 crates
(2 directly)
11KB
219 lines
random-port
Get an available port.
Install
cargo add random-port
Usage
use random_port::PortPicker;
let port: u16 = PortPicker::new().pick().unwrap();
API
PortPicker
pick()
Returns a Result<u16, Error>
for a available port.
port_range(RangeInclusive)
Specifies the range of ports to check. Must be in the range 1024..=65535
. E.g. port_range(1024..=65535)
.
execlude(HashSet<u16>)
/execlude_add(u16)
Specifies the ports to exclude.
protocol(Protocol)
Specifies the protocol to check, Default is Protocol::All
. Can be either Protocol::Tcp
, Protocol::Udp
or Protocol::All
.
host(String)
Specifies the host to check. Can be either an Ipv4 or Ipv6 address.
If not specified, will checks availability on all local addresses defined in the system.
random(bool)
Specifies whether to pick a random port from the range.
If not specified, will pick the first available port from the range.
Dependencies
~0.5–1.3MB
~23K SLoC