libxrdp: ignore incoming channels with empty names

master
speidy 8 years ago
parent 94cdbdcee6
commit 58d8cb0fd2

@ -1862,6 +1862,12 @@ xrdp_sec_process_mcs_data_channels(struct xrdp_sec *self, struct stream *s)
return 1; return 1;
} }
in_uint8a(s, channel_item->name, 8); in_uint8a(s, channel_item->name, 8);
if (g_strlen(channel_item->name) == 0)
{
g_writeln("xrdp_sec_process_mcs_data_channels: got an empty channel name, ignoring it");
g_free(channel_item);
continue;
}
in_uint32_le(s, channel_item->flags); in_uint32_le(s, channel_item->flags);
channel_item->chanid = MCS_GLOBAL_CHANNEL + (index + 1); channel_item->chanid = MCS_GLOBAL_CHANNEL + (index + 1);
list_add_item(self->mcs_layer->channel_list, (tintptr) channel_item); list_add_item(self->mcs_layer->channel_list, (tintptr) channel_item);

Loading…
Cancel
Save