|
|
|
|
@ -18,6 +18,7 @@
|
|
|
|
|
// Author: Frank Honza <frank.honza@dcso.de>
|
|
|
|
|
|
|
|
|
|
use nom7::bytes::streaming::take;
|
|
|
|
|
use nom7::bytes::streaming::tag;
|
|
|
|
|
use nom7::combinator::map_res;
|
|
|
|
|
use nom7::number::streaming::*;
|
|
|
|
|
use nom7::*;
|
|
|
|
|
@ -115,12 +116,11 @@ pub struct ServerInit {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
pub fn parse_protocol_version(i: &[u8]) -> IResult<&[u8], ProtocolVersion> {
|
|
|
|
|
let (i, _rfb_string) = map_res(take(3_usize), str::from_utf8)(i)?;
|
|
|
|
|
let (i, _) = be_u8(i)?;
|
|
|
|
|
let (i, _) = tag("RFB ")(i)?;
|
|
|
|
|
let (i, major) = map_res(take(3_usize), str::from_utf8)(i)?;
|
|
|
|
|
let (i, _) = be_u8(i)?;
|
|
|
|
|
let (i, _) = tag(".")(i)?;
|
|
|
|
|
let (i, minor) = map_res(take(3_usize), str::from_utf8)(i)?;
|
|
|
|
|
let (i, _) = be_u8(i)?;
|
|
|
|
|
let (i, _) = tag("\n")(i)?;
|
|
|
|
|
Ok((
|
|
|
|
|
i,
|
|
|
|
|
ProtocolVersion {
|
|
|
|
|
|