View | Details | Raw Unified | Return to bug 207079 | Differences between
and this patch

Collapse All | Expand All

(-)b/include/signal.h (-1 / +2 lines)
Lines 36-41 Link Here
36
#include <sys/cdefs.h>
36
#include <sys/cdefs.h>
37
#include <sys/_types.h>
37
#include <sys/_types.h>
38
#include <sys/signal.h>
38
#include <sys/signal.h>
39
#include <machine/ucontext.h>
40
#include <sys/_ucontext.h>
39
41
40
#if __BSD_VISIBLE
42
#if __BSD_VISIBLE
41
/*
43
/*
Lines 114-120 void psignal(unsigned int, const char *); Link Here
114
116
115
#if __BSD_VISIBLE
117
#if __BSD_VISIBLE
116
int	sigblock(int);
118
int	sigblock(int);
117
struct __ucontext;		/* XXX spec requires a complete declaration. */
118
int	sigreturn(const struct __ucontext *);
119
int	sigreturn(const struct __ucontext *);
119
int	sigsetmask(int);
120
int	sigsetmask(int);
120
int	sigstack(const struct sigstack *, struct sigstack *);
121
int	sigstack(const struct sigstack *, struct sigstack *);
(-)b/sys/sys/_ucontext.h (+52 lines)
Added Link Here
1
/*-
2
 * Copyright (c) 1999 Marcel Moolenaar
3
 * All rights reserved.
4
 *
5
 * Redistribution and use in source and binary forms, with or without
6
 * modification, are permitted provided that the following conditions
7
 * are met:
8
 * 1. Redistributions of source code must retain the above copyright
9
 *    notice, this list of conditions and the following disclaimer 
10
 *    in this position and unchanged.
11
 * 2. Redistributions in binary form must reproduce the above copyright
12
 *    notice, this list of conditions and the following disclaimer in the
13
 *    documentation and/or other materials provided with the distribution.
14
 * 3. The name of the author may not be used to endorse or promote products
15
 *    derived from this software without specific prior written permission.
16
 *
17
 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
18
 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
19
 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
20
 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
21
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
22
 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26
 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27
 *
28
 * $FreeBSD$
29
 */
30
31
#ifndef _SYS__UCONTEXT_H_
32
#define	_SYS__UCONTEXT_H_
33
34
typedef struct __ucontext {
35
	/*
36
	 * Keep the order of the first two fields. Also,
37
	 * keep them the first two fields in the structure.
38
	 * This way we can have a union with struct
39
	 * sigcontext and ucontext_t. This allows us to
40
	 * support them both at the same time.
41
	 * note: the union is not defined, though.
42
	 */
43
	sigset_t	uc_sigmask;
44
	mcontext_t	uc_mcontext;
45
46
	struct __ucontext *uc_link;
47
	stack_t		uc_stack;
48
	int		uc_flags;
49
	int		__spare__[4];
50
} ucontext_t;
51
52
#endif /* _SYS__UCONTEXT_H */
(-)b/sys/sys/ucontext.h (-17 / +1 lines)
Lines 33-57 Link Here
33
33
34
#include <sys/signal.h>
34
#include <sys/signal.h>
35
#include <machine/ucontext.h>
35
#include <machine/ucontext.h>
36
#include <sys/_ucontext.h>
36
37
37
typedef struct __ucontext {
38
	/*
39
	 * Keep the order of the first two fields. Also,
40
	 * keep them the first two fields in the structure.
41
	 * This way we can have a union with struct
42
	 * sigcontext and ucontext_t. This allows us to
43
	 * support them both at the same time.
44
	 * note: the union is not defined, though.
45
	 */
46
	sigset_t	uc_sigmask;
47
	mcontext_t	uc_mcontext;
48
49
	struct __ucontext *uc_link;
50
	stack_t		uc_stack;
51
	int		uc_flags;
52
#define	UCF_SWAPPED	0x00000001	/* Used by swapcontext(3). */
38
#define	UCF_SWAPPED	0x00000001	/* Used by swapcontext(3). */
53
	int		__spare__[4];
54
} ucontext_t;
55
39
56
#if defined(_KERNEL) && defined(COMPAT_FREEBSD4)
40
#if defined(_KERNEL) && defined(COMPAT_FREEBSD4)
57
#if defined(__i386__)
41
#if defined(__i386__)

Return to bug 207079