1/* 2 * Copyright (c) 2012, ETH Zurich. 3 * All rights reserved. 4 * 5 * This file is distributed under the terms in the attached LICENSE file. 6 * If you do not find this file, copies can be found by writing to: 7 * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group. 8 */ 9 10#ifndef MONITOR_SEND_CAP_H 11#define MONITOR_SEND_CAP_H 12 13#include <if/intermon_defs.h> 14 15struct captx_prepare_state; 16typedef void (*captx_send_cont)(errval_t, struct captx_prepare_state*, 17 intermon_captx_t*, void*); 18struct captx_prepare_state { 19 intermon_captx_t captx; 20 captx_send_cont send_cont; 21 void *st; 22}; 23void captx_prepare_send(struct capref cap, coreid_t dest, bool give_away, 24 struct captx_prepare_state *state, 25 captx_send_cont send_cont, void *st); 26 27struct captx_recv_state; 28typedef void (*captx_recv_cont)(errval_t, struct captx_recv_state*, 29 struct capref, void*); 30struct captx_recv_state { 31}; 32void captx_handle_recv(intermon_captx_t *captx, struct captx_recv_state *state, 33 captx_recv_cont recv_cont, void *st); 34 35 36#endif 37