linux/include/linux/signal_types.h

/* SPDX-License-Identifier: GPL-2.0 */
#ifndef _LINUX_SIGNAL_TYPES_H
#define _LINUX_SIGNAL_TYPES_H

/*
 * Basic signal handling related data type definitions:
 */

#include <linux/types.h>
#include <uapi/linux/signal.h>

kernel_siginfo_t;

struct ucounts;

/*
 * Real Time signals may be queued.
 */

struct sigqueue {};

/* flags values. */
#define SIGQUEUE_PREALLOC

struct sigpending {};

struct sigaction {};

struct k_sigaction {};

#ifdef CONFIG_OLD_SIGACTION
struct old_sigaction {
	__sighandler_t sa_handler;
	old_sigset_t sa_mask;
	unsigned long sa_flags;
	__sigrestore_t sa_restorer;
};
#endif

struct ksignal {};

/* Used to kill the race between sigaction and forced signals */
#define SA_IMMUTABLE

#ifndef __ARCH_UAPI_SA_FLAGS
#ifdef SA_RESTORER
#define __ARCH_UAPI_SA_FLAGS
#else
#define __ARCH_UAPI_SA_FLAGS
#endif
#endif

#define UAPI_SA_FLAGS

#endif /* _LINUX_SIGNAL_TYPES_H */