Bug 131876

Summary: test_char.h missing in devel package, used by third party modules
Product: Red Hat Enterprise Linux 3 Reporter: andreas.mack <andreas.mack>
Component: httpdAssignee: Joe Orton <jorton>
Status: CLOSED NOTABUG QA Contact:
Severity: low Docs Contact:
Priority: medium    
Version: 3.0   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2004-09-06 08:48:36 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 andreas.mack@konsec.com 2004-09-06 08:40:07 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7)
Gecko/20040805 Firefox/0.9.3

Description of problem:
During the apache compilation, a header file is generated in
BUILD/httpd-2.0.46/prefork/server called test_char.h.
mod_auth_mda uses this header file and compilation
of this module will fail because of this missing header
file.

Version-Release number of selected component (if applicable):
httpd-devel-2.0.46-38.ent

How reproducible:
Always

Steps to Reproduce:
1. install httpd and httpd-devel
2. download, unpack mod_auth_mda (mod-apache2.tar) from
http://www.frogdot.org.
3. adjust makefile for includes, do a "make module" in the dist directory.
    

Actual Results:  Compile fails:
/usr/sbin/apxs -c -Wc,-Wall -I/usr/include/httpd/../main
-I/home/hwr/dev/apache/httpd-2.0.48/server mod_auth_mda.c
/usr/bin/libtool --silent --mode=compile gcc -prefer-pic -O2 -g -pipe
-march=i386 -mcpu=i686 -DSSL_EXPERIMENTAL_ENGINE
-I/usr/kerberos/include -DAP_HAVE_DESIGNATED_INITIALIZER -DLINUX=2
-D_REENTRANT -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_SVID_SOURCE
-D_GNU_SOURCE -pthread -I/usr/include/httpd -Wall
-I/usr/include/httpd/../main
-I/home/hwr/dev/apache/httpd-2.0.48/server  -c -o mod_auth_mda.lo
mod_auth_mda.c && touch mod_auth_mda.slo
mod_auth_mda.c:24:23: test_char.h: No such file or directory
mod_auth_mda.c: In function `escape_str':
mod_auth_mda.c:289: `test_char_table' undeclared (first use in this
function)
mod_auth_mda.c:289: (Each undeclared identifier is reported only once
mod_auth_mda.c:289: for each function it appears in.)
mod_auth_mda.c:289: `T_ESCAPE_PATH_SEGMENT' undeclared (first use in
this function)


Expected Results:  Clean compile.

Additional info:

a. Workaround: 
 1. Download src package, run rpmbuild to %build stage.
 2. Adjust paths in Makefile of mod_auth_mda
 3. run make module
b. Possible resaon for not including the header file: the needed
functionality is in a call of the apache API. I was not able to
research this.

Comment 1 Joe Orton 2004-09-06 08:48:36 UTC
Thanks for the report.

Indeed, as you suggest, the test_char.h header is not a part of the
Apache httpd module API (it is not installed by "make install").  A
solution to this problem is for the mod_auth_mda package to include a
copy of the gen_test_char.c source, and to generate the header for
itself.  Can you take this issue up with the mod_auth_mda author?


Comment 2 andreas.mack@konsec.com 2004-09-06 09:15:01 UTC
Thanks for the ultra quick reply. I've already contacted the author.
He didn't answer yet, but it seems he works always with the sources
and builds from them.