Index: uspace/lib/c/generic/adt/circ_buf.c
===================================================================
--- uspace/lib/c/generic/adt/circ_buf.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/adt/circ_buf.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -82,5 +82,5 @@
  * @return EOK on success, EAGAIN if circular buffer is full
  */
-int circ_buf_push(circ_buf_t *cbuf, const void *data)
+errno_t circ_buf_push(circ_buf_t *cbuf, const void *data)
 {
 	if (circ_buf_nfree(cbuf) == 0)
@@ -99,5 +99,5 @@
  * @return EOK on success, EAGAIN if circular buffer is full
  */
-int circ_buf_pop(circ_buf_t *cbuf, void *datab)
+errno_t circ_buf_pop(circ_buf_t *cbuf, void *datab)
 {
 	if (cbuf->nused == 0)
Index: uspace/lib/c/generic/adt/odict.c
===================================================================
--- uspace/lib/c/generic/adt/odict.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/adt/odict.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -92,7 +92,7 @@
  * @return EOK on success, EINVAL on failure
  */
-static int odict_validate_tree(odlink_t *cur, int *rbd)
-{
-	int rc;
+static errno_t odict_validate_tree(odlink_t *cur, int *rbd)
+{
+	errno_t rc;
 	int bd_a, bd_b;
 	int cur_d;
@@ -177,8 +177,8 @@
  * @param odict Ordered dictionary
  */
-int odict_validate(odict_t *odict)
+errno_t odict_validate(odict_t *odict)
 {
 	int bd;
-	int rc;
+	errno_t rc;
 
 	if (odict->root == NULL)
Index: uspace/lib/c/generic/arg_parse.c
===================================================================
--- uspace/lib/c/generic/arg_parse.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/arg_parse.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -65,5 +65,5 @@
  *
  */
-int arg_parse_int(int argc, char *argv[], int *index, int *value,
+errno_t arg_parse_int(int argc, char *argv[], int *index, int *value,
     int offset)
 {
@@ -105,10 +105,10 @@
  *
  */
-int arg_parse_name_int(int argc, char *argv[], int *index, int *value,
+errno_t arg_parse_name_int(int argc, char *argv[], int *index, int *value,
     int offset, arg_parser parser)
 {
 	char *arg;
 	
-	int ret = arg_parse_string(argc, argv, index, &arg, offset);
+	errno_t ret = arg_parse_string(argc, argv, index, &arg, offset);
 	if (ret != EOK)
 		return ret;
@@ -135,5 +135,5 @@
  *
  */
-int arg_parse_string(int argc, char **argv, int *index, char **value,
+errno_t arg_parse_string(int argc, char **argv, int *index, char **value,
     int offset)
 {
Index: uspace/lib/c/generic/as.c
===================================================================
--- uspace/lib/c/generic/as.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/as.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -74,7 +74,7 @@
  *
  */
-int as_area_resize(void *address, size_t size, unsigned int flags)
+errno_t as_area_resize(void *address, size_t size, unsigned int flags)
 {
-	return (int) __SYSCALL3(SYS_AS_AREA_RESIZE, (sysarg_t) address,
+	return (errno_t) __SYSCALL3(SYS_AS_AREA_RESIZE, (sysarg_t) address,
 	    (sysarg_t) size, (sysarg_t) flags);
 }
@@ -88,7 +88,7 @@
  *
  */
-int as_area_destroy(void *address)
+errno_t as_area_destroy(void *address)
 {
-	return (int) __SYSCALL1(SYS_AS_AREA_DESTROY, (sysarg_t) address);
+	return (errno_t) __SYSCALL1(SYS_AS_AREA_DESTROY, (sysarg_t) address);
 }
 
@@ -102,7 +102,7 @@
  *
  */
-int as_area_change_flags(void *address, unsigned int flags)
+errno_t as_area_change_flags(void *address, unsigned int flags)
 {
-	return (int) __SYSCALL2(SYS_AS_AREA_CHANGE_FLAGS, (sysarg_t) address,
+	return (errno_t) __SYSCALL2(SYS_AS_AREA_CHANGE_FLAGS, (sysarg_t) address,
 	    (sysarg_t) flags);
 }
@@ -117,7 +117,7 @@
  *
  */
-int as_get_physical_mapping(const void *virt, uintptr_t *phys)
+errno_t as_get_physical_mapping(const void *virt, uintptr_t *phys)
 {
-	return (int) __SYSCALL2(SYS_PAGE_FIND_MAPPING, (sysarg_t) virt,
+	return (errno_t) __SYSCALL2(SYS_PAGE_FIND_MAPPING, (sysarg_t) virt,
 	    (sysarg_t) phys);
 }
Index: uspace/lib/c/generic/assert.c
===================================================================
--- uspace/lib/c/generic/assert.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/assert.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -41,5 +41,17 @@
 static atomic_t failed_asserts = {0};
 
-void assert_abort(const char *cond, const char *file, unsigned int line)
+void __helenos_assert_quick_abort(const char *cond, const char *file, unsigned int line)
+{
+	/*
+	 * Send the message safely to kio. Nested asserts should not occur.
+	 */
+	kio_printf("Assertion failed (%s) in file \"%s\", line %u.\n",
+	    cond, file, line);
+	
+	/* Sometimes we know in advance that regular printf() would likely fail. */
+	abort();
+}
+
+void __helenos_assert_abort(const char *cond, const char *file, unsigned int line)
 {
 	/*
Index: uspace/lib/c/generic/async.c
===================================================================
--- uspace/lib/c/generic/async.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/async.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -205,5 +205,5 @@
 	ipc_call_t *dataptr;
 	
-	int retval;
+	errno_t retval;
 } amsg_t;
 
@@ -511,5 +511,5 @@
 static FIBRIL_CONDVAR_INITIALIZE(avail_phone_cv);
 
-int async_create_port(iface_t iface, async_port_handler_t handler,
+errno_t async_create_port(iface_t iface, async_port_handler_t handler,
     void *data, port_id_t *port_id)
 {
@@ -698,5 +698,5 @@
  *
  */
-static int connection_fibril(void *arg)
+static errno_t connection_fibril(void *arg)
 {
 	assert(arg);
@@ -847,5 +847,5 @@
  *
  */
-int async_create_callback_port(async_exch_t *exch, iface_t iface, sysarg_t arg1,
+errno_t async_create_callback_port(async_exch_t *exch, iface_t iface, sysarg_t arg1,
     sysarg_t arg2, async_port_handler_t handler, void *data, port_id_t *port_id)
 {
@@ -860,8 +860,8 @@
 	    &answer);
 	
-	int ret;
+	errno_t ret;
 	async_wait_for(req, &ret);
 	if (ret != EOK)
-		return (int) ret;
+		return (errno_t) ret;
 	
 	sysarg_t phone_hash = IPC_GET_ARG5(answer);
@@ -1056,5 +1056,5 @@
  *
  */
-int async_irq_subscribe(int inr, async_notification_handler_t handler,
+errno_t async_irq_subscribe(int inr, async_notification_handler_t handler,
     void *data, const irq_code_t *ucode, cap_handle_t *handle)
 {
@@ -1078,5 +1078,5 @@
 	
 	cap_handle_t cap;
-	int rc = ipc_irq_subscribe(inr, imethod, ucode, &cap);
+	errno_t rc = ipc_irq_subscribe(inr, imethod, ucode, &cap);
 	if (rc == EOK && handle != NULL) {
 		*handle = cap;
@@ -1092,5 +1092,5 @@
  *
  */
-int async_irq_unsubscribe(int cap)
+errno_t async_irq_unsubscribe(int cap)
 {
 	// TODO: Remove entry from hash table
@@ -1109,5 +1109,5 @@
  *
  */
-int async_event_subscribe(event_type_t evno,
+errno_t async_event_subscribe(event_type_t evno,
     async_notification_handler_t handler, void *data)
 {
@@ -1142,5 +1142,5 @@
  *
  */
-int async_event_task_subscribe(event_task_type_t evno,
+errno_t async_event_task_subscribe(event_task_type_t evno,
     async_notification_handler_t handler, void *data)
 {
@@ -1173,5 +1173,5 @@
  *
  */
-int async_event_unmask(event_type_t evno)
+errno_t async_event_unmask(event_type_t evno)
 {
 	return ipc_event_unmask(evno);
@@ -1185,5 +1185,5 @@
  *
  */
-int async_event_task_unmask(event_task_type_t evno)
+errno_t async_event_task_unmask(event_task_type_t evno)
 {
 	return ipc_event_task_unmask(evno);
@@ -1437,5 +1437,5 @@
  *
  */
-static int async_manager_worker(void)
+static errno_t async_manager_worker(void)
 {
 	while (true) {
@@ -1489,5 +1489,5 @@
 		
 		ipc_call_t call;
-		int rc = ipc_wait_cycle(&call, timeout, flags);
+		errno_t rc = ipc_wait_cycle(&call, timeout, flags);
 		
 		atomic_dec(&threads_in_ipc_wait);
@@ -1521,5 +1521,5 @@
  *
  */
-static int async_manager_fibril(void *arg)
+static errno_t async_manager_fibril(void *arg)
 {
 	futex_up(&async_futex);
@@ -1597,5 +1597,5 @@
  *
  */
-void reply_received(void *arg, int retval, ipc_call_t *data)
+void reply_received(void *arg, errno_t retval, ipc_call_t *data)
 {
 	assert(arg);
@@ -1709,5 +1709,5 @@
  *
  */
-void async_wait_for(aid_t amsgid, int *retval)
+void async_wait_for(aid_t amsgid, errno_t *retval)
 {
 	assert(amsgid);
@@ -1755,5 +1755,5 @@
  *
  */
-int async_wait_timeout(aid_t amsgid, int *retval, suseconds_t timeout)
+errno_t async_wait_timeout(aid_t amsgid, errno_t *retval, suseconds_t timeout)
 {
 	assert(amsgid);
@@ -1915,5 +1915,5 @@
  *
  */
-int async_req_fast(async_exch_t *exch, sysarg_t imethod, sysarg_t arg1,
+errno_t async_req_fast(async_exch_t *exch, sysarg_t imethod, sysarg_t arg1,
     sysarg_t arg2, sysarg_t arg3, sysarg_t arg4, sysarg_t *r1, sysarg_t *r2,
     sysarg_t *r3, sysarg_t *r4, sysarg_t *r5)
@@ -1926,5 +1926,5 @@
 	    &result);
 	
-	int rc;
+	errno_t rc;
 	async_wait_for(aid, &rc);
 	
@@ -1967,5 +1967,5 @@
  *
  */
-int async_req_slow(async_exch_t *exch, sysarg_t imethod, sysarg_t arg1,
+errno_t async_req_slow(async_exch_t *exch, sysarg_t imethod, sysarg_t arg1,
     sysarg_t arg2, sysarg_t arg3, sysarg_t arg4, sysarg_t arg5, sysarg_t *r1,
     sysarg_t *r2, sysarg_t *r3, sysarg_t *r4, sysarg_t *r5)
@@ -1978,5 +1978,5 @@
 	    &result);
 	
-	int rc;
+	errno_t rc;
 	async_wait_for(aid, &rc);
 	
@@ -2042,15 +2042,15 @@
 }
 
-int async_answer_0(cap_handle_t chandle, int retval)
+errno_t async_answer_0(cap_handle_t chandle, errno_t retval)
 {
 	return ipc_answer_0(chandle, retval);
 }
 
-int async_answer_1(cap_handle_t chandle, int retval, sysarg_t arg1)
+errno_t async_answer_1(cap_handle_t chandle, errno_t retval, sysarg_t arg1)
 {
 	return ipc_answer_1(chandle, retval, arg1);
 }
 
-int async_answer_2(cap_handle_t chandle, int retval, sysarg_t arg1,
+errno_t async_answer_2(cap_handle_t chandle, errno_t retval, sysarg_t arg1,
     sysarg_t arg2)
 {
@@ -2058,5 +2058,5 @@
 }
 
-int async_answer_3(cap_handle_t chandle, int retval, sysarg_t arg1,
+errno_t async_answer_3(cap_handle_t chandle, errno_t retval, sysarg_t arg1,
     sysarg_t arg2, sysarg_t arg3)
 {
@@ -2064,5 +2064,5 @@
 }
 
-int async_answer_4(cap_handle_t chandle, int retval, sysarg_t arg1,
+errno_t async_answer_4(cap_handle_t chandle, errno_t retval, sysarg_t arg1,
     sysarg_t arg2, sysarg_t arg3, sysarg_t arg4)
 {
@@ -2070,5 +2070,5 @@
 }
 
-int async_answer_5(cap_handle_t chandle, int retval, sysarg_t arg1,
+errno_t async_answer_5(cap_handle_t chandle, errno_t retval, sysarg_t arg1,
     sysarg_t arg2, sysarg_t arg3, sysarg_t arg4, sysarg_t arg5)
 {
@@ -2076,5 +2076,5 @@
 }
 
-int async_forward_fast(cap_handle_t chandle, async_exch_t *exch,
+errno_t async_forward_fast(cap_handle_t chandle, async_exch_t *exch,
     sysarg_t imethod, sysarg_t arg1, sysarg_t arg2, unsigned int mode)
 {
@@ -2085,5 +2085,5 @@
 }
 
-int async_forward_slow(cap_handle_t chandle, async_exch_t *exch,
+errno_t async_forward_slow(cap_handle_t chandle, async_exch_t *exch,
     sysarg_t imethod, sysarg_t arg1, sysarg_t arg2, sysarg_t arg3,
     sysarg_t arg4, sysarg_t arg5, unsigned int mode)
@@ -2108,5 +2108,5 @@
  *
  */
-int async_connect_to_me(async_exch_t *exch, sysarg_t arg1, sysarg_t arg2,
+errno_t async_connect_to_me(async_exch_t *exch, sysarg_t arg1, sysarg_t arg2,
     sysarg_t arg3)
 {
@@ -2118,13 +2118,13 @@
 	    &answer);
 	
-	int rc;
+	errno_t rc;
 	async_wait_for(req, &rc);
 	if (rc != EOK)
-		return (int) rc;
+		return (errno_t) rc;
 	
 	return EOK;
 }
 
-static int async_connect_me_to_internal(int phone, sysarg_t arg1, sysarg_t arg2,
+static errno_t async_connect_me_to_internal(int phone, sysarg_t arg1, sysarg_t arg2,
     sysarg_t arg3, sysarg_t arg4, int *out_phone)
 {
@@ -2145,5 +2145,5 @@
 	    msg, reply_received);
 	
-	int rc;
+	errno_t rc;
 	async_wait_for((aid_t) msg, &rc);
 	
@@ -2183,5 +2183,5 @@
 	
 	int phone;
-	int rc = async_connect_me_to_internal(exch->phone, arg1, arg2, arg3,
+	errno_t rc = async_connect_me_to_internal(exch->phone, arg1, arg2, arg3,
 	    0, &phone);
 	if (rc != EOK) {
@@ -2236,5 +2236,5 @@
 	
 	int phone;
-	int rc = async_connect_me_to_internal(exch->phone, iface, arg2,
+	errno_t rc = async_connect_me_to_internal(exch->phone, iface, arg2,
 	    arg3, 0, &phone);
 	if (rc != EOK) {
@@ -2307,5 +2307,5 @@
 	
 	int phone;
-	int rc = async_connect_me_to_internal(exch->phone, arg1, arg2, arg3,
+	errno_t rc = async_connect_me_to_internal(exch->phone, arg1, arg2, arg3,
 	    IPC_FLAG_BLOCKING, &phone);
 	
@@ -2361,5 +2361,5 @@
 	
 	int phone;
-	int rc = async_connect_me_to_internal(exch->phone, iface, arg2,
+	errno_t rc = async_connect_me_to_internal(exch->phone, iface, arg2,
 	    arg3, IPC_FLAG_BLOCKING, &phone);
 	if (rc != EOK) {
@@ -2397,5 +2397,5 @@
 	
 	cap_handle_t phone;
-	int rc = ipc_connect_kbox(id, &phone);
+	errno_t rc = ipc_connect_kbox(id, &phone);
 	if (rc != EOK) {
 		errno = rc;
@@ -2421,5 +2421,5 @@
 }
 
-static int async_hangup_internal(int phone)
+static errno_t async_hangup_internal(int phone)
 {
 	return ipc_hangup(phone);
@@ -2433,5 +2433,5 @@
  *
  */
-int async_hangup(async_sess_t *sess)
+errno_t async_hangup(async_sess_t *sess)
 {
 	async_exch_t *exch;
@@ -2444,5 +2444,5 @@
 	fibril_mutex_lock(&async_sess_mutex);
 	
-	int rc = async_hangup_internal(sess->phone);
+	errno_t rc = async_hangup_internal(sess->phone);
 	
 	while (!list_empty(&sess->exch_list)) {
@@ -2516,5 +2516,5 @@
 		} else if (mgmt == EXCHANGE_PARALLEL) {
 			int phone;
-			int rc;
+			errno_t rc;
 			
 		retry:
@@ -2613,5 +2613,5 @@
  *
  */
-int async_share_in_start(async_exch_t *exch, size_t size, sysarg_t arg,
+errno_t async_share_in_start(async_exch_t *exch, size_t size, sysarg_t arg,
     unsigned int *flags, void **dst)
 {
@@ -2621,5 +2621,5 @@
 	sysarg_t _flags = 0;
 	sysarg_t _dst = (sysarg_t) -1;
-	int res = async_req_2_4(exch, IPC_M_SHARE_IN, (sysarg_t) size,
+	errno_t res = async_req_2_4(exch, IPC_M_SHARE_IN, (sysarg_t) size,
 	    arg, NULL, &_flags, NULL, &_dst);
 	
@@ -2673,5 +2673,5 @@
  *
  */
-int async_share_in_finalize(cap_handle_t chandle, void *src, unsigned int flags)
+errno_t async_share_in_finalize(cap_handle_t chandle, void *src, unsigned int flags)
 {
 	return ipc_answer_3(chandle, EOK, (sysarg_t) src, (sysarg_t) flags,
@@ -2688,5 +2688,5 @@
  *
  */
-int async_share_out_start(async_exch_t *exch, void *src, unsigned int flags)
+errno_t async_share_out_start(async_exch_t *exch, void *src, unsigned int flags)
 {
 	if (exch == NULL)
@@ -2743,5 +2743,5 @@
  *
  */
-int async_share_out_finalize(cap_handle_t chandle, void **dst)
+errno_t async_share_out_finalize(cap_handle_t chandle, void **dst)
 {
 	return ipc_answer_2(chandle, EOK, (sysarg_t) __entry, (sysarg_t) dst);
@@ -2774,5 +2774,5 @@
  *
  */
-int async_data_read_start(async_exch_t *exch, void *dst, size_t size)
+errno_t async_data_read_start(async_exch_t *exch, void *dst, size_t size)
 {
 	if (exch == NULL)
@@ -2848,5 +2848,5 @@
  *
  */
-int async_data_read_finalize(cap_handle_t chandle, const void *src, size_t size)
+errno_t async_data_read_finalize(cap_handle_t chandle, const void *src, size_t size)
 {
 	return ipc_answer_2(chandle, EOK, (sysarg_t) src, (sysarg_t) size);
@@ -2856,5 +2856,5 @@
  *
  */
-int async_data_read_forward_fast(async_exch_t *exch, sysarg_t imethod,
+errno_t async_data_read_forward_fast(async_exch_t *exch, sysarg_t imethod,
     sysarg_t arg1, sysarg_t arg2, sysarg_t arg3, sysarg_t arg4,
     ipc_call_t *dataptr)
@@ -2876,5 +2876,5 @@
 	}
 	
-	int retval = ipc_forward_fast(chandle, exch->phone, 0, 0, 0,
+	errno_t retval = ipc_forward_fast(chandle, exch->phone, 0, 0, 0,
 	    IPC_FF_ROUTE_FROM_ME);
 	if (retval != EOK) {
@@ -2884,8 +2884,8 @@
 	}
 	
-	int rc;
+	errno_t rc;
 	async_wait_for(msg, &rc);
 	
-	return (int) rc;
+	return (errno_t) rc;
 }
 
@@ -2899,5 +2899,5 @@
  *
  */
-int async_data_write_start(async_exch_t *exch, const void *src, size_t size)
+errno_t async_data_write_start(async_exch_t *exch, const void *src, size_t size)
 {
 	if (exch == NULL)
@@ -2973,5 +2973,5 @@
  *
  */
-int async_data_write_finalize(cap_handle_t chandle, void *dst, size_t size)
+errno_t async_data_write_finalize(cap_handle_t chandle, void *dst, size_t size)
 {
 	return ipc_answer_2(chandle, EOK, (sysarg_t) dst, (sysarg_t) size);
@@ -2999,5 +2999,5 @@
  *
  */
-int async_data_write_accept(void **data, const bool nullterm,
+errno_t async_data_write_accept(void **data, const bool nullterm,
     const size_t min_size, const size_t max_size, const size_t granularity,
     size_t *received)
@@ -3039,5 +3039,5 @@
 	}
 	
-	int rc = async_data_write_finalize(chandle, arg_data, size);
+	errno_t rc = async_data_write_finalize(chandle, arg_data, size);
 	if (rc != EOK) {
 		free(arg_data);
@@ -3062,5 +3062,5 @@
  *
  */
-void async_data_write_void(int retval)
+void async_data_write_void(errno_t retval)
 {
 	cap_handle_t chandle;
@@ -3072,5 +3072,5 @@
  *
  */
-int async_data_write_forward_fast(async_exch_t *exch, sysarg_t imethod,
+errno_t async_data_write_forward_fast(async_exch_t *exch, sysarg_t imethod,
     sysarg_t arg1, sysarg_t arg2, sysarg_t arg3, sysarg_t arg4,
     ipc_call_t *dataptr)
@@ -3092,5 +3092,5 @@
 	}
 	
-	int retval = ipc_forward_fast(chandle, exch->phone, 0, 0, 0,
+	errno_t retval = ipc_forward_fast(chandle, exch->phone, 0, 0, 0,
 	    IPC_FF_ROUTE_FROM_ME);
 	if (retval != EOK) {
@@ -3100,8 +3100,8 @@
 	}
 	
-	int rc;
+	errno_t rc;
 	async_wait_for(msg, &rc);
 	
-	return (int) rc;
+	return (errno_t) rc;
 }
 
@@ -3197,5 +3197,5 @@
 }
 
-int async_state_change_start(async_exch_t *exch, sysarg_t arg1, sysarg_t arg2,
+errno_t async_state_change_start(async_exch_t *exch, sysarg_t arg1, sysarg_t arg2,
     sysarg_t arg3, async_exch_t *other_exch)
 {
@@ -3225,5 +3225,5 @@
 }
 
-int async_state_change_finalize(cap_handle_t chandle, async_exch_t *other_exch)
+errno_t async_state_change_finalize(cap_handle_t chandle, async_exch_t *other_exch)
 {
 	return ipc_answer_1(chandle, EOK, other_exch->phone);
Index: uspace/lib/c/generic/bd.c
===================================================================
--- uspace/lib/c/generic/bd.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/bd.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -48,5 +48,5 @@
 static void bd_cb_conn(ipc_callid_t iid, ipc_call_t *icall, void *arg);
 
-int bd_open(async_sess_t *sess, bd_t **rbd)
+errno_t bd_open(async_sess_t *sess, bd_t **rbd)
 {
 	bd_t *bd = calloc(1, sizeof(bd_t));
@@ -59,5 +59,5 @@
 	
 	port_id_t port;
-	int rc = async_create_callback_port(exch, INTERFACE_BLOCK_CB, 0, 0,
+	errno_t rc = async_create_callback_port(exch, INTERFACE_BLOCK_CB, 0, 0,
 	    bd_cb_conn, bd, &port);
 	
@@ -83,5 +83,5 @@
 }
 
-int bd_read_blocks(bd_t *bd, aoff64_t ba, size_t cnt, void *data, size_t size)
+errno_t bd_read_blocks(bd_t *bd, aoff64_t ba, size_t cnt, void *data, size_t size)
 {
 	async_exch_t *exch = async_exchange_begin(bd->sess);
@@ -90,5 +90,5 @@
 	aid_t req = async_send_3(exch, BD_READ_BLOCKS, LOWER32(ba),
 	    UPPER32(ba), cnt, &answer);
-	int rc = async_data_read_start(exch, data, size);
+	errno_t rc = async_data_read_start(exch, data, size);
 	async_exchange_end(exch);
 
@@ -98,5 +98,5 @@
 	}
 
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 
@@ -107,5 +107,5 @@
 }
 
-int bd_read_toc(bd_t *bd, uint8_t session, void *buf, size_t size)
+errno_t bd_read_toc(bd_t *bd, uint8_t session, void *buf, size_t size)
 {
 	async_exch_t *exch = async_exchange_begin(bd->sess);
@@ -113,5 +113,5 @@
 	ipc_call_t answer;
 	aid_t req = async_send_1(exch, BD_READ_TOC, session, &answer);
-	int rc = async_data_read_start(exch, buf, size);
+	errno_t rc = async_data_read_start(exch, buf, size);
 	async_exchange_end(exch);
 
@@ -121,5 +121,5 @@
 	}
 
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 
@@ -130,5 +130,5 @@
 }
 
-int bd_write_blocks(bd_t *bd, aoff64_t ba, size_t cnt, const void *data,
+errno_t bd_write_blocks(bd_t *bd, aoff64_t ba, size_t cnt, const void *data,
     size_t size)
 {
@@ -138,5 +138,5 @@
 	aid_t req = async_send_3(exch, BD_WRITE_BLOCKS, LOWER32(ba),
 	    UPPER32(ba), cnt, &answer);
-	int rc = async_data_write_start(exch, data, size);
+	errno_t rc = async_data_write_start(exch, data, size);
 	async_exchange_end(exch);
 
@@ -146,5 +146,5 @@
 	}
 
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	if (retval != EOK)
@@ -154,9 +154,9 @@
 }
 
-int bd_sync_cache(bd_t *bd, aoff64_t ba, size_t cnt)
-{
-	async_exch_t *exch = async_exchange_begin(bd->sess);
-
-	int rc = async_req_3_0(exch, BD_SYNC_CACHE, LOWER32(ba),
+errno_t bd_sync_cache(bd_t *bd, aoff64_t ba, size_t cnt)
+{
+	async_exch_t *exch = async_exchange_begin(bd->sess);
+
+	errno_t rc = async_req_3_0(exch, BD_SYNC_CACHE, LOWER32(ba),
 	    UPPER32(ba), cnt);
 	async_exchange_end(exch);
@@ -165,10 +165,10 @@
 }
 
-int bd_get_block_size(bd_t *bd, size_t *rbsize)
+errno_t bd_get_block_size(bd_t *bd, size_t *rbsize)
 {
 	sysarg_t bsize;
 	async_exch_t *exch = async_exchange_begin(bd->sess);
 
-	int rc = async_req_0_1(exch, BD_GET_BLOCK_SIZE, &bsize);
+	errno_t rc = async_req_0_1(exch, BD_GET_BLOCK_SIZE, &bsize);
 	async_exchange_end(exch);
 
@@ -180,5 +180,5 @@
 }
 
-int bd_get_num_blocks(bd_t *bd, aoff64_t *rnb)
+errno_t bd_get_num_blocks(bd_t *bd, aoff64_t *rnb)
 {
 	sysarg_t nb_l;
@@ -186,5 +186,5 @@
 	async_exch_t *exch = async_exchange_begin(bd->sess);
 
-	int rc = async_req_0_2(exch, BD_GET_NUM_BLOCKS, &nb_l, &nb_h);
+	errno_t rc = async_req_0_2(exch, BD_GET_NUM_BLOCKS, &nb_l, &nb_h);
 	async_exchange_end(exch);
 
Index: uspace/lib/c/generic/bd_srv.c
===================================================================
--- uspace/lib/c/generic/bd_srv.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/bd_srv.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -50,5 +50,5 @@
 	void *buf;
 	size_t size;
-	int rc;
+	errno_t rc;
 	ipc_callid_t rcallid;
 
@@ -95,5 +95,5 @@
 	void *buf;
 	size_t size;
-	int rc;
+	errno_t rc;
 	ipc_callid_t rcallid;
 
@@ -138,5 +138,5 @@
 	aoff64_t ba;
 	size_t cnt;
-	int rc;
+	errno_t rc;
 
 	ba = MERGE_LOUP32(IPC_GET_ARG1(*call), IPC_GET_ARG2(*call));
@@ -159,5 +159,5 @@
 	void *data;
 	size_t size;
-	int rc;
+	errno_t rc;
 
 	ba = MERGE_LOUP32(IPC_GET_ARG1(*call), IPC_GET_ARG2(*call));
@@ -183,5 +183,5 @@
     ipc_call_t *call)
 {
-	int rc;
+	errno_t rc;
 	size_t block_size;
 
@@ -198,5 +198,5 @@
     ipc_call_t *call)
 {
-	int rc;
+	errno_t rc;
 	aoff64_t num_blocks;
 
@@ -228,8 +228,8 @@
 }
 
-int bd_conn(ipc_callid_t iid, ipc_call_t *icall, bd_srvs_t *srvs)
+errno_t bd_conn(ipc_callid_t iid, ipc_call_t *icall, bd_srvs_t *srvs)
 {
 	bd_srv_t *srv;
-	int rc;
+	errno_t rc;
 
 	/* Accept the connection */
Index: uspace/lib/c/generic/cap.c
===================================================================
--- uspace/lib/c/generic/cap.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/cap.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -81,5 +81,5 @@
  * and @c cv_max gives the maximum value.
  */
-int cap_to_blocks(cap_spec_t *cap, cap_vsel_t cvsel, size_t block_size,
+errno_t cap_to_blocks(cap_spec_t *cap, cap_vsel_t cvsel, size_t block_size,
     uint64_t *rblocks)
 {
@@ -90,5 +90,5 @@
 	uint64_t blocks;
 	uint64_t rem;
-	int rc;
+	errno_t rc;
 
 	exp = cap->cunit * 3 - cap->dp;
@@ -144,5 +144,5 @@
 	unsigned sdig;
 	unsigned rdig;
-	int rc;
+	errno_t rc;
 
 	/* Change units so that we have at most @c scap_max_idig integer digits */
@@ -175,7 +175,7 @@
 }
 
-int cap_format(cap_spec_t *cap, char **rstr)
-{
-	int rc;
+errno_t cap_format(cap_spec_t *cap, char **rstr)
+{
+	errno_t rc;
 	int ret;
 	const char *sunit;
@@ -208,5 +208,5 @@
 }
 
-static int cap_digit_val(char c, int *val)
+static errno_t cap_digit_val(char c, int *val)
 {
 	switch (c) {
@@ -228,5 +228,5 @@
 }
 
-int cap_parse(const char *str, cap_spec_t *cap)
+errno_t cap_parse(const char *str, cap_spec_t *cap)
 {
 	const char *eptr;
Index: uspace/lib/c/generic/clipboard.c
===================================================================
--- uspace/lib/c/generic/clipboard.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/clipboard.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -59,5 +59,5 @@
 {
 	service_id_t sid;
-	int rc;
+	errno_t rc;
 	
 	fibril_mutex_lock(&clip_mutex);
@@ -98,5 +98,5 @@
  *
  */
-int clipboard_put_str(const char *str)
+errno_t clipboard_put_str(const char *str)
 {
 	size_t size = str_size(str);
@@ -104,28 +104,28 @@
 	if (size == 0) {
 		async_exch_t *exch = clip_exchange_begin();
-		int rc = async_req_1_0(exch, CLIPBOARD_PUT_DATA,
+		errno_t rc = async_req_1_0(exch, CLIPBOARD_PUT_DATA,
 		    CLIPBOARD_TAG_NONE);
 		clip_exchange_end(exch);
 		
-		return (int) rc;
+		return (errno_t) rc;
 	} else {
 		async_exch_t *exch = clip_exchange_begin();
 		aid_t req = async_send_1(exch, CLIPBOARD_PUT_DATA, CLIPBOARD_TAG_DATA,
 		    NULL);
-		int rc = async_data_write_start(exch, (void *) str, size);
+		errno_t rc = async_data_write_start(exch, (void *) str, size);
 		clip_exchange_end(exch);
 		
 		if (rc != EOK) {
-			int rc_orig;
+			errno_t rc_orig;
 			async_wait_for(req, &rc_orig);
 			if (rc_orig == EOK)
-				return (int) rc;
+				return (errno_t) rc;
 			else
-				return (int) rc_orig;
+				return (errno_t) rc_orig;
 		}
 		
 		async_wait_for(req, &rc);
 		
-		return (int) rc;
+		return (errno_t) rc;
 	}
 }
@@ -140,5 +140,5 @@
  *
  */
-int clipboard_get_str(char **str)
+errno_t clipboard_get_str(char **str)
 {
 	/* Loop until clipboard read succesful */
@@ -148,10 +148,10 @@
 		sysarg_t size;
 		sysarg_t tag;
-		int rc = async_req_0_2(exch, CLIPBOARD_CONTENT, &size, &tag);
+		errno_t rc = async_req_0_2(exch, CLIPBOARD_CONTENT, &size, &tag);
 		
 		clip_exchange_end(exch);
 		
 		if (rc != EOK)
-			return (int) rc;
+			return (errno_t) rc;
 		
 		char *sbuf;
@@ -176,5 +176,5 @@
 			clip_exchange_end(exch);
 			
-			if ((int) rc == EOVERFLOW) {
+			if ((errno_t) rc == EOVERFLOW) {
 				/*
 				 * The data in the clipboard has changed since
@@ -185,10 +185,10 @@
 			
 			if (rc != EOK) {
-				int rc_orig;
+				errno_t rc_orig;
 				async_wait_for(req, &rc_orig);
 				if (rc_orig == EOK)
-					return (int) rc;
+					return (errno_t) rc;
 				else
-					return (int) rc_orig;
+					return (errno_t) rc_orig;
 			}
 			
Index: uspace/lib/c/generic/corecfg.c
===================================================================
--- uspace/lib/c/generic/corecfg.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/corecfg.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -38,8 +38,8 @@
 static async_sess_t *corecfg_sess = NULL;
 
-int corecfg_init(void)
+errno_t corecfg_init(void)
 {
 	service_id_t corecfg_svc;
-	int rc;
+	errno_t rc;
 
 	assert(corecfg_sess == NULL);
@@ -59,10 +59,10 @@
 
 /** Get core dump enable status. */
-int corecfg_get_enable(bool *renable)
+errno_t corecfg_get_enable(bool *renable)
 {
 	async_exch_t *exch = async_exchange_begin(corecfg_sess);
 	sysarg_t enable;
 
-	int rc = async_req_0_1(exch, CORECFG_GET_ENABLE, &enable);
+	errno_t rc = async_req_0_1(exch, CORECFG_GET_ENABLE, &enable);
 
 	async_exchange_end(exch);
@@ -76,8 +76,8 @@
 
 /** Enable or disable core dumps. */
-int corecfg_set_enable(bool enable)
+errno_t corecfg_set_enable(bool enable)
 {
 	async_exch_t *exch = async_exchange_begin(corecfg_sess);
-	int rc = async_req_1_0(exch, CORECFG_SET_ENABLE, (sysarg_t) enable);
+	errno_t rc = async_req_1_0(exch, CORECFG_SET_ENABLE, (sysarg_t) enable);
 
 	async_exchange_end(exch);
Index: uspace/lib/c/generic/ddi.c
===================================================================
--- uspace/lib/c/generic/ddi.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/ddi.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -69,7 +69,7 @@
  *
  */
-int physmem_map(uintptr_t phys, size_t pages, unsigned int flags, void **virt)
-{
-	return (int) __SYSCALL5(SYS_PHYSMEM_MAP, (sysarg_t) phys,
+errno_t physmem_map(uintptr_t phys, size_t pages, unsigned int flags, void **virt)
+{
+	return (errno_t) __SYSCALL5(SYS_PHYSMEM_MAP, (sysarg_t) phys,
 	    pages, flags, (sysarg_t) virt, (sysarg_t) __entry);
 }
@@ -85,7 +85,7 @@
  *
  */
-int physmem_unmap(void *virt)
-{
-	return (int) __SYSCALL1(SYS_PHYSMEM_UNMAP, (sysarg_t) virt);
+errno_t physmem_unmap(void *virt)
+{
+	return (errno_t) __SYSCALL1(SYS_PHYSMEM_UNMAP, (sysarg_t) virt);
 }
 
@@ -110,8 +110,8 @@
  *
  */
-int dmamem_map(void *virt, size_t size, unsigned int map_flags,
+errno_t dmamem_map(void *virt, size_t size, unsigned int map_flags,
     unsigned int flags, uintptr_t *phys)
 {
-	return (int) __SYSCALL6(SYS_DMAMEM_MAP, (sysarg_t) size,
+	return (errno_t) __SYSCALL6(SYS_DMAMEM_MAP, (sysarg_t) size,
 	    (sysarg_t) map_flags, (sysarg_t) flags & ~DMAMEM_FLAGS_ANONYMOUS,
 	    (sysarg_t) phys, (sysarg_t) virt, 0);
@@ -138,22 +138,22 @@
  *
  */
-int dmamem_map_anonymous(size_t size, uintptr_t constraint,
+errno_t dmamem_map_anonymous(size_t size, uintptr_t constraint,
     unsigned int map_flags, unsigned int flags, uintptr_t *phys, void **virt)
 {
 	*phys = constraint;
 	
-	return (int) __SYSCALL6(SYS_DMAMEM_MAP, (sysarg_t) size,
+	return (errno_t) __SYSCALL6(SYS_DMAMEM_MAP, (sysarg_t) size,
 	    (sysarg_t) map_flags, (sysarg_t) flags | DMAMEM_FLAGS_ANONYMOUS,
 	    (sysarg_t) phys, (sysarg_t) virt, (sysarg_t) __entry);
 }
 
-int dmamem_unmap(void *virt, size_t size)
-{
-	return (int) __SYSCALL3(SYS_DMAMEM_UNMAP, (sysarg_t) virt, (sysarg_t) size, 0);
-}
-
-int dmamem_unmap_anonymous(void *virt)
-{
-	return (int) __SYSCALL3(SYS_DMAMEM_UNMAP, (sysarg_t) virt, 0,
+errno_t dmamem_unmap(void *virt, size_t size)
+{
+	return (errno_t) __SYSCALL3(SYS_DMAMEM_UNMAP, (sysarg_t) virt, (sysarg_t) size, 0);
+}
+
+errno_t dmamem_unmap_anonymous(void *virt)
+{
+	return (errno_t) __SYSCALL3(SYS_DMAMEM_UNMAP, (sysarg_t) virt, 0,
 	    DMAMEM_FLAGS_ANONYMOUS);
 }
@@ -173,5 +173,5 @@
  *
  */
-static int iospace_enable(task_id_t id, void *ioaddr, size_t size)
+static errno_t iospace_enable(task_id_t id, void *ioaddr, size_t size)
 {
 	const ddi_ioarg_t arg = {
@@ -181,5 +181,5 @@
 	};
 	
-	return (int) __SYSCALL1(SYS_IOSPACE_ENABLE, (sysarg_t) &arg);
+	return (errno_t) __SYSCALL1(SYS_IOSPACE_ENABLE, (sysarg_t) &arg);
 }
 
@@ -197,5 +197,5 @@
  *
  */
-static int iospace_disable(task_id_t id, void *ioaddr, size_t size)
+static errno_t iospace_disable(task_id_t id, void *ioaddr, size_t size)
 {
 	const ddi_ioarg_t arg = {
@@ -205,5 +205,5 @@
 	};
 	
-	return (int) __SYSCALL1(SYS_IOSPACE_DISABLE, (sysarg_t) &arg);
+	return (errno_t) __SYSCALL1(SYS_IOSPACE_DISABLE, (sysarg_t) &arg);
 }
 
@@ -213,5 +213,5 @@
  * @param virt  Virtual address for application's PIO operations. 
  */
-int pio_enable_range(addr_range_t *range, void **virt)
+errno_t pio_enable_range(addr_range_t *range, void **virt)
 {
 	return pio_enable(RNGABSPTR(*range), RNGSZ(*range), virt);
@@ -229,5 +229,5 @@
  *
  */
-int pio_enable_resource(pio_window_t *win, hw_resource_t *res, void **virt)
+errno_t pio_enable_resource(pio_window_t *win, hw_resource_t *res, void **virt)
 {
 	uintptr_t addr;
@@ -271,5 +271,5 @@
  *
  */
-int pio_enable(void *pio_addr, size_t size, void **virt)
+errno_t pio_enable(void *pio_addr, size_t size, void **virt)
 {
 #ifdef IO_SPACE_BOUNDARY
@@ -291,5 +291,5 @@
 	
 	void *virt_page = AS_AREA_ANY;
-	int rc = physmem_map(phys_frame, pages,
+	errno_t rc = physmem_map(phys_frame, pages,
 	    AS_AREA_READ | AS_AREA_WRITE, &virt_page);
 	if (rc != EOK)
@@ -309,5 +309,5 @@
  *
  */
-int pio_disable(void *virt, size_t size)
+errno_t pio_disable(void *virt, size_t size)
 {
 #ifdef IO_SPACE_BOUNDARY
Index: uspace/lib/c/generic/device/clock_dev.c
===================================================================
--- uspace/lib/c/generic/device/clock_dev.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/device/clock_dev.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -46,9 +46,9 @@
  * @return         EOK on success or an error code
  */
-int
+errno_t
 clock_dev_time_get(async_sess_t *sess, struct tm *t)
 {
 	aid_t req;
-	int ret;
+	errno_t ret;
 
 	async_exch_t *exch = async_exchange_begin(sess);
@@ -60,5 +60,5 @@
 	async_exchange_end(exch);
 
-	int rc;
+	errno_t rc;
 	if (ret != EOK) {
 		async_forget(req);
@@ -67,5 +67,5 @@
 
 	async_wait_for(req, &rc);
-	return (int)rc;
+	return (errno_t)rc;
 }
 
@@ -77,9 +77,9 @@
  * @return       EOK on success or an error code
  */
-int
+errno_t
 clock_dev_time_set(async_sess_t *sess, struct tm *t)
 {
 	aid_t req;
-	int ret;
+	errno_t ret;
 
 	async_exch_t *exch = async_exchange_begin(sess);
@@ -91,5 +91,5 @@
 	async_exchange_end(exch);
 
-	int rc;
+	errno_t rc;
 	if (ret != EOK) {
 		async_forget(req);
@@ -98,5 +98,5 @@
 
 	async_wait_for(req, &rc);
-	return (int)rc;
+	return (errno_t)rc;
 }
 
Index: uspace/lib/c/generic/device/hw_res.c
===================================================================
--- uspace/lib/c/generic/device/hw_res.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/device/hw_res.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -38,5 +38,5 @@
 #include <stdlib.h>
 
-int hw_res_get_resource_list(async_sess_t *sess,
+errno_t hw_res_get_resource_list(async_sess_t *sess,
     hw_resource_list_t *hw_resources)
 {
@@ -45,5 +45,5 @@
 	async_exch_t *exch = async_exchange_begin(sess);
 	
-	int rc = async_req_1_1(exch, DEV_IFACE_ID(HW_RES_DEV_IFACE),
+	errno_t rc = async_req_1_1(exch, DEV_IFACE_ID(HW_RES_DEV_IFACE),
 	    HW_RES_GET_RESOURCE_LIST, &count);
 	
@@ -75,9 +75,9 @@
 }
 
-int hw_res_enable_interrupt(async_sess_t *sess, int irq)
+errno_t hw_res_enable_interrupt(async_sess_t *sess, int irq)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
 	
-	int rc = async_req_2_0(exch, DEV_IFACE_ID(HW_RES_DEV_IFACE),
+	errno_t rc = async_req_2_0(exch, DEV_IFACE_ID(HW_RES_DEV_IFACE),
 	    HW_RES_ENABLE_INTERRUPT, irq);
 	async_exchange_end(exch);
@@ -86,9 +86,9 @@
 }
 
-int hw_res_disable_interrupt(async_sess_t *sess, int irq)
+errno_t hw_res_disable_interrupt(async_sess_t *sess, int irq)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
 	
-	int rc = async_req_2_0(exch, DEV_IFACE_ID(HW_RES_DEV_IFACE),
+	errno_t rc = async_req_2_0(exch, DEV_IFACE_ID(HW_RES_DEV_IFACE),
 	    HW_RES_DISABLE_INTERRUPT, irq);
 	async_exchange_end(exch);
@@ -97,9 +97,9 @@
 }
 
-int hw_res_clear_interrupt(async_sess_t *sess, int irq)
+errno_t hw_res_clear_interrupt(async_sess_t *sess, int irq)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
 	
-	int rc = async_req_2_0(exch, DEV_IFACE_ID(HW_RES_DEV_IFACE),
+	errno_t rc = async_req_2_0(exch, DEV_IFACE_ID(HW_RES_DEV_IFACE),
 	    HW_RES_CLEAR_INTERRUPT, irq);
 	async_exchange_end(exch);
@@ -122,5 +122,5 @@
  *
  */
-int hw_res_dma_channel_setup(async_sess_t *sess,
+errno_t hw_res_dma_channel_setup(async_sess_t *sess,
     unsigned channel, uint32_t pa, uint32_t size, uint8_t mode)
 {
@@ -128,5 +128,5 @@
 	
 	const uint32_t packed = (channel & 0xffff) | (mode << 16);
-	const int ret = async_req_4_0(exch, DEV_IFACE_ID(HW_RES_DEV_IFACE),
+	const errno_t ret = async_req_4_0(exch, DEV_IFACE_ID(HW_RES_DEV_IFACE),
 	    HW_RES_DMA_CHANNEL_SETUP, packed, pa, size);
 	
@@ -145,10 +145,10 @@
  *
  */
-int hw_res_dma_channel_remain(async_sess_t *sess, unsigned channel, size_t *rem)
+errno_t hw_res_dma_channel_remain(async_sess_t *sess, unsigned channel, size_t *rem)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
 	
 	sysarg_t remain;
-	const int ret = async_req_2_1(exch, DEV_IFACE_ID(HW_RES_DEV_IFACE),
+	const errno_t ret = async_req_2_1(exch, DEV_IFACE_ID(HW_RES_DEV_IFACE),
 	    HW_RES_DMA_CHANNEL_REMAIN, channel, &remain);
 	
Index: uspace/lib/c/generic/device/hw_res_parsed.c
===================================================================
--- uspace/lib/c/generic/device/hw_res_parsed.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/device/hw_res_parsed.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -194,5 +194,5 @@
  *
  */
-int hw_res_list_parse(const pio_window_t *win,
+errno_t hw_res_list_parse(const pio_window_t *win,
     const hw_resource_list_t *res, hw_res_list_parsed_t *out, int flags)
 {
@@ -253,9 +253,9 @@
  *
  */
-int hw_res_get_list_parsed(async_sess_t *sess,
+errno_t hw_res_get_list_parsed(async_sess_t *sess,
     hw_res_list_parsed_t *hw_res_parsed, int flags)
 {
 	pio_window_t pio_window;
-	int rc;
+	errno_t rc;
 
 	if (!hw_res_parsed)
Index: uspace/lib/c/generic/device/led_dev.c
===================================================================
--- uspace/lib/c/generic/device/led_dev.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/device/led_dev.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -39,5 +39,5 @@
 #include <device/led_dev.h>
 
-int led_dev_color_set(async_sess_t *sess, pixel_t pixel)
+errno_t led_dev_color_set(async_sess_t *sess, pixel_t pixel)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
@@ -48,8 +48,8 @@
 	async_exchange_end(exch);
 	
-	int rc;
+	errno_t rc;
 	async_wait_for(req, &rc);
 	
-	return (int) rc;
+	return (errno_t) rc;
 }
 
Index: uspace/lib/c/generic/device/pio_window.c
===================================================================
--- uspace/lib/c/generic/device/pio_window.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/device/pio_window.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -37,7 +37,7 @@
 #include <async.h>
 
-int pio_window_get(async_sess_t *sess, pio_window_t *pio_win)
+errno_t pio_window_get(async_sess_t *sess, pio_window_t *pio_win)
 {
-	int rc;
+	errno_t rc;
 
 	async_exch_t *exch = async_exchange_begin(sess);
Index: uspace/lib/c/generic/devman.c
===================================================================
--- uspace/lib/c/generic/devman.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/devman.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -176,5 +176,5 @@
 
 /** Register running driver with device manager. */
-int devman_driver_register(const char *name)
+errno_t devman_driver_register(const char *name)
 {
 	async_exch_t *exch = devman_exchange_begin_blocking(INTERFACE_DDF_DRIVER);
@@ -182,5 +182,5 @@
 	ipc_call_t answer;
 	aid_t req = async_send_2(exch, DEVMAN_DRIVER_REGISTER, 0, 0, &answer);
-	int retval = async_data_write_start(exch, name, str_size(name));
+	errno_t retval = async_data_write_start(exch, name, str_size(name));
 	
 	devman_exchange_end(exch);
@@ -213,5 +213,5 @@
  *
  */
-int devman_add_function(const char *name, fun_type_t ftype,
+errno_t devman_add_function(const char *name, fun_type_t ftype,
     match_id_list_t *match_ids, devman_handle_t devh, devman_handle_t *funh)
 {
@@ -222,5 +222,5 @@
 	aid_t req = async_send_3(exch, DEVMAN_ADD_FUNCTION, (sysarg_t) ftype,
 	    devh, match_count, &answer);
-	int retval = async_data_write_start(exch, name, str_size(name));
+	errno_t retval = async_data_write_start(exch, name, str_size(name));
 	if (retval != EOK) {
 		devman_exchange_end(exch);
@@ -264,5 +264,5 @@
 }
 
-int devman_add_device_to_category(devman_handle_t devman_handle,
+errno_t devman_add_device_to_category(devman_handle_t devman_handle,
     const char *cat_name)
 {
@@ -272,5 +272,5 @@
 	aid_t req = async_send_1(exch, DEVMAN_ADD_DEVICE_TO_CATEGORY,
 	    devman_handle, &answer);
-	int retval = async_data_write_start(exch, cat_name,
+	errno_t retval = async_data_write_start(exch, cat_name,
 	    str_size(cat_name));
 	
@@ -307,8 +307,8 @@
  * @return EOK on success or an error code.
  */
-int devman_remove_function(devman_handle_t funh)
+errno_t devman_remove_function(devman_handle_t funh)
 {
 	async_exch_t *exch;
-	int retval;
+	errno_t retval;
 	
 	exch = devman_exchange_begin_blocking(INTERFACE_DDF_DRIVER);
@@ -319,5 +319,5 @@
 }
 
-int devman_drv_fun_online(devman_handle_t funh)
+errno_t devman_drv_fun_online(devman_handle_t funh)
 {
 	async_exch_t *exch = devman_exchange_begin(INTERFACE_DDF_DRIVER);
@@ -325,11 +325,11 @@
 		return ENOMEM;
 	
-	int retval = async_req_1_0(exch, DEVMAN_DRV_FUN_ONLINE, funh);
-	
-	devman_exchange_end(exch);
-	return retval;
-}
-
-int devman_drv_fun_offline(devman_handle_t funh)
+	errno_t retval = async_req_1_0(exch, DEVMAN_DRV_FUN_ONLINE, funh);
+	
+	devman_exchange_end(exch);
+	return retval;
+}
+
+errno_t devman_drv_fun_offline(devman_handle_t funh)
 {
 	async_exch_t *exch = devman_exchange_begin(INTERFACE_DDF_DRIVER);
@@ -337,5 +337,5 @@
 		return ENOMEM;
 	
-	int retval = async_req_1_0(exch, DEVMAN_DRV_FUN_OFFLINE, funh);
+	errno_t retval = async_req_1_0(exch, DEVMAN_DRV_FUN_OFFLINE, funh);
 	
 	devman_exchange_end(exch);
@@ -358,5 +358,5 @@
 }
 
-int devman_fun_get_handle(const char *pathname, devman_handle_t *handle,
+errno_t devman_fun_get_handle(const char *pathname, devman_handle_t *handle,
     unsigned int flags)
 {
@@ -374,5 +374,5 @@
 	aid_t req = async_send_2(exch, DEVMAN_DEVICE_GET_HANDLE, flags, 0,
 	    &answer);
-	int retval = async_data_write_start(exch, pathname,
+	errno_t retval = async_data_write_start(exch, pathname,
 	    str_size(pathname));
 	
@@ -399,5 +399,5 @@
 }
 
-static int devman_get_str_internal(sysarg_t method, sysarg_t arg1,
+static errno_t devman_get_str_internal(sysarg_t method, sysarg_t arg1,
     sysarg_t arg2, sysarg_t *r1, char *buf, size_t buf_size)
 {
@@ -405,5 +405,5 @@
 	ipc_call_t dreply;
 	size_t act_size;
-	int dretval;
+	errno_t dretval;
 	
 	exch = devman_exchange_begin_blocking(INTERFACE_DDF_CLIENT);
@@ -421,5 +421,5 @@
 	}
 	
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	
@@ -437,5 +437,5 @@
 }
 
-int devman_fun_get_path(devman_handle_t handle, char *buf, size_t buf_size)
+errno_t devman_fun_get_path(devman_handle_t handle, char *buf, size_t buf_size)
 {
 	return devman_get_str_internal(DEVMAN_FUN_GET_PATH, handle, 0, NULL,
@@ -443,8 +443,8 @@
 }
 
-int devman_fun_get_match_id(devman_handle_t handle, size_t index, char *buf,
+errno_t devman_fun_get_match_id(devman_handle_t handle, size_t index, char *buf,
     size_t buf_size, unsigned int *rscore)
 {
-	int rc;
+	errno_t rc;
 	sysarg_t score = 0;
 
@@ -458,5 +458,5 @@
 }
 
-int devman_fun_get_name(devman_handle_t handle, char *buf, size_t buf_size)
+errno_t devman_fun_get_name(devman_handle_t handle, char *buf, size_t buf_size)
 {
 	return devman_get_str_internal(DEVMAN_FUN_GET_NAME, handle, 0, NULL,
@@ -464,5 +464,5 @@
 }
 
-int devman_fun_get_driver_name(devman_handle_t handle, char *buf, size_t buf_size)
+errno_t devman_fun_get_driver_name(devman_handle_t handle, char *buf, size_t buf_size)
 {
 	return devman_get_str_internal(DEVMAN_FUN_GET_DRIVER_NAME, handle, 0,
@@ -470,5 +470,5 @@
 }
 
-int devman_fun_online(devman_handle_t funh)
+errno_t devman_fun_online(devman_handle_t funh)
 {
 	async_exch_t *exch = devman_exchange_begin(INTERFACE_DDF_CLIENT);
@@ -476,11 +476,11 @@
 		return ENOMEM;
 	
-	int retval = async_req_1_0(exch, DEVMAN_FUN_ONLINE, funh);
-	
-	devman_exchange_end(exch);
-	return retval;
-}
-
-int devman_fun_offline(devman_handle_t funh)
+	errno_t retval = async_req_1_0(exch, DEVMAN_FUN_ONLINE, funh);
+	
+	devman_exchange_end(exch);
+	return retval;
+}
+
+errno_t devman_fun_offline(devman_handle_t funh)
 {
 	async_exch_t *exch = devman_exchange_begin(INTERFACE_DDF_CLIENT);
@@ -488,11 +488,11 @@
 		return ENOMEM;
 	
-	int retval = async_req_1_0(exch, DEVMAN_FUN_OFFLINE, funh);
-	
-	devman_exchange_end(exch);
-	return retval;
-}
-
-static int devman_get_handles_once(sysarg_t method, sysarg_t arg1,
+	errno_t retval = async_req_1_0(exch, DEVMAN_FUN_OFFLINE, funh);
+	
+	devman_exchange_end(exch);
+	return retval;
+}
+
+static errno_t devman_get_handles_once(sysarg_t method, sysarg_t arg1,
     devman_handle_t *handle_buf, size_t buf_size, size_t *act_size)
 {
@@ -501,5 +501,5 @@
 	ipc_call_t answer;
 	aid_t req = async_send_1(exch, method, arg1, &answer);
-	int rc = async_data_read_start(exch, handle_buf, buf_size);
+	errno_t rc = async_data_read_start(exch, handle_buf, buf_size);
 	
 	devman_exchange_end(exch);
@@ -510,5 +510,5 @@
 	}
 	
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	
@@ -531,5 +531,5 @@
  * @return 		EOK on success or an error code
  */
-static int devman_get_handles_internal(sysarg_t method, sysarg_t arg1,
+static errno_t devman_get_handles_internal(sysarg_t method, sysarg_t arg1,
     devman_handle_t **data, size_t *count)
 {
@@ -537,5 +537,5 @@
 	size_t act_size;
 	size_t alloc_size;
-	int rc;
+	errno_t rc;
 
 	*data = NULL;
@@ -574,5 +574,5 @@
 }
 
-int devman_fun_get_child(devman_handle_t funh, devman_handle_t *devh)
+errno_t devman_fun_get_child(devman_handle_t funh, devman_handle_t *devh)
 {
 	async_exch_t *exch = devman_exchange_begin(INTERFACE_DDF_CLIENT);
@@ -580,5 +580,5 @@
 		return ENOMEM;
 	
-	int retval = async_req_1_1(exch, DEVMAN_FUN_GET_CHILD,
+	errno_t retval = async_req_1_1(exch, DEVMAN_FUN_GET_CHILD,
 	    funh, devh);
 	
@@ -587,5 +587,5 @@
 }
 
-int devman_dev_get_functions(devman_handle_t devh, devman_handle_t **funcs,
+errno_t devman_dev_get_functions(devman_handle_t devh, devman_handle_t **funcs,
     size_t *count)
 {
@@ -594,5 +594,5 @@
 }
 
-int devman_dev_get_parent(devman_handle_t devh, devman_handle_t *funh)
+errno_t devman_dev_get_parent(devman_handle_t devh, devman_handle_t *funh)
 {
 	async_exch_t *exch = devman_exchange_begin(INTERFACE_DDF_CLIENT);
@@ -600,5 +600,5 @@
 		return ENOMEM;
 	
-	int retval = async_req_1_1(exch, DEVMAN_DEV_GET_PARENT,
+	errno_t retval = async_req_1_1(exch, DEVMAN_DEV_GET_PARENT,
 	    devh, funh);
 	
@@ -607,5 +607,5 @@
 }
 
-int devman_fun_sid_to_handle(service_id_t sid, devman_handle_t *handle)
+errno_t devman_fun_sid_to_handle(service_id_t sid, devman_handle_t *handle)
 {
 	async_exch_t *exch = devman_exchange_begin(INTERFACE_DDF_CLIENT);
@@ -613,5 +613,5 @@
 		return ENOMEM;
 	
-	int retval = async_req_1_1(exch, DEVMAN_FUN_SID_TO_HANDLE,
+	errno_t retval = async_req_1_1(exch, DEVMAN_FUN_SID_TO_HANDLE,
 	    sid, handle);
 	
@@ -620,5 +620,5 @@
 }
 
-int devman_get_drivers(devman_handle_t **drvs,
+errno_t devman_get_drivers(devman_handle_t **drvs,
     size_t *count)
 {
@@ -626,5 +626,5 @@
 }
 
-int devman_driver_get_devices(devman_handle_t drvh, devman_handle_t **devs,
+errno_t devman_driver_get_devices(devman_handle_t drvh, devman_handle_t **devs,
     size_t *count)
 {
@@ -633,5 +633,5 @@
 }
 
-int devman_driver_get_handle(const char *drvname, devman_handle_t *handle)
+errno_t devman_driver_get_handle(const char *drvname, devman_handle_t *handle)
 {
 	async_exch_t *exch;
@@ -643,5 +643,5 @@
 	ipc_call_t answer;
 	aid_t req = async_send_0(exch, DEVMAN_DRIVER_GET_HANDLE, &answer);
-	int retval = async_data_write_start(exch, drvname,
+	errno_t retval = async_data_write_start(exch, drvname,
 	    str_size(drvname));
 	
@@ -668,8 +668,8 @@
 }
 
-int devman_driver_get_match_id(devman_handle_t handle, size_t index, char *buf,
+errno_t devman_driver_get_match_id(devman_handle_t handle, size_t index, char *buf,
     size_t buf_size, unsigned int *rscore)
 {
-	int rc;
+	errno_t rc;
 	sysarg_t score = 0;
 
@@ -683,5 +683,5 @@
 }
 
-int devman_driver_get_name(devman_handle_t handle, char *buf, size_t buf_size)
+errno_t devman_driver_get_name(devman_handle_t handle, char *buf, size_t buf_size)
 {
 	return devman_get_str_internal(DEVMAN_DRIVER_GET_NAME, handle, 0, NULL,
@@ -689,5 +689,5 @@
 }
 
-int devman_driver_get_state(devman_handle_t drvh, driver_state_t *rstate)
+errno_t devman_driver_get_state(devman_handle_t drvh, driver_state_t *rstate)
 {
 	sysarg_t state;
@@ -696,5 +696,5 @@
 		return ENOMEM;
 	
-	int rc = async_req_1_1(exch, DEVMAN_DRIVER_GET_STATE, drvh,
+	errno_t rc = async_req_1_1(exch, DEVMAN_DRIVER_GET_STATE, drvh,
 	    &state);
 	
@@ -707,5 +707,5 @@
 }
 
-int devman_driver_load(devman_handle_t drvh)
+errno_t devman_driver_load(devman_handle_t drvh)
 {
 	async_exch_t *exch = devman_exchange_begin(INTERFACE_DDF_CLIENT);
@@ -713,5 +713,5 @@
 		return ENOMEM;
 	
-	int rc = async_req_1_0(exch, DEVMAN_DRIVER_LOAD, drvh);
+	errno_t rc = async_req_1_0(exch, DEVMAN_DRIVER_LOAD, drvh);
 	
 	devman_exchange_end(exch);
@@ -719,5 +719,5 @@
 }
 
-int devman_driver_unload(devman_handle_t drvh)
+errno_t devman_driver_unload(devman_handle_t drvh)
 {
 	async_exch_t *exch = devman_exchange_begin(INTERFACE_DDF_CLIENT);
@@ -725,5 +725,5 @@
 		return ENOMEM;
 	
-	int rc = async_req_1_0(exch, DEVMAN_DRIVER_UNLOAD, drvh);
+	errno_t rc = async_req_1_0(exch, DEVMAN_DRIVER_UNLOAD, drvh);
 	
 	devman_exchange_end(exch);
Index: uspace/lib/c/generic/dhcp.c
===================================================================
--- uspace/lib/c/generic/dhcp.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/dhcp.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -44,8 +44,8 @@
 static async_sess_t *dhcp_sess = NULL;
 
-int dhcp_init(void)
+errno_t dhcp_init(void)
 {
 	service_id_t dhcp_svc;
-	int rc;
+	errno_t rc;
 
 	assert(dhcp_sess == NULL);
@@ -64,9 +64,9 @@
 }
 
-int dhcp_link_add(sysarg_t link_id)
+errno_t dhcp_link_add(sysarg_t link_id)
 {
 	async_exch_t *exch = async_exchange_begin(dhcp_sess);
 
-	int rc = async_req_1_0(exch, DHCP_LINK_ADD, link_id);
+	errno_t rc = async_req_1_0(exch, DHCP_LINK_ADD, link_id);
 	async_exchange_end(exch);
 
@@ -74,9 +74,9 @@
 }
 
-int dhcp_link_remove(sysarg_t link_id)
+errno_t dhcp_link_remove(sysarg_t link_id)
 {
 	async_exch_t *exch = async_exchange_begin(dhcp_sess);
 
-	int rc = async_req_1_0(exch, DHCP_LINK_REMOVE, link_id);
+	errno_t rc = async_req_1_0(exch, DHCP_LINK_REMOVE, link_id);
 	async_exchange_end(exch);
 
@@ -84,9 +84,9 @@
 }
 
-int dhcp_discover(sysarg_t link_id)
+errno_t dhcp_discover(sysarg_t link_id)
 {
 	async_exch_t *exch = async_exchange_begin(dhcp_sess);
 
-	int rc = async_req_1_0(exch, DHCP_DISCOVER, link_id);
+	errno_t rc = async_req_1_0(exch, DHCP_DISCOVER, link_id);
 	async_exchange_end(exch);
 
Index: uspace/lib/c/generic/dirent.c
===================================================================
--- uspace/lib/c/generic/dirent.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/dirent.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -55,5 +55,5 @@
 	
 	int fd;
-	int rc = vfs_lookup(dirname, WALK_DIRECTORY, &fd);
+	errno_t rc = vfs_lookup(dirname, WALK_DIRECTORY, &fd);
 	if (rc != EOK) {
 		free(dirp);
@@ -83,5 +83,5 @@
 struct dirent *readdir(DIR *dirp)
 {
-	int rc;
+	errno_t rc;
 	ssize_t len = 0;
 	
@@ -114,5 +114,5 @@
 int closedir(DIR *dirp)
 {
-	int rc = vfs_put(dirp->fd);
+	errno_t rc = vfs_put(dirp->fd);
 	free(dirp);
 
Index: uspace/lib/c/generic/dnsr.c
===================================================================
--- uspace/lib/c/generic/dnsr.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/dnsr.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -67,5 +67,5 @@
 }
 
-int dnsr_name2host(const char *name, dnsr_hostinfo_t **rinfo, ip_ver_t ver)
+errno_t dnsr_name2host(const char *name, dnsr_hostinfo_t **rinfo, ip_ver_t ver)
 {
 	async_exch_t *exch = dnsr_exchange_begin();
@@ -75,5 +75,5 @@
 	    &answer);
 	
-	int rc = async_data_write_start(exch, name, str_size(name));
+	errno_t rc = async_data_write_start(exch, name, str_size(name));
 	if (rc != EOK) {
 		async_exchange_end(exch);
@@ -90,5 +90,5 @@
 	    sizeof(inet_addr_t), &answer_addr);
 	
-	int retval_addr;
+	errno_t retval_addr;
 	async_wait_for(req_addr, &retval_addr);
 	
@@ -107,5 +107,5 @@
 	dnsr_exchange_end(exch);
 	
-	int retval_cname;
+	errno_t retval_cname;
 	async_wait_for(req_cname, &retval_cname);
 	
@@ -116,5 +116,5 @@
 	}
 	
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	
@@ -150,5 +150,5 @@
 }
 
-int dnsr_get_srvaddr(inet_addr_t *srvaddr)
+errno_t dnsr_get_srvaddr(inet_addr_t *srvaddr)
 {
 	async_exch_t *exch = dnsr_exchange_begin();
@@ -156,5 +156,5 @@
 	ipc_call_t answer;
 	aid_t req = async_send_0(exch, DNSR_GET_SRVADDR, &answer);
-	int rc = async_data_read_start(exch, srvaddr, sizeof(inet_addr_t));
+	errno_t rc = async_data_read_start(exch, srvaddr, sizeof(inet_addr_t));
 	
 	loc_exchange_end(exch);
@@ -165,5 +165,5 @@
 	}
 	
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	
@@ -171,5 +171,5 @@
 }
 
-int dnsr_set_srvaddr(inet_addr_t *srvaddr)
+errno_t dnsr_set_srvaddr(inet_addr_t *srvaddr)
 {
 	async_exch_t *exch = dnsr_exchange_begin();
@@ -177,5 +177,5 @@
 	ipc_call_t answer;
 	aid_t req = async_send_0(exch, DNSR_SET_SRVADDR, &answer);
-	int rc = async_data_write_start(exch, srvaddr, sizeof(inet_addr_t));
+	errno_t rc = async_data_write_start(exch, srvaddr, sizeof(inet_addr_t));
 	
 	loc_exchange_end(exch);
@@ -186,5 +186,5 @@
 	}
 	
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	
Index: uspace/lib/c/generic/elf/elf_load.c
===================================================================
--- uspace/lib/c/generic/elf/elf_load.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/elf/elf_load.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -79,5 +79,5 @@
 	DPRINTF( "- prog dynamic: %p\n", info->finfo.dynamic);
 
-	int rc2 = rtld_prog_process(&info->finfo, &env);
+	errno_t rc2 = rtld_prog_process(&info->finfo, &env);
 	switch (rc2) {
 	case EOK:
Index: uspace/lib/c/generic/elf/elf_mod.c
===================================================================
--- uspace/lib/c/generic/elf/elf_mod.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/elf/elf_mod.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -99,5 +99,5 @@
 
 	int ofile;
-	int rc = vfs_clone(file, -1, true, &ofile);
+	errno_t rc = vfs_clone(file, -1, true, &ofile);
 	if (rc == EOK) {
 		rc = vfs_open(ofile, MODE_READ);
@@ -121,5 +121,5 @@
 {
 	int file;
-	int rc = vfs_lookup(path, 0, &file);
+	errno_t rc = vfs_lookup(path, 0, &file);
 	if (rc == EOK) {
 		int ret = elf_load_file(file, so_bias, flags, info);
@@ -148,5 +148,5 @@
 	size_t nr;
 	int i, ret;
-	int rc;
+	errno_t rc;
 
 	rc = vfs_read(elf->fd, &pos, header, sizeof(elf_header_t), &nr);
@@ -341,5 +341,5 @@
 	size_t mem_sz;
 	aoff64_t pos;
-	int rc;
+	errno_t rc;
 	size_t nr;
 
@@ -414,5 +414,5 @@
 //	printf("set area flags to %d\n", flags);
 	rc = as_area_change_flags(seg_ptr, flags);
-	if (rc != 0) {
+	if (rc != EOK) {
 		DPRINTF("Failed to set memory area flags.\n");
 		return EE_MEMORY;
Index: uspace/lib/c/generic/event.c
===================================================================
--- uspace/lib/c/generic/event.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/event.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -48,7 +48,7 @@
  *
  */
-int ipc_event_subscribe(event_type_t evno, sysarg_t imethod)
+errno_t ipc_event_subscribe(event_type_t evno, sysarg_t imethod)
 {
-	return (int) __SYSCALL2(SYS_IPC_EVENT_SUBSCRIBE, (sysarg_t) evno,
+	return (errno_t) __SYSCALL2(SYS_IPC_EVENT_SUBSCRIBE, (sysarg_t) evno,
 	    (sysarg_t) imethod);
 }
@@ -62,7 +62,7 @@
  *
  */
-int ipc_event_task_subscribe(event_task_type_t evno, sysarg_t imethod)
+errno_t ipc_event_task_subscribe(event_task_type_t evno, sysarg_t imethod)
 {
-	return (int) __SYSCALL2(SYS_IPC_EVENT_SUBSCRIBE, (sysarg_t) evno,
+	return (errno_t) __SYSCALL2(SYS_IPC_EVENT_SUBSCRIBE, (sysarg_t) evno,
 	    (sysarg_t) imethod);
 }
@@ -75,7 +75,7 @@
  *
  */
-int ipc_event_unsubscribe(event_type_t evno)
+errno_t ipc_event_unsubscribe(event_type_t evno)
 {
-	return (int) __SYSCALL1(SYS_IPC_EVENT_UNSUBSCRIBE, (sysarg_t) evno);
+	return (errno_t) __SYSCALL1(SYS_IPC_EVENT_UNSUBSCRIBE, (sysarg_t) evno);
 }
 
@@ -87,7 +87,7 @@
  *
  */
-int ipc_event_task_unsubscribe(event_task_type_t evno)
+errno_t ipc_event_task_unsubscribe(event_task_type_t evno)
 {
-	return (int) __SYSCALL1(SYS_IPC_EVENT_UNSUBSCRIBE, (sysarg_t) evno);
+	return (errno_t) __SYSCALL1(SYS_IPC_EVENT_UNSUBSCRIBE, (sysarg_t) evno);
 }
 
@@ -99,7 +99,7 @@
  *
  */
-int ipc_event_unmask(event_type_t evno)
+errno_t ipc_event_unmask(event_type_t evno)
 {
-	return (int) __SYSCALL1(SYS_IPC_EVENT_UNMASK, (sysarg_t) evno);
+	return (errno_t) __SYSCALL1(SYS_IPC_EVENT_UNMASK, (sysarg_t) evno);
 }
 
@@ -111,7 +111,7 @@
  *
  */
-int ipc_event_task_unmask(event_task_type_t evno)
+errno_t ipc_event_task_unmask(event_task_type_t evno)
 {
-	return (int) __SYSCALL1(SYS_IPC_EVENT_UNMASK, (sysarg_t) evno);
+	return (errno_t) __SYSCALL1(SYS_IPC_EVENT_UNMASK, (sysarg_t) evno);
 }
 
Index: uspace/lib/c/generic/fibril.c
===================================================================
--- uspace/lib/c/generic/fibril.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/fibril.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -268,5 +268,5 @@
  *
  */
-fid_t fibril_create_generic(int (*func)(void *), void *arg, size_t stksz)
+fid_t fibril_create_generic(errno_t (*func)(void *), void *arg, size_t stksz)
 {
 	fibril_t *fibril;
Index: uspace/lib/c/generic/fibril_synch.c
===================================================================
--- uspace/lib/c/generic/fibril_synch.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/fibril_synch.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -352,5 +352,5 @@
 }
 
-int
+errno_t
 fibril_condvar_wait_timeout(fibril_condvar_t *fcv, fibril_mutex_t *fm,
     suseconds_t timeout)
@@ -392,5 +392,5 @@
 void fibril_condvar_wait(fibril_condvar_t *fcv, fibril_mutex_t *fm)
 {
-	int rc;
+	errno_t rc;
 
 	rc = fibril_condvar_wait_timeout(fcv, fm, 0);
@@ -434,8 +434,8 @@
  * @param arg	Timer
  */
-static int fibril_timer_func(void *arg)
+static errno_t fibril_timer_func(void *arg)
 {
 	fibril_timer_t *timer = (fibril_timer_t *) arg;
-	int rc;
+	errno_t rc;
 
 	fibril_mutex_lock(timer->lockp);
Index: uspace/lib/c/generic/imath.c
===================================================================
--- uspace/lib/c/generic/imath.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/imath.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -48,5 +48,5 @@
  * @return EOK on success, ERANGE if result does not fit into result type
  */
-int ipow10_u64(unsigned exp, uint64_t *res)
+errno_t ipow10_u64(unsigned exp, uint64_t *res)
 {
 	unsigned a;
Index: uspace/lib/c/generic/inet.c
===================================================================
--- uspace/lib/c/generic/inet.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/inet.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -42,5 +42,5 @@
 static uint8_t inet_protocol = 0;
 
-static int inet_callback_create(void)
+static errno_t inet_callback_create(void)
 {
 	async_exch_t *exch = async_exchange_begin(inet_sess);
@@ -50,5 +50,5 @@
 	
 	port_id_t port;
-	int rc = async_create_callback_port(exch, INTERFACE_INET_CB, 0, 0,
+	errno_t rc = async_create_callback_port(exch, INTERFACE_INET_CB, 0, 0,
 	    inet_cb_conn, NULL, &port);
 	
@@ -58,5 +58,5 @@
 		return rc;
 	
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	
@@ -64,8 +64,8 @@
 }
 
-static int inet_set_proto(uint8_t protocol)
-{
-	async_exch_t *exch = async_exchange_begin(inet_sess);
-	int rc = async_req_1_0(exch, INET_SET_PROTO, protocol);
+static errno_t inet_set_proto(uint8_t protocol)
+{
+	async_exch_t *exch = async_exchange_begin(inet_sess);
+	errno_t rc = async_req_1_0(exch, INET_SET_PROTO, protocol);
 	async_exchange_end(exch);
 	
@@ -73,8 +73,8 @@
 }
 
-int inet_init(uint8_t protocol, inet_ev_ops_t *ev_ops)
+errno_t inet_init(uint8_t protocol, inet_ev_ops_t *ev_ops)
 {
 	service_id_t inet_svc;
-	int rc;
+	errno_t rc;
 
 	assert(inet_sess == NULL);
@@ -110,5 +110,5 @@
 }
 
-int inet_send(inet_dgram_t *dgram, uint8_t ttl, inet_df_t df)
+errno_t inet_send(inet_dgram_t *dgram, uint8_t ttl, inet_df_t df)
 {
 	async_exch_t *exch = async_exchange_begin(inet_sess);
@@ -118,5 +118,5 @@
 	    ttl, df, &answer);
 	
-	int rc = async_data_write_start(exch, &dgram->src, sizeof(inet_addr_t));
+	errno_t rc = async_data_write_start(exch, &dgram->src, sizeof(inet_addr_t));
 	if (rc != EOK) {
 		async_exchange_end(exch);
@@ -141,5 +141,5 @@
 	}
 	
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	
@@ -147,5 +147,5 @@
 }
 
-int inet_get_srcaddr(inet_addr_t *remote, uint8_t tos, inet_addr_t *local)
+errno_t inet_get_srcaddr(inet_addr_t *remote, uint8_t tos, inet_addr_t *local)
 {
 	async_exch_t *exch = async_exchange_begin(inet_sess);
@@ -154,5 +154,5 @@
 	aid_t req = async_send_1(exch, INET_GET_SRCADDR, tos, &answer);
 	
-	int rc = async_data_write_start(exch, remote, sizeof(inet_addr_t));
+	errno_t rc = async_data_write_start(exch, remote, sizeof(inet_addr_t));
 	if (rc != EOK) {
 		async_exchange_end(exch);
@@ -170,5 +170,5 @@
 	}
 	
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	
@@ -197,5 +197,5 @@
 	}
 	
-	int rc = async_data_write_finalize(callid, &dgram.src, size);
+	errno_t rc = async_data_write_finalize(callid, &dgram.src, size);
 	if (rc != EOK) {
 		async_answer_0(callid, rc);
Index: uspace/lib/c/generic/inet/addr.c
===================================================================
--- uspace/lib/c/generic/inet/addr.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/inet/addr.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -290,5 +290,5 @@
 }
 
-static int inet_addr_parse_v4(const char *str, inet_addr_t *raddr,
+static errno_t inet_addr_parse_v4(const char *str, inet_addr_t *raddr,
     int *prefix, char **endptr)
 {
@@ -299,5 +299,5 @@
 
 	while (i < 4) {
-		int rc = str_uint8_t(cur, (const char **)&cur, 10, false, &b);
+		errno_t rc = str_uint8_t(cur, (const char **)&cur, 10, false, &b);
 		if (rc != EOK)
 			return rc;
@@ -339,5 +339,5 @@
 }
 
-static int inet_addr_parse_v6(const char *str, inet_addr_t *raddr, int *prefix,
+static errno_t inet_addr_parse_v6(const char *str, inet_addr_t *raddr, int *prefix,
     char **endptr)
 {
@@ -362,5 +362,5 @@
 		uint16_t bioctet;
 		const char *gend;
-		int rc = str_uint16_t(cur, &gend, 16, false, &bioctet);
+		errno_t rc = str_uint16_t(cur, &gend, 16, false, &bioctet);
 		if (rc != EOK)
 			break;
@@ -446,7 +446,7 @@
  *
  */
-int inet_addr_parse(const char *text, inet_addr_t *addr, char **endptr)
-{
-	int rc;
+errno_t inet_addr_parse(const char *text, inet_addr_t *addr, char **endptr)
+{
+	errno_t rc;
 
 	rc = inet_addr_parse_v4(text, addr, NULL, endptr);
@@ -473,7 +473,7 @@
  *
  */
-int inet_naddr_parse(const char *text, inet_naddr_t *naddr, char **endptr)
-{
-	int rc;
+errno_t inet_naddr_parse(const char *text, inet_naddr_t *naddr, char **endptr)
+{
+	errno_t rc;
 	inet_addr_t addr;
 	int prefix;
@@ -494,5 +494,5 @@
 }
 
-static int inet_addr_format_v4(addr32_t addr, char **bufp)
+static errno_t inet_addr_format_v4(addr32_t addr, char **bufp)
 {
 	int rc;
@@ -506,5 +506,5 @@
 }
 
-static int inet_addr_format_v6(const addr128_t addr, char **bufp)
+static errno_t inet_addr_format_v6(const addr128_t addr, char **bufp)
 {
 	*bufp = (char *) malloc(INET6_ADDRSTRLEN);
@@ -581,7 +581,7 @@
  *
  */
-int inet_addr_format(const inet_addr_t *addr, char **bufp)
-{
-	int rc;
+errno_t inet_addr_format(const inet_addr_t *addr, char **bufp)
+{
+	errno_t rc;
 	int ret;
 
@@ -616,7 +616,7 @@
  *
  */
-int inet_naddr_format(const inet_naddr_t *naddr, char **bufp)
-{
-	int rc;
+errno_t inet_naddr_format(const inet_naddr_t *naddr, char **bufp)
+{
+	errno_t rc;
 	int ret;
 	char *astr;
Index: uspace/lib/c/generic/inet/host.c
===================================================================
--- uspace/lib/c/generic/inet/host.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/inet/host.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -54,5 +54,5 @@
  *         extra characters at the end. ENOMEM if out of memory
  */
-int inet_host_parse(const char *str, inet_host_t **rhost,
+errno_t inet_host_parse(const char *str, inet_host_t **rhost,
     char **endptr)
 {
@@ -61,5 +61,5 @@
 	char *name;
 	char *aend;
-	int rc;
+	errno_t rc;
 
 	host = calloc(1, sizeof(inet_host_t));
@@ -106,7 +106,7 @@
  * @return EOK on success, ENOMEM if out of memory
  */
-int inet_host_format(inet_host_t *host, char **rstr)
-{
-	int rc;
+errno_t inet_host_format(inet_host_t *host, char **rstr)
+{
+	errno_t rc;
 	char *str = NULL;
 
@@ -161,8 +161,8 @@
  * @reutrn EOK on success, ENOENT on resolurion failure
  */
-int inet_host_lookup_one(inet_host_t *host, ip_ver_t version, inet_addr_t *addr)
+errno_t inet_host_lookup_one(inet_host_t *host, ip_ver_t version, inet_addr_t *addr)
 {
 	dnsr_hostinfo_t *hinfo = NULL;
-	int rc;
+	errno_t rc;
 
 	switch (host->hform) {
@@ -201,10 +201,10 @@
  *         ENOMEM if out of memory
  */
-int inet_host_plookup_one(const char *str, ip_ver_t version, inet_addr_t *addr,
+errno_t inet_host_plookup_one(const char *str, ip_ver_t version, inet_addr_t *addr,
     char **endptr, const char **errmsg)
 {
 	inet_host_t *host = NULL;
 	char *eptr;
-	int rc;
+	errno_t rc;
 
 	rc = inet_host_parse(str, &host, endptr != NULL ? &eptr : NULL);
Index: uspace/lib/c/generic/inet/hostname.c
===================================================================
--- uspace/lib/c/generic/inet/hostname.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/inet/hostname.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -58,5 +58,5 @@
  *         extra characters at the end. ENOMEM if out of memory
  */
-int inet_hostname_parse(const char *str, char **rname, char **endptr)
+errno_t inet_hostname_parse(const char *str, char **rname, char **endptr)
 {
 	const char *c;
Index: uspace/lib/c/generic/inet/hostport.c
===================================================================
--- uspace/lib/c/generic/inet/hostport.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/inet/hostport.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -56,5 +56,5 @@
  *         extra characters at the end. ENOMEM if out of memory
  */
-int inet_hostport_parse(const char *str, inet_hostport_t **rhp,
+errno_t inet_hostport_parse(const char *str, inet_hostport_t **rhp,
     char **endptr)
 {
@@ -65,5 +65,5 @@
 	char *aend;
 	const char *pend;
-	int rc;
+	errno_t rc;
 
 	hp = calloc(1, sizeof(inet_hostport_t));
@@ -137,7 +137,7 @@
  * @return EOK on success, ENOMEM if out of memory
  */
-int inet_hostport_format(inet_hostport_t *hp, char **rstr)
-{
-	int rc;
+errno_t inet_hostport_format(inet_hostport_t *hp, char **rstr)
+{
+	errno_t rc;
 	int ret;
 	char *astr, *str;
@@ -211,9 +211,9 @@
  * @return EOK on success, ENOENT on resolution failure
  */
-int inet_hostport_lookup_one(inet_hostport_t *hp, ip_ver_t version,
+errno_t inet_hostport_lookup_one(inet_hostport_t *hp, ip_ver_t version,
     inet_ep_t *ep)
 {
 	dnsr_hostinfo_t *hinfo = NULL;
-	int rc;
+	errno_t rc;
 
 	inet_ep_init(ep);
@@ -255,10 +255,10 @@
  *         ENOMEM if out of memory
  */
-int inet_hostport_plookup_one(const char *str, ip_ver_t version, inet_ep_t *ep,
+errno_t inet_hostport_plookup_one(const char *str, ip_ver_t version, inet_ep_t *ep,
     char **endptr, const char **errmsg)
 {
 	inet_hostport_t *hp = NULL;
 	char *eptr;
-	int rc;
+	errno_t rc;
 
 	rc = inet_hostport_parse(str, &hp, endptr != NULL ? &eptr : NULL);
Index: uspace/lib/c/generic/inet/tcp.c
===================================================================
--- uspace/lib/c/generic/inet/tcp.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/inet/tcp.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -42,5 +42,5 @@
 
 static void tcp_cb_conn(ipc_callid_t, ipc_call_t *, void *);
-static int tcp_conn_fibril(void *);
+static errno_t tcp_conn_fibril(void *);
 
 /** Incoming TCP connection info
@@ -61,5 +61,5 @@
  * @return EOK on success or an error code
  */
-static int tcp_callback_create(tcp_t *tcp)
+static errno_t tcp_callback_create(tcp_t *tcp)
 {
 	async_exch_t *exch = async_exchange_begin(tcp->sess);
@@ -68,5 +68,5 @@
 	
 	port_id_t port;
-	int rc = async_create_callback_port(exch, INTERFACE_TCP_CB, 0, 0,
+	errno_t rc = async_create_callback_port(exch, INTERFACE_TCP_CB, 0, 0,
 	    tcp_cb_conn, tcp, &port);
 	
@@ -76,5 +76,5 @@
 		return rc;
 
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 
@@ -88,9 +88,9 @@
  *         cannot be contacted
  */
-int tcp_create(tcp_t **rtcp)
+errno_t tcp_create(tcp_t **rtcp)
 {
 	tcp_t *tcp;
 	service_id_t tcp_svcid;
-	int rc;
+	errno_t rc;
 
 	tcp = calloc(1, sizeof(tcp_t));
@@ -161,5 +161,5 @@
  * @return EOK on success, ENOMEM if out of memory
  */
-static int tcp_conn_new(tcp_t *tcp, sysarg_t id, tcp_cb_t *cb, void *arg,
+static errno_t tcp_conn_new(tcp_t *tcp, sysarg_t id, tcp_cb_t *cb, void *arg,
     tcp_conn_t **rconn)
 {
@@ -207,5 +207,5 @@
  * @return EOK on success or an error code.
  */
-int tcp_conn_create(tcp_t *tcp, inet_ep2_t *epp, tcp_cb_t *cb, void *arg,
+errno_t tcp_conn_create(tcp_t *tcp, inet_ep2_t *epp, tcp_cb_t *cb, void *arg,
     tcp_conn_t **rconn)
 {
@@ -216,10 +216,10 @@
 	exch = async_exchange_begin(tcp->sess);
 	aid_t req = async_send_0(exch, TCP_CONN_CREATE, &answer);
-	int rc = async_data_write_start(exch, (void *)epp,
+	errno_t rc = async_data_write_start(exch, (void *)epp,
 	    sizeof(inet_ep2_t));
 	async_exchange_end(exch);
 
 	if (rc != EOK) {
-		int rc_orig;
+		errno_t rc_orig;
 		async_wait_for(req, &rc_orig);
 		if (rc_orig != EOK)
@@ -240,5 +240,5 @@
 	return EOK;
 error:
-	return (int) rc;
+	return (errno_t) rc;
 }
 
@@ -260,5 +260,5 @@
 
 	exch = async_exchange_begin(conn->tcp->sess);
-	int rc = async_req_1_0(exch, TCP_CONN_DESTROY, conn->id);
+	errno_t rc = async_req_1_0(exch, TCP_CONN_DESTROY, conn->id);
 	async_exchange_end(exch);
 
@@ -275,5 +275,5 @@
  * @return EOK on success, EINVAL if no connection with the given ID exists
  */
-static int tcp_conn_get(tcp_t *tcp, sysarg_t id, tcp_conn_t **rconn)
+static errno_t tcp_conn_get(tcp_t *tcp, sysarg_t id, tcp_conn_t **rconn)
 {
 	list_foreach(tcp->conn, ltcp, tcp_conn_t, conn) {
@@ -318,5 +318,5 @@
  * @return EOK on success or an error code
  */
-int tcp_listener_create(tcp_t *tcp, inet_ep_t *ep, tcp_listen_cb_t *lcb,
+errno_t tcp_listener_create(tcp_t *tcp, inet_ep_t *ep, tcp_listen_cb_t *lcb,
     void *larg, tcp_cb_t *cb, void *arg, tcp_listener_t **rlst)
 {
@@ -331,10 +331,10 @@
 	exch = async_exchange_begin(tcp->sess);
 	aid_t req = async_send_0(exch, TCP_LISTENER_CREATE, &answer);
-	int rc = async_data_write_start(exch, (void *)ep,
+	errno_t rc = async_data_write_start(exch, (void *)ep,
 	    sizeof(inet_ep_t));
 	async_exchange_end(exch);
 
 	if (rc != EOK) {
-		int rc_orig;
+		errno_t rc_orig;
 		async_wait_for(req, &rc_orig);
 		if (rc_orig != EOK)
@@ -360,5 +360,5 @@
 error:
 	free(lst);
-	return (int) rc;
+	return (errno_t) rc;
 }
 
@@ -377,5 +377,5 @@
 
 	exch = async_exchange_begin(lst->tcp->sess);
-	int rc = async_req_1_0(exch, TCP_LISTENER_DESTROY, lst->id);
+	errno_t rc = async_req_1_0(exch, TCP_LISTENER_DESTROY, lst->id);
 	async_exchange_end(exch);
 
@@ -392,5 +392,5 @@
  * @return EOK on success, EINVAL if no listener with the given ID is found
  */
-static int tcp_listener_get(tcp_t *tcp, sysarg_t id, tcp_listener_t **rlst)
+static errno_t tcp_listener_get(tcp_t *tcp, sysarg_t id, tcp_listener_t **rlst)
 {
 	list_foreach(tcp->listener, ltcp, tcp_listener_t, lst) {
@@ -424,5 +424,5 @@
  * @return EOK if connection is established, EIO otherwise
  */
-int tcp_conn_wait_connected(tcp_conn_t *conn)
+errno_t tcp_conn_wait_connected(tcp_conn_t *conn)
 {
 	fibril_mutex_lock(&conn->lock);
@@ -448,8 +448,8 @@
  * @return EOK on success or an error code
  */
-int tcp_conn_send(tcp_conn_t *conn, const void *data, size_t bytes)
-{
-	async_exch_t *exch;
-	int rc;
+errno_t tcp_conn_send(tcp_conn_t *conn, const void *data, size_t bytes)
+{
+	async_exch_t *exch;
+	errno_t rc;
 
 	exch = async_exchange_begin(conn->tcp->sess);
@@ -480,10 +480,10 @@
  * @return EOK on success or an error code
  */
-int tcp_conn_send_fin(tcp_conn_t *conn)
+errno_t tcp_conn_send_fin(tcp_conn_t *conn)
 {
 	async_exch_t *exch;
 
 	exch = async_exchange_begin(conn->tcp->sess);
-	int rc = async_req_1_0(exch, TCP_CONN_SEND_FIN, conn->id);
+	errno_t rc = async_req_1_0(exch, TCP_CONN_SEND_FIN, conn->id);
 	async_exchange_end(exch);
 
@@ -496,10 +496,10 @@
  * @return EOK on success or an error code
  */
-int tcp_conn_push(tcp_conn_t *conn)
+errno_t tcp_conn_push(tcp_conn_t *conn)
 {
 	async_exch_t *exch;
 
 	exch = async_exchange_begin(conn->tcp->sess);
-	int rc = async_req_1_0(exch, TCP_CONN_PUSH, conn->id);
+	errno_t rc = async_req_1_0(exch, TCP_CONN_PUSH, conn->id);
 	async_exchange_end(exch);
 
@@ -512,10 +512,10 @@
  * @return EOK on success or an error code
  */
-int tcp_conn_reset(tcp_conn_t *conn)
+errno_t tcp_conn_reset(tcp_conn_t *conn)
 {
 	async_exch_t *exch;
 
 	exch = async_exchange_begin(conn->tcp->sess);
-	int rc = async_req_1_0(exch, TCP_CONN_RESET, conn->id);
+	errno_t rc = async_req_1_0(exch, TCP_CONN_RESET, conn->id);
 	async_exchange_end(exch);
 
@@ -540,5 +540,5 @@
  *         error code in case of other error
  */
-int tcp_conn_recv(tcp_conn_t *conn, void *buf, size_t bsize, size_t *nrecv)
+errno_t tcp_conn_recv(tcp_conn_t *conn, void *buf, size_t bsize, size_t *nrecv)
 {
 	async_exch_t *exch;
@@ -553,5 +553,5 @@
 	exch = async_exchange_begin(conn->tcp->sess);
 	aid_t req = async_send_1(exch, TCP_CONN_RECV, conn->id, &answer);
-	int rc = async_data_read_start(exch, buf, bsize);
+	errno_t rc = async_data_read_start(exch, buf, bsize);
 	async_exchange_end(exch);
 
@@ -562,5 +562,5 @@
 	}
 
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	if (retval != EOK) {
@@ -588,5 +588,5 @@
  * @return EOK on success or an error code
  */
-int tcp_conn_recv_wait(tcp_conn_t *conn, void *buf, size_t bsize,
+errno_t tcp_conn_recv_wait(tcp_conn_t *conn, void *buf, size_t bsize,
     size_t *nrecv)
 {
@@ -602,5 +602,5 @@
 	exch = async_exchange_begin(conn->tcp->sess);
 	aid_t req = async_send_1(exch, TCP_CONN_RECV_WAIT, conn->id, &answer);
-	int rc = async_data_read_start(exch, buf, bsize);
+	errno_t rc = async_data_read_start(exch, buf, bsize);
 	async_exchange_end(exch);
 
@@ -616,5 +616,5 @@
 	}
 
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	if (retval != EOK) {
@@ -641,5 +641,5 @@
 	tcp_conn_t *conn;
 	sysarg_t conn_id;
-	int rc;
+	errno_t rc;
 
 	conn_id = IPC_GET_ARG1(*icall);
@@ -669,5 +669,5 @@
 	tcp_conn_t *conn;
 	sysarg_t conn_id;
-	int rc;
+	errno_t rc;
 
 	conn_id = IPC_GET_ARG1(*icall);
@@ -697,5 +697,5 @@
 	tcp_conn_t *conn;
 	sysarg_t conn_id;
-	int rc;
+	errno_t rc;
 
 	conn_id = IPC_GET_ARG1(*icall);
@@ -725,5 +725,5 @@
 	tcp_conn_t *conn;
 	sysarg_t conn_id;
-	int rc;
+	errno_t rc;
 
 	conn_id = IPC_GET_ARG1(*icall);
@@ -769,5 +769,5 @@
 	fid_t fid;
 	tcp_in_conn_t *cinfo;
-	int rc;
+	errno_t rc;
 
 	lst_id = IPC_GET_ARG1(*icall);
@@ -863,5 +863,5 @@
  * @param arg Argument, incoming connection information (@c tcp_in_conn_t)
  */
-static int tcp_conn_fibril(void *arg)
+static errno_t tcp_conn_fibril(void *arg)
 {
 	tcp_in_conn_t *cinfo = (tcp_in_conn_t *)arg;
Index: uspace/lib/c/generic/inet/udp.c
===================================================================
--- uspace/lib/c/generic/inet/udp.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/inet/udp.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -48,5 +48,5 @@
  * @return EOK on success or an error code
  */
-static int udp_callback_create(udp_t *udp)
+static errno_t udp_callback_create(udp_t *udp)
 {
 	async_exch_t *exch = async_exchange_begin(udp->sess);
@@ -55,5 +55,5 @@
 	
 	port_id_t port;
-	int rc = async_create_callback_port(exch, INTERFACE_UDP_CB, 0, 0,
+	errno_t rc = async_create_callback_port(exch, INTERFACE_UDP_CB, 0, 0,
 	    udp_cb_conn, udp, &port);
 	
@@ -63,5 +63,5 @@
 		return rc;
 
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 
@@ -75,9 +75,9 @@
  *         cannot be contacted
  */
-int udp_create(udp_t **rudp)
+errno_t udp_create(udp_t **rudp)
 {
 	udp_t *udp;
 	service_id_t udp_svcid;
-	int rc;
+	errno_t rc;
 
 	udp = calloc(1, sizeof(udp_t));
@@ -160,5 +160,5 @@
  * @return EOK on success or an error code.
  */
-int udp_assoc_create(udp_t *udp, inet_ep2_t *epp, udp_cb_t *cb, void *arg,
+errno_t udp_assoc_create(udp_t *udp, inet_ep2_t *epp, udp_cb_t *cb, void *arg,
     udp_assoc_t **rassoc)
 {
@@ -173,10 +173,10 @@
 	exch = async_exchange_begin(udp->sess);
 	aid_t req = async_send_0(exch, UDP_ASSOC_CREATE, &answer);
-	int rc = async_data_write_start(exch, (void *)epp,
+	errno_t rc = async_data_write_start(exch, (void *)epp,
 	    sizeof(inet_ep2_t));
 	async_exchange_end(exch);
 
 	if (rc != EOK) {
-		int rc_orig;
+		errno_t rc_orig;
 		async_wait_for(req, &rc_orig);
 		if (rc_orig != EOK)
@@ -200,5 +200,5 @@
 error:
 	free(assoc);
-	return (int) rc;
+	return (errno_t) rc;
 }
 
@@ -220,5 +220,5 @@
 
 	exch = async_exchange_begin(assoc->udp->sess);
-	int rc = async_req_1_0(exch, UDP_ASSOC_DESTROY, assoc->id);
+	errno_t rc = async_req_1_0(exch, UDP_ASSOC_DESTROY, assoc->id);
 	async_exchange_end(exch);
 
@@ -232,10 +232,10 @@
  * @param flags Flags
  */
-int udp_assoc_set_nolocal(udp_assoc_t *assoc)
+errno_t udp_assoc_set_nolocal(udp_assoc_t *assoc)
 {
 	async_exch_t *exch;
 
 	exch = async_exchange_begin(assoc->udp->sess);
-	int rc = async_req_1_0(exch, UDP_ASSOC_SET_NOLOCAL, assoc->id);
+	errno_t rc = async_req_1_0(exch, UDP_ASSOC_SET_NOLOCAL, assoc->id);
 	async_exchange_end(exch);
 
@@ -252,5 +252,5 @@
  * @return EOK on success or an error code
  */
-int udp_assoc_send_msg(udp_assoc_t *assoc, inet_ep_t *dest, void *data,
+errno_t udp_assoc_send_msg(udp_assoc_t *assoc, inet_ep_t *dest, void *data,
     size_t bytes)
 {
@@ -260,5 +260,5 @@
 	aid_t req = async_send_1(exch, UDP_ASSOC_SEND_MSG, assoc->id, NULL);
 
-	int rc = async_data_write_start(exch, (void *)dest,
+	errno_t rc = async_data_write_start(exch, (void *)dest,
 	    sizeof(inet_ep_t));
 	if (rc != EOK) {
@@ -318,5 +318,5 @@
  * @return EOK on success or an error code.
  */
-int udp_rmsg_read(udp_rmsg_t *rmsg, size_t off, void *buf, size_t bsize)
+errno_t udp_rmsg_read(udp_rmsg_t *rmsg, size_t off, void *buf, size_t bsize)
 {
 	async_exch_t *exch;
@@ -325,5 +325,5 @@
 	exch = async_exchange_begin(rmsg->udp->sess);
 	aid_t req = async_send_1(exch, UDP_RMSG_READ, off, &answer);
-	int rc = async_data_read_start(exch, buf, bsize);
+	errno_t rc = async_data_read_start(exch, buf, bsize);
 	async_exchange_end(exch);
 
@@ -333,5 +333,5 @@
 	}
 
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	if (retval != EOK) {
@@ -382,5 +382,5 @@
  * @return EOK on success or an error code
  */
-static int udp_rmsg_info(udp_t *udp, udp_rmsg_t *rmsg)
+static errno_t udp_rmsg_info(udp_t *udp, udp_rmsg_t *rmsg)
 {
 	async_exch_t *exch;
@@ -390,5 +390,5 @@
 	exch = async_exchange_begin(udp->sess);
 	aid_t req = async_send_0(exch, UDP_RMSG_INFO, &answer);
-	int rc = async_data_read_start(exch, &ep, sizeof(inet_ep_t));
+	errno_t rc = async_data_read_start(exch, &ep, sizeof(inet_ep_t));
 	async_exchange_end(exch);
 
@@ -398,5 +398,5 @@
 	}
 
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	if (retval != EOK)
@@ -415,10 +415,10 @@
  * @return EOK on success or an error code
  */
-static int udp_rmsg_discard(udp_t *udp)
+static errno_t udp_rmsg_discard(udp_t *udp)
 {
 	async_exch_t *exch;
 
 	exch = async_exchange_begin(udp->sess);
-	int rc = async_req_0_0(exch, UDP_RMSG_DISCARD);
+	errno_t rc = async_req_0_0(exch, UDP_RMSG_DISCARD);
 	async_exchange_end(exch);
 
@@ -434,5 +434,5 @@
  * @return EOK on success, EINVAL if no association with the given ID exists
  */
-static int udp_assoc_get(udp_t *udp, sysarg_t id, udp_assoc_t **rassoc)
+static errno_t udp_assoc_get(udp_t *udp, sysarg_t id, udp_assoc_t **rassoc)
 {
 	list_foreach(udp->assoc, ludp, udp_assoc_t, assoc) {
@@ -459,5 +459,5 @@
 	udp_rmsg_t rmsg;
 	udp_assoc_t *assoc;
-	int rc;
+	errno_t rc;
 
 	while (true) {
Index: uspace/lib/c/generic/inetcfg.c
===================================================================
--- uspace/lib/c/generic/inetcfg.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/inetcfg.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -39,5 +39,5 @@
 static async_sess_t *inetcfg_sess = NULL;
 
-static int inetcfg_get_ids_once(sysarg_t method, sysarg_t arg1,
+static errno_t inetcfg_get_ids_once(sysarg_t method, sysarg_t arg1,
     sysarg_t *id_buf, size_t buf_size, size_t *act_size)
 {
@@ -46,14 +46,14 @@
 	ipc_call_t answer;
 	aid_t req = async_send_1(exch, method, arg1, &answer);
-	int rc = async_data_read_start(exch, id_buf, buf_size);
-
-	async_exchange_end(exch);
-
-	if (rc != EOK) {
-		async_forget(req);
-		return rc;
-	}
-
-	int retval;
+	errno_t rc = async_data_read_start(exch, id_buf, buf_size);
+
+	async_exchange_end(exch);
+
+	if (rc != EOK) {
+		async_forget(req);
+		return rc;
+	}
+
+	errno_t retval;
 	async_wait_for(req, &retval);
 
@@ -76,5 +76,5 @@
  * @return 		EOK on success or an error code
  */
-static int inetcfg_get_ids_internal(sysarg_t method, sysarg_t arg1,
+static errno_t inetcfg_get_ids_internal(sysarg_t method, sysarg_t arg1,
     sysarg_t **data, size_t *count)
 {
@@ -83,5 +83,5 @@
 
 	size_t act_size = 0;
-	int rc = inetcfg_get_ids_once(method, arg1, NULL, 0,
+	errno_t rc = inetcfg_get_ids_once(method, arg1, NULL, 0,
 	    &act_size);
 	if (rc != EOK)
@@ -113,8 +113,8 @@
 }
 
-int inetcfg_init(void)
+errno_t inetcfg_init(void)
 {
 	service_id_t inet_svc;
-	int rc;
+	errno_t rc;
 
 	assert(inetcfg_sess == NULL);
@@ -133,5 +133,5 @@
 }
 
-int inetcfg_addr_create_static(const char *name, inet_naddr_t *naddr,
+errno_t inetcfg_addr_create_static(const char *name, inet_naddr_t *naddr,
     sysarg_t link_id, sysarg_t *addr_id)
 {
@@ -142,5 +142,5 @@
 	    &answer);
 	
-	int rc = async_data_write_start(exch, naddr, sizeof(inet_naddr_t));
+	errno_t rc = async_data_write_start(exch, naddr, sizeof(inet_naddr_t));
 	if (rc != EOK) {
 		async_exchange_end(exch);
@@ -158,5 +158,5 @@
 	}
 	
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	
@@ -166,9 +166,9 @@
 }
 
-int inetcfg_addr_delete(sysarg_t addr_id)
-{
-	async_exch_t *exch = async_exchange_begin(inetcfg_sess);
-
-	int rc = async_req_1_0(exch, INETCFG_ADDR_DELETE, addr_id);
+errno_t inetcfg_addr_delete(sysarg_t addr_id)
+{
+	async_exch_t *exch = async_exchange_begin(inetcfg_sess);
+
+	errno_t rc = async_req_1_0(exch, INETCFG_ADDR_DELETE, addr_id);
 	async_exchange_end(exch);
 
@@ -176,5 +176,5 @@
 }
 
-int inetcfg_addr_get(sysarg_t addr_id, inet_addr_info_t *ainfo)
+errno_t inetcfg_addr_get(sysarg_t addr_id, inet_addr_info_t *ainfo)
 {
 	async_exch_t *exch = async_exchange_begin(inetcfg_sess);
@@ -187,5 +187,5 @@
 	    sizeof(inet_naddr_t), &answer_naddr);
 	
-	int retval_naddr;
+	errno_t retval_naddr;
 	async_wait_for(req_naddr, &retval_naddr);
 	
@@ -203,5 +203,5 @@
 	async_exchange_end(exch);
 	
-	int retval_name;
+	errno_t retval_name;
 	async_wait_for(req_name, &retval_name);
 	
@@ -211,5 +211,5 @@
 	}
 	
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	
@@ -228,5 +228,5 @@
 }
 
-int inetcfg_addr_get_id(const char *name, sysarg_t link_id, sysarg_t *addr_id)
+errno_t inetcfg_addr_get_id(const char *name, sysarg_t link_id, sysarg_t *addr_id)
 {
 	async_exch_t *exch = async_exchange_begin(inetcfg_sess);
@@ -234,5 +234,5 @@
 	ipc_call_t answer;
 	aid_t req = async_send_1(exch, INETCFG_ADDR_GET_ID, link_id, &answer);
-	int retval = async_data_write_start(exch, name, str_size(name));
+	errno_t retval = async_data_write_start(exch, name, str_size(name));
 
 	async_exchange_end(exch);
@@ -249,5 +249,5 @@
 }
 
-int inetcfg_get_addr_list(sysarg_t **addrs, size_t *count)
+errno_t inetcfg_get_addr_list(sysarg_t **addrs, size_t *count)
 {
 	return inetcfg_get_ids_internal(INETCFG_GET_ADDR_LIST,
@@ -255,5 +255,5 @@
 }
 
-int inetcfg_get_link_list(sysarg_t **links, size_t *count)
+errno_t inetcfg_get_link_list(sysarg_t **links, size_t *count)
 {
 	return inetcfg_get_ids_internal(INETCFG_GET_LINK_LIST,
@@ -261,5 +261,5 @@
 }
 
-int inetcfg_get_sroute_list(sysarg_t **sroutes, size_t *count)
+errno_t inetcfg_get_sroute_list(sysarg_t **sroutes, size_t *count)
 {
 	return inetcfg_get_ids_internal(INETCFG_GET_SROUTE_LIST,
@@ -267,9 +267,9 @@
 }
 
-int inetcfg_link_add(sysarg_t link_id)
-{
-	async_exch_t *exch = async_exchange_begin(inetcfg_sess);
-
-	int rc = async_req_1_0(exch, INETCFG_LINK_ADD, link_id);
+errno_t inetcfg_link_add(sysarg_t link_id)
+{
+	async_exch_t *exch = async_exchange_begin(inetcfg_sess);
+
+	errno_t rc = async_req_1_0(exch, INETCFG_LINK_ADD, link_id);
 	async_exchange_end(exch);
 
@@ -277,8 +277,8 @@
 }
 
-int inetcfg_link_get(sysarg_t link_id, inet_link_info_t *linfo)
+errno_t inetcfg_link_get(sysarg_t link_id, inet_link_info_t *linfo)
 {
 	ipc_call_t dreply;
-	int dretval;
+	errno_t dretval;
 	size_t act_size;
 	char name_buf[LOC_NAME_MAXLEN + 1];
@@ -289,5 +289,5 @@
 	aid_t req = async_send_1(exch, INETCFG_LINK_GET, link_id, &answer);
 	aid_t dreq = async_data_read(exch, name_buf, LOC_NAME_MAXLEN, &dreply);
-	int rc = async_data_read_start(exch, &linfo->mac_addr, sizeof(addr48_t));
+	errno_t rc = async_data_read_start(exch, &linfo->mac_addr, sizeof(addr48_t));
 	async_wait_for(dreq, &dretval);
 
@@ -299,5 +299,5 @@
 	}
 
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 
@@ -315,9 +315,9 @@
 }
 
-int inetcfg_link_remove(sysarg_t link_id)
-{
-	async_exch_t *exch = async_exchange_begin(inetcfg_sess);
-
-	int rc = async_req_1_0(exch, INETCFG_LINK_REMOVE, link_id);
+errno_t inetcfg_link_remove(sysarg_t link_id)
+{
+	async_exch_t *exch = async_exchange_begin(inetcfg_sess);
+
+	errno_t rc = async_req_1_0(exch, INETCFG_LINK_REMOVE, link_id);
 	async_exchange_end(exch);
 
@@ -325,5 +325,5 @@
 }
 
-int inetcfg_sroute_create(const char *name, inet_naddr_t *dest,
+errno_t inetcfg_sroute_create(const char *name, inet_naddr_t *dest,
     inet_addr_t *router, sysarg_t *sroute_id)
 {
@@ -333,5 +333,5 @@
 	aid_t req = async_send_0(exch, INETCFG_SROUTE_CREATE, &answer);
 	
-	int rc = async_data_write_start(exch, dest, sizeof(inet_naddr_t));
+	errno_t rc = async_data_write_start(exch, dest, sizeof(inet_naddr_t));
 	if (rc != EOK) {
 		async_exchange_end(exch);
@@ -356,5 +356,5 @@
 	}
 	
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	
@@ -364,9 +364,9 @@
 }
 
-int inetcfg_sroute_delete(sysarg_t sroute_id)
-{
-	async_exch_t *exch = async_exchange_begin(inetcfg_sess);
-
-	int rc = async_req_1_0(exch, INETCFG_SROUTE_DELETE, sroute_id);
+errno_t inetcfg_sroute_delete(sysarg_t sroute_id)
+{
+	async_exch_t *exch = async_exchange_begin(inetcfg_sess);
+
+	errno_t rc = async_req_1_0(exch, INETCFG_SROUTE_DELETE, sroute_id);
 	async_exchange_end(exch);
 
@@ -374,5 +374,5 @@
 }
 
-int inetcfg_sroute_get(sysarg_t sroute_id, inet_sroute_info_t *srinfo)
+errno_t inetcfg_sroute_get(sysarg_t sroute_id, inet_sroute_info_t *srinfo)
 {
 	async_exch_t *exch = async_exchange_begin(inetcfg_sess);
@@ -385,5 +385,5 @@
 	    sizeof(inet_naddr_t), &answer_dest);
 	
-	int retval_dest;
+	errno_t retval_dest;
 	async_wait_for(req_dest, &retval_dest);
 	
@@ -398,5 +398,5 @@
 	    sizeof(inet_addr_t), &answer_router);
 	
-	int retval_router;
+	errno_t retval_router;
 	async_wait_for(req_router, &retval_router);
 	
@@ -414,5 +414,5 @@
 	async_exchange_end(exch);
 	
-	int retval_name;
+	errno_t retval_name;
 	async_wait_for(req_name, &retval_name);
 	
@@ -422,5 +422,5 @@
 	}
 	
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	
@@ -438,5 +438,5 @@
 }
 
-int inetcfg_sroute_get_id(const char *name, sysarg_t *sroute_id)
+errno_t inetcfg_sroute_get_id(const char *name, sysarg_t *sroute_id)
 {
 	async_exch_t *exch = async_exchange_begin(inetcfg_sess);
@@ -444,5 +444,5 @@
 	ipc_call_t answer;
 	aid_t req = async_send_0(exch, INETCFG_SROUTE_GET_ID, &answer);
-	int retval = async_data_write_start(exch, name, str_size(name));
+	errno_t retval = async_data_write_start(exch, name, str_size(name));
 
 	async_exchange_end(exch);
Index: uspace/lib/c/generic/inetping.c
===================================================================
--- uspace/lib/c/generic/inetping.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/inetping.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -44,8 +44,8 @@
 static inetping_ev_ops_t *inetping_ev_ops;
 
-int inetping_init(inetping_ev_ops_t *ev_ops)
+errno_t inetping_init(inetping_ev_ops_t *ev_ops)
 {
 	service_id_t inetping_svc;
-	int rc;
+	errno_t rc;
 
 	assert(inetping_sess == NULL);
@@ -80,5 +80,5 @@
 }
 
-int inetping_send(inetping_sdu_t *sdu)
+errno_t inetping_send(inetping_sdu_t *sdu)
 {
 	async_exch_t *exch = async_exchange_begin(inetping_sess);
@@ -87,5 +87,5 @@
 	aid_t req = async_send_1(exch, INETPING_SEND, sdu->seq_no, &answer);
 
-	int rc = async_data_write_start(exch, &sdu->src, sizeof(sdu->src));
+	errno_t rc = async_data_write_start(exch, &sdu->src, sizeof(sdu->src));
 	if (rc != EOK) {
 		async_exchange_end(exch);
@@ -110,5 +110,5 @@
 	}
 
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 
@@ -116,5 +116,5 @@
 }
 
-int inetping_get_srcaddr(const inet_addr_t *remote, inet_addr_t *local)
+errno_t inetping_get_srcaddr(const inet_addr_t *remote, inet_addr_t *local)
 {
 	async_exch_t *exch = async_exchange_begin(inetping_sess);
@@ -123,5 +123,5 @@
 	aid_t req = async_send_0(exch, INETPING_GET_SRCADDR, &answer);
 
-	int rc = async_data_write_start(exch, remote, sizeof(*remote));
+	errno_t rc = async_data_write_start(exch, remote, sizeof(*remote));
 	if (rc != EOK) {
 		async_exchange_end(exch);
@@ -136,5 +136,5 @@
 	async_exchange_end(exch);
 
-	int retval_local;
+	errno_t retval_local;
 	async_wait_for(req_local, &retval_local);
 
@@ -144,5 +144,5 @@
 	}
 
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 
@@ -170,5 +170,5 @@
 	}
 
-	int rc = async_data_write_finalize(callid, &sdu.src, size);
+	errno_t rc = async_data_write_finalize(callid, &sdu.src, size);
 	if (rc != EOK) {
 		async_answer_0(callid, rc);
Index: uspace/lib/c/generic/io/chardev.c
===================================================================
--- uspace/lib/c/generic/io/chardev.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/io/chardev.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -50,5 +50,5 @@
  * @return EOK on success, ENOMEM if out of memory, EIO on I/O error
  */
-int chardev_open(async_sess_t *sess, chardev_t **rchardev)
+errno_t chardev_open(async_sess_t *sess, chardev_t **rchardev)
 {
 	chardev_t *chardev;
@@ -94,5 +94,5 @@
  * @return EOK on success or non-zero error code
  */
-int chardev_read(chardev_t *chardev, void *buf, size_t size, size_t *nread)
+errno_t chardev_read(chardev_t *chardev, void *buf, size_t size, size_t *nread)
 {
 	async_exch_t *exch = async_exchange_begin(chardev->sess);
@@ -105,5 +105,5 @@
 	ipc_call_t answer;
 	aid_t req = async_send_0(exch, CHARDEV_READ, &answer);
-	int rc = async_data_read_start(exch, buf, size);
+	errno_t rc = async_data_read_start(exch, buf, size);
 	async_exchange_end(exch);
 
@@ -114,5 +114,5 @@
 	}
 
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 
@@ -124,5 +124,5 @@
 	*nread = IPC_GET_ARG2(answer);
 	/* In case of partial success, ARG1 contains the error code */
-	return (int) IPC_GET_ARG1(answer);
+	return (errno_t) IPC_GET_ARG1(answer);
 
 }
@@ -144,5 +144,5 @@
  * @return EOK on success or non-zero error code
  */
-static int chardev_write_once(chardev_t *chardev, const void *data,
+static errno_t chardev_write_once(chardev_t *chardev, const void *data,
     size_t size, size_t *nwritten)
 {
@@ -150,5 +150,5 @@
 	ipc_call_t answer;
 	aid_t req;
-	int rc;
+	errno_t rc;
 
 	/* Break down large transfers */
@@ -166,5 +166,5 @@
 	}
 
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	if (retval != EOK) {
@@ -175,5 +175,5 @@
 	*nwritten = IPC_GET_ARG2(answer);
 	/* In case of partial success, ARG1 contains the error code */
-	return (int) IPC_GET_ARG1(answer);
+	return (errno_t) IPC_GET_ARG1(answer);
 }
 
@@ -193,10 +193,10 @@
  * @return EOK on success or non-zero error code
  */
-int chardev_write(chardev_t *chardev, const void *data, size_t size,
+errno_t chardev_write(chardev_t *chardev, const void *data, size_t size,
     size_t *nwritten)
 {
 	size_t nw;
 	size_t p;
-	int rc;
+	errno_t rc;
 
 	p = 0;
Index: uspace/lib/c/generic/io/chardev_srv.c
===================================================================
--- uspace/lib/c/generic/io/chardev_srv.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/io/chardev_srv.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -49,5 +49,5 @@
 	size_t size;
 	size_t nread;
-	int rc;
+	errno_t rc;
 	ipc_callid_t rcallid;
 
@@ -91,5 +91,5 @@
 	size_t size;
 	size_t nwr;
-	int rc;
+	errno_t rc;
 
 	rc = async_data_write_accept(&data, false, 0, 0, 0, &size);
@@ -132,8 +132,8 @@
 }
 
-int chardev_conn(ipc_callid_t iid, ipc_call_t *icall, chardev_srvs_t *srvs)
+errno_t chardev_conn(ipc_callid_t iid, ipc_call_t *icall, chardev_srvs_t *srvs)
 {
 	chardev_srv_t *srv;
-	int rc;
+	errno_t rc;
 
 	/* Accept the connection */
Index: uspace/lib/c/generic/io/con_srv.c
===================================================================
--- uspace/lib/c/generic/io/con_srv.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/io/con_srv.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -42,5 +42,5 @@
 #include <io/con_srv.h>
 
-static int console_ev_encode(cons_event_t *event, ipc_call_t *call)
+static errno_t console_ev_encode(cons_event_t *event, ipc_call_t *call)
 {
 	IPC_SET_ARG1(*call, event->type);
@@ -71,5 +71,5 @@
 	void *buf;
 	size_t size;
-	int rc;
+	errno_t rc;
 	ipc_callid_t rcallid;
 
@@ -113,5 +113,5 @@
 	void *data;
 	size_t size;
-	int rc;
+	errno_t rc;
 
 	rc = async_data_write_accept(&data, false, 0, 0, 0, &size);
@@ -178,5 +178,5 @@
     ipc_call_t *call)
 {
-	int rc;
+	errno_t rc;
 	sysarg_t col;
 	sysarg_t row;
@@ -194,5 +194,5 @@
     ipc_call_t *call)
 {
-	int rc;
+	errno_t rc;
 	sysarg_t cols;
 	sysarg_t rows;
@@ -210,5 +210,5 @@
     ipc_call_t *call)
 {
-	int rc;
+	errno_t rc;
 	console_caps_t ccap;
 
@@ -295,5 +295,5 @@
     ipc_call_t *call)
 {
-	int rc;
+	errno_t rc;
 	cons_event_t event;
 	ipc_call_t result;
@@ -340,8 +340,8 @@
 }
 
-int con_conn(ipc_callid_t iid, ipc_call_t *icall, con_srvs_t *srvs)
+errno_t con_conn(ipc_callid_t iid, ipc_call_t *icall, con_srvs_t *srvs)
 {
 	con_srv_t *srv;
-	int rc;
+	errno_t rc;
 
 	/* Accept the connection */
Index: uspace/lib/c/generic/io/console.c
===================================================================
--- uspace/lib/c/generic/io/console.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/io/console.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -90,8 +90,8 @@
 }
 
-int console_get_size(console_ctrl_t *ctrl, sysarg_t *cols, sysarg_t *rows)
-{
-	async_exch_t *exch = async_exchange_begin(ctrl->output_sess);
-	int rc = async_req_0_2(exch, CONSOLE_GET_SIZE, cols, rows);
+errno_t console_get_size(console_ctrl_t *ctrl, sysarg_t *cols, sysarg_t *rows)
+{
+	async_exch_t *exch = async_exchange_begin(ctrl->output_sess);
+	errno_t rc = async_req_0_2(exch, CONSOLE_GET_SIZE, cols, rows);
 	async_exchange_end(exch);
 	
@@ -129,8 +129,8 @@
 }
 
-int console_get_color_cap(console_ctrl_t *ctrl, sysarg_t *ccap)
-{
-	async_exch_t *exch = async_exchange_begin(ctrl->output_sess);
-	int rc = async_req_0_1(exch, CONSOLE_GET_COLOR_CAP, ccap);
+errno_t console_get_color_cap(console_ctrl_t *ctrl, sysarg_t *ccap)
+{
+	async_exch_t *exch = async_exchange_begin(ctrl->output_sess);
+	errno_t rc = async_req_0_1(exch, CONSOLE_GET_COLOR_CAP, ccap);
 	async_exchange_end(exch);
 	
@@ -138,8 +138,8 @@
 }
 
-int console_get_pos(console_ctrl_t *ctrl, sysarg_t *col, sysarg_t *row)
-{
-	async_exch_t *exch = async_exchange_begin(ctrl->output_sess);
-	int rc = async_req_0_2(exch, CONSOLE_GET_POS, col, row);
+errno_t console_get_pos(console_ctrl_t *ctrl, sysarg_t *col, sysarg_t *row)
+{
+	async_exch_t *exch = async_exchange_begin(ctrl->output_sess);
+	errno_t rc = async_req_0_2(exch, CONSOLE_GET_POS, col, row);
 	async_exchange_end(exch);
 	
@@ -154,5 +154,5 @@
 }
 
-static int console_ev_decode(ipc_call_t *call, cons_event_t *event)
+static errno_t console_ev_decode(ipc_call_t *call, cons_event_t *event)
 {
 	event->type = IPC_GET_ARG1(*call);
@@ -188,5 +188,5 @@
 		async_exchange_end(exch);
 		
-		int rc;
+		errno_t rc;
 		async_wait_for(aid, &rc);
 		
@@ -202,5 +202,5 @@
 		}
 	} else {
-		int retval;
+		errno_t retval;
 		async_wait_for(ctrl->input_aid, &retval);
 		
@@ -212,5 +212,5 @@
 		}
 		
-		int rc = console_ev_decode(&ctrl->input_call, event);
+		errno_t rc = console_ev_decode(&ctrl->input_call, event);
 		if (rc != EOK) {
 			errno = rc;
@@ -235,6 +235,6 @@
 	}
 	
-	int retval;
-	int rc = async_wait_timeout(ctrl->input_aid, &retval, *timeout);
+	errno_t retval;
+	errno_t rc = async_wait_timeout(ctrl->input_aid, &retval, *timeout);
 	if (rc != EOK) {
 		*timeout = 0;
Index: uspace/lib/c/generic/io/input.c
===================================================================
--- uspace/lib/c/generic/io/input.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/io/input.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -45,5 +45,5 @@
 static void input_cb_conn(ipc_callid_t iid, ipc_call_t *icall, void *arg);
 
-int input_open(async_sess_t *sess, input_ev_ops_t *ev_ops,
+errno_t input_open(async_sess_t *sess, input_ev_ops_t *ev_ops,
     void *arg, input_t **rinput)
 {
@@ -59,5 +59,5 @@
 
 	port_id_t port;
-	int rc = async_create_callback_port(exch, INTERFACE_INPUT_CB, 0, 0,
+	errno_t rc = async_create_callback_port(exch, INTERFACE_INPUT_CB, 0, 0,
 	    input_cb_conn, input, &port);
 	
@@ -83,8 +83,8 @@
 }
 
-int input_activate(input_t *input)
+errno_t input_activate(input_t *input)
 {
 	async_exch_t *exch = async_exchange_begin(input->sess);
-	int rc = async_req_0_0(exch, INPUT_ACTIVATE);
+	errno_t rc = async_req_0_0(exch, INPUT_ACTIVATE);
 	async_exchange_end(exch);
 	
@@ -95,5 +95,5 @@
     ipc_call_t *call)
 {
-	int rc = input->ev_ops->active(input);
+	errno_t rc = input->ev_ops->active(input);
 	async_answer_0(callid, rc);
 }
@@ -102,5 +102,5 @@
     ipc_call_t *call)
 {
-	int rc = input->ev_ops->deactive(input);
+	errno_t rc = input->ev_ops->deactive(input);
 	async_answer_0(callid, rc);
 }
@@ -113,5 +113,5 @@
 	keymod_t mods;
 	wchar_t c;
-	int rc;
+	errno_t rc;
 
 	type = IPC_GET_ARG1(*call);
@@ -129,5 +129,5 @@
 	int dx;
 	int dy;
-	int rc;
+	errno_t rc;
 
 	dx = IPC_GET_ARG1(*call);
@@ -145,5 +145,5 @@
 	unsigned max_x;
 	unsigned max_y;
-	int rc;
+	errno_t rc;
 
 	x = IPC_GET_ARG1(*call);
@@ -161,5 +161,5 @@
 	int bnum;
 	int press;
-	int rc;
+	errno_t rc;
 
 	bnum = IPC_GET_ARG1(*call);
Index: uspace/lib/c/generic/io/io.c
===================================================================
--- uspace/lib/c/generic/io/io.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/io/io.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -297,5 +297,5 @@
 		flags |= WALK_MAY_CREATE;
 	int file;
-	int rc = vfs_lookup(path, flags, &file);
+	errno_t rc = vfs_lookup(path, flags, &file);
 	if (rc != EOK) {
 		errno = rc;
@@ -364,5 +364,5 @@
 static int _fclose_nofree(FILE *stream)
 {
-	int rc = 0;
+	errno_t rc = 0;
 	
 	fflush(stream);
@@ -433,5 +433,5 @@
 static size_t _fread(void *buf, size_t size, size_t nmemb, FILE *stream)
 {
-	int rc;
+	errno_t rc;
 	size_t nread;
 
@@ -462,5 +462,5 @@
 static size_t _fwrite(const void *buf, size_t size, size_t nmemb, FILE *stream)
 {
-	int rc;
+	errno_t rc;
 	size_t nwritten;
 
@@ -495,5 +495,5 @@
 static void _ffillbuf(FILE *stream)
 {
-	int rc;
+	errno_t rc;
 	size_t nread;
 
@@ -801,5 +801,5 @@
 int fseek(FILE *stream, long offset, int whence)
 {
-	int rc;
+	errno_t rc;
 
 	if (stream->error)
@@ -877,5 +877,5 @@
 	
 	if ((stream->fd >= 0) && (stream->need_sync)) {
-		int rc;
+		errno_t rc;
 
 		/**
@@ -934,5 +934,5 @@
 }
 
-int vfs_fhandle(FILE *stream, int *handle)
+errno_t vfs_fhandle(FILE *stream, int *handle)
 {
 	if (stream->fd >= 0) {
Index: uspace/lib/c/generic/io/kio.c
===================================================================
--- uspace/lib/c/generic/io/kio.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/io/kio.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -43,7 +43,7 @@
 #include <io/printf_core.h>
 
-int kio_write(const void *buf, size_t size, size_t *nwritten)
+errno_t kio_write(const void *buf, size_t size, size_t *nwritten)
 {
-	int rc = (int) __SYSCALL3(SYS_KIO, KIO_WRITE, (sysarg_t) buf, size);
+	errno_t rc = (errno_t) __SYSCALL3(SYS_KIO, KIO_WRITE, (sysarg_t) buf, size);
 	
 	if (rc == EOK)
Index: uspace/lib/c/generic/io/klog.c
===================================================================
--- uspace/lib/c/generic/io/klog.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/io/klog.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -42,13 +42,13 @@
 #include <abi/log.h>
 
-int klog_write(log_level_t lvl, const void *buf, size_t size)
+errno_t klog_write(log_level_t lvl, const void *buf, size_t size)
 {
-	return (int) __SYSCALL4(SYS_KLOG, KLOG_WRITE, (sysarg_t) buf,
+	return (errno_t) __SYSCALL4(SYS_KLOG, KLOG_WRITE, (sysarg_t) buf,
 	    size, lvl);
 }
 
-int klog_read(void *data, size_t size, size_t *nread)
+errno_t klog_read(void *data, size_t size, size_t *nread)
 {
-	return (int) __SYSCALL5(SYS_KLOG, KLOG_READ, (uintptr_t) data,
+	return (errno_t) __SYSCALL5(SYS_KLOG, KLOG_READ, (uintptr_t) data,
 	    size, 0, (sysarg_t) nread);
 }
Index: uspace/lib/c/generic/io/log.c
===================================================================
--- uspace/lib/c/generic/io/log.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/io/log.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -74,5 +74,5 @@
  * @return Error code of the conversion or EOK on success.
  */
-static int logger_message(async_sess_t *session, log_t log, log_level_t level, char *message)
+static errno_t logger_message(async_sess_t *session, log_t log, log_level_t level, char *message)
 {
 	async_exch_t *exchange = async_exchange_begin(session);
@@ -88,6 +88,6 @@
 	aid_t reg_msg = async_send_2(exchange, LOGGER_WRITER_MESSAGE,
 	    log, level, NULL);
-	int rc = async_data_write_start(exchange, message, str_size(message));
-	int reg_msg_rc;
+	errno_t rc = async_data_write_start(exchange, message, str_size(message));
+	errno_t reg_msg_rc;
 	async_wait_for(reg_msg, &reg_msg_rc);
 
@@ -127,5 +127,5 @@
  * @return Error code of the conversion or EOK on success.
  */
-int log_level_from_str(const char *name, log_level_t *level_out)
+errno_t log_level_from_str(const char *name, log_level_t *level_out)
 {
 	log_level_t level = LVL_FATAL;
@@ -160,5 +160,5 @@
  * @param prog_name Program name, will be printed as part of message
  */
-int log_init(const char *prog_name)
+errno_t log_init(const char *prog_name)
 {
 	log_prog_name = str_dup(prog_name);
@@ -198,6 +198,6 @@
 	aid_t reg_msg = async_send_1(exchange, LOGGER_WRITER_CREATE_LOG,
 	    parent, &answer);
-	int rc = async_data_write_start(exchange, name, str_size(name));
-	int reg_msg_rc;
+	errno_t rc = async_data_write_start(exchange, name, str_size(name));
+	errno_t reg_msg_rc;
 	async_wait_for(reg_msg, &reg_msg_rc);
 
Index: uspace/lib/c/generic/io/logctl.c
===================================================================
--- uspace/lib/c/generic/io/logctl.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/io/logctl.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -43,5 +43,5 @@
 static async_sess_t *logger_session = NULL;
 
-static int start_logger_exchange(async_exch_t **exchange_out)
+static errno_t start_logger_exchange(async_exch_t **exchange_out)
 {
 	assert(exchange_out != NULL);
@@ -78,12 +78,12 @@
  * @return Error code of the conversion or EOK on success.
  */
-int logctl_set_default_level(log_level_t new_level)
+errno_t logctl_set_default_level(log_level_t new_level)
 {
 	async_exch_t *exchange = NULL;
-	int rc = start_logger_exchange(&exchange);
+	errno_t rc = start_logger_exchange(&exchange);
 	if (rc != EOK)
 		return rc;
 
-	rc = (int) async_req_1_0(exchange,
+	rc = (errno_t) async_req_1_0(exchange,
 	    LOGGER_CONTROL_SET_DEFAULT_LEVEL, new_level);
 
@@ -101,8 +101,8 @@
  * @return Error code of the conversion or EOK on success.
  */
-int logctl_set_log_level(const char *logname, log_level_t new_level)
+errno_t logctl_set_log_level(const char *logname, log_level_t new_level)
 {
 	async_exch_t *exchange = NULL;
-	int rc = start_logger_exchange(&exchange);
+	errno_t rc = start_logger_exchange(&exchange);
 	if (rc != EOK)
 		return rc;
@@ -111,5 +111,5 @@
 	    new_level, NULL);
 	rc = async_data_write_start(exchange, logname, str_size(logname));
-	int reg_msg_rc;
+	errno_t reg_msg_rc;
 	async_wait_for(reg_msg, &reg_msg_rc);
 
@@ -119,5 +119,5 @@
 		return rc;
 
-	return (int) reg_msg_rc;
+	return (errno_t) reg_msg_rc;
 }
 
@@ -126,8 +126,8 @@
  * @return Error code or EOK on success.
  */
-int logctl_set_root(void)
+errno_t logctl_set_root(void)
 {
 	async_exch_t *exchange = NULL;
-	int rc = start_logger_exchange(&exchange);
+	errno_t rc = start_logger_exchange(&exchange);
 	if (rc != EOK)
 		return rc;
@@ -137,5 +137,5 @@
 	rc = vfs_pass_handle(vfs_exch, vfs_root(), exchange);
 	vfs_exchange_end(vfs_exch);
-	int reg_msg_rc;
+	errno_t reg_msg_rc;
 	async_wait_for(reg_msg, &reg_msg_rc);
 
@@ -145,5 +145,5 @@
 		return rc;
 
-	return (int) reg_msg_rc;
+	return (errno_t) reg_msg_rc;
 }
 
Index: uspace/lib/c/generic/io/output.c
===================================================================
--- uspace/lib/c/generic/io/output.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/io/output.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -40,8 +40,8 @@
 #include <io/output.h>
 
-int output_yield(async_sess_t *sess)
+errno_t output_yield(async_sess_t *sess)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
-	int ret = async_req_0_0(exch, OUTPUT_YIELD);
+	errno_t ret = async_req_0_0(exch, OUTPUT_YIELD);
 	async_exchange_end(exch);
 	
@@ -49,8 +49,8 @@
 }
 
-int output_claim(async_sess_t *sess)
+errno_t output_claim(async_sess_t *sess)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
-	int ret = async_req_0_0(exch, OUTPUT_CLAIM);
+	errno_t ret = async_req_0_0(exch, OUTPUT_CLAIM);
 	async_exchange_end(exch);
 	
@@ -58,8 +58,8 @@
 }
 
-int output_get_dimensions(async_sess_t *sess, sysarg_t *maxx, sysarg_t *maxy)
+errno_t output_get_dimensions(async_sess_t *sess, sysarg_t *maxx, sysarg_t *maxy)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
-	int ret = async_req_0_2(exch, OUTPUT_GET_DIMENSIONS, maxx, maxy);
+	errno_t ret = async_req_0_2(exch, OUTPUT_GET_DIMENSIONS, maxx, maxy);
 	async_exchange_end(exch);
 	
@@ -67,10 +67,10 @@
 }
 
-int output_get_caps(async_sess_t *sess, console_caps_t *ccaps)
+errno_t output_get_caps(async_sess_t *sess, console_caps_t *ccaps)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
 	
 	sysarg_t rv;
-	int ret = async_req_0_1(exch, OUTPUT_GET_CAPS, &rv);
+	errno_t ret = async_req_0_1(exch, OUTPUT_GET_CAPS, &rv);
 	
 	async_exchange_end(exch);
@@ -89,10 +89,10 @@
 	ipc_call_t answer;
 	aid_t req = async_send_0(exch, OUTPUT_FRONTBUF_CREATE, &answer);
-	int rc = async_share_out_start(exch, frontbuf, AS_AREA_READ
+	errno_t rc = async_share_out_start(exch, frontbuf, AS_AREA_READ
 	    | AS_AREA_WRITE | AS_AREA_CACHEABLE);
 	
 	async_exchange_end(exch);
 	
-	int ret;
+	errno_t ret;
 	async_wait_for(req, &ret);
 	
@@ -103,8 +103,8 @@
 }
 
-int output_set_style(async_sess_t *sess, console_style_t style)
+errno_t output_set_style(async_sess_t *sess, console_style_t style)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
-	int ret = async_req_1_0(exch, OUTPUT_SET_STYLE, style);
+	errno_t ret = async_req_1_0(exch, OUTPUT_SET_STYLE, style);
 	async_exchange_end(exch);
 	
@@ -112,8 +112,8 @@
 }
 
-int output_cursor_update(async_sess_t *sess, frontbuf_handle_t frontbuf)
+errno_t output_cursor_update(async_sess_t *sess, frontbuf_handle_t frontbuf)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
-	int ret = async_req_1_0(exch, OUTPUT_CURSOR_UPDATE, frontbuf);
+	errno_t ret = async_req_1_0(exch, OUTPUT_CURSOR_UPDATE, frontbuf);
 	async_exchange_end(exch);
 	
@@ -121,8 +121,8 @@
 }
 
-int output_update(async_sess_t *sess, frontbuf_handle_t frontbuf)
+errno_t output_update(async_sess_t *sess, frontbuf_handle_t frontbuf)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
-	int ret = async_req_1_0(exch, OUTPUT_UPDATE, frontbuf);
+	errno_t ret = async_req_1_0(exch, OUTPUT_UPDATE, frontbuf);
 	async_exchange_end(exch);
 	
@@ -130,9 +130,9 @@
 }
 
-int output_damage(async_sess_t *sess, frontbuf_handle_t frontbuf, sysarg_t col,
+errno_t output_damage(async_sess_t *sess, frontbuf_handle_t frontbuf, sysarg_t col,
     sysarg_t row, sysarg_t cols, sysarg_t rows)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
-	int ret = async_req_5_0(exch, OUTPUT_DAMAGE, frontbuf, col, row,
+	errno_t ret = async_req_5_0(exch, OUTPUT_DAMAGE, frontbuf, col, row,
 	    cols, rows);
 	async_exchange_end(exch);
Index: uspace/lib/c/generic/io/serial.c
===================================================================
--- uspace/lib/c/generic/io/serial.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/io/serial.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -41,5 +41,5 @@
  * @return EOK on success, ENOMEM if out of memory, EIO on I/O error
  */
-int serial_open(async_sess_t *sess, serial_t **rserial)
+errno_t serial_open(async_sess_t *sess, serial_t **rserial)
 {
 	serial_t *serial;
@@ -68,10 +68,10 @@
 
 /** Set serial port communication properties. */
-int serial_set_comm_props(serial_t *serial, unsigned rate,
+errno_t serial_set_comm_props(serial_t *serial, unsigned rate,
     serial_parity_t parity, unsigned datab, unsigned stopb)
 {
 	async_exch_t *exch = async_exchange_begin(serial->sess);
 
-	int rc = async_req_4_0(exch, SERIAL_SET_COM_PROPS, rate, parity,
+	errno_t rc = async_req_4_0(exch, SERIAL_SET_COM_PROPS, rate, parity,
 	    datab, stopb);
 
@@ -81,5 +81,5 @@
 
 /** Get serial port communication properties. */
-int serial_get_comm_props(serial_t *serial, unsigned *rrate,
+errno_t serial_get_comm_props(serial_t *serial, unsigned *rrate,
     serial_parity_t *rparity, unsigned *rdatab, unsigned *rstopb)
 {
@@ -87,5 +87,5 @@
 	sysarg_t rate, parity, datab, stopb;
 
-	int rc = async_req_0_4(exch, SERIAL_GET_COM_PROPS, &rate, &parity,
+	errno_t rc = async_req_0_4(exch, SERIAL_GET_COM_PROPS, &rate, &parity,
 	    &datab, &stopb);
 
Index: uspace/lib/c/generic/io/table.c
===================================================================
--- uspace/lib/c/generic/io/table.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/io/table.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -51,5 +51,5 @@
  * @return EOK on success, ENOMEM if out of memory
  */
-static int table_add_row(table_t *table, table_row_t **rrow)
+static errno_t table_add_row(table_t *table, table_row_t **rrow)
 {
 	table_row_t *row;
@@ -74,5 +74,5 @@
  * @return EOK on success, ENOMEM if out of memory
  */
-static int table_row_add_cell(table_row_t *row, table_cell_t **rcell)
+static errno_t table_row_add_cell(table_row_t *row, table_cell_t **rcell)
 {
 	table_cell_t *cell;
@@ -99,5 +99,5 @@
  * @return EOK on success, ENOMEM if out of memory
  */
-static int table_add_column(table_t *table, table_column_t **rcolumn)
+static errno_t table_add_column(table_t *table, table_column_t **rcolumn)
 {
 	table_column_t *column;
@@ -121,7 +121,7 @@
  * @return EOK on success, ENOMEM if out of memory
  */
-static int table_write_next_cell(table_t *table)
-{
-	int rc;
+static errno_t table_write_next_cell(table_t *table)
+{
+	errno_t rc;
 
 	rc = table_row_add_cell(table->wrow, &table->wcell);
@@ -155,7 +155,7 @@
  * @return EOK on success, ENOMEM if out of memory
  */
-static int table_write_next_row(table_t *table)
-{
-	int rc;
+static errno_t table_write_next_row(table_t *table)
+{
+	errno_t rc;
 
 	rc = table_add_row(table, &table->wrow);
@@ -272,5 +272,5 @@
  * @return EOK on success, ENOMEM if out of memory
  */
-static int table_cell_extend(table_cell_t *cell, const char *str, size_t len)
+static errno_t table_cell_extend(table_cell_t *cell, const char *str, size_t len)
 {
 	char *cstr;
@@ -298,8 +298,8 @@
  * @return EOK on success, ENOMEM if out of memory
  */
-int table_create(table_t **rtable)
+errno_t table_create(table_t **rtable)
 {
 	table_t *table;
-	int rc;
+	errno_t rc;
 
 	table = calloc(1, sizeof(table_t));
@@ -377,5 +377,5 @@
  * @return EOK on success, EIO on I/O error
  */
-int table_print_out(table_t *table, FILE *f)
+errno_t table_print_out(table_t *table, FILE *f)
 {
 	table_row_t *row;
@@ -474,8 +474,8 @@
  * @return EOK on success, ENOMEM if out of memory
  */
-int table_printf(table_t *table, const char *fmt, ...)
+errno_t table_printf(table_t *table, const char *fmt, ...)
 {
 	va_list args;
-	int rc;
+	errno_t rc;
 	int ret;
 	char *str;
@@ -548,5 +548,5 @@
  * @return EOK if no error indicated, non-zero error code otherwise
  */
-int table_get_error(table_t *table)
+errno_t table_get_error(table_t *table)
 {
 	return table->error;
Index: uspace/lib/c/generic/io/visualizer.c
===================================================================
--- uspace/lib/c/generic/io/visualizer.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/io/visualizer.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -39,23 +39,23 @@
 #include <io/visualizer.h>
 
-int visualizer_claim(async_sess_t *sess, sysarg_t notif_callback_id)
-{
-	async_exch_t *exch = async_exchange_begin(sess);
-	int ret = async_req_1_0(exch, VISUALIZER_CLAIM, notif_callback_id);
-	async_exchange_end(exch);
-
-	return ret;
-}
-
-int visualizer_yield(async_sess_t *sess)
-{
-	async_exch_t *exch = async_exchange_begin(sess);
-	int ret = async_req_0_0(exch, VISUALIZER_YIELD);
-	async_exchange_end(exch);
-
-	return ret;
-}
-
-int visualizer_enumerate_modes(async_sess_t *sess, vslmode_t *mode, sysarg_t nth)
+errno_t visualizer_claim(async_sess_t *sess, sysarg_t notif_callback_id)
+{
+	async_exch_t *exch = async_exchange_begin(sess);
+	errno_t ret = async_req_1_0(exch, VISUALIZER_CLAIM, notif_callback_id);
+	async_exchange_end(exch);
+
+	return ret;
+}
+
+errno_t visualizer_yield(async_sess_t *sess)
+{
+	async_exch_t *exch = async_exchange_begin(sess);
+	errno_t ret = async_req_0_0(exch, VISUALIZER_YIELD);
+	async_exchange_end(exch);
+
+	return ret;
+}
+
+errno_t visualizer_enumerate_modes(async_sess_t *sess, vslmode_t *mode, sysarg_t nth)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
@@ -64,21 +64,21 @@
 	aid_t req = async_send_1(exch, VISUALIZER_ENUMERATE_MODES, nth, &answer);
 
-	int rc = async_data_read_start(exch, mode, sizeof(vslmode_t));
-
-	async_exchange_end(exch);
-
-	int ret;
-	async_wait_for(req, &ret);
-
-	if (rc != EOK) {
-		return rc;
-	} else if (ret != EOK) {
-		return ret;
-	} else {
-		return EOK;
-	}
-}
-
-int visualizer_get_default_mode(async_sess_t *sess, vslmode_t *mode)
+	errno_t rc = async_data_read_start(exch, mode, sizeof(vslmode_t));
+
+	async_exchange_end(exch);
+
+	errno_t ret;
+	async_wait_for(req, &ret);
+
+	if (rc != EOK) {
+		return rc;
+	} else if (ret != EOK) {
+		return ret;
+	} else {
+		return EOK;
+	}
+}
+
+errno_t visualizer_get_default_mode(async_sess_t *sess, vslmode_t *mode)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
@@ -87,21 +87,21 @@
 	aid_t req = async_send_0(exch, VISUALIZER_GET_DEFAULT_MODE, &answer);
 
-	int rc = async_data_read_start(exch, mode, sizeof(vslmode_t));
-
-	async_exchange_end(exch);
-
-	int ret;
-	async_wait_for(req, &ret);
-
-	if (rc != EOK) {
-		return rc;
-	} else if (ret != EOK) {
-		return ret;
-	} else {
-		return EOK;
-	}
-}
-
-int visualizer_get_current_mode(async_sess_t *sess, vslmode_t *mode)
+	errno_t rc = async_data_read_start(exch, mode, sizeof(vslmode_t));
+
+	async_exchange_end(exch);
+
+	errno_t ret;
+	async_wait_for(req, &ret);
+
+	if (rc != EOK) {
+		return rc;
+	} else if (ret != EOK) {
+		return ret;
+	} else {
+		return EOK;
+	}
+}
+
+errno_t visualizer_get_current_mode(async_sess_t *sess, vslmode_t *mode)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
@@ -110,21 +110,21 @@
 	aid_t req = async_send_0(exch, VISUALIZER_GET_CURRENT_MODE, &answer);
 
-	int rc = async_data_read_start(exch, mode, sizeof(vslmode_t));
-
-	async_exchange_end(exch);
-
-	int ret;
-	async_wait_for(req, &ret);
-
-	if (rc != EOK) {
-		return rc;
-	} else if (ret != EOK) {
-		return ret;
-	} else {
-		return EOK;
-	}
-}
-
-int visualizer_get_mode(async_sess_t *sess, vslmode_t *mode, sysarg_t index)
+	errno_t rc = async_data_read_start(exch, mode, sizeof(vslmode_t));
+
+	async_exchange_end(exch);
+
+	errno_t ret;
+	async_wait_for(req, &ret);
+
+	if (rc != EOK) {
+		return rc;
+	} else if (ret != EOK) {
+		return ret;
+	} else {
+		return EOK;
+	}
+}
+
+errno_t visualizer_get_mode(async_sess_t *sess, vslmode_t *mode, sysarg_t index)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
@@ -133,21 +133,21 @@
 	aid_t req = async_send_1(exch, VISUALIZER_GET_MODE, index, &answer);
 
-	int rc = async_data_read_start(exch, mode, sizeof(vslmode_t));
-
-	async_exchange_end(exch);
-
-	int ret;
-	async_wait_for(req, &ret);
-
-	if (rc != EOK) {
-		return rc;
-	} else if (ret != EOK) {
-		return ret;
-	} else {
-		return EOK;
-	}
-}
-
-int visualizer_set_mode(async_sess_t *sess, sysarg_t index, sysarg_t version, void *cells)
+	errno_t rc = async_data_read_start(exch, mode, sizeof(vslmode_t));
+
+	async_exchange_end(exch);
+
+	errno_t ret;
+	async_wait_for(req, &ret);
+
+	if (rc != EOK) {
+		return rc;
+	} else if (ret != EOK) {
+		return ret;
+	} else {
+		return EOK;
+	}
+}
+
+errno_t visualizer_set_mode(async_sess_t *sess, sysarg_t index, sysarg_t version, void *cells)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
@@ -156,21 +156,21 @@
 	aid_t req = async_send_2(exch, VISUALIZER_SET_MODE, index, version, &answer);
 
-	int rc = async_share_out_start(exch, cells, AS_AREA_READ | AS_AREA_CACHEABLE);
-
-	async_exchange_end(exch);
-
-	int ret;
-	async_wait_for(req, &ret);
-
-	if (rc != EOK) {
-		return rc;
-	} else if (ret != EOK) {
-		return ret;
-	} else {
-		return EOK;
-	}
-}
-
-int visualizer_update_damaged_region(async_sess_t *sess,
+	errno_t rc = async_share_out_start(exch, cells, AS_AREA_READ | AS_AREA_CACHEABLE);
+
+	async_exchange_end(exch);
+
+	errno_t ret;
+	async_wait_for(req, &ret);
+
+	if (rc != EOK) {
+		return rc;
+	} else if (ret != EOK) {
+		return ret;
+	} else {
+		return EOK;
+	}
+}
+
+errno_t visualizer_update_damaged_region(async_sess_t *sess,
     sysarg_t x, sysarg_t y, sysarg_t width, sysarg_t height,
 	sysarg_t x_offset, sysarg_t y_offset)
@@ -182,5 +182,5 @@
 
 	async_exch_t *exch = async_exchange_begin(sess);
-	int ret = async_req_5_0(exch, VISUALIZER_UPDATE_DAMAGED_REGION,
+	errno_t ret = async_req_5_0(exch, VISUALIZER_UPDATE_DAMAGED_REGION,
 	    x, y, width, height, offsets);
 	async_exchange_end(exch);
@@ -189,17 +189,17 @@
 }
 
-int visualizer_suspend(async_sess_t *sess)
-{
-	async_exch_t *exch = async_exchange_begin(sess);
-	int ret = async_req_0_0(exch, VISUALIZER_SUSPEND);
-	async_exchange_end(exch);
-
-	return ret;
-}
-
-int visualizer_wakeup(async_sess_t *sess)
-{
-	async_exch_t *exch = async_exchange_begin(sess);
-	int ret = async_req_0_0(exch, VISUALIZER_WAKE_UP);
+errno_t visualizer_suspend(async_sess_t *sess)
+{
+	async_exch_t *exch = async_exchange_begin(sess);
+	errno_t ret = async_req_0_0(exch, VISUALIZER_SUSPEND);
+	async_exchange_end(exch);
+
+	return ret;
+}
+
+errno_t visualizer_wakeup(async_sess_t *sess)
+{
+	async_exch_t *exch = async_exchange_begin(sess);
+	errno_t ret = async_req_0_0(exch, VISUALIZER_WAKE_UP);
 	async_exchange_end(exch);
 
Index: uspace/lib/c/generic/io/window.c
===================================================================
--- uspace/lib/c/generic/io/window.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/io/window.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -40,9 +40,9 @@
 #include <stdio.h>
 
-int win_register(async_sess_t *sess, window_flags_t flags, service_id_t *in,
+errno_t win_register(async_sess_t *sess, window_flags_t flags, service_id_t *in,
     service_id_t *out)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
-	int ret = async_req_1_2(exch, WINDOW_REGISTER, flags, in, out);
+	errno_t ret = async_req_1_2(exch, WINDOW_REGISTER, flags, in, out);
 	async_exchange_end(exch);
 	
@@ -50,5 +50,5 @@
 }
 
-int win_get_event(async_sess_t *sess, window_event_t *event)
+errno_t win_get_event(async_sess_t *sess, window_event_t *event)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
@@ -57,9 +57,9 @@
 	aid_t req = async_send_0(exch, WINDOW_GET_EVENT, &answer);
 
-	int rc = async_data_read_start(exch, event, sizeof(window_event_t));
+	errno_t rc = async_data_read_start(exch, event, sizeof(window_event_t));
 
 	async_exchange_end(exch);
 
-	int ret;
+	errno_t ret;
 	async_wait_for(req, &ret);
 
@@ -73,9 +73,9 @@
 }
 
-int win_damage(async_sess_t *sess,
+errno_t win_damage(async_sess_t *sess,
     sysarg_t x, sysarg_t y, sysarg_t width, sysarg_t height)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
-	int ret = async_req_4_0(exch, WINDOW_DAMAGE, x, y, width, height);
+	errno_t ret = async_req_4_0(exch, WINDOW_DAMAGE, x, y, width, height);
 	async_exchange_end(exch);
 
@@ -83,8 +83,8 @@
 }
 
-int win_grab(async_sess_t *sess, sysarg_t pos_id, sysarg_t grab_flags)
+errno_t win_grab(async_sess_t *sess, sysarg_t pos_id, sysarg_t grab_flags)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
-	int ret = async_req_2_0(exch, WINDOW_GRAB, pos_id, grab_flags);
+	errno_t ret = async_req_2_0(exch, WINDOW_GRAB, pos_id, grab_flags);
 	async_exchange_end(exch);
 
@@ -92,5 +92,5 @@
 }
 
-int win_resize(async_sess_t *sess, sysarg_t x, sysarg_t y, sysarg_t width,
+errno_t win_resize(async_sess_t *sess, sysarg_t x, sysarg_t y, sysarg_t width,
     sysarg_t height, window_placement_flags_t placement_flags, void *cells)
 {
@@ -101,9 +101,9 @@
 	    (sysarg_t) placement_flags, &answer);
 	
-	int rc = async_share_out_start(exch, cells, AS_AREA_READ | AS_AREA_CACHEABLE);
+	errno_t rc = async_share_out_start(exch, cells, AS_AREA_READ | AS_AREA_CACHEABLE);
 	
 	async_exchange_end(exch);
 	
-	int ret;
+	errno_t ret;
 	async_wait_for(req, &ret);
 	
@@ -116,8 +116,8 @@
 }
 
-int win_close(async_sess_t *sess)
+errno_t win_close(async_sess_t *sess)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
-	int ret = async_req_0_0(exch, WINDOW_CLOSE);
+	errno_t ret = async_req_0_0(exch, WINDOW_CLOSE);
 	async_exchange_end(exch);
 
@@ -125,8 +125,8 @@
 }
 
-int win_close_request(async_sess_t *sess)
+errno_t win_close_request(async_sess_t *sess)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
-	int ret = async_req_0_0(exch, WINDOW_CLOSE_REQUEST);
+	errno_t ret = async_req_0_0(exch, WINDOW_CLOSE_REQUEST);
 	async_exchange_end(exch);
 
Index: uspace/lib/c/generic/ipc.c
===================================================================
--- uspace/lib/c/generic/ipc.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/ipc.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -93,5 +93,5 @@
  * @param call     Structure returned by ipc_prepare_async().
  */
-static inline void ipc_finish_async(int rc, async_call_t *call)
+static inline void ipc_finish_async(errno_t rc, async_call_t *call)
 {
 	if (!call) {
@@ -136,5 +136,5 @@
 		return;
 	
-	int rc = (int) __SYSCALL6(SYS_IPC_CALL_ASYNC_FAST, phandle, imethod, arg1,
+	errno_t rc = (errno_t) __SYSCALL6(SYS_IPC_CALL_ASYNC_FAST, phandle, imethod, arg1,
 	    arg2, arg3, (sysarg_t) call);
 	
@@ -175,5 +175,5 @@
 	IPC_SET_ARG5(call->msg.data, arg5);
 	
-	int rc = (int) __SYSCALL3(SYS_IPC_CALL_ASYNC_SLOW, phandle,
+	errno_t rc = (errno_t) __SYSCALL3(SYS_IPC_CALL_ASYNC_SLOW, phandle,
 	    (sysarg_t) &call->msg.data, (sysarg_t) call);
 	
@@ -197,8 +197,8 @@
  *
  */
-int ipc_answer_fast(cap_handle_t chandle, int retval, sysarg_t arg1,
+errno_t ipc_answer_fast(cap_handle_t chandle, errno_t retval, sysarg_t arg1,
     sysarg_t arg2, sysarg_t arg3, sysarg_t arg4)
 {
-	return (int) __SYSCALL6(SYS_IPC_ANSWER_FAST, chandle, (sysarg_t) retval, arg1, arg2,
+	return (errno_t) __SYSCALL6(SYS_IPC_ANSWER_FAST, chandle, (sysarg_t) retval, arg1, arg2,
 	    arg3, arg4);
 }
@@ -218,5 +218,5 @@
  *
  */
-int ipc_answer_slow(cap_handle_t chandle, int retval, sysarg_t arg1,
+errno_t ipc_answer_slow(cap_handle_t chandle, errno_t retval, sysarg_t arg1,
     sysarg_t arg2, sysarg_t arg3, sysarg_t arg4, sysarg_t arg5)
 {
@@ -230,5 +230,5 @@
 	IPC_SET_ARG5(data, arg5);
 	
-	return (int) __SYSCALL2(SYS_IPC_ANSWER_SLOW, chandle, (sysarg_t) &data);
+	return (errno_t) __SYSCALL2(SYS_IPC_ANSWER_SLOW, chandle, (sysarg_t) &data);
 }
 
@@ -258,7 +258,7 @@
  * @return  Error code.
  */
-int ipc_wait_cycle(ipc_call_t *call, sysarg_t usec, unsigned int flags)
-{
-	int rc = (int) __SYSCALL3(SYS_IPC_WAIT, (sysarg_t) call, usec, flags);
+errno_t ipc_wait_cycle(ipc_call_t *call, sysarg_t usec, unsigned int flags)
+{
+	errno_t rc = (errno_t) __SYSCALL3(SYS_IPC_WAIT, (sysarg_t) call, usec, flags);
 	
 	/* Handle received answers */
@@ -289,7 +289,7 @@
  *
  */
-int ipc_wait_for_call_timeout(ipc_call_t *call, sysarg_t usec)
-{
-	int rc;
+errno_t ipc_wait_for_call_timeout(ipc_call_t *call, sysarg_t usec)
+{
+	errno_t rc;
 	
 	do {
@@ -309,7 +309,7 @@
  *
  */
-int ipc_trywait_for_call(ipc_call_t *call)
-{
-	int rc;
+errno_t ipc_trywait_for_call(ipc_call_t *call)
+{
+	errno_t rc;
 	
 	do {
@@ -328,7 +328,7 @@
  *
  */
-int ipc_hangup(cap_handle_t phandle)
-{
-	return (int) __SYSCALL1(SYS_IPC_HANGUP, phandle);
+errno_t ipc_hangup(cap_handle_t phandle)
+{
+	return (errno_t) __SYSCALL1(SYS_IPC_HANGUP, phandle);
 }
 
@@ -350,12 +350,12 @@
  *
  */
-int ipc_forward_fast(cap_handle_t chandle, cap_handle_t phandle,
+errno_t ipc_forward_fast(cap_handle_t chandle, cap_handle_t phandle,
     sysarg_t imethod, sysarg_t arg1, sysarg_t arg2, unsigned int mode)
 {
-	return (int) __SYSCALL6(SYS_IPC_FORWARD_FAST, chandle, phandle, imethod, arg1,
+	return (errno_t) __SYSCALL6(SYS_IPC_FORWARD_FAST, chandle, phandle, imethod, arg1,
 	    arg2, mode);
 }
 
-int ipc_forward_slow(cap_handle_t chandle, cap_handle_t phandle,
+errno_t ipc_forward_slow(cap_handle_t chandle, cap_handle_t phandle,
     sysarg_t imethod, sysarg_t arg1, sysarg_t arg2, sysarg_t arg3,
     sysarg_t arg4, sysarg_t arg5, unsigned int mode)
@@ -370,5 +370,5 @@
 	IPC_SET_ARG5(data, arg5);
 	
-	return (int) __SYSCALL4(SYS_IPC_FORWARD_SLOW, chandle, phandle,
+	return (errno_t) __SYSCALL4(SYS_IPC_FORWARD_SLOW, chandle, phandle,
 	    (sysarg_t) &data, mode);
 }
@@ -377,7 +377,7 @@
  *
  */
-int ipc_connect_kbox(task_id_t id, cap_handle_t *phone)
-{
-	return (int) __SYSCALL2(SYS_IPC_CONNECT_KBOX, (sysarg_t) &id, (sysarg_t) phone);
+errno_t ipc_connect_kbox(task_id_t id, cap_handle_t *phone)
+{
+	return (errno_t) __SYSCALL2(SYS_IPC_CONNECT_KBOX, (sysarg_t) &id, (sysarg_t) phone);
 }
 
Index: uspace/lib/c/generic/iplink.c
===================================================================
--- uspace/lib/c/generic/iplink.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/iplink.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -47,5 +47,5 @@
 static void iplink_cb_conn(ipc_callid_t iid, ipc_call_t *icall, void *arg);
 
-int iplink_open(async_sess_t *sess, iplink_ev_ops_t *ev_ops, void *arg,
+errno_t iplink_open(async_sess_t *sess, iplink_ev_ops_t *ev_ops, void *arg,
     iplink_t **riplink)
 {
@@ -61,5 +61,5 @@
 
 	port_id_t port;
-	int rc = async_create_callback_port(exch, INTERFACE_IPLINK_CB, 0, 0,
+	errno_t rc = async_create_callback_port(exch, INTERFACE_IPLINK_CB, 0, 0,
 	    iplink_cb_conn, iplink, &port);
 	
@@ -85,5 +85,5 @@
 }
 
-int iplink_send(iplink_t *iplink, iplink_sdu_t *sdu)
+errno_t iplink_send(iplink_t *iplink, iplink_sdu_t *sdu)
 {
 	async_exch_t *exch = async_exchange_begin(iplink->sess);
@@ -93,20 +93,20 @@
 	    (sysarg_t) sdu->dest, &answer);
 	
-	int rc = async_data_write_start(exch, sdu->data, sdu->size);
-	
-	async_exchange_end(exch);
-	
-	if (rc != EOK) {
-		async_forget(req);
-		return rc;
-	}
-	
-	int retval;
-	async_wait_for(req, &retval);
-	
-	return retval;
-}
-
-int iplink_send6(iplink_t *iplink, iplink_sdu6_t *sdu)
+	errno_t rc = async_data_write_start(exch, sdu->data, sdu->size);
+	
+	async_exchange_end(exch);
+	
+	if (rc != EOK) {
+		async_forget(req);
+		return rc;
+	}
+	
+	errno_t retval;
+	async_wait_for(req, &retval);
+	
+	return retval;
+}
+
+errno_t iplink_send6(iplink_t *iplink, iplink_sdu6_t *sdu)
 {
 	async_exch_t *exch = async_exchange_begin(iplink->sess);
@@ -115,5 +115,5 @@
 	aid_t req = async_send_0(exch, IPLINK_SEND6, &answer);
 	
-	int rc = async_data_write_start(exch, &sdu->dest, sizeof(addr48_t));
+	errno_t rc = async_data_write_start(exch, &sdu->dest, sizeof(addr48_t));
 	if (rc != EOK) {
 		async_exchange_end(exch);
@@ -131,16 +131,16 @@
 	}
 	
-	int retval;
-	async_wait_for(req, &retval);
-	
-	return retval;
-}
-
-int iplink_get_mtu(iplink_t *iplink, size_t *rmtu)
+	errno_t retval;
+	async_wait_for(req, &retval);
+	
+	return retval;
+}
+
+errno_t iplink_get_mtu(iplink_t *iplink, size_t *rmtu)
 {
 	async_exch_t *exch = async_exchange_begin(iplink->sess);
 	
 	sysarg_t mtu;
-	int rc = async_req_0_1(exch, IPLINK_GET_MTU, &mtu);
+	errno_t rc = async_req_0_1(exch, IPLINK_GET_MTU, &mtu);
 	
 	async_exchange_end(exch);
@@ -153,5 +153,5 @@
 }
 
-int iplink_get_mac48(iplink_t *iplink, addr48_t *mac)
+errno_t iplink_get_mac48(iplink_t *iplink, addr48_t *mac)
 {
 	async_exch_t *exch = async_exchange_begin(iplink->sess);
@@ -160,5 +160,5 @@
 	aid_t req = async_send_0(exch, IPLINK_GET_MAC48, &answer);
 	
-	int rc = async_data_read_start(exch, mac, sizeof(addr48_t));
+	errno_t rc = async_data_read_start(exch, mac, sizeof(addr48_t));
 	
 	loc_exchange_end(exch);
@@ -169,11 +169,11 @@
 	}
 	
-	int retval;
-	async_wait_for(req, &retval);
-	
-	return retval;
-}
-
-int iplink_set_mac48(iplink_t *iplink, addr48_t mac)
+	errno_t retval;
+	async_wait_for(req, &retval);
+	
+	return retval;
+}
+
+errno_t iplink_set_mac48(iplink_t *iplink, addr48_t mac)
 {
 	async_exch_t *exch = async_exchange_begin(iplink->sess);
@@ -182,5 +182,5 @@
 	aid_t req = async_send_0(exch, IPLINK_GET_MAC48, &answer);
 	
-	int rc = async_data_read_start(exch, mac, sizeof(addr48_t));
+	errno_t rc = async_data_read_start(exch, mac, sizeof(addr48_t));
 	
 	loc_exchange_end(exch);
@@ -191,12 +191,12 @@
 	}
 	
-	int retval;
-	async_wait_for(req, &retval);
-	
-	return retval;
-}
-
-
-int iplink_addr_add(iplink_t *iplink, inet_addr_t *addr)
+	errno_t retval;
+	async_wait_for(req, &retval);
+	
+	return retval;
+}
+
+
+errno_t iplink_addr_add(iplink_t *iplink, inet_addr_t *addr)
 {
 	async_exch_t *exch = async_exchange_begin(iplink->sess);
@@ -205,19 +205,19 @@
 	aid_t req = async_send_0(exch, IPLINK_ADDR_ADD, &answer);
 	
-	int rc = async_data_write_start(exch, addr, sizeof(inet_addr_t));
-	async_exchange_end(exch);
-	
-	if (rc != EOK) {
-		async_forget(req);
-		return rc;
-	}
-	
-	int retval;
-	async_wait_for(req, &retval);
-	
-	return retval;
-}
-
-int iplink_addr_remove(iplink_t *iplink, inet_addr_t *addr)
+	errno_t rc = async_data_write_start(exch, addr, sizeof(inet_addr_t));
+	async_exchange_end(exch);
+	
+	if (rc != EOK) {
+		async_forget(req);
+		return rc;
+	}
+	
+	errno_t retval;
+	async_wait_for(req, &retval);
+	
+	return retval;
+}
+
+errno_t iplink_addr_remove(iplink_t *iplink, inet_addr_t *addr)
 {
 	async_exch_t *exch = async_exchange_begin(iplink->sess);
@@ -226,13 +226,13 @@
 	aid_t req = async_send_0(exch, IPLINK_ADDR_REMOVE, &answer);
 	
-	int rc = async_data_write_start(exch, addr, sizeof(inet_addr_t));
-	async_exchange_end(exch);
-	
-	if (rc != EOK) {
-		async_forget(req);
-		return rc;
-	}
-	
-	int retval;
+	errno_t rc = async_data_write_start(exch, addr, sizeof(inet_addr_t));
+	async_exchange_end(exch);
+	
+	if (rc != EOK) {
+		async_forget(req);
+		return rc;
+	}
+	
+	errno_t retval;
 	async_wait_for(req, &retval);
 	
@@ -252,5 +252,5 @@
 	ip_ver_t ver = IPC_GET_ARG1(*icall);
 	
-	int rc = async_data_write_accept(&sdu.data, false, 0, 0, 0,
+	errno_t rc = async_data_write_accept(&sdu.data, false, 0, 0, 0,
 	    &sdu.size);
 	if (rc != EOK) {
@@ -270,5 +270,5 @@
 	size_t size;
 	
-	int rc = async_data_write_accept((void **)&addr, false,
+	errno_t rc = async_data_write_accept((void **)&addr, false,
 	    sizeof(addr48_t), sizeof(addr48_t), 0, &size);
 	if (rc != EOK) {
Index: uspace/lib/c/generic/iplink_srv.c
===================================================================
--- uspace/lib/c/generic/iplink_srv.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/iplink_srv.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -46,5 +46,5 @@
 {
 	size_t mtu;
-	int rc = srv->ops->get_mtu(srv, &mtu);
+	errno_t rc = srv->ops->get_mtu(srv, &mtu);
 	async_answer_1(callid, rc, mtu);
 }
@@ -54,5 +54,5 @@
 {
 	addr48_t mac;
-	int rc = srv->ops->get_mac48(srv, &mac);
+	errno_t rc = srv->ops->get_mac48(srv, &mac);
 	if (rc != EOK) {
 		async_answer_0(iid, rc);
@@ -84,5 +84,5 @@
     ipc_call_t *icall)
 {
-	int rc;
+	errno_t rc;
 	size_t size;
 	addr48_t mac;
@@ -125,5 +125,5 @@
 	
 	inet_addr_t addr;
-	int rc = async_data_write_finalize(callid, &addr, size);
+	errno_t rc = async_data_write_finalize(callid, &addr, size);
 	if (rc != EOK) {
 		async_answer_0(callid, rc);
@@ -153,5 +153,5 @@
 	
 	inet_addr_t addr;
-	int rc = async_data_write_finalize(callid, &addr, size);
+	errno_t rc = async_data_write_finalize(callid, &addr, size);
 	if (rc != EOK) {
 		async_answer_0(callid, rc);
@@ -171,5 +171,5 @@
 	sdu.dest = IPC_GET_ARG2(*icall);
 	
-	int rc = async_data_write_accept(&sdu.data, false, 0, 0, 0,
+	errno_t rc = async_data_write_accept(&sdu.data, false, 0, 0, 0,
 	    &sdu.size);
 	if (rc != EOK) {
@@ -202,5 +202,5 @@
 	}
 	
-	int rc = async_data_write_finalize(callid, &sdu.dest, size);
+	errno_t rc = async_data_write_finalize(callid, &sdu.dest, size);
 	if (rc != EOK) {
 		async_answer_0(callid, rc);
@@ -229,8 +229,8 @@
 }
 
-int iplink_conn(ipc_callid_t iid, ipc_call_t *icall, void *arg)
+errno_t iplink_conn(ipc_callid_t iid, ipc_call_t *icall, void *arg)
 {
 	iplink_srv_t *srv = (iplink_srv_t *) arg;
-	int rc;
+	errno_t rc;
 	
 	fibril_mutex_lock(&srv->lock);
@@ -302,5 +302,5 @@
 
 /* XXX Version should be part of @a sdu */
-int iplink_ev_recv(iplink_srv_t *srv, iplink_recv_sdu_t *sdu, ip_ver_t ver)
+errno_t iplink_ev_recv(iplink_srv_t *srv, iplink_recv_sdu_t *sdu, ip_ver_t ver)
 {
 	if (srv->client_sess == NULL)
@@ -313,5 +313,5 @@
 	    &answer);
 	
-	int rc = async_data_write_start(exch, sdu->data, sdu->size);
+	errno_t rc = async_data_write_start(exch, sdu->data, sdu->size);
 	async_exchange_end(exch);
 	
@@ -321,5 +321,5 @@
 	}
 	
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	if (retval != EOK)
@@ -329,5 +329,5 @@
 }
 
-int iplink_ev_change_addr(iplink_srv_t *srv, addr48_t *addr)
+errno_t iplink_ev_change_addr(iplink_srv_t *srv, addr48_t *addr)
 {
 	if (srv->client_sess == NULL)
@@ -339,5 +339,5 @@
 	aid_t req = async_send_0(exch, IPLINK_EV_CHANGE_ADDR, &answer);
 	
-	int rc = async_data_write_start(exch, addr, sizeof(addr48_t));
+	errno_t rc = async_data_write_start(exch, addr, sizeof(addr48_t));
 	async_exchange_end(exch);
 	
@@ -347,5 +347,5 @@
 	}
 	
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	if (retval != EOK)
Index: uspace/lib/c/generic/irc.c
===================================================================
--- uspace/lib/c/generic/irc.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/irc.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -49,10 +49,10 @@
  * @return	EOK on success, EIO on failure
  */
-static int irc_init(void)
+static errno_t irc_init(void)
 {
 	category_id_t irc_cat;
 	service_id_t *svcs;
 	size_t count;
-	int rc;
+	errno_t rc;
 
 	assert(irc_sess == NULL);
@@ -91,7 +91,7 @@
  * @param irq	IRQ number
  */
-int irc_enable_interrupt(int irq)
+errno_t irc_enable_interrupt(int irq)
 {
-	int rc;
+	errno_t rc;
 
 	if (irc_sess == NULL) {
@@ -114,7 +114,7 @@
  * @param irq	IRQ number
  */
-int irc_disable_interrupt(int irq)
+errno_t irc_disable_interrupt(int irq)
 {
-	int rc;
+	errno_t rc;
 
 	if (irc_sess == NULL) {
@@ -138,7 +138,7 @@
  * @param irq	IRQ number
  */
-int irc_clear_interrupt(int irq)
+errno_t irc_clear_interrupt(int irq)
 {
-	int rc;
+	errno_t rc;
 
 	if (irc_sess == NULL) {
Index: uspace/lib/c/generic/irq.c
===================================================================
--- uspace/lib/c/generic/irq.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/irq.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -63,5 +63,5 @@
  *
  */
-int ipc_irq_subscribe(int inr, sysarg_t method, const irq_code_t *ucode,
+errno_t ipc_irq_subscribe(int inr, sysarg_t method, const irq_code_t *ucode,
     cap_handle_t *out_handle)
 {
@@ -69,5 +69,5 @@
 		ucode = &default_ucode;
 	
-	return (int) __SYSCALL4(SYS_IPC_IRQ_SUBSCRIBE, inr, method, (sysarg_t) ucode,
+	return (errno_t) __SYSCALL4(SYS_IPC_IRQ_SUBSCRIBE, inr, method, (sysarg_t) ucode,
 	    (sysarg_t) out_handle);
 }
@@ -80,7 +80,7 @@
  *
  */
-int ipc_irq_unsubscribe(cap_handle_t cap)
+errno_t ipc_irq_unsubscribe(cap_handle_t cap)
 {
-	return (int) __SYSCALL1(SYS_IPC_IRQ_UNSUBSCRIBE, cap);
+	return (errno_t) __SYSCALL1(SYS_IPC_IRQ_UNSUBSCRIBE, cap);
 }
 
Index: uspace/lib/c/generic/loader.c
===================================================================
--- uspace/lib/c/generic/loader.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/loader.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -54,7 +54,7 @@
  * @return Error code.
  */
-int loader_spawn(const char *name)
-{
-	return (int) __SYSCALL2(SYS_PROGRAM_SPAWN_LOADER,
+errno_t loader_spawn(const char *name)
+{
+	return (errno_t) __SYSCALL2(SYS_PROGRAM_SPAWN_LOADER,
 	    (sysarg_t) name, str_size(name));
 }
@@ -87,5 +87,5 @@
  *
  */
-int loader_get_task_id(loader_t *ldr, task_id_t *task_id)
+errno_t loader_get_task_id(loader_t *ldr, task_id_t *task_id)
 {
 	/* Get task ID. */
@@ -94,15 +94,15 @@
 	ipc_call_t answer;
 	aid_t req = async_send_0(exch, LOADER_GET_TASKID, &answer);
-	int rc = async_data_read_start(exch, task_id, sizeof(task_id_t));
-	
-	async_exchange_end(exch);
-	
-	if (rc != EOK) {
-		async_forget(req);
-		return (int) rc;
+	errno_t rc = async_data_read_start(exch, task_id, sizeof(task_id_t));
+	
+	async_exchange_end(exch);
+	
+	if (rc != EOK) {
+		async_forget(req);
+		return (errno_t) rc;
 	}
 	
 	async_wait_for(req, &rc);
-	return (int) rc;
+	return (errno_t) rc;
 }
 
@@ -116,5 +116,5 @@
  *
  */
-int loader_set_cwd(loader_t *ldr)
+errno_t loader_set_cwd(loader_t *ldr)
 {
 	char *cwd = (char *) malloc(MAX_PATH_LEN + 1);
@@ -131,5 +131,5 @@
 	ipc_call_t answer;
 	aid_t req = async_send_0(exch, LOADER_SET_CWD, &answer);
-	int rc = async_data_write_start(exch, cwd, len);
+	errno_t rc = async_data_write_start(exch, cwd, len);
 	
 	async_exchange_end(exch);
@@ -138,9 +138,9 @@
 	if (rc != EOK) {
 		async_forget(req);
-		return (int) rc;
+		return (errno_t) rc;
 	}
 	
 	async_wait_for(req, &rc);
-	return (int) rc;
+	return (errno_t) rc;
 }
 
@@ -154,5 +154,5 @@
  *
  */
-int loader_set_program(loader_t *ldr, const char *name, int file)
+errno_t loader_set_program(loader_t *ldr, const char *name, int file)
 {
 	async_exch_t *exch = async_exchange_begin(ldr->sess);
@@ -161,5 +161,5 @@
 	aid_t req = async_send_0(exch, LOADER_SET_PROGRAM, &answer);
 
-	int rc = async_data_write_start(exch, name, str_size(name) + 1);
+	errno_t rc = async_data_write_start(exch, name, str_size(name) + 1);
 	if (rc == EOK) {
 		async_exch_t *vfs_exch = vfs_exchange_begin();
@@ -172,9 +172,9 @@
 	if (rc != EOK) {
 		async_forget(req);
-		return (int) rc;
+		return (errno_t) rc;
 	}
 
 	async_wait_for(req, &rc);
-	return (int) rc;
+	return (errno_t) rc;
 }
 
@@ -187,5 +187,5 @@
  *
  */
-int loader_set_program_path(loader_t *ldr, const char *path)
+errno_t loader_set_program_path(loader_t *ldr, const char *path)
 {
 	const char *name = str_rchr(path, '/');
@@ -197,5 +197,5 @@
 	
 	int fd;
-	int rc = vfs_lookup(path, 0, &fd);
+	errno_t rc = vfs_lookup(path, 0, &fd);
 	if (rc != EOK) {
 		return rc;
@@ -220,5 +220,5 @@
  *
  */
-int loader_set_args(loader_t *ldr, const char *const argv[])
+errno_t loader_set_args(loader_t *ldr, const char *const argv[])
 {
 	/*
@@ -252,5 +252,5 @@
 	ipc_call_t answer;
 	aid_t req = async_send_0(exch, LOADER_SET_ARGS, &answer);
-	int rc = async_data_write_start(exch, (void *) arg_buf,
+	errno_t rc = async_data_write_start(exch, (void *) arg_buf,
 	    buffer_size);
 	
@@ -260,9 +260,9 @@
 	if (rc != EOK) {
 		async_forget(req);
-		return (int) rc;
+		return (errno_t) rc;
 	}
 	
 	async_wait_for(req, &rc);
-	return (int) rc;
+	return (errno_t) rc;
 }
 
@@ -276,5 +276,5 @@
  *
  */
-int loader_add_inbox(loader_t *ldr, const char *name, int file)
+errno_t loader_add_inbox(loader_t *ldr, const char *name, int file)
 {
 	async_exch_t *exch = async_exchange_begin(ldr->sess);
@@ -283,5 +283,5 @@
 	aid_t req = async_send_0(exch, LOADER_ADD_INBOX, NULL);
 	
-	int rc = async_data_write_start(exch, name, str_size(name) + 1);
+	errno_t rc = async_data_write_start(exch, name, str_size(name) + 1);
 	if (rc == EOK) {
 		rc = vfs_pass_handle(vfs_exch, file, exch);
@@ -297,5 +297,5 @@
 	}
 	
-	return (int) rc;
+	return (errno_t) rc;
 }
 
@@ -310,8 +310,8 @@
  *
  */
-int loader_load_program(loader_t *ldr)
-{
-	async_exch_t *exch = async_exchange_begin(ldr->sess);
-	int rc = async_req_0_0(exch, LOADER_LOAD);
+errno_t loader_load_program(loader_t *ldr)
+{
+	async_exch_t *exch = async_exchange_begin(ldr->sess);
+	errno_t rc = async_req_0_0(exch, LOADER_LOAD);
 	async_exchange_end(exch);
 	
@@ -333,8 +333,8 @@
  *
  */
-int loader_run(loader_t *ldr)
-{
-	async_exch_t *exch = async_exchange_begin(ldr->sess);
-	int rc = async_req_0_0(exch, LOADER_RUN);
+errno_t loader_run(loader_t *ldr)
+{
+	async_exch_t *exch = async_exchange_begin(ldr->sess);
+	errno_t rc = async_req_0_0(exch, LOADER_RUN);
 	async_exchange_end(exch);
 	
Index: uspace/lib/c/generic/loc.c
===================================================================
--- uspace/lib/c/generic/loc.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/loc.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -103,5 +103,5 @@
  *
  */
-static int loc_callback_create(void)
+static errno_t loc_callback_create(void)
 {
 	if (!loc_callback_created) {
@@ -113,5 +113,5 @@
 		
 		port_id_t port;
-		int rc = async_create_callback_port(exch, INTERFACE_LOC_CB, 0, 0,
+		errno_t rc = async_create_callback_port(exch, INTERFACE_LOC_CB, 0, 0,
 		    loc_cb_conn, NULL, &port);
 		
@@ -121,5 +121,5 @@
 			return rc;
 		
-		int retval;
+		errno_t retval;
 		async_wait_for(req, &retval);
 		if (retval != EOK)
@@ -239,5 +239,5 @@
 
 /** Register new driver with loc. */
-int loc_server_register(const char *name)
+errno_t loc_server_register(const char *name)
 {
 	async_exch_t *exch = loc_exchange_begin_blocking(INTERFACE_LOC_SUPPLIER);
@@ -245,5 +245,5 @@
 	ipc_call_t answer;
 	aid_t req = async_send_2(exch, LOC_SERVER_REGISTER, 0, 0, &answer);
-	int retval = async_data_write_start(exch, name, str_size(name));
+	errno_t retval = async_data_write_start(exch, name, str_size(name));
 	
 	if (retval != EOK) {
@@ -272,5 +272,5 @@
  *
  */
-int loc_service_register(const char *fqsn, service_id_t *sid)
+errno_t loc_service_register(const char *fqsn, service_id_t *sid)
 {
 	async_exch_t *exch = loc_exchange_begin_blocking(INTERFACE_LOC_SUPPLIER);
@@ -278,5 +278,5 @@
 	ipc_call_t answer;
 	aid_t req = async_send_0(exch, LOC_SERVICE_REGISTER, &answer);
-	int retval = async_data_write_start(exch, fqsn, str_size(fqsn));
+	errno_t retval = async_data_write_start(exch, fqsn, str_size(fqsn));
 	
 	if (retval != EOK) {
@@ -311,8 +311,8 @@
  * @param sid	Service ID
  */
-int loc_service_unregister(service_id_t sid)
+errno_t loc_service_unregister(service_id_t sid)
 {
 	async_exch_t *exch;
-	int retval;
+	errno_t retval;
 	
 	exch = loc_exchange_begin_blocking(INTERFACE_LOC_SUPPLIER);
@@ -320,8 +320,8 @@
 	loc_exchange_end(exch);
 	
-	return (int)retval;
-}
-
-int loc_service_get_id(const char *fqdn, service_id_t *handle,
+	return (errno_t)retval;
+}
+
+errno_t loc_service_get_id(const char *fqdn, service_id_t *handle,
     unsigned int flags)
 {
@@ -339,5 +339,5 @@
 	aid_t req = async_send_2(exch, LOC_SERVICE_GET_ID, flags, 0,
 	    &answer);
-	int retval = async_data_write_start(exch, fqdn, str_size(fqdn));
+	errno_t retval = async_data_write_start(exch, fqdn, str_size(fqdn));
 	
 	loc_exchange_end(exch);
@@ -373,5 +373,5 @@
  * @return		EOK on success or an error code
  */
-static int loc_get_name_internal(sysarg_t method, sysarg_t id, char **name)
+static errno_t loc_get_name_internal(sysarg_t method, sysarg_t id, char **name)
 {
 	async_exch_t *exch;
@@ -379,5 +379,5 @@
 	ipc_call_t dreply;
 	size_t act_size;
-	int dretval;
+	errno_t dretval;
 	
 	*name = NULL;
@@ -397,5 +397,5 @@
 	}
 	
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	
@@ -423,5 +423,5 @@
  * @return		EOK on success or an error code
  */
-int loc_category_get_name(category_id_t cat_id, char **name)
+errno_t loc_category_get_name(category_id_t cat_id, char **name)
 {
 	return loc_get_name_internal(LOC_CATEGORY_GET_NAME, cat_id, name);
@@ -437,5 +437,5 @@
  * @return		EOK on success or an error code
  */
-int loc_service_get_name(service_id_t svc_id, char **name)
+errno_t loc_service_get_name(service_id_t svc_id, char **name)
 {
 	return loc_get_name_internal(LOC_SERVICE_GET_NAME, svc_id, name);
@@ -451,10 +451,10 @@
  * @return		EOK on success or an error code
  */
-int loc_service_get_server_name(service_id_t svc_id, char **name)
+errno_t loc_service_get_server_name(service_id_t svc_id, char **name)
 {
 	return loc_get_name_internal(LOC_SERVICE_GET_SERVER_NAME, svc_id, name);
 }
 
-int loc_namespace_get_id(const char *name, service_id_t *handle,
+errno_t loc_namespace_get_id(const char *name, service_id_t *handle,
     unsigned int flags)
 {
@@ -472,5 +472,5 @@
 	aid_t req = async_send_2(exch, LOC_NAMESPACE_GET_ID, flags, 0,
 	    &answer);
-	int retval = async_data_write_start(exch, name, str_size(name));
+	errno_t retval = async_data_write_start(exch, name, str_size(name));
 	
 	loc_exchange_end(exch);
@@ -505,5 +505,5 @@
  * @return		EOK on success or an error code
  */
-int loc_category_get_id(const char *name, category_id_t *cat_id,
+errno_t loc_category_get_id(const char *name, category_id_t *cat_id,
     unsigned int flags)
 {
@@ -521,5 +521,5 @@
 	aid_t req = async_send_0(exch, LOC_CATEGORY_GET_ID,
 	    &answer);
-	int retval = async_data_write_start(exch, name, str_size(name));
+	errno_t retval = async_data_write_start(exch, name, str_size(name));
 	
 	loc_exchange_end(exch);
@@ -551,5 +551,5 @@
 	
 	sysarg_t type;
-	int retval = async_req_1_1(exch, LOC_ID_PROBE, handle, &type);
+	errno_t retval = async_req_1_1(exch, LOC_ID_PROBE, handle, &type);
 	
 	loc_exchange_end(exch);
@@ -582,5 +582,5 @@
 	
 	sysarg_t null_id;
-	int retval = async_req_0_1(exch, LOC_NULL_CREATE, &null_id);
+	errno_t retval = async_req_0_1(exch, LOC_NULL_CREATE, &null_id);
 	
 	loc_exchange_end(exch);
@@ -602,5 +602,5 @@
 {
 	sysarg_t count;
-	int retval = async_req_0_1(exch, LOC_GET_NAMESPACE_COUNT, &count);
+	errno_t retval = async_req_0_1(exch, LOC_GET_NAMESPACE_COUNT, &count);
 	if (retval != EOK)
 		return 0;
@@ -615,8 +615,8 @@
  * @return		EOK on success or an error code
  */
-int loc_service_add_to_cat(service_id_t svc_id, service_id_t cat_id)
+errno_t loc_service_add_to_cat(service_id_t svc_id, service_id_t cat_id)
 {
 	async_exch_t *exch;
-	int retval;
+	errno_t retval;
 	
 	exch = loc_exchange_begin_blocking(INTERFACE_LOC_SUPPLIER);
@@ -631,5 +631,5 @@
 {
 	sysarg_t count;
-	int retval = async_req_1_1(exch, LOC_GET_SERVICE_COUNT, ns_handle,
+	errno_t retval = async_req_1_1(exch, LOC_GET_SERVICE_COUNT, ns_handle,
 	    &count);
 	if (retval != EOK)
@@ -676,5 +676,5 @@
 		ipc_call_t answer;
 		aid_t req = async_send_0(exch, LOC_GET_NAMESPACES, &answer);
-		int rc = async_data_read_start(exch, devs, count * sizeof(loc_sdesc_t));
+		errno_t rc = async_data_read_start(exch, devs, count * sizeof(loc_sdesc_t));
 		
 		loc_exchange_end(exch);
@@ -695,5 +695,5 @@
 		}
 		
-		int retval;
+		errno_t retval;
 		async_wait_for(req, &retval);
 		
@@ -725,5 +725,5 @@
 		ipc_call_t answer;
 		aid_t req = async_send_1(exch, LOC_GET_SERVICES, ns_handle, &answer);
-		int rc = async_data_read_start(exch, devs, count * sizeof(loc_sdesc_t));
+		errno_t rc = async_data_read_start(exch, devs, count * sizeof(loc_sdesc_t));
 		
 		loc_exchange_end(exch);
@@ -744,5 +744,5 @@
 		}
 		
-		int retval;
+		errno_t retval;
 		async_wait_for(req, &retval);
 		
@@ -755,5 +755,5 @@
 }
 
-static int loc_category_get_ids_once(sysarg_t method, sysarg_t arg1,
+static errno_t loc_category_get_ids_once(sysarg_t method, sysarg_t arg1,
     sysarg_t *id_buf, size_t buf_size, size_t *act_size)
 {
@@ -762,5 +762,5 @@
 	ipc_call_t answer;
 	aid_t req = async_send_1(exch, method, arg1, &answer);
-	int rc = async_data_read_start(exch, id_buf, buf_size);
+	errno_t rc = async_data_read_start(exch, id_buf, buf_size);
 	
 	loc_exchange_end(exch);
@@ -771,5 +771,5 @@
 	}
 	
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 	
@@ -792,5 +792,5 @@
  * @return 		EOK on success or an error code
  */
-static int loc_get_ids_internal(sysarg_t method, sysarg_t arg1,
+static errno_t loc_get_ids_internal(sysarg_t method, sysarg_t arg1,
     sysarg_t **data, size_t *count)
 {
@@ -799,5 +799,5 @@
 	
 	size_t act_size = 0;
-	int rc = loc_category_get_ids_once(method, arg1, NULL, 0,
+	errno_t rc = loc_category_get_ids_once(method, arg1, NULL, 0,
 	    &act_size);
 	if (rc != EOK)
@@ -838,5 +838,5 @@
  * @return 		EOK on success or an error code
  */
-int loc_category_get_svcs(category_id_t cat_id, service_id_t **data,
+errno_t loc_category_get_svcs(category_id_t cat_id, service_id_t **data,
     size_t *count)
 {
@@ -853,5 +853,5 @@
  * @return 		EOK on success or an error code
  */
-int loc_get_categories(category_id_t **data, size_t *count)
+errno_t loc_get_categories(category_id_t **data, size_t *count)
 {
 	return loc_get_ids_internal(LOC_GET_CATEGORIES, 0,
@@ -859,5 +859,5 @@
 }
 
-int loc_register_cat_change_cb(loc_cat_change_cb_t cb_fun)
+errno_t loc_register_cat_change_cb(loc_cat_change_cb_t cb_fun)
 {
 	fibril_mutex_lock(&loc_callback_mutex);
Index: uspace/lib/c/generic/malloc.c
===================================================================
--- uspace/lib/c/generic/malloc.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/malloc.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -33,4 +33,6 @@
 /** @file
  */
+
+#define _HELENOS_SOURCE
 
 #include <malloc.h>
@@ -196,20 +198,5 @@
 static futex_t malloc_futex = FUTEX_INITIALIZER;
 
-#ifndef NDEBUG
-
-#define malloc_assert(expr) \
-	do { \
-		if (!(expr)) {\
-			heap_unlock(); \
-			assert_abort(#expr, __FILE__, __LINE__); \
-		} \
-	} while (0)
-
-#else /* NDEBUG */
-
-#define malloc_assert(expr)
-
-#endif /* NDEBUG */
-
+#define malloc_assert(expr) safe_assert(expr)
 
 #ifdef FUTEX_UPGRADABLE
@@ -411,5 +398,5 @@
 	
 	/* Resize the address space area */
-	int ret = as_area_resize(area->start, asize, 0);
+	errno_t ret = as_area_resize(area->start, asize, 0);
 	if (ret != EOK)
 		return false;
@@ -504,5 +491,5 @@
 			
 			/* Resize the address space area */
-			int ret = as_area_resize(area->start, asize, 0);
+			errno_t ret = as_area_resize(area->start, asize, 0);
 			if (ret != EOK)
 				abort();
Index: uspace/lib/c/generic/ns.c
===================================================================
--- uspace/lib/c/generic/ns.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/ns.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -46,7 +46,7 @@
 static async_sess_t *sess_ns = NULL;
 
-int service_register(service_t service)
+errno_t service_register(service_t service)
 {
-	int retval;
+	errno_t retval;
 	ipc_call_t answer;
 	
@@ -57,5 +57,5 @@
 	async_exch_t *exch = async_exchange_begin(sess);
 	aid_t req = async_send_1(exch, NS_REGISTER, service, &answer);
-	int rc = async_connect_to_me(exch, 0, service, 0);
+	errno_t rc = async_connect_to_me(exch, 0, service, 0);
 	
 	async_exchange_end(exch);
@@ -123,5 +123,5 @@
 
 
-int ns_ping(void)
+errno_t ns_ping(void)
 {
 	async_sess_t *sess = ns_session_get();
@@ -130,5 +130,5 @@
 	
 	async_exch_t *exch = async_exchange_begin(sess);
-	int rc = async_req_0_0(exch, NS_PING);
+	errno_t rc = async_req_0_0(exch, NS_PING);
 	async_exchange_end(exch);
 	
@@ -136,5 +136,5 @@
 }
 
-int ns_intro(task_id_t id)
+errno_t ns_intro(task_id_t id)
 {
 	async_exch_t *exch;
@@ -144,5 +144,5 @@
 	
 	exch = async_exchange_begin(sess);
-	int rc = async_req_2_0(exch, NS_ID_INTRO, LOWER32(id), UPPER32(id));
+	errno_t rc = async_req_2_0(exch, NS_ID_INTRO, LOWER32(id), UPPER32(id));
 	async_exchange_end(exch);
 	
Index: uspace/lib/c/generic/perm.c
===================================================================
--- uspace/lib/c/generic/perm.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/perm.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -48,13 +48,13 @@
  *
  */
-int perm_grant(task_id_t id, unsigned int perms)
+errno_t perm_grant(task_id_t id, unsigned int perms)
 {
 #ifdef __32_BITS__
 	sysarg64_t arg = (sysarg64_t) id;
-	return (int) __SYSCALL2(SYS_PERM_GRANT, (sysarg_t) &arg, (sysarg_t) perms);
+	return (errno_t) __SYSCALL2(SYS_PERM_GRANT, (sysarg_t) &arg, (sysarg_t) perms);
 #endif
 	
 #ifdef __64_BITS__
-	return (int) __SYSCALL2(SYS_PERM_GRANT, (sysarg_t) id, (sysarg_t) perms);
+	return (errno_t) __SYSCALL2(SYS_PERM_GRANT, (sysarg_t) id, (sysarg_t) perms);
 #endif
 }
@@ -68,13 +68,13 @@
  *
  */
-int perm_revoke(task_id_t id, unsigned int perms)
+errno_t perm_revoke(task_id_t id, unsigned int perms)
 {
 #ifdef __32_BITS__
 	sysarg64_t arg = (sysarg64_t) id;
-	return (int) __SYSCALL2(SYS_PERM_REVOKE, (sysarg_t) &arg, (sysarg_t) perms);
+	return (errno_t) __SYSCALL2(SYS_PERM_REVOKE, (sysarg_t) &arg, (sysarg_t) perms);
 #endif
 	
 #ifdef __64_BITS__
-	return (int) __SYSCALL2(SYS_PERM_REVOKE, (sysarg_t) id, (sysarg_t) perms);
+	return (errno_t) __SYSCALL2(SYS_PERM_REVOKE, (sysarg_t) id, (sysarg_t) perms);
 #endif
 }
Index: uspace/lib/c/generic/pio_trace.c
===================================================================
--- uspace/lib/c/generic/pio_trace.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/pio_trace.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -106,5 +106,5 @@
 }
 
-int pio_trace_enable(void *base, size_t size, trace_fnc log, void *data)
+errno_t pio_trace_enable(void *base, size_t size, trace_fnc log, void *data)
 {
 	pio_regions_t *regions = get_regions();
Index: uspace/lib/c/generic/private/async.h
===================================================================
--- uspace/lib/c/generic/private/async.h	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/private/async.h	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -85,5 +85,5 @@
 extern void __async_init(void);
 extern void async_insert_timeout(awaiter_t *);
-extern void reply_received(void *, int, ipc_call_t *);
+extern void reply_received(void *, errno_t, ipc_call_t *);
 
 #endif
Index: uspace/lib/c/generic/rtld/module.c
===================================================================
--- uspace/lib/c/generic/rtld/module.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/rtld/module.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -54,5 +54,5 @@
  * @return EOK on success, ENOMEM if out of memory
  */
-int module_create_static_exec(rtld_t *rtld, module_t **rmodule)
+errno_t module_create_static_exec(rtld_t *rtld, module_t **rmodule)
 {
 	module_t *module;
Index: uspace/lib/c/generic/rtld/rtld.c
===================================================================
--- uspace/lib/c/generic/rtld/rtld.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/rtld/rtld.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -45,7 +45,7 @@
 
 /** Initialize the runtime linker for use in a statically-linked executable. */
-int rtld_init_static(void)
-{
-	int rc;
+errno_t rtld_init_static(void)
+{
+	errno_t rc;
 
 	runtime_env = &rt_env_static;
@@ -70,5 +70,5 @@
  * @return EOK on success or non-zero error code
  */
-int rtld_prog_process(elf_finfo_t *p_info, rtld_t **rre)
+errno_t rtld_prog_process(elf_finfo_t *p_info, rtld_t **rre)
 {
 	rtld_t *env;
Index: uspace/lib/c/generic/smc.c
===================================================================
--- uspace/lib/c/generic/smc.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/smc.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -37,7 +37,7 @@
 #include <smc.h>
 
-int smc_coherence(void *address, size_t size)
+errno_t smc_coherence(void *address, size_t size)
 {
-	return (int) __SYSCALL2(SYS_SMC_COHERENCE, (sysarg_t) address,
+	return (errno_t) __SYSCALL2(SYS_SMC_COHERENCE, (sysarg_t) address,
 	    (sysarg_t) size);
 }
Index: uspace/lib/c/generic/stacktrace.c
===================================================================
--- uspace/lib/c/generic/stacktrace.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/stacktrace.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -40,5 +40,5 @@
 #include <errno.h>
 
-static int stacktrace_read_uintptr(void *arg, uintptr_t addr, uintptr_t *data);
+static errno_t stacktrace_read_uintptr(void *arg, uintptr_t addr, uintptr_t *data);
 
 static stacktrace_ops_t basic_ops = {
@@ -51,5 +51,5 @@
 	stacktrace_t st;
 	uintptr_t nfp;
-	int rc;
+	errno_t rc;
 
 	st.op_arg = arg;
@@ -86,5 +86,5 @@
 }
 
-static int stacktrace_read_uintptr(void *arg, uintptr_t addr, uintptr_t *data)
+static errno_t stacktrace_read_uintptr(void *arg, uintptr_t addr, uintptr_t *data)
 {
 	(void) arg;
Index: uspace/lib/c/generic/stdio.c
===================================================================
--- uspace/lib/c/generic/stdio.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/stdio.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -40,5 +40,5 @@
 int rename(const char *old_path, const char *new_path)
 {
-	int rc;
+	errno_t rc;
 
 	rc = vfs_rename_path(old_path, new_path);
@@ -54,5 +54,5 @@
 int remove(const char *path)
 {
-	int rc;
+	errno_t rc;
 
 	rc = vfs_unlink_path(path);
Index: uspace/lib/c/generic/str.c
===================================================================
--- uspace/lib/c/generic/str.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/str.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -196,5 +196,5 @@
  *         code was invalid.
  */
-int chr_encode(const wchar_t ch, char *str, size_t *offset, size_t size)
+errno_t chr_encode(const wchar_t ch, char *str, size_t *offset, size_t size)
 {
 	if (*offset >= size)
@@ -839,5 +839,5 @@
  *			non-ASCII bytes.
  */
-int spascii_to_str(char *dest, size_t size, const uint8_t *src, size_t n)
+errno_t spascii_to_str(char *dest, size_t size, const uint8_t *src, size_t n)
 {
 	size_t sidx;
@@ -845,6 +845,6 @@
 	size_t dlast;
 	uint8_t byte;
-	int rc;
-	int result;
+	errno_t rc;
+	errno_t result;
 
 	/* There must be space for a null terminator in the buffer. */
@@ -920,9 +920,9 @@
  * @return EOK, if success, an error code otherwise.
  */
-int utf16_to_str(char *dest, size_t size, const uint16_t *src)
+errno_t utf16_to_str(char *dest, size_t size, const uint16_t *src)
 {
 	size_t idx = 0, dest_off = 0;
 	wchar_t ch;
-	int rc = EOK;
+	errno_t rc = EOK;
 
 	/* There must be space for a null terminator in the buffer. */
@@ -963,7 +963,7 @@
  * @return EOK, if success, an error code otherwise.
  */
-int str_to_utf16(uint16_t *dest, size_t dlen, const char *src)
-{
-	int rc = EOK;
+errno_t str_to_utf16(uint16_t *dest, size_t dlen, const char *src)
+{
+	errno_t rc = EOK;
 	size_t offset = 0;
 	size_t idx = 0;
@@ -1539,5 +1539,5 @@
  *
  */
-static int str_uint(const char *nptr, char **endptr, unsigned int base,
+static errno_t str_uint(const char *nptr, char **endptr, unsigned int base,
     bool *neg, uint64_t *result)
 {
@@ -1660,5 +1660,5 @@
  *
  */
-int str_uint8_t(const char *nptr, const char **endptr, unsigned int base,
+errno_t str_uint8_t(const char *nptr, const char **endptr, unsigned int base,
     bool strict, uint8_t *result)
 {
@@ -1668,5 +1668,5 @@
 	char *lendptr;
 	uint64_t res;
-	int ret = str_uint(nptr, &lendptr, base, &neg, &res);
+	errno_t ret = str_uint(nptr, &lendptr, base, &neg, &res);
 	
 	if (endptr != NULL)
@@ -1707,5 +1707,5 @@
  *
  */
-int str_uint16_t(const char *nptr, const char **endptr, unsigned int base,
+errno_t str_uint16_t(const char *nptr, const char **endptr, unsigned int base,
     bool strict, uint16_t *result)
 {
@@ -1715,5 +1715,5 @@
 	char *lendptr;
 	uint64_t res;
-	int ret = str_uint(nptr, &lendptr, base, &neg, &res);
+	errno_t ret = str_uint(nptr, &lendptr, base, &neg, &res);
 	
 	if (endptr != NULL)
@@ -1754,5 +1754,5 @@
  *
  */
-int str_uint32_t(const char *nptr, const char **endptr, unsigned int base,
+errno_t str_uint32_t(const char *nptr, const char **endptr, unsigned int base,
     bool strict, uint32_t *result)
 {
@@ -1762,5 +1762,5 @@
 	char *lendptr;
 	uint64_t res;
-	int ret = str_uint(nptr, &lendptr, base, &neg, &res);
+	errno_t ret = str_uint(nptr, &lendptr, base, &neg, &res);
 	
 	if (endptr != NULL)
@@ -1801,5 +1801,5 @@
  *
  */
-int str_uint64_t(const char *nptr, const char **endptr, unsigned int base,
+errno_t str_uint64_t(const char *nptr, const char **endptr, unsigned int base,
     bool strict, uint64_t *result)
 {
@@ -1808,5 +1808,5 @@
 	bool neg;
 	char *lendptr;
-	int ret = str_uint(nptr, &lendptr, base, &neg, result);
+	errno_t ret = str_uint(nptr, &lendptr, base, &neg, result);
 	
 	if (endptr != NULL)
@@ -1840,5 +1840,5 @@
  *
  */
-int str_size_t(const char *nptr, const char **endptr, unsigned int base,
+errno_t str_size_t(const char *nptr, const char **endptr, unsigned int base,
     bool strict, size_t *result)
 {
@@ -1848,5 +1848,5 @@
 	char *lendptr;
 	uint64_t res;
-	int ret = str_uint(nptr, &lendptr, base, &neg, &res);
+	errno_t ret = str_uint(nptr, &lendptr, base, &neg, &res);
 	
 	if (endptr != NULL)
Index: uspace/lib/c/generic/sysinfo.c
===================================================================
--- uspace/lib/c/generic/sysinfo.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/sysinfo.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -49,7 +49,7 @@
  *
  */
-static int sysinfo_get_keys_size(const char *path, size_t *size)
-{
-	return (int) __SYSCALL3(SYS_SYSINFO_GET_KEYS_SIZE, (sysarg_t) path,
+static errno_t sysinfo_get_keys_size(const char *path, size_t *size)
+{
+	return (errno_t) __SYSCALL3(SYS_SYSINFO_GET_KEYS_SIZE, (sysarg_t) path,
 	    (sysarg_t) str_size(path), (sysarg_t) size);
 }
@@ -75,5 +75,5 @@
 	
 	/* Get the keys size */
-	int ret = sysinfo_get_keys_size(path, size);
+	errno_t ret = sysinfo_get_keys_size(path, size);
 	if ((ret != EOK) || (size == 0)) {
 		/*
@@ -92,5 +92,5 @@
 	/* Get the data */
 	size_t sz;
-	ret = (int) __SYSCALL5(SYS_SYSINFO_GET_KEYS, (sysarg_t) path,
+	ret = (errno_t) __SYSCALL5(SYS_SYSINFO_GET_KEYS, (sysarg_t) path,
 	    (sysarg_t) str_size(path), (sysarg_t) data, (sysarg_t) *size,
 	    (sysarg_t) &sz);
@@ -127,7 +127,7 @@
  *
  */
-int sysinfo_get_value(const char *path, sysarg_t *value)
-{
-	return (int) __SYSCALL3(SYS_SYSINFO_GET_VALUE, (sysarg_t) path,
+errno_t sysinfo_get_value(const char *path, sysarg_t *value)
+{
+	return (errno_t) __SYSCALL3(SYS_SYSINFO_GET_VALUE, (sysarg_t) path,
 	    (sysarg_t) str_size(path), (sysarg_t) value);
 }
@@ -142,7 +142,7 @@
  *
  */
-static int sysinfo_get_data_size(const char *path, size_t *size)
-{
-	return (int) __SYSCALL3(SYS_SYSINFO_GET_DATA_SIZE, (sysarg_t) path,
+static errno_t sysinfo_get_data_size(const char *path, size_t *size)
+{
+	return (errno_t) __SYSCALL3(SYS_SYSINFO_GET_DATA_SIZE, (sysarg_t) path,
 	    (sysarg_t) str_size(path), (sysarg_t) size);
 }
@@ -168,5 +168,5 @@
 	
 	/* Get the binary data size */
-	int ret = sysinfo_get_data_size(path, size);
+	errno_t ret = sysinfo_get_data_size(path, size);
 	if ((ret != EOK) || (size == 0)) {
 		/*
@@ -186,5 +186,5 @@
 	/* Get the data */
 	size_t sz;
-	ret = (int) __SYSCALL5(SYS_SYSINFO_GET_DATA, (sysarg_t) path,
+	ret = (errno_t) __SYSCALL5(SYS_SYSINFO_GET_DATA, (sysarg_t) path,
 	    (sysarg_t) str_size(path), (sysarg_t) data, (sysarg_t) *size,
 	    (sysarg_t) &sz);
Index: uspace/lib/c/generic/task.c
===================================================================
--- uspace/lib/c/generic/task.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/task.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -71,9 +71,9 @@
  * @return Zero on success or an error code.
  */
-int task_set_name(const char *name)
+errno_t task_set_name(const char *name)
 {
 	assert(name);
 	
-	return (int) __SYSCALL2(SYS_TASK_SET_NAME, (sysarg_t) name, str_size(name));
+	return (errno_t) __SYSCALL2(SYS_TASK_SET_NAME, (sysarg_t) name, str_size(name));
 }
 
@@ -85,7 +85,7 @@
  */
 
-int task_kill(task_id_t task_id)
-{
-	return (int) __SYSCALL1(SYS_TASK_KILL, (sysarg_t) &task_id);
+errno_t task_kill(task_id_t task_id)
+{
+	return (errno_t) __SYSCALL1(SYS_TASK_KILL, (sysarg_t) &task_id);
 }
 
@@ -104,5 +104,5 @@
  *
  */
-int task_spawnv(task_id_t *id, task_wait_t *wait, const char *path,
+errno_t task_spawnv(task_id_t *id, task_wait_t *wait, const char *path,
     const char *const args[])
 {
@@ -146,5 +146,5 @@
  *
  */
-int task_spawnvf(task_id_t *id, task_wait_t *wait, const char *path,
+errno_t task_spawnvf(task_id_t *id, task_wait_t *wait, const char *path,
     const char *const args[], int fd_stdin, int fd_stdout, int fd_stderr)
 {
@@ -158,5 +158,5 @@
 	/* Get task ID. */
 	task_id_t task_id;
-	int rc = loader_get_task_id(ldr, &task_id);
+	errno_t rc = loader_get_task_id(ldr, &task_id);
 	if (rc != EOK)
 		goto error;
@@ -252,5 +252,5 @@
  *
  */
-int task_spawn(task_id_t *task_id, task_wait_t *wait, const char *path,
+errno_t task_spawn(task_id_t *task_id, task_wait_t *wait, const char *path,
     int cnt, va_list ap)
 {
@@ -269,5 +269,5 @@
 	
 	/* Spawn task. */
-	int rc = task_spawnv(task_id, wait, path, arglist);
+	errno_t rc = task_spawnv(task_id, wait, path, arglist);
 	
 	/* Free argument list. */
@@ -290,5 +290,5 @@
  *
  */
-int task_spawnl(task_id_t *task_id, task_wait_t *wait, const char *path, ...)
+errno_t task_spawnl(task_id_t *task_id, task_wait_t *wait, const char *path, ...)
 {
 	/* Count the number of arguments. */
@@ -306,5 +306,5 @@
 	
 	va_start(ap, path);
-	int rc = task_spawn(task_id, wait, path, cnt, ap);
+	errno_t rc = task_spawn(task_id, wait, path, cnt, ap);
 	va_end(ap);
 	
@@ -323,5 +323,5 @@
  * @return EOK on success, else error code.
  */
-int task_setup_wait(task_id_t id, task_wait_t *wait)
+errno_t task_setup_wait(task_id_t id, task_wait_t *wait)
 {
 	async_sess_t *sess_ns = ns_session_get();
@@ -364,10 +364,10 @@
  * @return EOK on success, else error code.
  */
-int task_wait(task_wait_t *wait, task_exit_t *texit, int *retval)
+errno_t task_wait(task_wait_t *wait, task_exit_t *texit, int *retval)
 {
 	assert(texit);
 	assert(retval);
 
-	int rc;
+	errno_t rc;
 	async_wait_for(wait->aid, &rc);
 
@@ -394,8 +394,8 @@
  * @return EOK on success, else error code.
  */
-int task_wait_task_id(task_id_t id, task_exit_t *texit, int *retval)
+errno_t task_wait_task_id(task_id_t id, task_exit_t *texit, int *retval)
 {
 	task_wait_t wait;
-	int rc = task_setup_wait(id, &wait);
+	errno_t rc = task_setup_wait(id, &wait);
 	if (rc != EOK)
 		return rc;
@@ -404,5 +404,5 @@
 }
 
-int task_retval(int val)
+errno_t task_retval(int val)
 {
 	async_sess_t *sess_ns = ns_session_get();
@@ -411,5 +411,5 @@
 
 	async_exch_t *exch = async_exchange_begin(sess_ns);
-	int rc = (int) async_req_1_0(exch, NS_RETVAL, val);
+	errno_t rc = (errno_t) async_req_1_0(exch, NS_RETVAL, val);
 	async_exchange_end(exch);
 	
Index: uspace/lib/c/generic/thread.c
===================================================================
--- uspace/lib/c/generic/thread.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/thread.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -105,5 +105,5 @@
  * @return Zero on success or a code from @ref errno.h on failure.
  */
-int thread_create(void (* function)(void *), void *arg, const char *name,
+errno_t thread_create(void (* function)(void *), void *arg, const char *name,
     thread_id_t *tid)
 {
@@ -132,5 +132,5 @@
 	uarg->uspace_uarg = uarg;
 	
-	int rc = (int) __SYSCALL4(SYS_THREAD_CREATE, (sysarg_t) uarg,
+	errno_t rc = (errno_t) __SYSCALL4(SYS_THREAD_CREATE, (sysarg_t) uarg,
 	    (sysarg_t) name, (sysarg_t) str_size(name), (sysarg_t) tid);
 	
@@ -178,5 +178,5 @@
  * @return Thread exit status.
  */
-int thread_join(thread_id_t thread)
+errno_t thread_join(thread_id_t thread)
 {
 	return 0;
Index: uspace/lib/c/generic/time.c
===================================================================
--- uspace/lib/c/generic/time.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/time.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -585,5 +585,5 @@
 	if (clock_conn == NULL) {
 		category_id_t cat_id;
-		int rc = loc_category_get_id("clock", &cat_id, IPC_FLAG_BLOCKING);
+		errno_t rc = loc_category_get_id("clock", &cat_id, IPC_FLAG_BLOCKING);
 		if (rc != EOK)
 			goto fallback;
@@ -617,5 +617,5 @@
 	
 	struct tm time;
-	int rc = clock_dev_time_get(clock_conn, &time);
+	errno_t rc = clock_dev_time_get(clock_conn, &time);
 	if (rc != EOK)
 		goto fallback;
@@ -634,5 +634,5 @@
 	if (ktime == NULL) {
 		uintptr_t faddr;
-		int rc = sysinfo_get_value("clock.faddr", &faddr);
+		errno_t rc = sysinfo_get_value("clock.faddr", &faddr);
 		if (rc != EOK) {
 			errno = rc;
@@ -957,5 +957,5 @@
  *
  */
-int time_utc2tm(const time_t time, struct tm *restrict result)
+errno_t time_utc2tm(const time_t time, struct tm *restrict result)
 {
 	assert(result != NULL);
@@ -987,8 +987,8 @@
  *
  */
-int time_utc2str(const time_t time, char *restrict buf)
+errno_t time_utc2str(const time_t time, char *restrict buf)
 {
 	struct tm tm;
-	int ret = time_utc2tm(time, &tm);
+	errno_t ret = time_utc2tm(time, &tm);
 	if (ret != EOK)
 		return ret;
@@ -1039,5 +1039,5 @@
  *
  */
-int time_tv2tm(const struct timeval *tv, struct tm *restrict result)
+errno_t time_tv2tm(const struct timeval *tv, struct tm *restrict result)
 {
 	// TODO: Deal with timezones.
@@ -1069,5 +1069,5 @@
  *
  */
-int time_local2tm(const time_t time, struct tm *restrict result)
+errno_t time_local2tm(const time_t time, struct tm *restrict result)
 {
 	struct timeval tv = {
@@ -1091,8 +1091,8 @@
  *
  */
-int time_local2str(const time_t time, char *buf)
+errno_t time_local2str(const time_t time, char *buf)
 {
 	struct tm loctime;
-	int ret = time_local2tm(time, &loctime);
+	errno_t ret = time_local2tm(time, &loctime);
 	if (ret != EOK)
 		return ret;
Index: uspace/lib/c/generic/udebug.c
===================================================================
--- uspace/lib/c/generic/udebug.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/udebug.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -39,5 +39,5 @@
 #include <async.h>
 
-int udebug_begin(async_sess_t *sess)
+errno_t udebug_begin(async_sess_t *sess)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
@@ -45,5 +45,5 @@
 }
 
-int udebug_end(async_sess_t *sess)
+errno_t udebug_end(async_sess_t *sess)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
@@ -51,5 +51,5 @@
 }
 
-int udebug_set_evmask(async_sess_t *sess, udebug_evmask_t mask)
+errno_t udebug_set_evmask(async_sess_t *sess, udebug_evmask_t mask)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
@@ -57,5 +57,5 @@
 }
 
-int udebug_thread_read(async_sess_t *sess, void *buffer, size_t n,
+errno_t udebug_thread_read(async_sess_t *sess, void *buffer, size_t n,
     size_t *copied, size_t *needed)
 {
@@ -63,5 +63,5 @@
 	
 	async_exch_t *exch = async_exchange_begin(sess);
-	int rc = async_req_3_3(exch, IPC_M_DEBUG, UDEBUG_M_THREAD_READ,
+	errno_t rc = async_req_3_3(exch, IPC_M_DEBUG, UDEBUG_M_THREAD_READ,
 	    (sysarg_t) buffer, n, NULL, &a_copied, &a_needed);
 	
@@ -72,5 +72,5 @@
 }
 
-int udebug_name_read(async_sess_t *sess, void *buffer, size_t n,
+errno_t udebug_name_read(async_sess_t *sess, void *buffer, size_t n,
     size_t *copied, size_t *needed)
 {
@@ -78,5 +78,5 @@
 	
 	async_exch_t *exch = async_exchange_begin(sess);
-	int rc = async_req_3_3(exch, IPC_M_DEBUG, UDEBUG_M_NAME_READ,
+	errno_t rc = async_req_3_3(exch, IPC_M_DEBUG, UDEBUG_M_NAME_READ,
 	    (sysarg_t) buffer, n, NULL, &a_copied, &a_needed);
 	
@@ -87,5 +87,5 @@
 }
 
-int udebug_areas_read(async_sess_t *sess, void *buffer, size_t n,
+errno_t udebug_areas_read(async_sess_t *sess, void *buffer, size_t n,
     size_t *copied, size_t *needed)
 {
@@ -93,5 +93,5 @@
 	
 	async_exch_t *exch = async_exchange_begin(sess);
-	int rc = async_req_3_3(exch, IPC_M_DEBUG, UDEBUG_M_AREAS_READ,
+	errno_t rc = async_req_3_3(exch, IPC_M_DEBUG, UDEBUG_M_AREAS_READ,
 	    (sysarg_t) buffer, n, NULL, &a_copied, &a_needed);
 	
@@ -102,5 +102,5 @@
 }
 
-int udebug_mem_read(async_sess_t *sess, void *buffer, uintptr_t addr, size_t n)
+errno_t udebug_mem_read(async_sess_t *sess, void *buffer, uintptr_t addr, size_t n)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
@@ -109,5 +109,5 @@
 }
 
-int udebug_args_read(async_sess_t *sess, thash_t tid, sysarg_t *buffer)
+errno_t udebug_args_read(async_sess_t *sess, thash_t tid, sysarg_t *buffer)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
@@ -116,5 +116,5 @@
 }
 
-int udebug_regs_read(async_sess_t *sess, thash_t tid, void *buffer)
+errno_t udebug_regs_read(async_sess_t *sess, thash_t tid, void *buffer)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
@@ -123,5 +123,5 @@
 }
 
-int udebug_go(async_sess_t *sess, thash_t tid, udebug_event_t *ev_type,
+errno_t udebug_go(async_sess_t *sess, thash_t tid, udebug_event_t *ev_type,
     sysarg_t *val0, sysarg_t *val1)
 {
@@ -129,5 +129,5 @@
 	
 	async_exch_t *exch = async_exchange_begin(sess);
-	int rc = async_req_2_3(exch, IPC_M_DEBUG, UDEBUG_M_GO,
+	errno_t rc = async_req_2_3(exch, IPC_M_DEBUG, UDEBUG_M_GO,
 	    tid, &a_ev_type, val0, val1);
 	
@@ -136,5 +136,5 @@
 }
 
-int udebug_stop(async_sess_t *sess, thash_t tid)
+errno_t udebug_stop(async_sess_t *sess, thash_t tid)
 {
 	async_exch_t *exch = async_exchange_begin(sess);
Index: uspace/lib/c/generic/uuid.c
===================================================================
--- uspace/lib/c/generic/uuid.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/uuid.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -45,5 +45,5 @@
  * @return EOK on success or an error code
  */
-int uuid_generate(uuid_t *uuid)
+errno_t uuid_generate(uuid_t *uuid)
 {
 	int i;
@@ -102,7 +102,7 @@
  * @return EOK on success or an error code
  */
-int uuid_parse(const char *str, uuid_t *uuid, const char **endptr)
+errno_t uuid_parse(const char *str, uuid_t *uuid, const char **endptr)
 {
-	int rc;
+	errno_t rc;
 	const char *eptr;
 	uint32_t time_low;
@@ -167,5 +167,5 @@
  * @return EOK on success, ENOMEM if out of memory
  */
-int uuid_format(uuid_t *uuid, char **rstr)
+errno_t uuid_format(uuid_t *uuid, char **rstr)
 {
 	return ENOTSUP;
Index: uspace/lib/c/generic/vbd.c
===================================================================
--- uspace/lib/c/generic/vbd.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/vbd.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -44,12 +44,12 @@
 #include <vbd.h>
 
-static int vbd_get_ids_internal(vbd_t *, sysarg_t, sysarg_t, sysarg_t **,
+static errno_t vbd_get_ids_internal(vbd_t *, sysarg_t, sysarg_t, sysarg_t **,
     size_t *);
 
-int vbd_create(vbd_t **rvbd)
+errno_t vbd_create(vbd_t **rvbd)
 {
 	vbd_t *vbd;
 	service_id_t vbd_svcid;
-	int rc;
+	errno_t rc;
 
 	vbd = calloc(1, sizeof(vbd_t));
@@ -97,5 +97,5 @@
  * @return EOK on success or an error code
  */
-int vbd_get_disks(vbd_t *vbd, service_id_t **data, size_t *count)
+errno_t vbd_get_disks(vbd_t *vbd, service_id_t **data, size_t *count)
 {
 	return vbd_get_ids_internal(vbd, VBD_GET_DISKS, 0, data, count);
@@ -103,31 +103,31 @@
 
 /** Get disk information. */
-int vbd_disk_info(vbd_t *vbd, service_id_t sid, vbd_disk_info_t *vinfo)
-{
-	async_exch_t *exch;
-	int retval;
+errno_t vbd_disk_info(vbd_t *vbd, service_id_t sid, vbd_disk_info_t *vinfo)
+{
+	async_exch_t *exch;
+	errno_t retval;
 	ipc_call_t answer;
 
 	exch = async_exchange_begin(vbd->sess);
 	aid_t req = async_send_1(exch, VBD_DISK_INFO, sid, &answer);
-	int rc = async_data_read_start(exch, vinfo, sizeof(vbd_disk_info_t));
-	async_exchange_end(exch);
-
-	if (rc != EOK) {
-		async_forget(req);
-		return EIO;
-	}
-
-	async_wait_for(req, &retval);
-	if (retval != EOK)
-		return EIO;
-
-	return EOK;
-}
-
-int vbd_label_create(vbd_t *vbd, service_id_t sid, label_type_t ltype)
-{
-	async_exch_t *exch;
-	int retval;
+	errno_t rc = async_data_read_start(exch, vinfo, sizeof(vbd_disk_info_t));
+	async_exchange_end(exch);
+
+	if (rc != EOK) {
+		async_forget(req);
+		return EIO;
+	}
+
+	async_wait_for(req, &retval);
+	if (retval != EOK)
+		return EIO;
+
+	return EOK;
+}
+
+errno_t vbd_label_create(vbd_t *vbd, service_id_t sid, label_type_t ltype)
+{
+	async_exch_t *exch;
+	errno_t retval;
 
 	exch = async_exchange_begin(vbd->sess);
@@ -141,8 +141,8 @@
 }
 
-int vbd_label_delete(vbd_t *vbd, service_id_t sid)
-{
-	async_exch_t *exch;
-	int retval;
+errno_t vbd_label_delete(vbd_t *vbd, service_id_t sid)
+{
+	async_exch_t *exch;
+	errno_t retval;
 
 	exch = async_exchange_begin(vbd->sess);
@@ -167,5 +167,5 @@
  * @return EOK on success or an error code.
  */
-static int vbd_get_ids_once(vbd_t *vbd, sysarg_t method, sysarg_t arg1,
+static errno_t vbd_get_ids_once(vbd_t *vbd, sysarg_t method, sysarg_t arg1,
     sysarg_t *id_buf, size_t buf_size, size_t *act_size)
 {
@@ -174,5 +174,5 @@
 	ipc_call_t answer;
 	aid_t req = async_send_1(exch, method, arg1, &answer);
-	int rc = async_data_read_start(exch, id_buf, buf_size);
+	errno_t rc = async_data_read_start(exch, id_buf, buf_size);
 
 	async_exchange_end(exch);
@@ -183,5 +183,5 @@
 	}
 
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 
@@ -205,5 +205,5 @@
  * @return       EOK on success or an error code
  */
-static int vbd_get_ids_internal(vbd_t *vbd, sysarg_t method, sysarg_t arg1,
+static errno_t vbd_get_ids_internal(vbd_t *vbd, sysarg_t method, sysarg_t arg1,
     sysarg_t **data, size_t *count)
 {
@@ -212,5 +212,5 @@
 
 	size_t act_size = 0;
-	int rc = vbd_get_ids_once(vbd, method, arg1, NULL, 0, &act_size);
+	errno_t rc = vbd_get_ids_once(vbd, method, arg1, NULL, 0, &act_size);
 	if (rc != EOK)
 		return rc;
@@ -249,5 +249,5 @@
  * @return EOK on success or an error code
  */
-int vbd_label_get_parts(vbd_t *vbd, service_id_t disk,
+errno_t vbd_label_get_parts(vbd_t *vbd, service_id_t disk,
     service_id_t **data, size_t *count)
 {
@@ -256,37 +256,37 @@
 }
 
-int vbd_part_get_info(vbd_t *vbd, vbd_part_id_t part, vbd_part_info_t *pinfo)
-{
-	async_exch_t *exch;
-	int retval;
+errno_t vbd_part_get_info(vbd_t *vbd, vbd_part_id_t part, vbd_part_info_t *pinfo)
+{
+	async_exch_t *exch;
+	errno_t retval;
 	ipc_call_t answer;
 
 	exch = async_exchange_begin(vbd->sess);
 	aid_t req = async_send_1(exch, VBD_PART_GET_INFO, part, &answer);
-	int rc = async_data_read_start(exch, pinfo, sizeof(vbd_part_info_t));
-	async_exchange_end(exch);
-
-	if (rc != EOK) {
-		async_forget(req);
-		return EIO;
-	}
-
-	async_wait_for(req, &retval);
-	if (retval != EOK)
-		return EIO;
-
-	return EOK;
-}
-
-int vbd_part_create(vbd_t *vbd, service_id_t disk, vbd_part_spec_t *pspec,
+	errno_t rc = async_data_read_start(exch, pinfo, sizeof(vbd_part_info_t));
+	async_exchange_end(exch);
+
+	if (rc != EOK) {
+		async_forget(req);
+		return EIO;
+	}
+
+	async_wait_for(req, &retval);
+	if (retval != EOK)
+		return EIO;
+
+	return EOK;
+}
+
+errno_t vbd_part_create(vbd_t *vbd, service_id_t disk, vbd_part_spec_t *pspec,
     vbd_part_id_t *rpart)
 {
 	async_exch_t *exch;
-	int retval;
+	errno_t retval;
 	ipc_call_t answer;
 
 	exch = async_exchange_begin(vbd->sess);
 	aid_t req = async_send_1(exch, VBD_PART_CREATE, disk, &answer);
-	int rc = async_data_write_start(exch, pspec, sizeof(vbd_part_spec_t));
+	errno_t rc = async_data_write_start(exch, pspec, sizeof(vbd_part_spec_t));
 	async_exchange_end(exch);
 
@@ -305,8 +305,8 @@
 }
 
-int vbd_part_delete(vbd_t *vbd, vbd_part_id_t part)
-{
-	async_exch_t *exch;
-	int retval;
+errno_t vbd_part_delete(vbd_t *vbd, vbd_part_id_t part)
+{
+	async_exch_t *exch;
+	errno_t retval;
 
 	exch = async_exchange_begin(vbd->sess);
@@ -334,14 +334,14 @@
  * @return EOK on success or an error code
  */
-int vbd_suggest_ptype(vbd_t *vbd, service_id_t disk, label_pcnt_t pcnt,
+errno_t vbd_suggest_ptype(vbd_t *vbd, service_id_t disk, label_pcnt_t pcnt,
     label_ptype_t *ptype)
 {
 	async_exch_t *exch;
-	int retval;
+	errno_t retval;
 	ipc_call_t answer;
 
 	exch = async_exchange_begin(vbd->sess);
 	aid_t req = async_send_2(exch, VBD_SUGGEST_PTYPE, disk, pcnt, &answer);
-	int rc = async_data_read_start(exch, ptype, sizeof(label_ptype_t));
+	errno_t rc = async_data_read_start(exch, ptype, sizeof(label_ptype_t));
 	async_exchange_end(exch);
 
Index: uspace/lib/c/generic/vfs/mtab.c
===================================================================
--- uspace/lib/c/generic/vfs/mtab.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/vfs/mtab.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -62,5 +62,5 @@
 }
 
-static int vfs_get_mtab_visit(const char *path, list_t *mtab_list,
+static errno_t vfs_get_mtab_visit(const char *path, list_t *mtab_list,
     fs_handle_t fs_handle, service_id_t service_id)
 {
@@ -75,5 +75,5 @@
 		char *child;
 		struct stat st;
-		int rc;
+		errno_t rc;
 		int ret;
 
@@ -95,5 +95,5 @@
 
 		rc = vfs_stat_path(child, &st);
-		if (rc != 0) {
+		if (rc != EOK) {
 			free(child);
 			closedir(dir);
@@ -120,10 +120,10 @@
 }
 
-int vfs_get_mtab_list(list_t *mtab_list)
+errno_t vfs_get_mtab_list(list_t *mtab_list)
 {
 	struct stat st;
 
-	int rc = vfs_stat_path("/", &st);
-	if (rc != 0)
+	errno_t rc = vfs_stat_path("/", &st);
+	if (rc != EOK)
 		return rc;
 
Index: uspace/lib/c/generic/vfs/vfs.c
===================================================================
--- uspace/lib/c/generic/vfs/vfs.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/vfs/vfs.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -86,5 +86,5 @@
  * and consume system resources.
  *
- * Functions that return int return an error code on error and do not
+ * Functions that return errno_t return an error code on error and do not
  * set errno. Depending on function, success is signalled by returning either
  * EOK or a non-negative file handle.
@@ -97,5 +97,5 @@
  * 	if (file < 0)
  * 		return file;
- * 	int rc = vfs_open(file, MODE_READ);
+ * 	errno_t rc = vfs_open(file, MODE_READ);
  * 	if (rc != EOK) {
  * 		(void) vfs_put(file);
@@ -128,5 +128,5 @@
 static int root_fd = -1;
 
-static int get_parent_and_child(const char *path, int *parent, char **child)
+static errno_t get_parent_and_child(const char *path, int *parent, char **child)
 {
 	size_t size;
@@ -146,5 +146,5 @@
 	} else {
 		*slash = '\0';
-		int rc = vfs_lookup(apath, WALK_DIRECTORY, parent);
+		errno_t rc = vfs_lookup(apath, WALK_DIRECTORY, parent);
 		if (rc != EOK) {
 			free(apath);
@@ -238,5 +238,5 @@
  * @return              New file handle on success or an error code
  */
-int vfs_clone(int file_from, int file_to, bool high, int *handle)
+errno_t vfs_clone(int file_from, int file_to, bool high, int *handle)
 {
 	assert(handle != NULL);
@@ -244,5 +244,5 @@
 	async_exch_t *vfs_exch = vfs_exchange_begin();
 	sysarg_t ret;
-	int rc = async_req_3_1(vfs_exch, VFS_IN_CLONE, (sysarg_t) file_from,
+	errno_t rc = async_req_3_1(vfs_exch, VFS_IN_CLONE, (sysarg_t) file_from,
 	    (sysarg_t) file_to, (sysarg_t) high, &ret);
 	vfs_exchange_end(vfs_exch);
@@ -261,5 +261,5 @@
  * @return              EOK on success or a non-error code
  */
-int vfs_cwd_get(char *buf, size_t size)
+errno_t vfs_cwd_get(char *buf, size_t size)
 {
 	fibril_mutex_lock(&cwd_mutex);
@@ -282,5 +282,5 @@
  * @return      EOK on success or an error code
  */
-int vfs_cwd_set(const char *path)
+errno_t vfs_cwd_set(const char *path)
 {
 	size_t abs_size;
@@ -290,5 +290,5 @@
 	
 	int fd;
-	int rc = vfs_lookup(abs, WALK_DIRECTORY, &fd);
+	errno_t rc = vfs_lookup(abs, WALK_DIRECTORY, &fd);
 	if (rc != EOK) {
 		free(abs);
@@ -353,6 +353,6 @@
 {
 	struct stat stat;
-	int rc = vfs_stat(file, &stat);
-	if (rc != 0)
+	errno_t rc = vfs_stat(file, &stat);
+	if (rc != EOK)
 		return NULL;
 	
@@ -372,8 +372,8 @@
  * @return                      EOK on success or an error code
  */
-int vfs_fsprobe(const char *fs_name, service_id_t serv,
+errno_t vfs_fsprobe(const char *fs_name, service_id_t serv,
     vfs_fs_probe_info_t *info)
 {
-	int rc;
+	errno_t rc;
 	
 	ipc_call_t answer;
@@ -406,5 +406,5 @@
  * @return                      EOK on success or an error code
  */
-int vfs_fstypes(vfs_fstypes_t *fstypes)
+errno_t vfs_fstypes(vfs_fstypes_t *fstypes)
 {
 	sysarg_t size;
@@ -414,5 +414,5 @@
 
 	async_exch_t *exch = vfs_exchange_begin();
-	int rc = async_req_0_1(exch, VFS_IN_FSTYPES, &size);
+	errno_t rc = async_req_0_1(exch, VFS_IN_FSTYPES, &size);
 
 	if (rc != EOK) {
@@ -501,9 +501,9 @@
  * @return              EOK on success or an error code
  */
-int vfs_link(int parent, const char *child, vfs_file_kind_t kind, int *linkedfd)
+errno_t vfs_link(int parent, const char *child, vfs_file_kind_t kind, int *linkedfd)
 {
 	int flags = (kind == KIND_DIRECTORY) ? WALK_DIRECTORY : WALK_REGULAR;
 	int file = -1;
-	int rc = vfs_walk(parent, child, WALK_MUST_CREATE | flags, &file);
+	errno_t rc = vfs_walk(parent, child, WALK_MUST_CREATE | flags, &file);
 	if (rc != EOK)
 		return rc;
@@ -531,9 +531,9 @@
  * @return              EOK on success or an error code
  */
-int vfs_link_path(const char *path, vfs_file_kind_t kind, int *linkedfd)
+errno_t vfs_link_path(const char *path, vfs_file_kind_t kind, int *linkedfd)
 {
 	char *child;
 	int parent;
-	int rc = get_parent_and_child(path, &parent, &child);
+	errno_t rc = get_parent_and_child(path, &parent, &child);
 	if (rc != EOK)
 		return rc;
@@ -554,5 +554,5 @@
  * @return      EOK on success or an error code.
  */
-int vfs_lookup(const char *path, int flags, int *handle)
+errno_t vfs_lookup(const char *path, int flags, int *handle)
 {
 	size_t size;
@@ -570,5 +570,5 @@
 	*handle = -1;
 
-	int rc = vfs_walk(root, p, flags, handle);
+	errno_t rc = vfs_walk(root, p, flags, handle);
 	vfs_put(root);
 	free(p);
@@ -587,8 +587,8 @@
  * @return      EOK on success or an error code
  */
-int vfs_lookup_open(const char *path, int flags, int mode, int *handle)
+errno_t vfs_lookup_open(const char *path, int flags, int mode, int *handle)
 {
 	int file;
-	int rc = vfs_lookup(path, flags, &file);
+	errno_t rc = vfs_lookup(path, flags, &file);
 	if (rc != EOK)
 		return rc;
@@ -616,8 +616,8 @@
  * @return                      EOK on success or an error code
  */
-int vfs_mount(int mp, const char *fs_name, service_id_t serv, const char *opts,
+errno_t vfs_mount(int mp, const char *fs_name, service_id_t serv, const char *opts,
     unsigned int flags, unsigned int instance, int *mountedfd)
 {
-	int rc, rc1;
+	errno_t rc, rc1;
 	
 	if (!mountedfd)
@@ -660,5 +660,5 @@
  * @return                      EOK on success or an error code
  */
-int vfs_mount_path(const char *mp, const char *fs_name, const char *fqsn,
+errno_t vfs_mount_path(const char *mp, const char *fs_name, const char *fqsn,
     const char *opts, unsigned int flags, unsigned int instance)
 {
@@ -685,5 +685,5 @@
 	
 	service_id_t service_id;
-	int res = loc_service_get_id(fqsn, &service_id, flags);
+	errno_t res = loc_service_get_id(fqsn, &service_id, flags);
 	if (res != EOK) {
 		if (null_id != -1)
@@ -704,5 +704,5 @@
 	fibril_mutex_lock(&root_mutex);
 	
-	int rc;
+	errno_t rc;
 	
 	if (str_cmp(mpa, "/") == 0) {
@@ -743,5 +743,5 @@
 		loc_null_destroy(null_id);
 	
-	return (int) rc;
+	return (errno_t) rc;
 }
 
@@ -754,8 +754,8 @@
  * @return      EOK on success or an error code
  */
-int vfs_open(int file, int mode)
-{
-	async_exch_t *exch = vfs_exchange_begin();
-	int rc = async_req_2_0(exch, VFS_IN_OPEN, file, mode);
+errno_t vfs_open(int file, int mode)
+{
+	async_exch_t *exch = vfs_exchange_begin();
+	errno_t rc = async_req_2_0(exch, VFS_IN_OPEN, file, mode);
 	vfs_exchange_end(exch);
 	
@@ -771,5 +771,5 @@
  * @return              EOK on success or an error code
  */
-int vfs_pass_handle(async_exch_t *vfs_exch, int file, async_exch_t *exch)
+errno_t vfs_pass_handle(async_exch_t *vfs_exch, int file, async_exch_t *exch)
 {
 	return async_state_change_start(exch, VFS_PASS_HANDLE, (sysarg_t) file,
@@ -783,8 +783,8 @@
  * @return      EOK on success or an error code
  */
-int vfs_put(int file)
-{
-	async_exch_t *exch = vfs_exchange_begin();
-	int rc = async_req_1_0(exch, VFS_IN_PUT, file);
+errno_t vfs_put(int file)
+{
+	async_exch_t *exch = vfs_exchange_begin();
+	errno_t rc = async_req_1_0(exch, VFS_IN_PUT, file);
 	vfs_exchange_end(exch);
 	
@@ -800,5 +800,5 @@
  * @return       EOK on success or an error code
  */
-int vfs_receive_handle(bool high, int *handle)
+errno_t vfs_receive_handle(bool high, int *handle)
 {
 	ipc_callid_t callid;
@@ -813,5 +813,5 @@
 
 	sysarg_t ret;
-	int rc = async_req_1_1(vfs_exch, VFS_IN_WAIT_HANDLE, high, &ret);
+	errno_t rc = async_req_1_1(vfs_exch, VFS_IN_WAIT_HANDLE, high, &ret);
 
 	async_exchange_end(vfs_exch);
@@ -839,10 +839,10 @@
  * @return              On failure, an error code
  */
-int vfs_read(int file, aoff64_t *pos, void *buf, size_t nbyte, size_t *nread)
+errno_t vfs_read(int file, aoff64_t *pos, void *buf, size_t nbyte, size_t *nread)
 {
 	ssize_t cnt = 0;
 	size_t nr = 0;
 	uint8_t *bp = (uint8_t *) buf;
-	int rc;
+	errno_t rc;
 	
 	do {
@@ -879,8 +879,8 @@
  * @return              EOK on success or an error code
  */
-int vfs_read_short(int file, aoff64_t pos, void *buf, size_t nbyte,
+errno_t vfs_read_short(int file, aoff64_t pos, void *buf, size_t nbyte,
     ssize_t *nread)
 {
-	int rc;
+	errno_t rc;
 	ipc_call_t answer;
 	aid_t req;
@@ -921,8 +921,8 @@
  * @return      EOK on success or an error code
  */
-int vfs_rename_path(const char *old, const char *new)
-{
-	int rc;
-	int rc_orig;
+errno_t vfs_rename_path(const char *old, const char *new)
+{
+	errno_t rc;
+	errno_t rc_orig;
 	aid_t req;
 	
@@ -988,8 +988,8 @@
  * @return              EOK on success or an error code
  */
-int vfs_resize(int file, aoff64_t length)
-{
-	async_exch_t *exch = vfs_exchange_begin();
-	int rc = async_req_3_0(exch, VFS_IN_RESIZE, file, LOWER32(length),
+errno_t vfs_resize(int file, aoff64_t length)
+{
+	async_exch_t *exch = vfs_exchange_begin();
+	errno_t rc = async_req_3_0(exch, VFS_IN_RESIZE, file, LOWER32(length),
 	    UPPER32(length));
 	vfs_exchange_end(exch);
@@ -1009,5 +1009,5 @@
 		fd = -1;
 	} else {
-		int rc = vfs_clone(root_fd, -1, true, &fd);
+		errno_t rc = vfs_clone(root_fd, -1, true, &fd);
 		if (rc != EOK) {
 			fd = -1;
@@ -1028,8 +1028,8 @@
  * @return  Error code
  */
-int vfs_root_set(int nroot)
+errno_t vfs_root_set(int nroot)
 {
 	int new_root;
-	int rc = vfs_clone(nroot, -1, true, &new_root);
+	errno_t rc = vfs_clone(nroot, -1, true, &new_root);
 	if (rc != EOK) {
 		return rc;
@@ -1052,7 +1052,7 @@
  * @return              EOK on success or an error code
  */
-int vfs_stat(int file, struct stat *stat)
-{
-	int rc;
+errno_t vfs_stat(int file, struct stat *stat)
+{
+	errno_t rc;
 	aid_t req;
 	
@@ -1064,5 +1064,5 @@
 		vfs_exchange_end(exch);
 		
-		int rc_orig;
+		errno_t rc_orig;
 		async_wait_for(req, &rc_orig);
 		
@@ -1086,8 +1086,8 @@
  * @return              EOK on success or an error code
  */
-int vfs_stat_path(const char *path, struct stat *stat)
+errno_t vfs_stat_path(const char *path, struct stat *stat)
 {
 	int file;
-	int rc = vfs_lookup(path, 0, &file);
+	errno_t rc = vfs_lookup(path, 0, &file);
 	if (rc != EOK)
 		return rc;
@@ -1107,7 +1107,7 @@
  * @return              EOK on success or an error code
  */
-int vfs_statfs(int file, struct statfs *st)
-{
-	int rc, ret;
+errno_t vfs_statfs(int file, struct statfs *st)
+{
+	errno_t rc, ret;
 	aid_t req;
 
@@ -1132,8 +1132,8 @@
  * @return              EOK on success or an error code
  */
-int vfs_statfs_path(const char *path, struct statfs *st)
+errno_t vfs_statfs_path(const char *path, struct statfs *st)
 {
 	int file;
-	int rc = vfs_lookup(path, 0, &file);
+	errno_t rc = vfs_lookup(path, 0, &file);
 	if (rc != EOK)
 		return rc;
@@ -1152,8 +1152,8 @@
  * @return      EOK on success or an error code
  */
-int vfs_sync(int file)
-{
-	async_exch_t *exch = vfs_exchange_begin();
-	int rc = async_req_1_0(exch, VFS_IN_SYNC, file);
+errno_t vfs_sync(int file)
+{
+	async_exch_t *exch = vfs_exchange_begin();
+	errno_t rc = async_req_1_0(exch, VFS_IN_SYNC, file);
 	vfs_exchange_end(exch);
 	
@@ -1174,7 +1174,7 @@
  * @return              EOK on success or an error code
  */
-int vfs_unlink(int parent, const char *child, int expect)
-{
-	int rc;
+errno_t vfs_unlink(int parent, const char *child, int expect)
+{
+	errno_t rc;
 	aid_t req;
 	
@@ -1186,9 +1186,9 @@
 	vfs_exchange_end(exch);
 	
-	int rc_orig;
+	errno_t rc_orig;
 	async_wait_for(req, &rc_orig);
 	
 	if (rc_orig != EOK)
-		return (int) rc_orig;
+		return (errno_t) rc_orig;
 	return rc;
 }
@@ -1203,8 +1203,8 @@
  * @return              EOK on success or an error code
  */
-int vfs_unlink_path(const char *path)
+errno_t vfs_unlink_path(const char *path)
 {
 	int expect;
-	int rc = vfs_lookup(path, 0, &expect);
+	errno_t rc = vfs_lookup(path, 0, &expect);
 	if (rc != EOK)
 		return rc;
@@ -1232,8 +1232,8 @@
  * @return      EOK on success or an error code
  */
-int vfs_unmount(int mp)
-{
-	async_exch_t *exch = vfs_exchange_begin();
-	int rc = async_req_1_0(exch, VFS_IN_UNMOUNT, mp);
+errno_t vfs_unmount(int mp)
+{
+	async_exch_t *exch = vfs_exchange_begin();
+	errno_t rc = async_req_1_0(exch, VFS_IN_UNMOUNT, mp);
 	vfs_exchange_end(exch);
 	return rc;
@@ -1246,8 +1246,8 @@
  * @return      EOK on success or an error code
  */
-int vfs_unmount_path(const char *mpp)
+errno_t vfs_unmount_path(const char *mpp)
 {
 	int mp;
-	int rc = vfs_lookup(mpp, WALK_MOUNT_POINT | WALK_DIRECTORY, &mp);
+	errno_t rc = vfs_lookup(mpp, WALK_MOUNT_POINT | WALK_DIRECTORY, &mp);
 	if (rc != EOK)
 		return rc;
@@ -1267,5 +1267,5 @@
  * @return              Error code.
  */
-int vfs_walk(int parent, const char *path, int flags, int *handle)
+errno_t vfs_walk(int parent, const char *path, int flags, int *handle)
 {
 	async_exch_t *exch = vfs_exchange_begin();
@@ -1273,15 +1273,15 @@
 	ipc_call_t answer;
 	aid_t req = async_send_2(exch, VFS_IN_WALK, parent, flags, &answer);
-	int rc = async_data_write_start(exch, path, str_size(path));
+	errno_t rc = async_data_write_start(exch, path, str_size(path));
 	vfs_exchange_end(exch);
 		
-	int rc_orig;
+	errno_t rc_orig;
 	async_wait_for(req, &rc_orig);
 
 	if (rc_orig != EOK)
-		return (int) rc_orig;
+		return (errno_t) rc_orig;
 		
 	if (rc != EOK)
-		return (int) rc;
+		return (errno_t) rc;
 	
 	*handle = (int) IPC_GET_ARG1(answer);
@@ -1304,5 +1304,5 @@
  * @return              On failure, an error code
  */
-int vfs_write(int file, aoff64_t *pos, const void *buf, size_t nbyte,
+errno_t vfs_write(int file, aoff64_t *pos, const void *buf, size_t nbyte,
     size_t *nwritten)
 {
@@ -1310,5 +1310,5 @@
 	ssize_t nwr = 0;
 	const uint8_t *bp = (uint8_t *) buf;
-	int rc;
+	errno_t rc;
 
 	do {
@@ -1343,8 +1343,8 @@
  * @return              EOK on success or an error code
  */
-int vfs_write_short(int file, aoff64_t pos, const void *buf, size_t nbyte,
+errno_t vfs_write_short(int file, aoff64_t pos, const void *buf, size_t nbyte,
     ssize_t *nwritten)
 {
-	int rc;
+	errno_t rc;
 	ipc_call_t answer;
 	aid_t req;
Index: uspace/lib/c/generic/vol.c
===================================================================
--- uspace/lib/c/generic/vol.c	(revision 6a5d05bd2551e64111bea4f9332dd7448c26ce84)
+++ uspace/lib/c/generic/vol.c	(revision 5a6cc679876514e29ac7899053554db66db754d9)
@@ -48,9 +48,9 @@
  *             cannot be contacted.
  */
-int vol_create(vol_t **rvol)
+errno_t vol_create(vol_t **rvol)
 {
 	vol_t *vol;
 	service_id_t vol_svcid;
-	int rc;
+	errno_t rc;
 
 	vol = calloc(1, sizeof(vol_t));
@@ -103,5 +103,5 @@
  * @return EOK on success or an error code.
  */
-static int vol_get_ids_once(vol_t *vol, sysarg_t method, sysarg_t arg1,
+static errno_t vol_get_ids_once(vol_t *vol, sysarg_t method, sysarg_t arg1,
     sysarg_t *id_buf, size_t buf_size, size_t *act_size)
 {
@@ -110,5 +110,5 @@
 	ipc_call_t answer;
 	aid_t req = async_send_1(exch, method, arg1, &answer);
-	int rc = async_data_read_start(exch, id_buf, buf_size);
+	errno_t rc = async_data_read_start(exch, id_buf, buf_size);
 
 	async_exchange_end(exch);
@@ -119,5 +119,5 @@
 	}
 
-	int retval;
+	errno_t retval;
 	async_wait_for(req, &retval);
 
@@ -141,5 +141,5 @@
  * @return       EOK on success or an error code
  */
-static int vol_get_ids_internal(vol_t *vol, sysarg_t method, sysarg_t arg1,
+static errno_t vol_get_ids_internal(vol_t *vol, sysarg_t method, sysarg_t arg1,
     sysarg_t **data, size_t *count)
 {
@@ -148,5 +148,5 @@
 
 	size_t act_size = 0;
-	int rc = vol_get_ids_once(vol, method, arg1, NULL, 0, &act_size);
+	errno_t rc = vol_get_ids_once(vol, method, arg1, NULL, 0, &act_size);
 	if (rc != EOK)
 		return rc;
@@ -185,5 +185,5 @@
  * @return EOK on success or an error code
  */
-int vol_get_parts(vol_t *vol, service_id_t **data, size_t *count)
+errno_t vol_get_parts(vol_t *vol, service_id_t **data, size_t *count)
 {
 	return vol_get_ids_internal(vol, VOL_GET_PARTS, 0, data, count);
@@ -196,8 +196,8 @@
  * until it is discovered.
  */
-int vol_part_add(vol_t *vol, service_id_t sid)
-{
-	async_exch_t *exch;
-	int retval;
+errno_t vol_part_add(vol_t *vol, service_id_t sid)
+{
+	async_exch_t *exch;
+	errno_t retval;
 
 	exch = async_exchange_begin(vol->sess);
@@ -212,13 +212,13 @@
 
 /** Get partition information. */
-int vol_part_info(vol_t *vol, service_id_t sid, vol_part_info_t *vinfo)
-{
-	async_exch_t *exch;
-	int retval;
+errno_t vol_part_info(vol_t *vol, service_id_t sid, vol_part_info_t *vinfo)
+{
+	async_exch_t *exch;
+	errno_t retval;
 	ipc_call_t answer;
 
 	exch = async_exchange_begin(vol->sess);
 	aid_t req = async_send_1(exch, VOL_PART_INFO, sid, &answer);
-	int rc = async_data_read_start(exch, vinfo, sizeof(vol_part_info_t));
+	errno_t rc = async_data_read_start(exch, vinfo, sizeof(vol_part_info_t));
 	async_exchange_end(exch);
 
@@ -237,8 +237,8 @@
 /** Erase partition (to the extent where we will consider it not containing
  * a file system. */
-int vol_part_empty(vol_t *vol, service_id_t sid)
-{
-	async_exch_t *exch;
-	int retval;
+errno_t vol_part_empty(vol_t *vol, service_id_t sid)
+{
+	async_exch_t *exch;
+	errno_t retval;
 
 	exch = async_exchange_begin(vol->sess);
@@ -253,14 +253,14 @@
 
 /** Get volume label support. */
-int vol_part_get_lsupp(vol_t *vol, vol_fstype_t fstype,
+errno_t vol_part_get_lsupp(vol_t *vol, vol_fstype_t fstype,
     vol_label_supp_t *vlsupp)
 {
 	async_exch_t *exch;
-	int retval;
+	errno_t retval;
 	ipc_call_t answer;
 
 	exch = async_exchange_begin(vol->sess);
 	aid_t req = async_send_1(exch, VOL_PART_LSUPP, fstype, &answer);
-	int rc = async_data_read_start(exch, vlsupp, sizeof(vol_label_supp_t));
+	errno_t rc = async_data_read_start(exch, vlsupp, sizeof(vol_label_supp_t));
 	async_exchange_end(exch);
 
@@ -278,10 +278,10 @@
 
 /** Create file system. */
-int vol_part_mkfs(vol_t *vol, service_id_t sid, vol_fstype_t fstype,
+errno_t vol_part_mkfs(vol_t *vol, service_id_t sid, vol_fstype_t fstype,
     const char *label)
 {
 	async_exch_t *exch;
 	ipc_call_t answer;
-	int retval;
+	errno_t retval;
 
 	exch = async_exchange_begin(vol->sess);
