nginx-0.0.1-2003-11-21-09:30:49 import
diff --git a/src/os/unix/ngx_files.c b/src/os/unix/ngx_files.c
index 651113d..7563009 100644
--- a/src/os/unix/ngx_files.c
+++ b/src/os/unix/ngx_files.c
@@ -118,7 +118,8 @@
 
     if (cl->next == NULL) {
         return ngx_write_file(file, cl->hunk->pos,
-                              cl->hunk->last - cl->hunk->pos, offset);
+                              (size_t) (cl->hunk->last - cl->hunk->pos),
+                              offset);
     }
 
     prev = NULL;
diff --git a/src/os/unix/ngx_files.h b/src/os/unix/ngx_files.h
index 09fc856..51cba70 100644
--- a/src/os/unix/ngx_files.h
+++ b/src/os/unix/ngx_files.h
@@ -82,7 +82,7 @@
 #define ngx_read_dir_n           "readdir()"
 
 
-#define ngx_create_dir(name)     mkdir(name, 0700)
+#define ngx_create_dir(name)     mkdir(name, (mode_t) 0700)
 #define ngx_create_dir_n         "mkdir()"
 
 
diff --git a/src/os/unix/ngx_freebsd_config.h b/src/os/unix/ngx_freebsd_config.h
index 8a2f55e..a8014ec 100644
--- a/src/os/unix/ngx_freebsd_config.h
+++ b/src/os/unix/ngx_freebsd_config.h
@@ -31,13 +31,19 @@
 /* TODO: autoconf */
 #if (i386)
 
+#if 0
 #define OFF_FMT    "%lld"
+#endif
+
 #define SIZE_FMT   "%d"
 #define SIZEX_FMT  "%x"
 
 #else  /* amd64, alpha, sparc64, ia64 */
 
+#if 0
 #define OFF_FMT    "%ld"
+#endif
+
 #define SIZE_FMT   "%ld"
 #define SIZEX_FMT  "%lx"
 
diff --git a/src/os/unix/ngx_freebsd_sendfile_chain.c b/src/os/unix/ngx_freebsd_sendfile_chain.c
index 71368c7..610c7d7 100644
--- a/src/os/unix/ngx_freebsd_sendfile_chain.c
+++ b/src/os/unix/ngx_freebsd_sendfile_chain.c
@@ -25,7 +25,7 @@
     int              rc, eintr, eagain;
     char            *prev;
     off_t            sent, fprev;
-    ssize_t          hsize, fsize, size;
+    size_t           hsize, fsize, size;
     struct iovec    *iov;
     struct sf_hdtr   hdtr;
     ngx_err_t        err;