From: Marc-André Lureau <mlureau@xxxxxxxxxx> Utility function used in follow-up code. Signed-off-by: Marc-André Lureau <marcandre.lureau@xxxxxxxxx> --- server/reds-stream.c | 18 ++++++++++++++++++ server/reds-stream.h | 1 + 2 files changed, 19 insertions(+) diff --git a/server/reds-stream.c b/server/reds-stream.c index c0f443b..d87cb23 100644 --- a/server/reds-stream.c +++ b/server/reds-stream.c @@ -236,6 +236,24 @@ int reds_stream_get_family(const RedsStream *s) return s->priv->info->laddr_ext.ss_family; } +int reds_stream_is_plain_unix(const RedsStream *s) +{ + spice_return_val_if_fail(s != NULL, FALSE); + + if (reds_stream_get_family(s) != AF_UNIX) + return FALSE; + +#if HAVE_SASL + if (s->priv->sasl.conn) + return FALSE; +#endif + if (s->priv->ssl) + return FALSE; + + return TRUE; + +} + ssize_t reds_stream_writev(RedsStream *s, const struct iovec *iov, int iovcnt) { int i; diff --git a/server/reds-stream.h b/server/reds-stream.h index 8e0edb0..9e53b22 100644 --- a/server/reds-stream.h +++ b/server/reds-stream.h @@ -73,6 +73,7 @@ RedsStreamSslStatus reds_stream_ssl_accept(RedsStream *stream); int reds_stream_enable_ssl(RedsStream *stream, SSL_CTX *ctx); void reds_stream_set_info_flag(RedsStream *stream, unsigned int flag); int reds_stream_get_family(const RedsStream *stream); +int reds_stream_is_plain_unix(const RedsStream *stream); typedef enum { REDS_SASL_ERROR_OK, -- 2.5.0 _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/spice-devel