- Test m_pkthdr.fw_flags against DUMMYNET_MBUF_TAGGED before trying to locate
[dragonfly/netmp.git] / sys / sys / sysmsg.h
blobcc59360926c47f48bbce95baf10cfd1eb4e599c7
1 /*
2 * SYS/SYSMSG.H
4 * $DragonFly: src/sys/sys/sysmsg.h,v 1.11 2006/10/20 17:02:13 dillon Exp $
5 */
7 #ifndef _SYS_SYSMSG_H_
8 #define _SYS_SYSMSG_H_
10 #ifdef _KERNEL
12 #ifndef _SYS_TYPES_H_
13 #include <sys/types.h>
14 #endif
17 * The sysmsg holds the kernelland version of a system call's arguments
18 * and return value. It typically preceeds the syscall arguments in sysunion
19 * (see sys/sysunion.h).
21 union sysunion;
23 struct sysmsg {
24 union {
25 void *resultp; /* misc pointer data or result */
26 int result; /* standard 'int'eger result */
27 long lresult; /* long result */
28 int fds[2]; /* two int bit results */
29 __int32_t result32; /* 32 bit result */
30 __int64_t result64; /* 64 bit result */
31 __off_t offset; /* off_t result */
32 } sm_result;
33 struct trapframe *sm_frame; /* trapframe - saved user context */
34 void *sm_unused;
37 struct lwp;
38 union sysunion;
40 #endif
42 #ifdef _KERNEL
43 #define sysmsg_result sysmsg.sm_result.result
44 #define sysmsg_lresult sysmsg.sm_result.lresult
45 #define sysmsg_resultp sysmsg.sm_result.resultp
46 #define sysmsg_fds sysmsg.sm_result.fds
47 #define sysmsg_offset sysmsg.sm_result.offset
48 #define sysmsg_result32 sysmsg.sm_result.result32
49 #define sysmsg_result64 sysmsg.sm_result.result64
50 #define sysmsg_frame sysmsg.sm_frame
51 #endif
53 #endif