- if (sendmsg(socket, &msg, 0) == -1)
- fatal("%s: sendmsg(%d)", __FUNCTION__, fd);
+ if ((n = sendmsg(sock, &msg, 0)) == -1) {
+ error("%s: sendmsg(%d): %s", __func__, fd,
+ strerror(errno));
+ return -1;
+ }
+
+ if (n != 1) {
+ error("%s: sendmsg: expected sent 1 got %ld",
+ __func__, (long)n);
+ return -1;
+ }
+ return 0;
+#else
+ error("%s: file descriptor passing not supported", __func__);
+ return -1;
+#endif