axiom-developer
[Top][All Lists]
Advanced

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

Re: [Axiom-developer] Re: Bug#346552: naive methods of exiting axiom can


From: Waldek Hebisch
Subject: Re: [Axiom-developer] Re: Bug#346552: naive methods of exiting axiom can blow up catastrophically
Date: Fri, 27 Oct 2006 18:39:28 +0200 (CEST)

root wrote:
> Apparently the ptys are opened in raw mode and do not interpret the
> control characters but pass them down the pipe to AXIOMsys. However
> the (read) from axiom simply gets the cntrl-D and tries to parse it.
> 
> I'm not really sure how this should be handled. Clearly you don't
> want sman to open up a pty that interprets control characters.
> Nor do you want lisp's (read) to interpret control characters.
> 

It is not the case.  One thing is a bug in sman: when the user
presses ^D\n sman passes "(1) ->\n" (more precisly AXIOMsys
reads what is inside quotes).  AXIOMsys reacts with an error
message (exactly like if user gave this input).  Funny things
happen later: AXIOMsys sits in select loop and gets interrupt
(^C\n) _is_ converted to interrupt.  After return from the
interrupt select is called again and returns ready on file
descriptor 0.  AXIOMsys then executes READ-LINE(CURINSTREAM)
which performs _no_ IO.  My speculation is it that interrupt messed
something with CURINSTREAM. 

All this is based on system trace.  AFAICS when AXIOMsys runs
standalone there is no select loop.  I tried to give "(1) ->\n"
and then ^C to standalone AXIOMsys -- the trace looks quite similar
but AXIOMsys produces reasonable error messages.  Still, giving a
few bad inputs interspesed with ^C, I was able to generate:

   >> System error:
   Caught fatal error [memory may be damaged]

so interrupt handling in GCL probably has some problems.

-- 
                              Waldek Hebisch
address@hidden 




reply via email to

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