154359Sroberto#if !defined _NTP_IO_H
254359Sroberto#define _NTP_IO_H
354359Sroberto/*
454359Sroberto * POSIX says use <fnct.h> to get O_* symbols and
554359Sroberto * SEEK_SET symbol form <unistd.h>.
654359Sroberto */
754359Sroberto#ifdef HAVE_CONFIG_H
854359Sroberto# include <config.h>
954359Sroberto#endif
1054359Sroberto
1154359Sroberto#ifdef HAVE_SYS_TYPES_H
1254359Sroberto# include <sys/types.h>
1354359Sroberto#endif
1454359Sroberto#ifdef HAVE_UNISTD_H
1554359Sroberto# include <unistd.h>
1654359Sroberto#endif
1754359Sroberto#include <stdio.h>
1854359Sroberto#ifdef HAVE_SYS_FILE_H
1954359Sroberto# include <sys/file.h>
2054359Sroberto#endif
2154359Sroberto#ifdef HAVE_FCNTL_H
2254359Sroberto# include <fcntl.h>
2354359Sroberto#endif
2454359Sroberto#if !defined(SEEK_SET) && defined(L_SET)
2554359Sroberto# define SEEK_SET L_SET
2654359Sroberto#endif
2754359Sroberto
2854359Sroberto#ifdef SYS_WINNT
2954359Sroberto# include <io.h>
3054359Sroberto# include "win32_io.h"
3154359Sroberto#endif
3254359Sroberto
33132451Sroberto/*
34132451Sroberto * Define FNDELAY and FASYNC using O_NONBLOCK and O_ASYNC if we need
35132451Sroberto * to (and can).  This is here initially for QNX, but may help for
36132451Sroberto * others as well...
37132451Sroberto */
38132451Sroberto#ifndef FNDELAY
39132451Sroberto# ifdef O_NONBLOCK
40132451Sroberto#  define FNDELAY O_NONBLOCK
41132451Sroberto# endif
4254359Sroberto#endif
43132451Sroberto
44132451Sroberto#ifndef FASYNC
45132451Sroberto# ifdef O_ASYNC
46132451Sroberto#  define FASYNC O_ASYNC
47132451Sroberto# endif
48132451Sroberto#endif
49132451Sroberto
50132451Sroberto#endif
51