Index: uspace/lib/c/generic/async.c
===================================================================
--- uspace/lib/c/generic/async.c	(revision 8526e5851735f721474fd66288fa0bd2ee19ad96)
+++ uspace/lib/c/generic/async.c	(revision 23882034cfd4477b9f4fc0091927fb70107cde4e)
@@ -151,4 +151,7 @@
 	sysarg_t in_phone_hash;
 	
+	/** Link to the client tracking structure. */
+	client_t *client;
+
 	/** Messages that should be delivered to this fibril. */
 	link_t msg_queue;
@@ -191,4 +194,11 @@
 {
 	async_client_data_destroy = dtor;
+}
+
+void *async_client_data_get(void)
+{
+	assert(FIBRIL_connection);
+
+	return FIBRIL_connection->client->data;
 }
 
@@ -574,4 +584,6 @@
 	}
 	futex_up(&async_futex);
+
+	FIBRIL_connection->client = cl;
 
 	/*
Index: uspace/lib/c/include/async.h
===================================================================
--- uspace/lib/c/include/async.h	(revision 8526e5851735f721474fd66288fa0bd2ee19ad96)
+++ uspace/lib/c/include/async.h	(revision 23882034cfd4477b9f4fc0091927fb70107cde4e)
@@ -104,4 +104,6 @@
 extern void async_set_client_data_constructor(async_client_data_ctor_t);
 extern void async_set_client_data_destructor(async_client_data_dtor_t);
+
+extern void *async_client_data_get(void);
 
 extern void async_set_client_connection(async_client_conn_t);
