Index: uspace/srv/net/nil/eth/eth.c
===================================================================
--- uspace/srv/net/nil/eth/eth.c	(revision 1b1164e8b3cea0b45a167fb0933b14cf0c22c374)
+++ uspace/srv/net/nil/eth/eth.c	(revision 5814ef7188cf75fcd57922f03a3bde3d4c78975f)
@@ -709,4 +709,8 @@
 	measured_string_ref address;
 	packet_t packet;
+	size_t addrlen;
+	size_t prefix;
+	size_t suffix;
+	size_t content;
 
 //	printf("message %d - %d\n", IPC_GET_METHOD(*call), NET_NIL_FIRST);
@@ -721,5 +725,9 @@
 			return eth_send_message(IPC_GET_DEVICE(call), packet, IPC_GET_SERVICE(call));
 		case NET_NIL_PACKET_SPACE:
-			ERROR_PROPAGATE(eth_packet_space_message(IPC_GET_DEVICE(call), IPC_SET_ADDR(answer), IPC_SET_PREFIX(answer), IPC_SET_CONTENT(answer), IPC_SET_SUFFIX(answer)));
+			ERROR_PROPAGATE(eth_packet_space_message(IPC_GET_DEVICE(call), &addrlen, &prefix, &content, &suffix));
+			IPC_SET_ADDR(answer, addrlen);
+			IPC_SET_PREFIX(answer, prefix);
+			IPC_SET_CONTENT(answer, content);
+			IPC_SET_SUFFIX(answer, suffix);
 			*answer_count = 4;
 			return EOK;
Index: uspace/srv/net/nil/nil_messages.h
===================================================================
--- uspace/srv/net/nil/nil_messages.h	(revision 1b1164e8b3cea0b45a167fb0933b14cf0c22c374)
+++ uspace/srv/net/nil/nil_messages.h	(revision 5814ef7188cf75fcd57922f03a3bde3d4c78975f)
@@ -82,5 +82,6 @@
 /** Returns the protocol service message parameter.
  */
-#define NIL_GET_PROTO(call)		(services_t) IPC_GET_ARG2(*call)
+#define NIL_GET_PROTO(call) \
+	({services_t service = (services_t) IPC_GET_ARG2(*call); service;})
 
 /*@}*/
Index: uspace/srv/net/nil/nildummy/nildummy.c
===================================================================
--- uspace/srv/net/nil/nildummy/nildummy.c	(revision 1b1164e8b3cea0b45a167fb0933b14cf0c22c374)
+++ uspace/srv/net/nil/nildummy/nildummy.c	(revision 5814ef7188cf75fcd57922f03a3bde3d4c78975f)
@@ -316,4 +316,8 @@
 	measured_string_ref address;
 	packet_t packet;
+	size_t addrlen;
+	size_t prefix;
+	size_t suffix;
+	size_t content;
 
 //	printf("message %d - %d\n", IPC_GET_METHOD(*call), NET_NIL_FIRST);
@@ -328,5 +332,9 @@
 			return nildummy_send_message(IPC_GET_DEVICE(call), packet, IPC_GET_SERVICE(call));
 		case NET_NIL_PACKET_SPACE:
-			ERROR_PROPAGATE(nildummy_packet_space_message(IPC_GET_DEVICE(call), IPC_SET_ADDR(answer), IPC_SET_PREFIX(answer), IPC_SET_CONTENT(answer), IPC_SET_SUFFIX(answer)));
+			ERROR_PROPAGATE(nildummy_packet_space_message(IPC_GET_DEVICE(call), &addrlen, &prefix, &content, &suffix));
+			IPC_SET_ADDR(answer, addrlen);
+			IPC_SET_PREFIX(answer, prefix);
+			IPC_SET_CONTENT(answer, content);
+			IPC_SET_SUFFIX(answer, suffix);
 			*answer_count = 4;
 			return EOK;
