apache
[Top] [All Lists]

Re[2]: Apache 1.3.20: 10X and mod_ssl 2.8.4

To: mja@xxxxxxxxxxxxxxxxxxx ((Mike Abbott))
Subject: Re[2]: Apache 1.3.20: 10X and mod_ssl 2.8.4
From: Brian Curtis <admin@xxxxxxxxxxx>
Date: Wed, 12 Sep 2001 17:59:10 -0400
Cc: apache@xxxxxxxxxxx
In-reply-to: <200109122107.OAA34014@xxxxxxxxxxxxxxxxxxx>
Organization: Pomfret Computer Technologies, LLC
References: <200109122107.OAA34014@xxxxxxxxxxxxxxxxxxx>
Sender: owner-apache@xxxxxxxxxxx
Hello Mike,

Wednesday, September 12, 2001, 5:07:47 PM, you wrote:

MA> Apply the 10x patch first, then the mod_ssl patch.  Identify the
MA> conflicts.  For each conflict, examine the corresponding parts of the
MA> 10x patch and mod_ssl patches individually to determine the reason each
MA> changed that code.  Then merge the conflicts by hand.

These are the steps I took, as documented by the 10x faq and mailing
list archives.

MA> For example, the 10x patches rewrite sections of buff.c to make better
MA> use of writev.  The mod_ssl patches modify the same sections to
MA> redirect network I/O system calls through ssl wrappers.  These conflict,
MA> and the answer is to edit the code yourself to honor the intent of both
MA> patches.  Where 10x changes write to writev, you must change the mod_ssl
MA> modification similarly.

Not being a Linux programmer, I can only go on bits and pieces I pick
here and there.  The 10x buff.c changes really threw me for a loop.  I
couldn't / still can't figure out where to put the relevant mod_ssl
changes (listed below) after the 10x patch got through with it.

+ #ifdef EAPI
+           if (!ap_hook_call("ap::buff::writev", &rv, fb, &vec[i], nvec -i))
+ #endif /* EAPI */

The function these lines were supposed to be placed in was completely
changed to all of one line by 10x.

These are the problems I'm trying to overcome at the moment:

buff.c: In function `writev_it_all':
buff.c:1113: `rv' undeclared (first use in this function)
buff.c:1113: (Each undeclared identifier is reported only once
buff.c:1113: for each function it appears in.)
buff.c:1113: `i' undeclared (first use in this function)
buff.c:1116: warning: control reaches end of non-void function

Totally lost here.  Tried moving the three mod_ssl lines around w/o
success.  Also tried renaming &rv to &rval which didn't help.
Obviously I haven't found the magic position and/or modifications for
these lines. 

MA> I recall there being only one or two places requiring any thought.  The
MA> rest should be fairly straightforward.

Yes, I had figured the same.  By comparing the original sources and
both 10x and mod_ssl patches, everything seemed pretty simple to fold
in -- except the mod_ssl buff.c related modifications.

Thanks for the response.

-- 
Best regards,
 Brian Curtis


<Prev in Thread] Current Thread [Next in Thread>