#include <errno.h>
#include <string.h>
#include <netdb.h>
+#include <netinet/tcp.h>
+#include <stdlib.h>
#if SIZEOF_UNSIGNED_SHORT_INT==4
typedef unsigned short u32;
#error I need at least some 64-bit type
#endif
+#ifdef HAVE_LOCAL_NBD_H
+#include "nbd.h"
+#else
#ifdef HAVE_LINUX_NBD_H
#include <linux/nbd.h>
#else
-/* get it from a kernel source somewhere, and dump it in this directory.
- * Required for people trying to compile nbd-server on a non-linux
- * system. */
-#include "nbd.h"
+#error I need an nbd.h somewhere. Either install it in <linux/nbd.h> or put it in the current directory.
+#endif
+#endif
+
+#if NBD_LFS==1
+#define _LARGEFILE_SOURCE
+#define _FILE_OFFSET_BITS 64
#endif
u64 cliserv_magic = 0x00420281861253LL;