VM: full munmap
[minix.git] / lib / libsys / sef_ping.c
blob057b95b72aaeee6a7ab0558fa25380976ed6e2b0
1 #include "syslib.h"
2 #include <assert.h>
3 #include <minix/sysutil.h>
5 /* SEF Ping callbacks. */
6 static struct sef_cbs {
7 sef_cb_ping_reply_t sef_cb_ping_reply;
8 } sef_cbs = {
9 SEF_CB_PING_REPLY_DEFAULT
12 /* SEF Ping prototypes for sef_receive(). */
13 int do_sef_ping_request(message *m_ptr);
15 /* Debug. */
16 EXTERN char* sef_debug_header(void);
18 /*===========================================================================*
19 * do_sef_ping_request *
20 *===========================================================================*/
21 int do_sef_ping_request(message *m_ptr)
23 /* Handle a SEF Ping request. */
25 /* Debug. */
26 #if SEF_PING_DEBUG
27 sef_ping_debug_begin();
28 sef_ping_dprint("%s. Got a SEF Ping request! About to reply.\n",
29 sef_debug_header());
30 sef_ping_debug_end();
31 #endif
33 /* Let the callback code handle the request. */
34 sef_cbs.sef_cb_ping_reply(m_ptr->m_source);
36 /* Return OK not to let anybody else intercept the request. */
37 return(OK);
40 /*===========================================================================*
41 * sef_setcb_ping_reply *
42 *===========================================================================*/
43 void sef_setcb_ping_reply(sef_cb_ping_reply_t cb)
45 assert(cb != NULL);
46 sef_cbs.sef_cb_ping_reply = cb;
49 /*===========================================================================*
50 * sef_cb_ping_reply_null *
51 *===========================================================================*/
52 void sef_cb_ping_reply_null(endpoint_t UNUSED(source))
56 /*===========================================================================*
57 * sef_cb_ping_reply_pong *
58 *===========================================================================*/
59 void sef_cb_ping_reply_pong(endpoint_t source)
61 notify(source);