libxrdp: work on multi-mon, x.224 confirm packet

ulab-next
speidy 11 years ago
parent 151cc7b5d1
commit 944f266a82

@ -126,16 +126,17 @@ xrdp_iso_send_msg(struct xrdp_iso *self, struct stream *s, int code)
return 1;
}
/* TPKT HEADER */
/* TPKT HEADER - 4 bytes */
out_uint8(s, 3); /* version */
out_uint8(s, 0); /* RESERVED */
out_uint16_be(s, 19); /* length */
/* ISO LAYER */
/* ISO LAYER - X.224 - 7 bytes*/
out_uint8(s, 14); /* length */
out_uint8(s, code);
out_uint16_le(s, 0);
out_uint16_le(s, 4660);
out_uint8(s, code); /* SHOULD BE 0xd for CC */
out_uint16_be(s, 0);
out_uint16_be(s, 0x1234);
out_uint8(s, 0);
/* RDP_NEG_RSP - 8 bytes*/
out_uint8(s, 2); /* TYPE_RDP_NEG_RSP */
out_uint8(s, 1); /* flags */
out_uint16_le(s, 8); /* length */

@ -880,10 +880,10 @@ xrdp_sec_process_mcs_data_monitors(struct xrdp_sec *self, struct stream *s)
{
monitor_item = (struct mcs_monitor_item *)
g_malloc(sizeof(struct mcs_monitor_item), 1);
in_uint32_le(s, monitor_item->x);
in_uint32_le(s, monitor_item->y);
in_uint32_le(s, monitor_item->width);
in_uint32_le(s, monitor_item->height);
in_uint32_le(s, monitor_item->x); //TODO: change to signed 32 bit int.
in_uint32_le(s, monitor_item->y); //TODO: change to signed 32 bit int.
in_uint32_le(s, monitor_item->width); //TODO: change to signed 32 bit int.
in_uint32_le(s, monitor_item->height); //TODO: change to signed 32 bit int.
in_uint32_le(s, monitor_item->is_primary);
list_add_item(self->mcs_layer->monitor_list, (long)monitor_item);

Loading…
Cancel
Save