Return-Path: X-Original-To: apmail-perl-modperl-archive@www.apache.org Delivered-To: apmail-perl-modperl-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 8C4A99A9C for ; Wed, 14 Mar 2012 09:36:09 +0000 (UTC) Received: (qmail 19954 invoked by uid 500); 14 Mar 2012 09:36:08 -0000 Delivered-To: apmail-perl-modperl-archive@perl.apache.org Received: (qmail 19919 invoked by uid 500); 14 Mar 2012 09:36:08 -0000 Mailing-List: contact modperl-help@perl.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: List-Id: Delivered-To: mailing list modperl@perl.apache.org Received: (qmail 19901 invoked by uid 99); 14 Mar 2012 09:36:08 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 14 Mar 2012 09:36:08 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of brett.maxfield@gmail.com designates 74.125.83.49 as permitted sender) Received: from [74.125.83.49] (HELO mail-ee0-f49.google.com) (74.125.83.49) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 14 Mar 2012 09:36:01 +0000 Received: by eekb45 with SMTP id b45so894069eek.22 for ; Wed, 14 Mar 2012 02:35:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=svntx+mwukdneeRucdQ5dXzlX0e91MxbDxC/iyWjtrg=; b=g7pd4nF0ngei4kG1Dd8iTawr+k85pOssg4XtHcQSHCisUbDWBXMnHgyRwfMfrmMosA xvhSRLwtgVNyjacSkUzp3wyWF7+xrtUNd9JPV3QS09FVncDBiAUZZbuSJ9hFshdlsO4a cmKyXhkrTEZ693+xo4FLJ68JZ79lxtHxjmkIef39r61CLRLlyZAQkgiwM9XNLJQMyS6L tOgjOHFVIe9kXiRoTOBJRYVk0MpKH8yW8NA+keisw/w1bKZEFbBWSxYkbszi/2sgXC9z y3z1/RZWOTPRteFwpVceKql9GWXghsv0KEthr8Gw/ckJIDUrJ1Ii26q6Cm7lE45Pahyz re4w== MIME-Version: 1.0 Received: by 10.213.29.5 with SMTP id o5mr130223ebc.279.1331717740357; Wed, 14 Mar 2012 02:35:40 -0700 (PDT) Received: by 10.213.112.140 with HTTP; Wed, 14 Mar 2012 02:35:40 -0700 (PDT) Date: Wed, 14 Mar 2012 19:35:40 +1000 Message-ID: Subject: apache 2.4.x and mod_perl 2.0 From: "Brett @Google" To: modperl@perl.apache.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Virus-Checked: Checked by ClamAV on apache.org Hi All, Apache 2.4.x seems to have changed / deprecated things.. things i have noti= ced : in ./src/modules/perl/modperl_constants.c if OPT_INCNOEXEC is not present, as OPT_INCNOEXEC is now OPT_INCLUDES c->remote_ip gone, and now split into c->client_ip (tcp endpoint) and c->useragent_ip (e.g. X-Forwarded-For) add 3rd argument to ap_add_loaded_module, giving the module's name remove OPT_INCNOEXEC from ./src/modules/perl/modperl_constants.c - ifdef it based on presence of OPT_INCNOEXEC does anybody know the correct way to make the .xs files represent the *.h defines, for things like OPT_INCNOEXEC rather than hand editing them ? eg. It sill has the old c->remote_ip symbols which look like they might have been originally parsed from the apache source (but not by default in a build) : cc -c -I/home/govops/build-new/mod_perl-2.0-svn/src/modules/perl -I/home/govops/build-new/mod_perl-2.0-svn/xs -I/usr/local/directory-libs/include/apr-1 -I/usr/local/apache24/include -D_REENTRANT -xtarget=3DultraT1 -xcode=3Dpic32 -m64 -xarch=3Dgeneric64 -DDEBUGGING -I/usr/local/include -DPERL_USE_SAFE_PUTENV -DMOD_PERL -DMP_COMPAT_1X -DSOLARIS2=3D10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -O3 -g -DVERSION=3D\"2.000006\" -DXS_VERSION=3D\"2.000006\" -KPIC "-I/usr/local/directory-libs/lib/perl5/5.12.2/sun4-solaris-thread-multi-64/= CORE" -DMP_HAVE_APR_LIBS Connection.c "Connection.xs", line 117: undefined struct/union member: remote_addr "Connection.xs", line 134: undefined struct/union member: remote_ip "Connection.xs", line 138: improper member use: remote_ip "Connection.xs", line 139: warning: improper pointer/integer combination: o= p "=3D" cc: acomp failed for Connection.c *** Error code 2 make: Fatal error: Command failed for target `Connection.o' Current working directory /home/govops/build-new/mod_perl-2.0-svn/WrapXS/Apache2/Connection *** Error code 1 Cheers Brett My local random edits so far are: svn diff Index: src/modules/perl/modperl_module.c =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- src/modules/perl/modperl_module.c=A0=A0 (revision 1300466) +++ src/modules/perl/modperl_module.c=A0=A0 (working copy) @@ -832,7 +832,7 @@ =A0=A0=A0=A0 modperl_module_insert(modp); -=A0=A0=A0 ap_add_loaded_module(modp, p); +=A0=A0=A0 ap_add_loaded_module(modp, p, modp->name); =A0=A0=A0=A0 apr_pool_cleanup_register(p, modp, modperl_module_remove, =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0 apr_pool_cleanup_null); Index: src/modules/perl/modperl_apache_compat.h =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- src/modules/perl/modperl_apache_compat.h=A0=A0=A0 (revision 1300466) +++ src/modules/perl/modperl_apache_compat.h=A0=A0=A0 (working copy) @@ -68,7 +68,7 @@ =A0#define MP_HTTPD_OVERRIDE_OPTS_UNSET (-1) =A0#define MP_HTTPD_OVERRIDE_OPTS_DEFAULT (OPT_UNSET | \ =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 OPT_ALL | \ -=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 OPT_INCNOEXEC | \ +=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 OPT_INCLUDES | \ =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 OPT_SYM_OWNER | \ =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 OPT_MULTI) Index: src/modules/perl/modperl_interp.c =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- src/modules/perl/modperl_interp.c=A0=A0 (revision 1300466) +++ src/modules/perl/modperl_interp.c=A0=A0 (working copy) @@ -500,7 +500,7 @@ =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 "set interp 0x%lx= in %s 0x%lx (%s request for %s)\n", =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 (unsigned long)in= terp, desc, (unsigned long)p, =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 (r ? (is_subreque= st ? "sub" : "main") : "conn"), -=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 (r ? r->uri : c->re= mote_ip)); +=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 (r ? r->uri : c->cl= ient_ip)); =A0=A0=A0=A0 } =A0=A0=A0=A0 /* set context (THX) for this thread */ -- The only thing that interferes with my learning is my education. Albert Einstein