|
Jason Fritcher
fritcher at corp.earthlink.net
Wed Jun 14 23:54:48 EDT 2006
Graham Dumpleton wrote:
> It all actually depends on what version of Apache Runtime libraries are
> being used.
> It is possible that the older version of APR which had these things is
> being used
> when code is compiled, but that probably have required you to say to use
> the older
> version of APR, plus I would have thought newer Apache would have
> required the
> newer version to work. Strange???
I just finished some digging and testing, and the lazy linking was correct. Apache is linking against the 1.0 version of APR, but OS X is not binding symbols until the first time each function is called. I've never attempted to lookup the (local|remote)_addr attributes on the connection object, so I never triggered a call to makesockaddr() and the resultant apr_sockaddr_get_port() call. I hacked the hello world example to retrieve that attribute, and the apache child process bombed and was killed. Error log excerpt and test script below.
from mod_python import apache
def handler(req):
apache.log_error('req.connection.local_addr = %s' % req.connection.local_addr);
req.content_type = "text/plain"
req.write("Hello World!")
return apache.OK
[Wed Jun 14 23:41:19 2006] [notice] mod_python: (Re)importing module 'hello'
dyld: lazy symbol binding failed: Symbol not found: _apr_sockaddr_port_get
Referenced from: /Users/jkf/apache2/modules/mod_python.so
Expected in: flat namespace
dyld: Symbol not found: _apr_sockaddr_port_get
Referenced from: /Users/jkf/apache2/modules/mod_python.so
Expected in: flat namespace
--
Jason Fritcher
Software Engineer
Core Infrastructure Services & Strategy
Earthlink, Inc
fritcher at corp.earthlink.net
(404) 748-7262, x22262
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 249 bytes
Desc: OpenPGP digital signature
Url : http://mm_cfg_has_not_been_edited_to_set_host_domains/pipermail/mod_python/attachments/20060614/867ea5ab/signature-0001.bin
|