/*
* This file is part of DisOrder.
- * Copyright (C) 2004, 2005 Richard Kettlewell
+ * Copyright (C) 2004, 2005, 2007, 2008 Richard Kettlewell
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
#include <sys/socket.h>
#include <signal.h>
-#include <stdio.h>
-
-#include "types.h"
pid_t xfork(void);
-void xclose(int);
+void xclose_guts(const char *, int, int);
+#define xclose(fd) xclose_guts(__FILE__, __LINE__, fd)
void xdup2(int, int);
void xpipe(int *);
int xfcntl(int, int, long);
/* the above all call @fatal@ if the system call fails */
void nonblock(int fd);
+void blocking(int fd);
void cloexec(int fd);
-/* make @fd@ non-blocking/close-on-exec; call @fatal@ on error. */
+/* make @fd@ non-blocking/blocking/close-on-exec; call @fatal@ on error. */
int mustnotbeminus1(const char *what, int value);
/* If @value@ is -1, report an error including @what@. */