Rust crate is helpful at querying information from Valve's goldsrc/source servers (both are supported).
let query = ValveQuery::<SourceParser>::bind("0.0.0.0:0".parse().unwrap()).unwrap();
query.connect(ADDR).unwrap();
let info = query.a2s_info_new().unwrap();
// and other a2s data
- single packet: Parse single (i.e. only 1400 bytes) packet.
- goldsrc multi packet: Parse multi packet using goldsrc scheme.
- source multi: Same as above but with source protocol.
- a2s data: Acquire a2s data.
- bz2 decompression: Decompress source multipacket data with bzip2 crate.
- crc32: Verify that data is correct using crc32 of decompressed data.
- documentation: There're no docs absolutely!
- normal visibility of modules/structs/traits: As for me, pub modifiers are bad located for now.
- master server query: Seems it works correctly.