in chrony-candm/src/net.rs [117:127]
fn new() -> std::io::Result<UnixDatagramClient> {
let id: [u8; 16] = rand::random();
let mut path = b"/var/run/chrony/client-000102030405060708090a0b0c0d0e0f.sock".clone();
hex::encode_to_slice(id, &mut path[23..55]).unwrap();
let path_str = OsStr::from_bytes(&path);
let sock = UnixDatagram::bind(path_str)?;
let client = UnixDatagramClient(sock);
std::fs::set_permissions(path_str, Permissions::from_mode(0o777))?;
client.connect("/var/run/chrony/chronyd.sock")?;
Ok(client)
}