Commit Graph

26 Commits

Author SHA1 Message Date
Christophe Fergeau
bb165ac3ab syntax-check: Don't use tabs for indentation 2015-12-11 18:39:49 +01:00
Frediano Ziglio
e60a3beb3c Simplify pointer computation
Signed-off-by: Frediano Ziglio <fziglio@redhat.com>
Acked-by: Christophe Fergeau <cfergeau@redhat.com>
2015-10-12 14:11:22 +01:00
Marc-André Lureau
3dcd287fcb reds-stream: add reds_stream_get_family() function 2015-01-15 18:29:36 +01:00
Christophe Fergeau
91a6feb9f4 Add missing buffer (re)allocation to reds_sasl_handle_auth_steplen()
We need to make sure we have a buffer big enough to accomodate the data
sent by the coming SASL step.
2014-04-16 17:11:38 +02:00
Christophe Fergeau
390a36ea34 Add G_GNUC_UNUSED annotations to async_read_handler args
2 of the arguments are not used, the G_GNUC_UNUSED annotation will make
this explicit.
2014-04-16 17:11:38 +02:00
Christophe Fergeau
e36c7efe81 Make struct AsyncRead/async_read_handler private
All users are now contained in reds_stream.c
2014-04-16 17:11:38 +02:00
Christophe Fergeau
81427961bd Call AsyncRead variables 'async' instead of 'obj'
This is a more explicit name.
2014-04-16 17:11:38 +02:00
Christophe Fergeau
3dd4723e48 Add reds_stream_set_async_error_handler() helper
This replaces async_read_set_error_handler() which was unused. This sets a
callback to be called when an async operation fails.

We could pass the error_handler to each reds_stream_async_read() call, but as
we will be using the same one for all async calls, it's more convenient to set it
once and for all.
AsyncRead is going to be private to reds_stream.c in one of the next
commits, and the error handler will need to be set from reds.c,
hence the move to a public RedsStream method.
2014-04-16 17:11:38 +02:00
Christophe Fergeau
dc017bb9ae Introduce reds_stream_async_read() helper
This will allow to make RedsStream::async_read private
2014-04-16 17:11:38 +02:00
Christophe Fergeau
db984941af Fix --without-sasl build
There are 2 SASL-related function prototypes which are unused in the
--without-sasl case. They cause a warning, and a build failure
when using -Werror. Wrapping them in #if HAVE_SASL avoids this issue.
2014-04-16 16:50:13 +02:00
Christophe Fergeau
2ea58dd7a7 Make RedsStream::info private 2014-01-20 12:15:42 +01:00
Christophe Fergeau
28fa3b1b3f Introduce reds_stream_set_channel() 2014-01-20 12:15:42 +01:00
Christophe Fergeau
82511418a0 Introduce reds_stream_set_info_flag() 2014-01-20 12:15:42 +01:00
Christophe Fergeau
25aca54f12 Make RedsStream::async_read private 2014-01-20 12:15:42 +01:00
Christophe Fergeau
dc04c076ef Make RedsStream::sasl private 2014-01-20 12:15:42 +01:00
Christophe Fergeau
284f9d0d7a Make RedsStream read/write functions private 2014-01-20 12:15:42 +01:00
Christophe Fergeau
520ebdc815 Make RedsStream::ssl private 2014-01-20 12:15:42 +01:00
Christophe Fergeau
30fecf87f8 Introduce reds_stream_is_ssl() 2014-01-20 12:15:42 +01:00
Christophe Fergeau
1f7123298f Add RedsStream::priv
The private data is allocated at the same time as RedsStream and
goes immediatly after the main RedsStream data.
This private member will allow to hide internal RedsStream
implementation details from the rest of spice-server.
2014-01-20 12:15:42 +01:00
Christophe Fergeau
7ff743c431 Move SASL authentication to reds_stream.h
SASL authentication mostly use members from RedsStream to do its work, so
it makes sense to have its code in reds_stream.c. This should allow to make
RedsStream::sasl private in the future.
2014-01-20 12:15:42 +01:00
Christophe Fergeau
9feed6940f Move async code to RedsStream
The AsyncRead structure in reds.h wraps an async read + callback to
be done on a stream. Moving it to reds_stream.h is needed in order
to move SASL authentication there.
2014-01-20 12:15:42 +01:00
Christophe Fergeau
cdaab7272c Move stream read/write callbacks to reds_stream.c
Now that stream creation and SSL enabling are done by helpers
in reds_stream.c, we can move the initialization of the vfunc
read/write pointers there too.
2014-01-20 12:15:41 +01:00
Christophe Fergeau
e0abf1adc2 Introduce reds_stream_new() helper
Initializing a new stream means initializing quite a few fields.
This commit factors this initialization in a dedicated reds_stream_new
helper. This also helps moving more code from reds.c to reds_stream.c
2014-01-20 12:15:41 +01:00
Christophe Fergeau
d533f72fe6 reds: Move SSL-related code to RedsStream
Code to initiate a SSL stream belongs there
2014-01-20 12:15:41 +01:00
Christophe Fergeau
e46743100f Move sync_write* to reds_stream.h
They are renamed to reds_stream_write*
2014-01-20 12:15:41 +01:00
Christophe Fergeau
8b347a641c Add reds_stream.[ch]
Gather common RedsStream code there rather than having it
in reds.c
2014-01-20 12:15:41 +01:00