diff --git a/hddemux.c b/hddemux.c
index e75a0075a93cd76c07c7c0f6a578861210ffb242..e2a3ed4cb3b45d941f7fbbeeed39e02a01639e16 100644
--- a/hddemux.c
+++ b/hddemux.c
@@ -9,6 +9,7 @@
 #include <stdbool.h>
 
 /* library includes */
+#include <uv/errno.h>
 #include <uv.h>
 #include <systemd/sd-daemon.h>
 
@@ -500,7 +501,7 @@ void inbound_first_read(uv_stream_t* stream, ssize_t nread, const uv_buf_t* buf)
   assert((unsigned char*)(buf->base) == st->x[0].staging + st->x[0].bytes_read);
   struct demuxer *demuxer = stream->loop->data;
 
-  if (nread == 0 || nread == UV__EAGAIN || nread == UV__EBUSY) {
+  if (nread == 0 || nread == UV_EAGAIN || nread == UV_EBUSY) {
     fprintf(stderr, "[%d] ignoring weird inbound_first_read() with status: (%zd), %s\n",
             st->id, nread, uv_strerror(nread));
     return;
@@ -653,14 +654,14 @@ void stream_read(uv_stream_t* stream, ssize_t nread, const uv_buf_t* buf) {
       assert(!st->x[ix].eof_seen);
       touch_streamstate(st);
       
-      if (nread == 0 || nread == UV__EAGAIN || nread == UV__EBUSY ||
-          nread ==UV__ENOBUFS || nread == UV_EINTR) {
+      if (nread == 0 || nread == UV_EAGAIN || nread == UV_EBUSY ||
+          nread ==UV_ENOBUFS || nread == UV_EINTR) {
         fprintf(stderr, "[%d] ignoring weird stream_read() with status: (%zd), %s\n",
                 st->id, nread, uv_strerror(nread));
         return;
       }
   
-      if (nread == UV__EOF) {
+      if (nread == UV_EOF) {
         if (demuxer->debug)
           fprintf(stderr, "[%d] EOF received from %s leg\n", st->id, indir);
         /* we've just seen the EOF from one channel -- shut down the