nginx-0.0.1-2003-11-14-19:52:04 import
diff --git a/src/os/unix/ngx_files.h b/src/os/unix/ngx_files.h
index 369c3ad..f83cc6a 100644
--- a/src/os/unix/ngx_files.h
+++ b/src/os/unix/ngx_files.h
@@ -30,6 +30,10 @@
 #define ngx_close_file_n         "close()"
 
 
+#define ngx_delete_file          unlink
+#define ngx_delete_file_n        "unlink()"
+
+
 #define ngx_open_tempfile(name, persistent)                                 \
                                  open(name, O_CREAT|O_EXCL|O_RDWR, 0600)
 #define ngx_open_tempfile_n      "open()"
@@ -49,21 +53,33 @@
 #define ngx_rename_file_n        "rename"
 
 
+#define ngx_open_dir             opendir
+#define ngx_open_dir_n           "opendir()"
+
+
+#define ngx_read_dir             readdir
+#define ngx_read_dir_n           "readdir()"
+
+
 #define ngx_mkdir(name)          mkdir(name, 0700)
 #define ngx_mkdir_n              "mkdir()"
 
 
+#define ngx_delete_dir           rmdir
+#define ngx_delete_dir_n         "rmdir()"
+
+
 #define ngx_file_type(file, sb)  stat(file, sb)
 #define ngx_file_type_n          "stat()"
 
 #define ngx_stat_fd(fd, sb)      fstat(fd, sb)
 #define ngx_stat_fd_n            "fstat()"
 
-#define ngx_is_dir(sb)           (S_ISDIR(sb.st_mode))
-#define ngx_is_file(sb)          (S_ISREG(sb.st_mode))
-#define ngx_file_size(sb)        sb.st_size
-#define ngx_file_mtime(sb)       sb.st_mtime
-#define ngx_file_uniq(sb)        sb.st_ino
+#define ngx_is_dir(sb)           (S_ISDIR(sb->st_mode))
+#define ngx_is_file(sb)          (S_ISREG(sb->st_mode))
+#define ngx_file_size(sb)        sb->st_size
+#define ngx_file_mtime(sb)       sb->st_mtime
+#define ngx_file_uniq(sb)        sb->st_ino
 
 
 #endif /* _NGX_FILES_H_INCLUDED_ */
diff --git a/src/os/unix/ngx_freebsd_config.h b/src/os/unix/ngx_freebsd_config.h
index d53339f..c020446 100644
--- a/src/os/unix/ngx_freebsd_config.h
+++ b/src/os/unix/ngx_freebsd_config.h
@@ -10,6 +10,7 @@
 #include <fcntl.h>
 #include <signal.h>
 #include <sys/types.h>
+#include <sys/stat.h>
 #include <sys/time.h>
 #include <sys/uio.h>
 #include <sys/ioctl.h>
@@ -19,6 +20,7 @@
 #include <sys/socket.h>
 #include <netinet/in.h>
 #include <netinet/tcp.h>        /* TCP_NOPUSH */
+#include <dirent.h>
 #include <arpa/inet.h>
 #include <netdb.h>
 #include <osreldate.h>
diff --git a/src/os/unix/ngx_types.h b/src/os/unix/ngx_types.h
index 3bc0653..e2622c5 100644
--- a/src/os/unix/ngx_types.h
+++ b/src/os/unix/ngx_types.h
@@ -4,14 +4,13 @@
 
 #include <ngx_config.h>
 
-#include <sys/types.h>
-#include <sys/stat.h>
 
+typedef int            ngx_fd_t;
+typedef struct stat    ngx_file_info_t;
+typedef ino_t          ngx_file_uniq_t;
 
-typedef int          ngx_fd_t;
-typedef struct stat  ngx_file_info_t;
-typedef ino_t        ngx_file_uniq_t;
-
+typedef DIR            ngx_dir_t;
+typedef struct dirent  ngx_dirent_t;
 
 
 #endif /* _NGX_TYPES_H_INCLUDED_ */