Re: double free when stoping a https server
Martin Simmons <[email protected]> Wed, 23 Mar 2011 12:22:28 GMT
| Newsgroups | gmane.lisp.cl-http |
|---|---|
| Message-ID | <[email protected]> |
>>>>> On Wed, 23 Mar 2011 19:16:47 +0800, Chun Tian (binghe) said: > > I found my HTTPS server always throw following double free (or corruption) > error when stoping a HTTPS server, please take a look at it: > > ...snip... > > Call to FLI:FREE-FOREIGN-OBJECT (offset 71) > FLI::POINTER : #<Pointer: COMM:X509-NAME-POINTER-STACK = #x023D57C0> > > Call to (METHOD HTTP::SSL-CTX-DEINITIALIZE (HTTP::HTTPS-SERVICE)) (offset 336) > HTTP::SERVICE : #<HTTP::HTTPS-SERVICE 8443 (192.168.130.101) Stopped 406000DD03> > DBG::|or-| : NIL I suggest removing this call to FLI:FREE-FOREIGN-OBJECT. It wrong for two reasons: 1) The client-ca-list-ptr is a complex data structure so can't be freed directly. 2) Once associated with a ssl-ctx (by COMM:SSL-CTX-SET-CLIENT-CA-LIST), it is freed automatically when the ssl-ctx is destroyed. -- Martin Simmons LispWorks Ltd http://www.lispworks.com/ _______________________________________________ WWW-CL mailing list [email protected] https://lists.csail.mit.edu/mailman/listinfo/www-cl