upd_send.c: Use write_nonblock() rather than write_all().
[paraslash.git] / audioc.c
index aa7184e..0c2049a 100644 (file)
--- a/audioc.c
+++ b/audioc.c
@@ -1,5 +1,5 @@
 /*
 /*
- * Copyright (C) 2005-2007 Andre Noll <maan@systemlinux.org>
+ * Copyright (C) 2005-2009 Andre Noll <maan@systemlinux.org>
  *
  * Licensed under the GPL v2. For licencing details see COPYING.
  */
  *
  * Licensed under the GPL v2. For licencing details see COPYING.
  */
@@ -106,7 +106,12 @@ int main(int argc, char *argv[])
        if (ret < 0)
                goto out;
        fd = ret;
        if (ret < 0)
                goto out;
        fd = ret;
-
+       ret = mark_fd_nonblocking(fd);
+       if (ret < 0)
+               goto out;
+       ret = mark_fd_nonblocking(STDOUT_FILENO);
+       if (ret < 0)
+               goto out;
        ret = send_cred_buffer(fd, args);
        if (ret < 0)
                goto out;
        ret = send_cred_buffer(fd, args);
        if (ret < 0)
                goto out;
@@ -150,6 +155,6 @@ out:
        if (!ret && loaded && buf)
                ret = write(STDOUT_FILENO, buf, loaded);
        if (ret < 0)
        if (!ret && loaded && buf)
                ret = write(STDOUT_FILENO, buf, loaded);
        if (ret < 0)
-               PARA_ERROR_LOG("%s\n", PARA_STRERROR(-ret));
+               PARA_ERROR_LOG("%s\n", para_strerror(-ret));
        return ret < 0? EXIT_FAILURE : EXIT_SUCCESS;
 }
        return ret < 0? EXIT_FAILURE : EXIT_SUCCESS;
 }