4 ****************************************************************************
5 * Copyright IBM Corporation 1988, 1989 - All Rights Reserved *
7 * Permission to use, copy, modify, and distribute this software and its *
8 * documentation for any purpose and without fee is hereby granted, *
9 * provided that the above copyright notice appear in all copies and *
10 * that both that copyright notice and this permission notice appear in *
11 * supporting documentation, and that the name of IBM not be used in *
12 * advertising or publicity pertaining to distribution of the software *
13 * without specific, written prior permission. *
15 * IBM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL *
16 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL IBM *
17 * BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY *
18 * DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER *
19 * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING *
20 * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. *
21 ****************************************************************************
24 /* Definitions specific to the in-kernel implementation of Rx, for in-kernel clients */
26 #ifndef __RX_KERNEL_INCL_
27 #define __RX_KERNEL_INCL_ 1
31 * vrmix has some rather peculiar ideas about vax-style processor levels,
32 * as evidenced in "net/spl.h".
37 extern int (*rxk_GetPacketProc
) (); /* set to packet allocation procedure */
38 extern int (*rxk_PacketArrivalProc
) ();
45 #define SPLVAR int splvar
46 #define NETPRI splvar=splnet()
47 #define USERPRI splx(splvar)
50 rxi_StartListener(void);
52 #define rxi_ReScheduleEvents 0 /* Not needed by kernel */
54 /* This is a no-op, because the kernel server procs are pre-allocated */
55 #define rxi_StartServerProcs(x)
58 typedef struct socket
*osi_socket
;
60 #define OSI_NULLSOCKET ((osi_socket) 0)
62 osi_socket
rxi_GetUDPSocket(uint16_t, uint16_t *);
63 osi_socket
rxi_GetICMPSocket(void);
65 #define osi_Msg printf)(
66 #if !defined(AFS_SGI_ENV) && !defined(AFS_SUN5_ENV)
67 #define osi_rxSleep(a) osi_Sleep(a)
68 #define osi_rxWakeup(a) osi_Wakeup(a)
70 #if !defined(AFS_SGI_ENV)
75 #define osi_YieldIfPossible()
76 #define osi_WakeupAndYieldIfPossible(x) rx_Wakeup(x)
78 #include "../afs/longc_procs.h"
80 #endif /* __RX_KERNEL_INCL_ */