summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--client/Makefile.am10
-rw-r--r--client/display_channel.cpp3
-rw-r--r--client/inputs_channel.cpp29
-rw-r--r--client/inputs_channel.h4
-rw-r--r--client/marshallers.h60
-rw-r--r--client/record_channel.cpp7
-rw-r--r--client/red_channel.cpp6
-rw-r--r--client/red_channel.h3
-rw-r--r--client/red_client.cpp8
-rw-r--r--client/tunnel_channel.cpp33
-rw-r--r--client/x11/Makefile.am2
11 files changed, 113 insertions, 52 deletions
diff --git a/client/Makefile.am b/client/Makefile.am
index fb69ce64..5c0ec8d2 100644
--- a/client/Makefile.am
+++ b/client/Makefile.am
@@ -3,17 +3,13 @@ NULL =
SUBDIRS = . $(red_target)
DIST_SUBDIRS = x11 #windows
-spice_built_sources = generated_demarshallers.cpp generated_marshallers.cpp generated_marshallers.h
+spice_built_sources = generated_demarshallers.cpp generated_marshallers.cpp
generated_demarshallers.cpp: $(top_srcdir)/spice.proto
$(PYTHON) $(top_srcdir)/spice_codegen.py --generate-demarshallers --client --include common.h --include messages.h $(top_srcdir)/spice.proto generated_demarshallers.cpp
-STRUCTS=
generated_marshallers.cpp: $(top_srcdir)/spice.proto
- $(PYTHON) $(top_srcdir)/spice_codegen.py --generate-marshallers $(STRUCTS) --include messages.h --client $(top_srcdir)/spice.proto generated_marshallers.cpp
-
-generated_marshallers.h: $(top_srcdir)/spice.proto
- $(PYTHON) $(top_srcdir)/spice_codegen.py --generate-marshallers $(STRUCTS) --client -H $(top_srcdir)/spice.proto generated_marshallers.h
+ $(PYTHON) $(top_srcdir)/spice_codegen.py --generate-marshallers -P --include messages.h --include marshallers.h --client $(top_srcdir)/spice.proto generated_marshallers.cpp
if SUPPORT_GL
GL_SRCS = \
@@ -46,10 +42,10 @@ RED_COMMON_SRCS = \
cmd_line_parser.h \
common.h \
demarshallers.h \
+ marshallers.h \
generated_demarshallers.cpp \
marshaller.cpp \
generated_marshallers.cpp \
- generated_marshallers.h \
cursor_channel.cpp \
cursor_channel.h \
cursor.cpp \
diff --git a/client/display_channel.cpp b/client/display_channel.cpp
index 5286aed1..67c3083e 100644
--- a/client/display_channel.cpp
+++ b/client/display_channel.cpp
@@ -42,7 +42,6 @@
#include "inputs_channel.h"
#include "cursor_channel.h"
#include "mjpeg_decoder.h"
-#include "generated_marshallers.h"
class CreatePrimarySurfaceEvent: public SyncEvent {
public:
@@ -1029,7 +1028,7 @@ void DisplayChannel::on_connect()
init.pixmap_cache_size = get_client().get_pixmap_cache_size();
init.glz_dictionary_id = 1;
init.glz_dictionary_window_size = get_client().get_glz_window_size();
- spice_marshall_msgc_display_init(message->marshaller(), &init);
+ _marshallers->msgc_display_init(message->marshaller(), &init);
post_message(message);
AutoRef<AttachChannelsEvent> attach_channels(new AttachChannelsEvent(*this));
get_client().push_event(*attach_channels);
diff --git a/client/inputs_channel.cpp b/client/inputs_channel.cpp
index 6fd0b4fd..09fc9e17 100644
--- a/client/inputs_channel.cpp
+++ b/client/inputs_channel.cpp
@@ -22,7 +22,6 @@
#include "red_client.h"
#include "application.h"
#include "display_channel.h"
-#include "generated_marshallers.h"
#define SYNC_REMOTH_MODIFIRES
@@ -127,10 +126,8 @@ void MotionMessage::release()
RedPeer::OutMessage& MotionMessage::peer_message()
{
- SpiceMsgcMouseMotion motion;
- _channel.set_motion_event(motion);
- spice_marshall_msgc_inputs_mouse_motion(_marshaller, &motion);
+ _channel.marshall_motion_event(_marshaller);
return *this;
}
@@ -159,9 +156,7 @@ void PositionMessage::release()
RedPeer::OutMessage& PositionMessage::peer_message()
{
- SpiceMsgcMousePosition pos;
- _channel.set_position_event(pos);
- spice_marshall_msgc_inputs_mouse_position(_marshaller, &pos);
+ _channel.marshall_position_event(_marshaller);
return *this;
}
@@ -260,18 +255,23 @@ void InputsChannel::handle_motion_ack(RedPeer::InMessage* message)
}
}
-void InputsChannel::set_motion_event(SpiceMsgcMouseMotion& motion)
+void InputsChannel::marshall_motion_event(SpiceMarshaller *marshaller)
{
+ SpiceMsgcMouseMotion motion;
+
Lock lock(_motion_lock);
motion.buttons_state = _mouse_buttons_state;
motion.dx = _mouse_dx;
motion.dy = _mouse_dy;
_mouse_dx = _mouse_dy = 0;
_active_motion = false;
+
+ _marshallers->msgc_inputs_mouse_motion(marshaller, &motion);
}
-void InputsChannel::set_position_event(SpiceMsgcMousePosition& position)
+void InputsChannel::marshall_position_event(SpiceMarshaller *marshaller)
{
+ SpiceMsgcMousePosition position;
Lock lock(_motion_lock);
position.buttons_state = _mouse_buttons_state;
position.x = _mouse_x;
@@ -280,6 +280,7 @@ void InputsChannel::set_position_event(SpiceMsgcMousePosition& position)
_mouse_x = _mouse_y = ~0;
_display_id = -1;
_active_motion = false;
+ _marshallers->msgc_inputs_mouse_position(marshaller, &position);
}
void InputsChannel::on_mouse_motion(int dx, int dy, int buttons_state)
@@ -322,7 +323,7 @@ void InputsChannel::on_mouse_down(int button, int buttons_state)
SpiceMsgcMousePress event;
event.button = button;
event.buttons_state = buttons_state;
- spice_marshall_msgc_inputs_mouse_press(message->marshaller(), &event);
+ _marshallers->msgc_inputs_mouse_press(message->marshaller(), &event);
post_message(message);
}
@@ -335,7 +336,7 @@ void InputsChannel::on_mouse_up(int button, int buttons_state)
SpiceMsgcMouseRelease event;
event.button = button;
event.buttons_state = buttons_state;
- spice_marshall_msgc_inputs_mouse_release(message->marshaller(), &event);
+ _marshallers->msgc_inputs_mouse_release(message->marshaller(), &event);
post_message(message);
}
@@ -362,7 +363,7 @@ void InputsChannel::on_key_down(RedKey key)
Message* message = new Message(SPICE_MSGC_INPUTS_KEY_DOWN);
SpiceMsgcKeyDown event;
event.code = scan_code;
- spice_marshall_msgc_inputs_key_down(message->marshaller(), &event);
+ _marshallers->msgc_inputs_key_down(message->marshaller(), &event);
post_message(message);
}
@@ -378,7 +379,7 @@ void InputsChannel::on_key_up(RedKey key)
Message* message = new Message(SPICE_MSGC_INPUTS_KEY_UP);
SpiceMsgcKeyUp event;
event.code = scan_code;
- spice_marshall_msgc_inputs_key_up(message->marshaller(), &event);
+ _marshallers->msgc_inputs_key_up(message->marshaller(), &event);
post_message(message);
}
@@ -407,7 +408,7 @@ void InputsChannel::on_focus_in()
Message* message = new Message(SPICE_MSGC_INPUTS_KEY_MODIFIERS);
SpiceMsgcKeyModifiers modifiers;
modifiers.modifiers = Platform::get_keyboard_lock_modifiers();
- spice_marshall_msgc_inputs_key_modifiers(message->marshaller(), &modifiers);
+ _marshallers->msgc_inputs_key_modifiers(message->marshaller(), &modifiers);
post_message(message);
#else
set_local_modifiers();
diff --git a/client/inputs_channel.h b/client/inputs_channel.h
index 59a79236..9a0e8ff3 100644
--- a/client/inputs_channel.h
+++ b/client/inputs_channel.h
@@ -45,8 +45,8 @@ protected:
virtual void on_migrate();
private:
- void set_motion_event(SpiceMsgcMouseMotion& motion_event);
- void set_position_event(SpiceMsgcMousePosition& position_event);
+ void marshall_motion_event(SpiceMarshaller *marshaller);
+ void marshall_position_event(SpiceMarshaller *marshaller);
void set_local_modifiers();
void handle_init(RedPeer::InMessage* message);
diff --git a/client/marshallers.h b/client/marshallers.h
new file mode 100644
index 00000000..7806f295
--- /dev/null
+++ b/client/marshallers.h
@@ -0,0 +1,60 @@
+/* -*- Mode: C; c-basic-offset: 4; indent-tabs-mode: nil -*- */
+/*
+ Copyright (C) 2010 Red Hat, Inc.
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, see <http://www.gnu.org/licenses/>.
+*/
+
+#ifndef _H_MARSHALLERS
+#define _H_MARSHALLERS
+
+#include <spice/protocol.h>
+#include <marshaller.h>
+#include <messages.h>
+
+typedef struct {
+ void (*SpiceMsgEmpty)(SpiceMarshaller *m, SpiceMsgEmpty *msg);
+ void (*SpiceMsgData)(SpiceMarshaller *m, SpiceMsgData *msg);
+ void (*msgc_ack_sync)(SpiceMarshaller *m, SpiceMsgcAckSync *msg);
+ void (*msgc_pong)(SpiceMarshaller *m, SpiceMsgPing *msg);
+ void (*msgc_disconnecting)(SpiceMarshaller *m, SpiceMsgDisconnect *msg);
+ void (*msgc_main_client_info)(SpiceMarshaller *m, SpiceMsgcClientInfo *msg);
+ void (*msgc_main_mouse_mode_request)(SpiceMarshaller *m, SpiceMsgcMainMouseModeRequest *msg);
+ void (*msgc_main_agent_start)(SpiceMarshaller *m, SpiceMsgcMainAgentStart *msg);
+ void (*msgc_main_agent_token)(SpiceMarshaller *m, SpiceMsgcMainAgentTokens *msg);
+ void (*msgc_display_init)(SpiceMarshaller *m, SpiceMsgcDisplayInit *msg);
+ void (*msgc_inputs_key_down)(SpiceMarshaller *m, SpiceMsgcKeyDown *msg);
+ void (*msgc_inputs_key_up)(SpiceMarshaller *m, SpiceMsgcKeyUp *msg);
+ void (*msgc_inputs_key_modifiers)(SpiceMarshaller *m, SpiceMsgcKeyModifiers *msg);
+ void (*msgc_inputs_mouse_motion)(SpiceMarshaller *m, SpiceMsgcMouseMotion *msg);
+ void (*msgc_inputs_mouse_position)(SpiceMarshaller *m, SpiceMsgcMousePosition *msg);
+ void (*msgc_inputs_mouse_press)(SpiceMarshaller *m, SpiceMsgcMousePress *msg);
+ void (*msgc_inputs_mouse_release)(SpiceMarshaller *m, SpiceMsgcMouseRelease *msg);
+ void (*msgc_record_data)(SpiceMarshaller *m, SpiceMsgcRecordPacket *msg);
+ void (*msgc_record_mode)(SpiceMarshaller *m, SpiceMsgcRecordMode *msg);
+ void (*msgc_record_start_mark)(SpiceMarshaller *m, SpiceMsgcRecordStartMark *msg);
+ void (*msgc_tunnel_service_add)(SpiceMarshaller *m, SpiceMsgcTunnelAddGenericService *msg, SpiceMarshaller **name_out, SpiceMarshaller **description_out);
+ void (*msgc_tunnel_service_remove)(SpiceMarshaller *m, SpiceMsgcTunnelRemoveService *msg);
+ void (*msgc_tunnel_socket_open_ack)(SpiceMarshaller *m, SpiceMsgcTunnelSocketOpenAck *msg);
+ void (*msgc_tunnel_socket_open_nack)(SpiceMarshaller *m, SpiceMsgcTunnelSocketOpenNack *msg);
+ void (*msgc_tunnel_socket_fin)(SpiceMarshaller *m, SpiceMsgcTunnelSocketFin *msg);
+ void (*msgc_tunnel_socket_closed)(SpiceMarshaller *m, SpiceMsgcTunnelSocketClosed *msg);
+ void (*msgc_tunnel_socket_closed_ack)(SpiceMarshaller *m, SpiceMsgcTunnelSocketClosedAck *msg);
+ void (*msgc_tunnel_socket_data)(SpiceMarshaller *m, SpiceMsgcTunnelSocketData *msg);
+ void (*msgc_tunnel_socket_token)(SpiceMarshaller *m, SpiceMsgcTunnelSocketTokens *msg);
+} SpiceMessageMarshallers;
+
+SpiceMessageMarshallers *spice_message_marshallers_get(void);
+
+#endif
diff --git a/client/record_channel.cpp b/client/record_channel.cpp
index 155e8d98..084866cc 100644
--- a/client/record_channel.cpp
+++ b/client/record_channel.cpp
@@ -19,7 +19,6 @@
#include "red_client.h"
#include "audio_channels.h"
#include "audio_devices.h"
-#include "generated_marshallers.h"
#define NUM_SAMPLES_MESSAGES 4
@@ -122,7 +121,7 @@ void RecordChannel::on_connect()
mode.mode = _mode =
test_capability(SPICE_RECORD_CAP_CELT_0_5_1) ? RecordChannel::data_mode :
SPICE_AUDIO_DATA_MODE_RAW;
- spice_marshall_msgc_record_mode(message->marshaller(), &mode);
+ _marshallers->msgc_record_mode(message->marshaller(), &mode);
post_message(message);
}
@@ -131,7 +130,7 @@ void RecordChannel::send_start_mark()
Message* message = new Message(SPICE_MSGC_RECORD_START_MARK);
SpiceMsgcRecordStartMark start_mark;
start_mark.time = get_mm_time();
- spice_marshall_msgc_record_start_mark(message->marshaller(), &start_mark);
+ _marshallers->msgc_record_start_mark(message->marshaller(), &start_mark);
post_message(message);
}
@@ -260,7 +259,7 @@ void RecordChannel::push_frame(uint8_t *frame)
peer_message.reset(SPICE_MSGC_RECORD_DATA);
SpiceMsgcRecordPacket packet;
packet.time = get_mm_time();
- spice_marshall_msgc_record_data(peer_message.marshaller(), &packet);
+ _marshallers->msgc_record_data(peer_message.marshaller(), &packet);
spice_marshaller_add(peer_message.marshaller(), frame, n);
post_message(message);
}
diff --git a/client/red_channel.cpp b/client/red_channel.cpp
index 7065b0a6..a65917a7 100644
--- a/client/red_channel.cpp
+++ b/client/red_channel.cpp
@@ -21,7 +21,6 @@
#include "application.h"
#include "debug.h"
#include "utils.h"
-#include "generated_marshallers.h"
#include "openssl/rsa.h"
#include "openssl/evp.h"
@@ -258,6 +257,7 @@ RedChannel::RedChannel(RedClient& client, uint8_t type, uint8_t id,
{
_loop.add_trigger(_send_trigger);
_loop.add_trigger(_abort_trigger);
+ _marshallers = spice_message_marshallers_get();
}
RedChannel::~RedChannel()
@@ -646,7 +646,7 @@ void RedChannel::handle_set_ack(RedPeer::InMessage* message)
Message *response = new Message(SPICE_MSGC_ACK_SYNC);
SpiceMsgcAckSync sync;
sync.generation = ack->generation;
- spice_marshall_msgc_ack_sync(response->marshaller(), &sync);
+ _marshallers->msgc_ack_sync(response->marshaller(), &sync);
post_message(response);
}
@@ -654,7 +654,7 @@ void RedChannel::handle_ping(RedPeer::InMessage* message)
{
SpiceMsgPing *ping = (SpiceMsgPing *)message->data();
Message *pong = new Message(SPICE_MSGC_PONG);
- spice_marshall_msgc_pong(pong->marshaller(), ping);
+ _marshallers->msgc_pong(pong->marshaller(), ping);
post_message(pong);
}
diff --git a/client/red_channel.h b/client/red_channel.h
index c2528abe..d973a455 100644
--- a/client/red_channel.h
+++ b/client/red_channel.h
@@ -25,6 +25,7 @@
#include "platform.h"
#include "process_loop.h"
#include "demarshallers.h"
+#include "marshallers.h"
enum {
PASSIVE_STATE,
@@ -144,6 +145,8 @@ protected:
void handle_disconnect(RedPeer::InMessage* message);
void handle_notify(RedPeer::InMessage* message);
+ SpiceMessageMarshallers *_marshallers;
+
private:
void set_state(int state);
void run();
diff --git a/client/red_client.cpp b/client/red_client.cpp
index c079f3d4..f5b52d64 100644
--- a/client/red_client.cpp
+++ b/client/red_client.cpp
@@ -22,7 +22,7 @@
#include "process_loop.h"
#include "utils.h"
#include "debug.h"
-#include "generated_marshallers.h"
+#include "marshallers.h"
#ifdef __GNUC__
typedef struct __attribute__ ((__packed__)) OldRedMigrationBegin {
@@ -701,7 +701,7 @@ void RedClient::set_mouse_mode(uint32_t supported_modes, uint32_t current_mode)
Message* message = new Message(SPICE_MSGC_MAIN_MOUSE_MODE_REQUEST);
SpiceMsgcMainMouseModeRequest mouse_mode_request;
mouse_mode_request.mode = SPICE_MOUSE_MODE_CLIENT;
- spice_marshall_msgc_main_mouse_mode_request(message->marshaller(),
+ _marshallers->msgc_main_mouse_mode_request(message->marshaller(),
&mouse_mode_request);
post_message(message);
@@ -722,7 +722,7 @@ void RedClient::handle_init(RedPeer::InMessage* message)
Message* msg = new Message(SPICE_MSGC_MAIN_AGENT_START);
SpiceMsgcMainAgentStart agent_start;
agent_start.num_tokens = ~0;
- spice_marshall_msgc_main_agent_start(msg->marshaller(), &agent_start);
+ _marshallers->msgc_main_agent_start(msg->marshaller(), &agent_start);
post_message(msg);
}
if (_auto_display_res) {
@@ -763,7 +763,7 @@ void RedClient::handle_agent_connected(RedPeer::InMessage* message)
Message* msg = new Message(SPICE_MSGC_MAIN_AGENT_START);
SpiceMsgcMainAgentStart agent_start;
agent_start.num_tokens = ~0;
- spice_marshall_msgc_main_agent_start(msg->marshaller(), &agent_start);
+ _marshallers->msgc_main_agent_start(msg->marshaller(), &agent_start);
post_message(msg);
if (_auto_display_res && !_agent_mon_config_sent) {
send_agent_monitors_config();
diff --git a/client/tunnel_channel.cpp b/client/tunnel_channel.cpp
index 1464b1da..0b55afff 100644
--- a/client/tunnel_channel.cpp
+++ b/client/tunnel_channel.cpp
@@ -21,7 +21,6 @@
#include "common.h"
#include "tunnel_channel.h"
-#include "generated_marshallers.h"
#include <spice/protocol.h>
#define SOCKET_WINDOW_SIZE 60
@@ -100,7 +99,8 @@ public:
virtual void release_buf();
static void init(uint32_t max_data_size);
- static OutSocketMessage& alloc_message(uint16_t id);
+ static OutSocketMessage& alloc_message(uint16_t id, SpiceMessageMarshallers *marshallers);
+
static void clear_free_messages();
protected:
@@ -143,7 +143,7 @@ void OutSocketMessage::init(uint32_t max_data_size)
_max_data_size = max_data_size;
}
-OutSocketMessage& OutSocketMessage::alloc_message(uint16_t id)
+OutSocketMessage& OutSocketMessage::alloc_message(uint16_t id, SpiceMessageMarshallers *marshallers)
{
OutSocketMessage* ret;
if (!_free_messages.empty()) {
@@ -156,7 +156,7 @@ OutSocketMessage& OutSocketMessage::alloc_message(uint16_t id)
SpiceMsgcTunnelSocketData data;
data.connection_id = id;
- spice_marshall_msgc_tunnel_socket_data(ret->marshaller(), &data);
+ marshallers->msgc_tunnel_socket_data(ret->marshaller(), &data);
ret->_the_buf = spice_marshaller_reserve_space(ret->marshaller(), _max_data_size);
return *ret;
@@ -189,7 +189,7 @@ struct TunnelService {
class TunnelChannel::TunnelSocket: public ClientNetSocket {
public:
TunnelSocket(uint16_t id, TunnelService& dst_service, ProcessLoop& process_loop,
- EventHandler & event_handler);
+ EventHandler & event_handler, SpiceMessageMarshallers *marshallers);
virtual ~TunnelSocket() {}
void set_num_tokens(uint32_t tokens) {_num_tokens = tokens;}
@@ -201,24 +201,27 @@ public:
bool get_guest_closed() {return _guest_closed;}
protected:
- virtual ReceiveBuffer& alloc_receive_buffer() {return OutSocketMessage::alloc_message(id());}
+ virtual ReceiveBuffer& alloc_receive_buffer() {return OutSocketMessage::alloc_message(id(), _marshallers);}
private:
uint32_t _num_tokens;
uint32_t _server_num_tokens;
uint32_t _service_id;
bool _guest_closed;
+ SpiceMessageMarshallers *_marshallers;
};
TunnelChannel::TunnelSocket::TunnelSocket(uint16_t id, TunnelService& dst_service,
ProcessLoop& process_loop,
- ClientNetSocket::EventHandler& event_handler)
+ ClientNetSocket::EventHandler& event_handler,
+ SpiceMessageMarshallers *marshallers)
: ClientNetSocket(id, dst_service.ip, htons((uint16_t)dst_service.port),
process_loop, event_handler)
, _num_tokens (0)
, _server_num_tokens (0)
, _service_id (dst_service.id)
, _guest_closed (false)
+ , _marshallers(marshallers)
{
}
@@ -295,7 +298,7 @@ void TunnelChannel::send_service(TunnelService& service)
add.ip.type = SPICE_TUNNEL_IP_TYPE_IPv4;
}
- spice_marshall_msgc_tunnel_service_add(service_msg->marshaller(), &add.base,
+ _marshallers->msgc_tunnel_service_add(service_msg->marshaller(), &add.base,
&name_out, &description_out);
if (service.type == SPICE_TUNNEL_SERVICE_TYPE_IPP) {
@@ -348,7 +351,7 @@ void TunnelChannel::handle_socket_open(RedPeer::InMessage* message)
open_msg->service_id);
}
- sckt = new TunnelSocket(open_msg->connection_id, *service, get_process_loop(), *this);
+ sckt = new TunnelSocket(open_msg->connection_id, *service, get_process_loop(), *this, _marshallers);
if (sckt->connect(open_msg->tokens)) {
_sockets[open_msg->connection_id] = sckt;
@@ -358,12 +361,12 @@ void TunnelChannel::handle_socket_open(RedPeer::InMessage* message)
SpiceMsgcTunnelSocketOpenAck ack;
ack.connection_id = open_msg->connection_id;
ack.tokens = SOCKET_WINDOW_SIZE;
- spice_marshall_msgc_tunnel_socket_open_ack(out_msg->marshaller(), &ack);
+ _marshallers->msgc_tunnel_socket_open_ack(out_msg->marshaller(), &ack);
} else {
out_msg = new Message(SPICE_MSGC_TUNNEL_SOCKET_OPEN_NACK);
SpiceMsgcTunnelSocketOpenNack nack;
nack.connection_id = open_msg->connection_id;
- spice_marshall_msgc_tunnel_socket_open_nack(out_msg->marshaller(), &nack);
+ _marshallers->msgc_tunnel_socket_open_nack(out_msg->marshaller(), &nack);
delete sckt;
}
@@ -486,7 +489,7 @@ void TunnelChannel::on_socket_fin_recv(ClientNetSocket& sckt)
DBG(0, "FIN from client coonection id=%d", tunnel_sckt->id());
SpiceMsgcTunnelSocketFin fin;
fin.connection_id = tunnel_sckt->id();
- spice_marshall_msgc_tunnel_socket_fin(out_msg->marshaller(), &fin);
+ _marshallers->msgc_tunnel_socket_fin(out_msg->marshaller(), &fin);
post_message(out_msg);
}
@@ -500,7 +503,7 @@ void TunnelChannel::on_socket_disconnect(ClientNetSocket& sckt)
out_msg = new Message(SPICE_MSGC_TUNNEL_SOCKET_CLOSED_ACK);
SpiceMsgcTunnelSocketClosedAck ack;
ack.connection_id = tunnel_sckt->id();
- spice_marshall_msgc_tunnel_socket_closed_ack(out_msg->marshaller(), &ack);
+ _marshallers->msgc_tunnel_socket_closed_ack(out_msg->marshaller(), &ack);
_sockets[tunnel_sckt->id()] = NULL;
delete &sckt;
} else { // close initiated by client
@@ -508,7 +511,7 @@ void TunnelChannel::on_socket_disconnect(ClientNetSocket& sckt)
out_msg = new Message(SPICE_MSGC_TUNNEL_SOCKET_CLOSED);
SpiceMsgcTunnelSocketClosed closed;
closed.connection_id = tunnel_sckt->id();
- spice_marshall_msgc_tunnel_socket_closed(out_msg->marshaller(), &closed);
+ _marshallers->msgc_tunnel_socket_closed(out_msg->marshaller(), &closed);
}
post_message(out_msg);
@@ -525,7 +528,7 @@ void TunnelChannel::on_socket_message_send_done(ClientNetSocket& sckt)
SpiceMsgcTunnelSocketTokens tokens_msg;
tokens_msg.connection_id = tunnel_sckt->id();
tokens_msg.num_tokens = num_tokens;
- spice_marshall_msgc_tunnel_socket_token(out_msg->marshaller(), &tokens_msg);
+ _marshallers->msgc_tunnel_socket_token(out_msg->marshaller(), &tokens_msg);
post_message(out_msg);
tunnel_sckt->set_num_tokens(0);
diff --git a/client/x11/Makefile.am b/client/x11/Makefile.am
index 81036fb3..394eed07 100644
--- a/client/x11/Makefile.am
+++ b/client/x11/Makefile.am
@@ -39,7 +39,7 @@ RED_COMMON_SRCS = \
$(CLIENT_DIR)/demarshallers.h \
$(CLIENT_DIR)/generated_demarshallers.cpp \
$(CLIENT_DIR)/marshaller.cpp \
- $(CLIENT_DIR)/generated_marshallers.h \
+ $(CLIENT_DIR)/marshallers.h \
$(CLIENT_DIR)/generated_marshallers.cpp \
$(CLIENT_DIR)/sw_canvas.cpp \
$(CLIENT_DIR)/canvas.cpp \