[Openmcl-devel] Who uses CL+SSL and CCL?

John McAleely john at mcaleely.com
Thu Jan 15 08:05:25 PST 2009


Hi,

I'm trying to add support for SSL to a web server implemented in ccl.  
CL+SSL seemed like the route to follow, and at the moment I'm loading  
just its own test suite to see if I can get that to work.

It appears to be capable of being a client ( (ssl-test::test-https- 
client) passes), and it can almost be a server. It seems it can accept  
and decrypt a session, but fails when it tries to write data back to  
the client.

I observe identical behaviour on Mac OS X 10.5.6, and a debian/amd64  
machine (both Clozure Common Lisp Version 1.2-r9226-RC1). I suspect  
there is some missing configuration, or perhaps I have mis-configured  
one of its dependencies. Does anyone else use cl+ssl on ccl?

Alternatively, is anyone doing SSL for a web server with another  
library?

J

Here is the output:

? (ssl-test::test-https-server)
SSL server listening on port 8080
HTTPS> GET / HTTP/1.1
HTTPS> User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_6;  
en-us) AppleWebKit/525.27.1 (KHTML, like Gecko) Version/3.2.1 Safari/ 
525.27.1
HTTPS> Accept: text/xml,application/xml,application/xhtml+xml,text/ 
html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
HTTPS> Accept-Language: en-us
HTTPS> Accept-Encoding: gzip, deflate
HTTPS> Connection: keep-alive
HTTPS> Host: debian-lisp.local:8080
 > Error: An I/O error occurred: undocumented reason. (return code:   
5)SSL error queue:
 >
 > While executing: CL+SSL::SSL-SIGNAL-ERROR, in process listener(1).
 > Type :POP to abort, :R for a list of available restarts.
 > Type :? for other options.
1 > :b
  (2AAAAACBB848) : 0 (SSL-SIGNAL-ERROR #<A Foreign Pointer #x684B70>  
#<Compiled-function CL+SSL::SSL-WRITE #x300040FEF01F> 5 -1) 397
  (2AAAAACBB880) : 1 (FUNCALL #'#<#<STANDARD-METHOD STREAM-FORCE- 
OUTPUT (CL+SSL::SSL-STREAM)>> #<SSL-SERVER-STREAM for 6>) 1037
  (2AAAAACBB908) : 2 (FORCE-OUTPUT [...]) 69
  (2AAAAACBB920) : 3 (FUNCALL #'#<#<STANDARD-METHOD CLOSE (CL+SSL::SSL- 
STREAM)>> #<SSL-SERVER-STREAM for 6> [...]) 157
  (2AAAAACBB950) : 4 (%%CHECK-KEYWORDS #(1 #(:ABORT) #<METHOD-FUNCTION  
CLOSE #>) 5864062285622) 245
  (2AAAAACBB9D0) : 6 (%%CHECK-KEYWORDS #(1 #(:ABORT) #<METHOD-FUNCTION  
CLOSE #>) 5864062285637) 245
  (2AAAAACBBA38) : 8 (TEST-HTTPS-SERVER [...]) 557
  (2AAAAACBBAF8) : 9 (CALL-CHECK-REGS 'SSL-TEST::TEST-HTTPS-SERVER  
[...]) 229
  (2AAAAACBBB30) : 10 (TOPLEVEL-EVAL '(SSL-TEST::TEST-HTTPS-SERVER)  
[...]) 733
  (2AAAAACBBBD0) : 11 (READ-LOOP [...]) 1741
  (2AAAAACBBDD8) : 12 (TOPLEVEL-LOOP) 125
  (2AAAAACBBE08) : 13 (FUNCALL #'#<(:INTERNAL (TOPLEVEL-FUNCTION  
(CCL::LISP-DEVELOPMENT-SYSTEM T)))>) 101
  (2AAAAACBBE20) : 14 (FUNCALL #'#<(:INTERNAL CCL::MAKE-MCL-LISTENER- 
PROCESS)>) 645
  (2AAAAACBBEB8) : 15 (RUN-PROCESS-INITIAL-FORM #<TTY-LISTENER  
listener(1) [Active] #x300040CBAB4D> '(#)) 717
  (2AAAAACBBF48) : 16 (FUNCALL #'#<(:INTERNAL CCL::%PROCESS-PRESET- 
INTERNAL)> #<TTY-LISTENER listener(1) [Active] #x300040CBAB4D> '(#)) 397
  (2AAAAACBBF98) : 17 (FUNCALL #'#<(:INTERNAL CCL::THREAD-MAKE-STARTUP- 
FUNCTION)>) 293




More information about the Openmcl-devel mailing list