rdpsnd_process_ping: include actual packsize value in reply
The rdpsnd_process_ping function did not conform to the MS-RDPEA spec by leaving out the packsize in the reply. The MS-RDPEA spec is rather clear that this needs to be the same value as received in the training request. I think I'm seeing a slight improvement in audio sync after this change.
This commit is contained in:
parent
db8b56db44
commit
8cb6bf4e95
5
rdpsnd.c
5
rdpsnd.c
@ -5,6 +5,7 @@
|
|||||||
Copyright 2009-2011 Peter Astrand <astrand@cendio.se> for Cendio AB
|
Copyright 2009-2011 Peter Astrand <astrand@cendio.se> for Cendio AB
|
||||||
Copyright (C) Matthew Chapman <matthewc.unsw.edu.au> 2003-2008
|
Copyright (C) Matthew Chapman <matthewc.unsw.edu.au> 2003-2008
|
||||||
Copyright (C) GuoJunBo <guojunbo@ict.ac.cn> 2003
|
Copyright (C) GuoJunBo <guojunbo@ict.ac.cn> 2003
|
||||||
|
Copyright 2017 Karl Mikaelsson <derfian@cendio.se> for Cendio AB
|
||||||
|
|
||||||
This program is free software: you can redistribute it and/or modify
|
This program is free software: you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
@ -258,15 +259,17 @@ static void
|
|||||||
rdpsnd_process_ping(STREAM in)
|
rdpsnd_process_ping(STREAM in)
|
||||||
{
|
{
|
||||||
uint16 tick;
|
uint16 tick;
|
||||||
|
uint16 packsize;
|
||||||
STREAM out;
|
STREAM out;
|
||||||
|
|
||||||
in_uint16_le(in, tick);
|
in_uint16_le(in, tick);
|
||||||
|
in_uint16_le(in, packsize);
|
||||||
|
|
||||||
logger(Sound, Debug, "rdpsmd_process_ping(), tick = 0x%04x", (unsigned) tick);
|
logger(Sound, Debug, "rdpsmd_process_ping(), tick = 0x%04x", (unsigned) tick);
|
||||||
|
|
||||||
out = rdpsnd_init_packet(RDPSND_PING | 0x2300, 4);
|
out = rdpsnd_init_packet(RDPSND_PING | 0x2300, 4);
|
||||||
out_uint16_le(out, tick);
|
out_uint16_le(out, tick);
|
||||||
out_uint16_le(out, 0);
|
out_uint16_le(out, packsize);
|
||||||
s_mark_end(out);
|
s_mark_end(out);
|
||||||
rdpsnd_send(out);
|
rdpsnd_send(out);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user