chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-users] Spiffy & OpenSSL in compiled code


From: Andy Bennett
Subject: Re: [Chicken-users] Spiffy & OpenSSL in compiled code
Date: Sun, 30 Sep 2012 12:43:24 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.6esrpre) Gecko/20120817 Icedove/10.0.6

Hi,

> In the compiled case, the binary runs but the following is produced on
> stderr when a connection is attempted:
> 
> -----
> primordial: Connection handshake error: "bad argument type - not a fixnum"
> -----

Peter and I tracked this down to spiffy.scm.
At startup time spiffy.scm tries to load the openssl egg with a (use
openssl) inside an eval. This means that spiffy doesn't have to
unconditionally depend on openssl.

'use' relies on chicken-syntax so (use chicken-syntax) must appear in
the toplevel of the executable otherwise the eval throws an exception.

With the 'csi -s' invocation, chicken-syntax is available by default.


The exception from eval was being caught and processed as if the openssl
egg was not installed. By the time ssl ports were being passed to
'accept-loop' the ssl-port? procedure was wired to return #f and
therefore it was not being converted to a tcp-port.

The workaround is to ensure that (use chicken-syntax) appears in the top
level of your top level scheme file so that it's in the
interaction-environment that gets used by eval.

The long term solution is to fix the autoload egg so that we can use
that: Alaric has a similar requirement for Ugarit so it makes sense to
put that functionality into an egg.






Regards,
@ndy

-- 
address@hidden
http://www.ashurst.eu.org/
0x7EBA75FF




reply via email to

[Prev in Thread] Current Thread [Next in Thread]