[Openib-windows] cl_signal_osd.h file used by OpenSM
    Fab Tillier 
    ftillier at silverstorm.com
       
    Wed Oct 19 09:35:48 PDT 2005
    
    
  
Hi Yael,
> In the OpenSM code there is use of signal handling functions.
> The interface to these functions is in cl_signal_osd.h file. This file is
> part of the complib under Linux, and doesn't exist in the Windows complib.
> Is it possible to add this file to the windows complib directory too?
> Attached is a the file for windows for your review.
This has come up a few times before, and my response is still the same.  Signal
handling in Windows doesn't work like it does in Linux.  Of note in the
documentation is:
"Note   SIGINT is not supported for any Win32 application, including Windows
98/Me and Windows NT/2000/XP. When a CTRL+C interrupt occurs, Win32 operating
systems generate a new thread to specifically handle that interrupt. This can
cause a single-thread application such as UNIX, to become multithreaded,
resulting in unexpected behavior."
The right way to handle signals like ctrl-C is to register a handler via the
SetConsoleCtrlHandler.  SetConsoleCtrlHandler also lets you trap close, logoff,
and shutdown events.
Further, I had suggested getting rid of the signal handling, as the underlying
stack must handle an abortive exit of a process.  Can't we just do that?  If the
underlying layer doesn't do the right thing, it needs to be fixed rather than
have the problem masked.
- Fab 
    
    
More information about the ofw
mailing list