\documentclass{article}
\usepackage[fancyhdr,pdf]{latex2man}

\input{common.tex}

\begin{document}

\begin{Name}{3libunwind}{unw\_is\_signal\_frame}{David Mosberger-Tang}{Programming Library}{unw\_is\_signal\_frame}unw\_is\_signal\_frame -- check if current frame is a signal frame
\end{Name}

\section{Synopsis}

\File{\#include $<$libunwind.h$>$}\\

\Type{int} \Func{unw\_is\_signal\_frame}(\Type{unw\_cursor\_t~*}\Var{cp});\\

\section{Description}

The \Func{unw\_is\_signal\_frame}() routine returns a positive value
if the current frame identified by \Var{cp} is a signal frame,
also known as a signal trampoline,
and a value of 0 otherwise.
For the purpose of this discussion,
a signal frame is a frame that was created in response to a potentially
asynchronous interruption.
For UNIX and UNIX-like platforms,
such frames are normally created by the kernel when delivering a signal.
In a kernel environment, a signal frame might, for example, correspond
to a frame created in response to a device interrupt.

Signal frames are somewhat unusual because the asynchronous nature of
the events that create them require storing the contents of registers
that are normally treated as scratch (``caller-saved'') registers.

\section{Return Value}

On successful completion, \Func{unw\_is\_signal\_frame}() returns a
positive value if the current frame is a signal frame, or 0 if it is
not.  Otherwise, a negative value of one of the error codes below is
returned.

\section{Thread and Signal Safety}

\Func{unw\_is\_signal\_frame}() is thread safe as well as safe to use
from a signal handler.

\section{Errors}

\begin{Description}
\item[\Const{UNW\_ENOINFO}] \Prog{Libunwind} is unable to determine
  whether or not the current frame is a signal frame.
\end{Description}

\section{See Also}

\SeeAlso{libunwind}(3libunwind),
\SeeAlso{unw\_get\_reg}(3libunwind),
\SeeAlso{unw\_set\_reg}(3libunwind),
\SeeAlso{unw\_get\_fpreg}(3libunwind),
\SeeAlso{unw\_set\_fpreg}(3libunwind)

\section{Author}

\noindent
David Mosberger-Tang\\
Email: \Email{dmosberger@gmail.com}\\
WWW: \URL{http://www.nongnu.org/libunwind/}.
\LatexManEnd

\end{document}
