nginx-0.0.1-2003-11-21-09:30:49 import
diff --git a/src/event/modules/ngx_devpoll_module.c b/src/event/modules/ngx_devpoll_module.c
index c8f3684..08aff29 100644
--- a/src/event/modules/ngx_devpoll_module.c
+++ b/src/event/modules/ngx_devpoll_module.c
@@ -101,7 +101,7 @@
 
 static int ngx_devpoll_init(ngx_cycle_t *cycle)
 {
-    int                  n;
+    size_t               n;
     ngx_devpoll_conf_t  *dpcf;
 
     dpcf = ngx_event_get_conf(cycle->conf_ctx, ngx_devpoll_module);
@@ -122,7 +122,7 @@
     if (max_changes < dpcf->changes) {
         if (nchanges) {
             n = nchanges * sizeof(struct pollfd);
-            if (write(dp, change_list, n) != n) {
+            if ((size_t) write(dp, change_list, n) != n) {
                 ngx_log_error(NGX_LOG_ALERT, cycle->log, ngx_errno,
                               "write(/dev/poll) failed");
                 return NGX_ERROR;
@@ -271,7 +271,7 @@
 
 static int ngx_devpoll_set_event(ngx_event_t *ev, int event, u_int flags)
 {
-    int                n;
+    size_t             n;
     ngx_connection_t  *c;
 
     c = ev->data;
@@ -286,7 +286,7 @@
                       "/dev/pool change list is filled up");
 
         n = nchanges * sizeof(struct pollfd);
-        if (write(dp, change_list, n) != n) {
+        if ((size_t) write(dp, change_list, n) != n) {
             ngx_log_error(NGX_LOG_ALERT, ev->log, ngx_errno,
                           "write(/dev/poll) failed");
             return NGX_ERROR;
@@ -306,7 +306,7 @@
 
     if (flags & NGX_CLOSE_EVENT) {
         n = nchanges * sizeof(struct pollfd);
-        if (write(dp, change_list, n) != n) {
+        if ((size_t) write(dp, change_list, n) != n) {
             ngx_log_error(NGX_LOG_ALERT, ev->log, ngx_errno,
                           "write(/dev/poll) failed");
             return NGX_ERROR;
@@ -321,7 +321,8 @@
 
 int ngx_devpoll_process_events(ngx_log_t *log)
 {
-    int                 events, n, i, j;
+    int                 events, i, j;
+    size_t              n;
     ngx_msec_t          timer;
     ngx_err_t           err;
     ngx_cycle_t       **cycle;
@@ -337,7 +338,7 @@
         delta = tv.tv_sec * 1000 + tv.tv_usec / 1000;
 
     } else {
-        timer = INFTIM;
+        timer = (ngx_msec_t) INFTIM;
         delta = 0;
     }
 
@@ -347,7 +348,7 @@
 
     if (nchanges) {
         n = nchanges * sizeof(struct pollfd);
-        if (write(dp, change_list, n) != n) {
+        if ((size_t) write(dp, change_list, n) != n) {
             ngx_log_error(NGX_LOG_ALERT, log, ngx_errno,
                           "write(/dev/poll) failed");
             return NGX_ERROR;
diff --git a/src/event/modules/ngx_kqueue_module.c b/src/event/modules/ngx_kqueue_module.c
index 2590548..f51886e 100644
--- a/src/event/modules/ngx_kqueue_module.c
+++ b/src/event/modules/ngx_kqueue_module.c
@@ -11,8 +11,8 @@
 
 
 typedef struct {
-    u_int           changes;
-    u_int           events;
+    int  changes;
+    int  events;
 } ngx_kqueue_conf_t;
 
 
@@ -30,7 +30,7 @@
 int                    ngx_kqueue = -1;
 
 static struct kevent  *change_list, *event_list;
-static u_int           max_changes, nchanges, nevents;
+static int             max_changes, nchanges, nevents;
 
 
 static ngx_str_t      kqueue_name = ngx_string("kqueue");
@@ -196,8 +196,9 @@
     ev->oneshot = (flags & NGX_ONESHOT_EVENT) ? 1 : 0;
 
     if (nchanges > 0
-        && ev->index < nchanges
-        && (void *) ((uintptr_t) change_list[ev->index].udata & ~1) == ev)
+        && ev->index < (u_int) nchanges
+        && ((uintptr_t) change_list[ev->index].udata & (uintptr_t) ~1)
+                                                             == (uintptr_t) ev)
     {
         c = ev->data;
         ngx_log_error(NGX_LOG_ALERT, ev->log, 0,
@@ -206,7 +207,7 @@
         return NGX_ERROR;
     }
 
-    return ngx_kqueue_set_event(ev, event, EV_ADD | flags);
+    return ngx_kqueue_set_event(ev, event, EV_ADD|flags);
 }
 
 
@@ -217,8 +218,9 @@
     ev->active = 0;
 
     if (nchanges > 0
-        && ev->index < nchanges
-        && (void *) ((uintptr_t) change_list[ev->index].udata & ~1) == ev)
+        && ev->index < (u_int) nchanges
+        && ((uintptr_t) change_list[ev->index].udata & (uintptr_t) ~1)
+                                                             == (uintptr_t) ev)
     {
 #if (NGX_DEBUG_EVENT)
         ngx_connection_t *c = (ngx_connection_t *) ev->data;
@@ -228,7 +230,7 @@
 
         /* if the event is still not passed to a kernel we will not pass it */
 
-        if (ev->index < --nchanges) {
+        if (ev->index < (u_int) --nchanges) {
             e = (ngx_event_t *) change_list[nchanges].udata;
             change_list[ev->index] = change_list[nchanges];
             e->index = ev->index;
@@ -247,7 +249,8 @@
         return NGX_OK;
     }
 
-    return ngx_kqueue_set_event(ev, event, EV_DELETE);
+    return ngx_kqueue_set_event(ev, event,
+                           flags & NGX_DISABLE_EVENT ? EV_DISABLE : EV_DELETE);
 }
 
 
@@ -420,7 +423,7 @@
         case EVFILT_WRITE:
 
             instance = (uintptr_t) ev & 1;
-            ev = (void *) ((uintptr_t) ev & ~1);
+            ev = (ngx_event_t *) ((uintptr_t) ev & (uintptr_t) ~1);
 
             /*
              * it's a stale event from a file descriptor
@@ -486,8 +489,8 @@
 {
     ngx_kqueue_conf_t *kcf = conf;
 
-    ngx_conf_init_unsigned_value(kcf->changes, 512);
-    ngx_conf_init_unsigned_value(kcf->events, 512);
+    ngx_conf_init_value(kcf->changes, 512);
+    ngx_conf_init_value(kcf->events, 512);
 
     return NGX_CONF_OK;
 }
diff --git a/src/event/modules/ngx_poll_module.c b/src/event/modules/ngx_poll_module.c
index e771e92..4bd4177 100644
--- a/src/event/modules/ngx_poll_module.c
+++ b/src/event/modules/ngx_poll_module.c
@@ -17,7 +17,7 @@
 
 
 static struct pollfd  *event_list;
-static u_int           nevents;
+static int             nevents;
 
 static ngx_event_t   **event_index;
 static ngx_event_t   **ready_index;
@@ -203,7 +203,7 @@
 #endif
 
     if (e == NULL || e->index == NGX_INVALID_INDEX) {
-        if (ev->index < --nevents) {
+        if (ev->index < (u_int) --nevents) {
             event_list[ev->index] = event_list[nevents];
             event_index[ev->index] = event_index[nevents];
             event_index[ev->index]->index = ev->index;
@@ -222,8 +222,7 @@
 
 static int ngx_poll_process_events(ngx_log_t *log)
 {
-    int                 ready, found, j;
-    u_int               nready, i;
+    int                 i, j, ready, nready, found;
     ngx_msec_t          timer;
     ngx_err_t           err;
     ngx_cycle_t       **cycle;
@@ -239,7 +238,7 @@
         delta = tv.tv_sec * 1000 + tv.tv_usec / 1000;
 
     } else {
-        timer = INFTIM;
+        timer = (ngx_msec_t) INFTIM;
         delta = 0;
     }
 
@@ -252,7 +251,7 @@
     ngx_log_debug(log, "poll timer: %d" _ timer);
 #endif
 
-    ready = poll(event_list, nevents, timer);
+    ready = poll(event_list, (u_int) nevents, (int) timer);
 
     if (ready == -1) {
         err = ngx_errno;
diff --git a/src/event/modules/ngx_select_module.c b/src/event/modules/ngx_select_module.c
index 9e7a08f..52c30dd 100644
--- a/src/event/modules/ngx_select_module.c
+++ b/src/event/modules/ngx_select_module.c
@@ -30,7 +30,7 @@
 static int            max_fd;
 #endif
 
-static u_int          nevents;
+static int            nevents;
 
 static ngx_event_t  **event_index;
 static ngx_event_t  **ready_index;
@@ -233,7 +233,7 @@
 
 #endif
 
-    if (ev->index < --nevents) {
+    if (ev->index < (u_int) --nevents) {
         event_index[ev->index] = event_index[nevents];
         event_index[ev->index]->index = ev->index;
     }
@@ -247,8 +247,7 @@
 
 static int ngx_select_process_events(ngx_log_t *log)
 {
-    int                ready, found;
-    u_int              i, nready;
+    int                i, ready, nready,found;
     ngx_err_t          err;
     ngx_msec_t         timer;
     ngx_event_t       *ev;