Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

openssl 0.9.6b on HP-UX 11.11 / B1000 Workstation

7 views
Skip to first unread message

"Preuß, Jürgen"

unread,
Aug 14, 2001, 4:08:52 AM8/14/01
to
Hi readers,

I tried to compile openssl 0.9.6b on HP-UX 11.11. The trouble seems to be
related to 64bit architecture. I'm using following patches and programmes
(related to compiling):

BUNDLE11i B.11.11.0102.2 Required Patch Bundle for
HP-UX 11i, February 2001
LSM 5.5.lsm.Build.55 LSM for HP-UX 10.XX and
11.xx
PHCO_23094 1.0 libc cumulative header file
patch
PHCO_23702 1.0 cumulative header file patch
for prot.h
Perl 5.005_03.2001-06-12 The Perl Programming
Language with Extensions (from HP Labs, the only webmin 0.87 is running)
binutils 2.11.2 binutils
gcc 3.0 gcc

Have you some recommendations?

Following the messages of the make command:


make
...
in bio/
gcc -I.. -I../../include -DTHREADS -DDSO_DL
-D_REENTRANT -O3 -DB_ENDIAN -DBN_DIV2W -c bss_fd.c
In file included from /usr/include/netdb.h:72,
from ../../include/openssl/e_os.h:355,
from ../cryptlib.h:65,
from bss_sock.c:64,
from bss_fd.c:60:
/usr/include/sys/socket.h:439: parse error before "sendfile"
/usr/include/sys/socket.h:439: parse error before "bsize_t"
/usr/include/sys/socket.h:441: parse error before "sendpath"
/usr/include/sys/socket.h:441: parse error before "bsize_t"

in ssl/
gcc -I../crypto -I../include -DTHREADS -DDSO_DL
-D_REENTRANT -O3 -DB_ENDIAN -DBN_DIV2W -c s3_pkt.c
In file included from /usr/include/netdb.h:72,
from ../include/openssl/e_os.h:355,
from ssl_locl.h:119,
from s3_pkt.c:123:
/usr/include/sys/socket.h:439: parse error before "sendfile"
/usr/include/sys/socket.h:439: parse error before "bsize_t"
/usr/include/sys/socket.h:441: parse error before "sendpath"
/usr/include/sys/socket.h:441: parse error before "bsize_t"

gcc -I../crypto -I../include -DTHREADS -DDSO_DL
-D_REENTRANT -O3 -DB_ENDIAN -DBN_DIV2W -c s23_pkt.c
In file included from /usr/include/netdb.h:72,
from ../include/openssl/e_os.h:355,
from ssl_locl.h:119,
from s23_pkt.c:64:
/usr/include/sys/socket.h:439: parse error before "sendfile"
/usr/include/sys/socket.h:439: parse error before "bsize_t"
/usr/include/sys/socket.h:441: parse error before "sendpath"
/usr/include/sys/socket.h:441: parse error before "bsize_t"

/usr/include/sys/socket.h:

439 extern sbsize_t sendfile __((int, int, off_t, bsize_t,
440 const struct iovec *, int));
441 extern sbsize_t sendpath __((int, char *, off_t, bsize_t,
442 const struct iovec *, int));

/usr/include/sys/types.h:

147 # ifndef _OFF32_T
148 # define _OFF32_T
149 typedef int32_t off32_t; /* 32bit offsets and
sizes */
150 # endif /* _OFF32_T */
151
152 #ifndef _BSIZE32_T
153 # define _BSIZE32_T
154 typedef int32_t sbsize32_t;
155 typedef uint32_t bsize32_t;
156 #endif /* _BSIZE32_T */
157
158 # ifndef _OFF64_T
159 # define _OFF64_T
160 # if !defined(__STDC_32_MODE__)
161 typedef int64_t off64_t; /* 64bit offsets and
sizes */
162 # endif
163 # endif /* _OFF64_T */
164
165 # ifndef _BSIZE64_T
166 # define _BSIZE64_T
167 # if !defined(__STDC_32_MODE__)
168 typedef int64_t sbsize64_t;
169 typedef uint64_t bsize64_t;
170 # endif
171 # endif /* _BSIZE64_T */
172
173 # ifndef _OFF_T
174 # define _OFF_T
175 # if defined(_APP32_64BIT_OFF_T) || defined(_KERNEL)
176 typedef int64_t off_t; /* For offsets and
sizes */
177 # define k_off_t off_t
178 # else
179 typedef long off_t;
180 # endif
181 # endif /* _OFF_T */
182
183
184 # ifndef _BSIZE_T
185 # define _BSIZE_T
186 # if defined(_APP32_64BIT_OFF_T) || defined(_KERNEL)
187 typedef int64_t sbsize_t; /* signed length in
bytes */
188 typedef uint64_t bsize_t; /* unsigned length
in bytes */
189 # else
190 typedef long sbsize_t;
191 typedef unsigned long bsize_t;
192 # endif
193 # endif /* _BSIZE_T */
194

Thanks in advance

Juergen Preuss

Informatikzentrum Bayern
Karolinenplatz 33
D-80333 Muenchen

jp...@izb.de

______________________________________________________________________
OpenSSL Project http://www.openssl.org
User Support Mailing List openss...@openssl.org
Automated List Manager majo...@openssl.org

Lutz Jaenicke

unread,
Aug 14, 2001, 5:23:12 AM8/14/01
to
On Tue, Aug 14, 2001 at 10:02:21AM +0200, "Preuß, Jürgen" wrote:
> make
> ...
> in bio/
> gcc -I.. -I../../include -DTHREADS -DDSO_DL
> -D_REENTRANT -O3 -DB_ENDIAN -DBN_DIV2W -c bss_fd.c
> In file included from /usr/include/netdb.h:72,
> from ../../include/openssl/e_os.h:355,
> from ../cryptlib.h:65,
> from bss_sock.c:64,
> from bss_fd.c:60:
> /usr/include/sys/socket.h:439: parse error before "sendfile"
> /usr/include/sys/socket.h:439: parse error before "bsize_t"
> /usr/include/sys/socket.h:441: parse error before "sendpath"
> /usr/include/sys/socket.h:441: parse error before "bsize_t"
...

> /usr/include/sys/socket.h:
>
> 439 extern sbsize_t sendfile __((int, int, off_t, bsize_t,
> 440 const struct iovec *, int));
> 441 extern sbsize_t sendpath __((int, char *, off_t, bsize_t,
> 442 const struct iovec *, int));
>
> /usr/include/sys/types.h:
[definitions for sbsize_t...]

I have HP-UX 10.20 on my desktop, so I can just give it a guess:
On docs.hp.com, the "HP-UX 11i June 2001 Release Notes" state, that:

These large file applications should be recompiled on 11i. If the 'nbytes'
parameter is not set to zero and they are not recompiled, these
applications will not execute on 11i. To work correctly, the large file
applications need to be recoded with the new bsize_t and sbsize_t
types. See the sendfile(2) and sendfile64(2) manpages for more information.

So it seems that bsize_t and sbsize_t have been newly introduce with 11i.
gcc has the property, that it parses the installed header file to apply
certain fixes and creates _and_uses_ these copies. If the gcc you are
using was compiled on a platform before 11i (e.g. 11), then it is possible
that gcc uses its local copy of sys/types.h where the bsize_t and sbsize_t
definitions are missing. Depending on your installation path and version
of gcc you should look out for something like
/usr/local/lib/gcc-lib/hppa2.0-hp-hpux10.20/2.95.2/include/...
If my guess is correct, you will have to reinstall gcc to exactly match
your HP-UX version. (You will run into trouble with all other sources
needing sys/socket.h)

Best regards,
Lutz
--
Lutz Jaenicke Lutz.J...@aet.TU-Cottbus.DE
BTU Cottbus http://www.aet.TU-Cottbus.DE/personen/jaenicke/
Lehrstuhl Allgemeine Elektrotechnik Tel. +49 355 69-4129
Universitaetsplatz 3-4, D-03044 Cottbus Fax. +49 355 69-4153

0 new messages