Index: kernel/generic/include/ipc/sysipc_ops.h
===================================================================
--- kernel/generic/include/ipc/sysipc_ops.h	(revision 716185dfa29c1943ab5649d9b18ed10a7570fbe7)
+++ kernel/generic/include/ipc/sysipc_ops.h	(revision faa45c17265a09e567d0603d367915364aaa4459)
@@ -37,4 +37,15 @@
 
 #include <ipc/ipc.h>
+
+#define SYSIPC_OP(op, call, ...) \
+	({ \
+		int rc = EOK; \
+		\
+		sysipc_ops_t *ops; \
+		ops = sysipc_ops_get((call)->request_method); \
+		if (ops->op) \
+			rc = ops->op((call), ##__VA_ARGS__); \
+		rc; \
+	})
 
 /**
@@ -95,5 +106,5 @@
 	 * Invoked on:		all forgotten calls
 	 */	
-	void (* request_forget)(call_t *);
+	int (* request_forget)(call_t *);
 
 	/**
@@ -116,5 +127,5 @@
 	 * Invoked on:		all forgotten calls
 	 */
-	void (* answer_cleanup)(call_t *, ipc_data_t *);
+	int (* answer_cleanup)(call_t *, ipc_data_t *);
 
 	/**
@@ -143,7 +154,7 @@
 
 extern int null_request_preprocess(call_t *, phone_t *);
-extern void null_request_forget(call_t *);
+extern int null_request_forget(call_t *);
 extern int null_request_process(call_t *, answerbox_t *);
-extern void null_answer_cleanup(call_t *, ipc_data_t *);
+extern int null_answer_cleanup(call_t *, ipc_data_t *);
 extern int null_answer_preprocess(call_t *, ipc_data_t *);
 extern int null_answer_process(call_t *);
