[Prev][Next][Index][Thread]
CL-HTTP UltraSparc Problem
Hi,
I'm trying out CL-HTTP-58-12, and would like to get it to run on an
UltraSparc, using Franz Allegro 4.3. for sparc-sun-solaris2. While
compiling I got the following error (trace included below). Seems like
the ipc.cl that was distributed with 4.2 (and which get referenced) is
different for 4.3. In particular, ipc::gethostbyname isn't present but
an excl::gethostbyname does exist. Is it ok to use this instead? also
the unsigned-long struct has gone away. The problem appears to arise
in file /acl/tcp-stream-svr4.lisp, defmethod for internet-address-domain
(see end of message). Any help would be much appreciated.
I include a following message to BUG-ACL-CL-HTTP@ai.mit.edu reporting
a bug and fix I got from smh@franz, that might be helpful for people.
Julian Kupiec.
======================================================
Starting image `/import/franz-4.3/sparc-sun-solaris2/bin/franz'
with no arguments
.............................
:ld acl/start:ld acl/start
.......................
; Compiling GET-SERVER-INTERFACE-HEADER-BINDING
; Compiling GET-SERVER-INTERFACE-VARIABLE-BINDING
; Compiling (FLET GET-SERVER-INTERFACE-VARIABLE-BINDING GET-KEY)
; Compiling GET-SERVER-INTERFACE-VARIABLE-BINDINGS
; Compiling WITH-SERVER-INTERFACE-ENVIRONMENT
;;; Writing fasl file HTTP:server;cgi.f43s (/mule1/murax/cl-http-58-12/server/cgi.f43s)
;;; Fasl write complete
; Loading product for module: "cgi".
; Fast loading HTTP:server;cgi.f43s (/mule1/murax/cl-http-58-12/server/cgi.f43s)
Warning: While compiling these undefined functions were referenced: HTTP::METHOD-SPECIALIZERS, HTTP::GENERIC-FUNCTION-METHODS,
WWW-UTILS:SEND-MAIL-FROM.
; Compiling system: "HTTP examples".
; Compiling module "configuration" because the product file does not exist.
;;; Compiling file HTTP:examples;configuration.lisp (/mule1/murax/cl-http-58-12/examples/configuration.lisp)
;;; Writing fasl file HTTP:examples;configuration.f43s (/mule1/murax/cl-http-58-12/examples/configuration.f43s)
;;; Fasl write complete
; Loading product for module: "configuration".
; Fast loading HTTP:examples;configuration.f43s (/mule1/murax/cl-http-58-12/examples/configuration.f43s)
Error: attempt to call `IPC::GETHOSTBYNAME' which is an undefined function.
[condition type: UNDEFINED-FUNCTION]
Restart actions (select using :continue):
0: Try calling IPC::GETHOSTBYNAME again.
1: Try calling EXCL::GETHOSTBYNAME instead.
2: Return a value instead of calling IPC::GETHOSTBYNAME.
3: Try calling a function other than IPC::GETHOSTBYNAME.
4: Setf the symbol-function of IPC::GETHOSTBYNAME and call it again.
5: retry the load of HTTP:examples;configuration.f43s
6: skip loading HTTP:examples;configuration.f43s
7: retry the load of acl/start
8: skip loading acl/start
[changing package from "WWW-UTILS" to "HTTP"]
[1] HTTP1(6):
************************
;;; After using excl::gethostbyname, the next problem is:
:cont 4
enter expression which will evaluate to the function to call: 'excl::gethostbyname
Error: attempt to call `IPC::UNSIGNED-LONG-UNSIGNED-LONG' which is an undefined function.
[condition type: UNDEFINED-FUNCTION]
Restart actions (select using :continue):
0: Try calling IPC::UNSIGNED-LONG-UNSIGNED-LONG again.
1: Return a value instead of calling IPC::UNSIGNED-LONG-UNSIGNED-LONG.
2: Try calling a function other than IPC::UNSIGNED-LONG-UNSIGNED-LONG.
3: Setf the symbol-function of IPC::UNSIGNED-LONG-UNSIGNED-LONG and call it again.
4: retry the load of HTTP:examples;configuration.f43s
5: skip loading HTTP:examples;configuration.f43s
6: retry the load of acl/start
7: skip loading acl/start
[1] HTTP1(36): :pa
The HTTP package is current.
[1] HTTP1(37): :zo
Evaluation stack:
(ERROR #<UNDEFINED-FUNCTION @ #xbac87a>)
->(IPC::UNSIGNED-LONG-UNSIGNED-LONG 586232)
((METHOD IPC::INTERNET-ADDRESS-DOMAIN (STRING)) "mule")
[... IPC::INTERNET-ADDRESS-DOMAIN ]
((METHOD IPC::INTERNET-ADDRESS (STRING)) "mule")
[... IPC::INTERNET-ADDRESS ]
(WWW-UTILS::%LOCAL-HOST-PARSED-IP-NUMBER)
(WWW-UTILS::%LOCAL-HOST-DOMAIN-NAME)
(LOCAL-HOST-DOMAIN-NAME)
(RESET-SERVER-LOCAL-HOST-VARIABLES)
(EVAL (RESET-SERVER-LOCAL-HOST-VARIABLES))
... more older frames ...
*************************************************************
;;; File: /acl/tcp-stream-svr4.lisp
(defmethod internet-address-domain ((name string))
(without-scheduling
(typecase name
(simple-string
name)
(t
(setf (subseq *static-sstring* 0) name
(elt *static-sstring* (length name)) #.(character 0)
name *static-sstring*)))
(let ((hpoint (ipc::gethostbyname name)))
(if (plusp hpoint)
(c-long-long (ipc::unsigned-long-unsigned-long (ipc::hostent-addr hpoint)))))))