I've managed to build and run cherokee 0.4.31b8 on Mingw and
with CHEROKEE_EMBEDDED. This patch was needed to
avoid a crash during client-connect:

diff -u3 -Hb cherokee-0.4.31b8\cherokee\iocache.c cherokee\iocache.c
--- cherokee-0.4.31b8\cherokee\iocache.c        Sat Feb 04 00:30:12 2006
+++ cherokee\iocache.c  Tue Feb 14 19:11:45 2006
@@ -246,6 +246,7 @@
               return ret_error;
       }

+       if (iocache->srv)
       PRIV(entry)->stat_update = iocache->srv->bogo_now;
       return ret_ok;
}

You tell me why it's needed...

Otherwise, read() doesn't return error in GetLastError() on Win32;
libc functions sets errno as on Unix;

diff -u3 -Hb cherokee-0.4.31b8\cherokee\buffer.c cherokee\buffer.c
--- cherokee-0.4.31b8\cherokee\buffer.c Mon Feb 06 15:56:19 2006
+++ cherokee\buffer.c   Tue Feb 14 19:12:49 2006
@@ -521,11 +521,9 @@

       len = read (fd, tmp, size);
       if (len < 0) {
-               int er = cherokee_error;
-
               /* On error
                */
-               switch (er) {
+               switch (errno) {
               case EINTR:      return ret_eagain;
               case EAGAIN:     return ret_eagain;
               case EPIPE:      return ret_eof;


Mingw has _PC_NAME_MAX, but no pathconf():

diff -u3 -Hb cherokee-0.4.31b8\cherokee\handler_dirlist.c 
cherokee\handler_dirlist.c
--- cherokee-0.4.31b8\cherokee\handler_dirlist.c        Sat Feb 04 00:30:12 2006
+++ cherokee\handler_dirlist.c  Tue Feb 14 18:38:07 2006
@@ -81,7 +81,7 @@

       /* Get the memory
        */
-#ifdef _PC_NAME_MAX
+#if defined(_PC_NAME_MAX) && !defined(_WIN32)
       extra = pathconf(path->buf, _PC_NAME_MAX);
#else
       extra = PATH_MAX;

------------

Now for the bad news; my browser connects fine initially and cherokee returns
the dirlist of the root-directory. But any attempt to enter a sub-dir returns a "405 Method Not Allowed". Why?

--gv
_______________________________________________
Cherokee mailing list
[email protected]
http://www.alobbs.com/cgi-bin/mailman/listinfo/cherokee

Reply via email to