summaryrefslogtreecommitdiffstats
path: root/server/red_tunnel_worker.c
diff options
context:
space:
mode:
authorAlon Levy <alevy@redhat.com>2010-11-10 09:28:39 +0200
committerAlon Levy <alevy@redhat.com>2011-03-02 17:27:52 +0200
commita05628bf061f5c0bcbd1221f8a990487210060de (patch)
tree3c13fe0ca151e5420f8260d390a2b1996aac4afb /server/red_tunnel_worker.c
parent6b862596460802aff0604f16bb3e77c524512e84 (diff)
downloadspice-a05628bf061f5c0bcbd1221f8a990487210060de.tar.gz
spice-a05628bf061f5c0bcbd1221f8a990487210060de.tar.xz
spice-a05628bf061f5c0bcbd1221f8a990487210060de.zip
server/red_channel (all): add red_channel_get_stream
use in config_socket, this makes the stream internal to the RedChannel implementation that will change later for multiple client support.
Diffstat (limited to 'server/red_tunnel_worker.c')
-rw-r--r--server/red_tunnel_worker.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/server/red_tunnel_worker.c b/server/red_tunnel_worker.c
index 0366290e..c990bd17 100644
--- a/server/red_tunnel_worker.c
+++ b/server/red_tunnel_worker.c
@@ -3335,20 +3335,21 @@ static int tunnel_channel_config_socket(RedChannel *channel)
{
int flags;
int delay_val;
+ RedsStream *stream = red_channel_get_stream(channel);
- if ((flags = fcntl(channel->stream->socket, F_GETFL)) == -1) {
+ if ((flags = fcntl(stream->socket, F_GETFL)) == -1) {
red_printf("accept failed, %s", strerror(errno)); // can't we just use red_error?
return FALSE;
}
- if (fcntl(channel->stream->socket, F_SETFL, flags | O_NONBLOCK) == -1) {
+ if (fcntl(stream->socket, F_SETFL, flags | O_NONBLOCK) == -1) {
red_printf("accept failed, %s", strerror(errno));
return FALSE;
}
delay_val = 1;
- if (setsockopt(channel->stream->socket, IPPROTO_TCP, TCP_NODELAY, &delay_val,
+ if (setsockopt(stream->socket, IPPROTO_TCP, TCP_NODELAY, &delay_val,
sizeof(delay_val)) == -1) {
red_printf("setsockopt failed, %s", strerror(errno));
}