Bug 204971

Summary: apr functions/libraries under 4.4 64bit are broken
Product: Red Hat Enterprise Linux 4 Reporter: Chris <wilsotc>
Component: aprAssignee: Joe Orton <jorton>
Status: CLOSED NOTABUG QA Contact:
Severity: high Docs Contact:
Priority: medium    
Version: 4.4   
Target Milestone: ---   
Target Release: ---   
Hardware: ia64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-09-04 07:45:39 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Chris 2006-09-01 19:40:19 UTC
Description of problem:
The functions apr_psprintf apr_pstrdup are supposed to return a char* 
pointer.  They do so under Redhat AS 4.4 32 bit, but on AS 4.4 64 bit on an 
EM64T processor, these functions return an int.

Version-Release number of selected component (if applicable):
apr-0.9.4-24.5
apr-util-devel-0.9.4-21
apr-util-0.9.4-21
apr-devel-0.9.4-24.5

How reproducible:
100%

Steps to Reproduce:
where query and mystring is defined as a char*, mystring points to a valid 
string, and mypool is an allocated apr_pool_t*:
1.query = apr_psprintf( mypool, "%s\n", mystring );
2.compile the code
3.see the warning: warning: cast to pointer from integer of different size

for an example, on a redhat 4.4 64bit system with apache2, download this:
ftp://ftp.nerdc.ufl.edu/pub/packages/SOURCES/mod_auth_glcookie/mod_auth_glcooki
e-2.21.tar.gz
tar -zxvf mod_auth_glcookie-2.21.tar.gz
cd mod_auth_glcookie-2.21
make apache2
  
Actual results:
code won't function, and compiler warnings appear for casts to type char* from 
int

Expected results:
no warnings and the library calls return a char* just as it functions on the 
32bit AS4.4

Additional info:

Comment 1 Joe Orton 2006-09-04 07:45:39 UTC
Thanks for the report.

It appears that the module referenced has not been correctly ported to the httpd
2.x API.  It is missing #includes for apr_strings.h, for example, which would
allow the prototypes for the functions you mention to be picked up.

Comment 2 Joe Orton 2006-09-04 07:45:59 UTC
*** Bug 204972 has been marked as a duplicate of this bug. ***