1 /* ======================================================================== 2 * Copyright 1988-2006 University of Washington 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * 11 * ======================================================================== 12 */ 13 14 /* 15 * Program: Operating-system dependent routines -- ISC version 16 * 17 * Author: Mark Crispin 18 * Networks and Distributed Computing 19 * Computing & Communications 20 * University of Washington 21 * Administration Building, AG-44 22 * Seattle, WA 98195 23 * Internet: MRC@CAC.Washington.EDU 24 * 25 * Date: 10 April 1992 26 * Last Edited: 15 September 2006 27 */ 28 29 #include <string.h> 30 #include <sys/types.h> 31 #include <sys/bsdtypes.h> 32 #include <stdlib.h> 33 #include <dirent.h> 34 #include <fcntl.h> 35 #include <unistd.h> 36 #include <time.h> 37 #include <syslog.h> 38 #include <sys/file.h> 39 #include <ustat.h> 40 41 42 /* Different names, equivalent things in BSD and SysV */ 43 44 /* L_SET is defined for some strange reason in <sys/file.h> on SVR4. */ 45 #ifndef L_SET 46 #define L_SET SEEK_SET 47 #endif 48 #define L_INCR SEEK_CUR 49 #define L_XTND SEEK_END 50 51 #define direct dirent 52 53 #define ftruncate chsize 54 #define random lrand48 55 56 long gethostid (void); 57 void *memmove (void *s,void *ct,size_t n); 58 typedef int (*select_t) (struct direct *name); 59 typedef int (*compar_t) (void *d1,void *d2); 60 int scandir (char *dirname,struct direct ***namelist,select_t select, 61 compar_t compar); 62 int alphasort (void *d1,void *d2); 63 64 65 #include "env_unix.h" 66 #include "fs.h" 67 #include "ftl.h" 68 #include "nl.h" 69 #include "tcp.h" 70 #include "flocksim.h" 71