# include <sys/select.h>
# endif
+# ifdef __QNX__
+# include <sys/select.h>
+# endif
+
# if defined(sun)
# include <sys/filio.h>
# else
#endif
#if defined(sun) && !defined(__svr4__) && !defined(__SVR4)
-#define memmove(s1,s2,n) bcopy((s2),(s1),(n))
+ /* bcopy can handle overlapping moves according to SunOS 4.1.4 manpage */
+# define memmove(s1,s2,n) bcopy((s2),(s1),(n))
+# define strtoul(s,e,b) ((unsigned long int)strtol((s),(e),(b)))
+extern char *sys_errlist[]; extern int sys_nerr;
+# define strerror(errnum) \
+ (((errnum)<0 || (errnum)>=sys_nerr) ? NULL : sys_errlist[errnum])
#endif
/***********************************************/