}
static int
-esxStreamRecv(virStreamPtr stream, char *data, size_t nbytes)
+esxStreamRecvFlags(virStreamPtr stream,
+ char *data,
+ size_t nbytes,
+ unsigned int flags)
{
int result = -1;
esxStreamPrivate *priv = stream->privateData;
int status;
+ virCheckFlags(0, -1);
+
if (nbytes == 0)
return 0;
return result;
}
+static int
+esxStreamRecv(virStreamPtr stream,
+ char *data,
+ size_t nbytes)
+{
+ return esxStreamRecvFlags(stream, data, nbytes, 0);
+}
+
static void
esxFreeStreamPrivate(esxStreamPrivate **priv)
{
virStreamDriver esxStreamDriver = {
.streamSend = esxStreamSend,
.streamRecv = esxStreamRecv,
+ .streamRecvFlags = esxStreamRecvFlags,
/* FIXME: streamAddCallback missing */
/* FIXME: streamUpdateCallback missing */
/* FIXME: streamRemoveCallback missing */
static int
-remoteStreamRecv(virStreamPtr st,
- char *data,
- size_t nbytes)
+remoteStreamRecvFlags(virStreamPtr st,
+ char *data,
+ size_t nbytes,
+ unsigned int flags)
{
- VIR_DEBUG("st=%p data=%p nbytes=%zu", st, data, nbytes);
+ VIR_DEBUG("st=%p data=%p nbytes=%zu flags=%x",
+ st, data, nbytes, flags);
struct private_data *priv = st->conn->privateData;
virNetClientStreamPtr privst = st->privateData;
int rv;
+ virCheckFlags(0, -1);
+
if (virNetClientStreamRaiseError(privst))
return -1;
return rv;
}
+static int
+remoteStreamRecv(virStreamPtr st,
+ char *data,
+ size_t nbytes)
+{
+ return remoteStreamRecvFlags(st, data, nbytes, 0);
+}
+
struct remoteStreamCallbackData {
virStreamPtr st;
virStreamEventCallback cb;
static virStreamDriver remoteStreamDrv = {
.streamRecv = remoteStreamRecv,
+ .streamRecvFlags = remoteStreamRecvFlags,
.streamSend = remoteStreamSend,
.streamFinish = remoteStreamFinish,
.streamAbort = remoteStreamAbort,