[Raw Msg Headers][Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: weekend datadump at mea.tmt.tele.fi



>  > > [talking of smtp becoming stuck, SIGALRM ineffectivity]
>  > > 
>  > > 	It is possible that the Solaris uses POSIX sigaction(),
>  > > 	and does REQUIRE usage of flag  SA_NODEFER.  The ALRM
>  > > 	handler does after all do a longjump, and will not return
>  > > 	from the signal handler per se...
> 
> remember that BSD longjmp has traditionally unblocked signals, for
> precisely this reason.  the Solaris version, true to heritage, does not. 
> you must use sigsetjmp/siglongjmp to get the BSD behavior.

	I have now using two approaches: using SA_NODEFER, and
	releasing the sigmask explicitely, though I presume the
	release in systems that know of  SA_NODEFER  is unnecessary.

	I haven't yet checked on what purpose serves the explicite
	definition of  _POSIX_SOURCE  in Solaris systems.  I feel
	it should be something that the compiler defines, like:
		gcc -posix

> paul
> ---------------------
>     paul fox                            american internet corporation
>     pgf@american.com			(home: pgf@foxharp.boston.ma.us)

	/Matti Aarnio