Since I need to help a colleague get an Apache 2.2.x adaptor running on Red Hat, I read through all the prior email on the subject. In it there are references to source code from several different places. To avoid confusion, I pulled all the versions I could find and compared them. The bottom line is that the differences between them are all quite minor. Here is a summary of my findings; I hope it will be useful to others too. I apologize in advance for not offering diffs, or more analysis of how these differences are manifest, but I'm not familiar enough with the code:

"Wonder 3" Adaptors

Wonder 3 (Sourceforge) is only different from
Wonder 3.0 (mdimension) in the implementation of this delta in the README:

27 Sept, 2006 - Updated to work on both 32 and 64-bit architectures.
                Most changes are to Adaptor/shmem.c.

both support Apache 2.2.x
------------------------------------------------------------------------------------

"Wonder 4" Adaptors

wonder-4.0.0.712 (mdimension) differs from
"woadaptor-4.0.0.20080102" (Quinton's email of Apr11/08) in

Q's has in mod_WebObjects.c:

         if (r->connection->aborted) {
            break;
         }

NOTE: this change is in a,so Apple's 5.4 version but not in Wonder's anywhere.


all Q's files are "Copyright (c) 2000-2007 Apple, Inc. All Rights Reserved." all Wonder's are "Copyright (c) 2000 Apple Computer, Inc. All Rights Reserved."

there are other minor differences related to logging and signed/ unsigned ints
------------------------------------------------------------------------------------

"Wonder 5" Adaptors

wonder-5.0.0.7992 (mdimension) differs from
Apple's WebObjects 5.4 in:

in "apache.conf"

(a) Apple's refers to some files at "System/Library/..." and

(b) note also in Apple's a different default location for the /tmp/ logWebObjects adaptor logging

# Note: To enable logging, touch '/tmp/logWebObjects' as the administrator user (usually root).
#
# The following line is the default:
# WebObjectsLog /Library/WebObjects/Logs/WebObjects.log Debug


Apple's transport.c has a chunk of code starting

       /*
         Do not hold the lock while
         we make the connection -- it could block
         for 3 seconds (depends on config) and take
         the lock with it

         read out all the data we need from the instance
         while we still hold the lock
       */


Apple's WebObjects.c differs in this code, more elaborate than Wonder:

#ifndef PROFILE
   fputs(CRLF,stdout);
#endif

#ifndef PROFILE
/* resp->content_valid will be 0 for HEAD requests and empty responses */
   if (resp->content_valid) {
      while (resp->content_read < resp->content_length) {
         fwrite(resp->content,sizeof(char),resp->content_valid,stdout);
         resp_getResponseContent(resp, 1);
      }
      fwrite(resp->content,sizeof(char),resp->content_valid,stdout);
   }
   fflush(stdout);
#endif

... but NOTE that the two conditionally compiled sections could be one (true for Wonder too). Also the Wonder version does a "fflush(stdout)" in the first conditional
which Apple does not.


and Wonder's are still "Copyright (c) 2000 Apple Computer, Inc. All Rights Reserved."
------------------------------------------------------------------------------------

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to