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 | 20 +++++++++++++++++++- server/reds-stream.h | 3 ++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/server/reds-stream.c b/server/reds-stream.c index f5244e2..d87cb23 100644 --- a/server/reds-stream.c +++ b/server/reds-stream.c @@ -226,7 +226,7 @@ ssize_t reds_stream_write(RedsStream *s, const void *buf, size_t nbyte) return ret; } -int reds_stream_get_family(RedsStream *s) +int reds_stream_get_family(const RedsStream *s) { spice_return_val_if_fail(s != NULL, -1); @@ -236,6 +236,24 @@ int reds_stream_get_family(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 b5889e3..9e53b22 100644 --- a/server/reds-stream.h +++ b/server/reds-stream.h @@ -72,7 +72,8 @@ bool reds_stream_is_ssl(RedsStream *stream); 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(RedsStream *stream); +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