diff options
Diffstat (limited to 'server')
-rw-r--r-- | server/red_channel.c | 5 | ||||
-rw-r--r-- | server/red_channel.h | 7 |
2 files changed, 12 insertions, 0 deletions
diff --git a/server/red_channel.c b/server/red_channel.c index a1bce119..22a4cc08 100644 --- a/server/red_channel.c +++ b/server/red_channel.c @@ -719,3 +719,8 @@ int red_channel_get_first_socket(RedChannel *channel) } return channel->stream->socket; } + +SpiceDataHeader *red_channel_get_header(RedChannel *channel) +{ + return channel->send_data.header; +} diff --git a/server/red_channel.h b/server/red_channel.h index 9d13dd73..61aa788c 100644 --- a/server/red_channel.h +++ b/server/red_channel.h @@ -275,4 +275,11 @@ void red_channel_send(RedChannel *channel); SpiceMarshaller *red_channel_get_marshaller(RedChannel *channel); RedsStream *red_channel_get_stream(RedChannel *channel); +/* this is a convenience function for sending messages, sometimes (migration only?) + * the serial from the header needs to be available for sending. Note that the header + * pointer retrieved is not valid except between red_channel_reset_send_data and + * red_channel_begin_send_message. red_channel_init_send_data changes the header (sets + * the type in it) as a convenience function. It is preffered to do that through it and + * not via the below accessor and direct header manipulation. */ +SpiceDataHeader *red_channel_get_header(RedChannel *channel); #endif |