Use correct version number.
[dragonfly.git] / contrib / sendmail-8.13.7 / include / sm / setjmp.h
blob01bda0222acf002d44248131b8238d73ccdaac96
1 /*
2 * Copyright (c) 2000-2001 Sendmail, Inc. and its suppliers.
3 * All rights reserved.
5 * By using this file, you agree to the terms and conditions set
6 * forth in the LICENSE file which can be found at the top level of
7 * the sendmail distribution.
9 * $Id: setjmp.h,v 1.3 2001/03/08 03:23:08 ca Exp $
12 #ifndef SM_SETJMP_H
13 # define SM_SETJMP_H
15 # include <sm/config.h>
16 # include <setjmp.h>
19 ** sm_setjmp_sig is a setjmp that saves the signal mask.
20 ** sm_setjmp_nosig is a setjmp that does *not* save the signal mask.
21 ** SM_JMPBUF_T is used with both of the above macros.
23 ** On most systems, these can be implemented using sigsetjmp.
24 ** Some old BSD systems do not have sigsetjmp, but they do have
25 ** setjmp and _setjmp, which are just as good.
28 # if SM_CONF_SIGSETJMP
30 typedef sigjmp_buf SM_JMPBUF_T;
31 # define sm_setjmp_sig(buf) sigsetjmp(buf, 1)
32 # define sm_setjmp_nosig(buf) sigsetjmp(buf, 0)
33 # define sm_longjmp_sig(buf, val) siglongjmp(buf, val)
34 # define sm_longjmp_nosig(buf, val) siglongjmp(buf, val)
36 # else /* SM_CONF_SIGSETJMP */
38 typedef jmp_buf SM_JMPBUF_T;
39 # define sm_setjmp_sig(buf) setjmp(buf)
40 # define sm_longjmp_sig(buf, val) longjmp(buf, val)
41 # define sm_setjmp_nosig(buf) _setjmp(buf)
42 # define sm_longjmp_nosig(buf, val) _longjmp(buf, val)
44 # endif /* SM_CONF_SIGSETJMP */
46 #endif /* ! SM_SETJMP_H */