Index: kernel/generic/src/ipc/ipc.c
===================================================================
--- kernel/generic/src/ipc/ipc.c	(revision 09d01f28221887ceaceba6c7bcc2102381ec548f)
+++ kernel/generic/src/ipc/ipc.c	(revision d0c2bebfdc87b9df8cb7c858eed6cead8e2db0b3)
@@ -444,6 +444,6 @@
  * @param phone Phone structure to be hung up.
  *
- * @return 0 if the phone is disconnected.
- * @return -1 if the phone was already disconnected.
+ * @return EOK if the phone is disconnected.
+ * @return EINVAL if the phone was already disconnected.
  *
  */
@@ -455,5 +455,5 @@
 	    phone->state == IPC_PHONE_CONNECTING) {
 		mutex_unlock(&phone->lock);
-		return -1;
+		return EINVAL;
 	}
 	
@@ -478,5 +478,5 @@
 	mutex_unlock(&phone->lock);
 	
-	return 0;
+	return EOK;
 }
 
Index: kernel/generic/src/ipc/sysipc.c
===================================================================
--- kernel/generic/src/ipc/sysipc.c	(revision 09d01f28221887ceaceba6c7bcc2102381ec548f)
+++ kernel/generic/src/ipc/sysipc.c	(revision d0c2bebfdc87b9df8cb7c858eed6cead8e2db0b3)
@@ -728,11 +728,7 @@
 		return ENOENT;
 	
-	if (ipc_phone_hangup(kobj->phone)) {
-		kobject_put(kobj);
-		return -1;
-	}
-	
+	int rc = ipc_phone_hangup(kobj->phone);
 	kobject_put(kobj);
-	return 0;
+	return rc;
 }
 
