<html lang="en">
<head>
<title>Non-Local Exits and Signals - The GNU C Library</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="The GNU C Library">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Non_002dLocal-Exits.html#Non_002dLocal-Exits" title="Non-Local Exits">
<link rel="prev" href="Non_002dLocal-Details.html#Non_002dLocal-Details" title="Non-Local Details">
<link rel="next" href="System-V-contexts.html#System-V-contexts" title="System V contexts">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
This file documents the GNU C library.

This is Edition 0.12, last updated 2007-10-27,
of `The GNU C Library Reference Manual', for version
2.8 (Sourcery G++ Lite 2011.03-41).

Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2002,
2003, 2007, 2008, 2010 Free Software Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being ``Free Software Needs Free Documentation''
and ``GNU Lesser General Public License'', the Front-Cover texts being
``A GNU Manual'', and with the Back-Cover Texts as in (a) below.  A
copy of the license is included in the section entitled "GNU Free
Documentation License".

(a) The FSF's Back-Cover Text is: ``You have the freedom to
copy and modify this GNU manual.  Buying copies from the FSF
supports it in developing GNU and promoting software freedom.''-->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
  pre.display { font-family:inherit }
  pre.format  { font-family:inherit }
  pre.smalldisplay { font-family:inherit; font-size:smaller }
  pre.smallformat  { font-family:inherit; font-size:smaller }
  pre.smallexample { font-size:smaller }
  pre.smalllisp    { font-size:smaller }
  span.sc    { font-variant:small-caps }
  span.roman { font-family:serif; font-weight:normal; } 
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
--></style>
<link rel="stylesheet" type="text/css" href="../cs.css">
</head>
<body>
<div class="node">
<a name="Non-Local-Exits-and-Signals"></a>
<a name="Non_002dLocal-Exits-and-Signals"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="System-V-contexts.html#System-V-contexts">System V contexts</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="Non_002dLocal-Details.html#Non_002dLocal-Details">Non-Local Details</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Non_002dLocal-Exits.html#Non_002dLocal-Exits">Non-Local Exits</a>
<hr>
</div>

<h3 class="section">23.3 Non-Local Exits and Signals</h3>

<p>In BSD Unix systems, <code>setjmp</code> and <code>longjmp</code> also save and
restore the set of blocked signals; see <a href="Blocking-Signals.html#Blocking-Signals">Blocking Signals</a>.  However,
the POSIX.1 standard requires <code>setjmp</code> and <code>longjmp</code> not to
change the set of blocked signals, and provides an additional pair of
functions (<code>sigsetjmp</code> and <code>siglongjmp</code>) to get the BSD
behavior.

   <p>The behavior of <code>setjmp</code> and <code>longjmp</code> in the GNU library is
controlled by feature test macros; see <a href="Feature-Test-Macros.html#Feature-Test-Macros">Feature Test Macros</a>.  The
default in the GNU system is the POSIX.1 behavior rather than the BSD
behavior.

   <p>The facilities in this section are declared in the header file
<samp><span class="file">setjmp.h</span></samp>. 
<a name="index-setjmp_002eh-2801"></a>
<!-- setjmp.h -->
<!-- POSIX.1 -->

<div class="defun">
&mdash; Data Type: <b>sigjmp_buf</b><var><a name="index-sigjmp_005fbuf-2802"></a></var><br>
<blockquote><p>This is similar to <code>jmp_buf</code>, except that it can also store state
information about the set of blocked signals. 
</p></blockquote></div>

<!-- setjmp.h -->
<!-- POSIX.1 -->
<div class="defun">
&mdash; Function: int <b>sigsetjmp</b> (<var>sigjmp_buf state, int savesigs</var>)<var><a name="index-sigsetjmp-2803"></a></var><br>
<blockquote><p>This is similar to <code>setjmp</code>.  If <var>savesigs</var> is nonzero, the set
of blocked signals is saved in <var>state</var> and will be restored if a
<code>siglongjmp</code> is later performed with this <var>state</var>. 
</p></blockquote></div>

<!-- setjmp.h -->
<!-- POSIX.1 -->
<div class="defun">
&mdash; Function: void <b>siglongjmp</b> (<var>sigjmp_buf state, int value</var>)<var><a name="index-siglongjmp-2804"></a></var><br>
<blockquote><p>This is similar to <code>longjmp</code> except for the type of its <var>state</var>
argument.  If the <code>sigsetjmp</code> call that set this <var>state</var> used a
nonzero <var>savesigs</var> flag, <code>siglongjmp</code> also restores the set of
blocked signals. 
</p></blockquote></div>

   </body></html>

