Diff between b90dd1154c05050cb89b1d41cb599a6d2d4bdb11 and 6890d5129112d537a77709a65918a4ba445fc07d

Changed Files

File Additions Deletions Status
sap/server.c +7 -5 modified

Full Patch

diff --git a/sap/server.c b/sap/server.c
index c5ea97c..aa8ba23 100644
--- a/sap/server.c
+++ b/sap/server.c
@@ -254,7 +254,7 @@ static int send_message(struct sap_connection *conn, void *buf, size_t size)
 	if (!conn || !buf)
 		return -EINVAL;
 
-	DBG("size %zu", size);
+	DBG("conn %p, size %zu", conn, size);
 
 	gstatus = g_io_channel_write_chars(conn->io, buf, size, &written,
 						&gerr);
@@ -263,13 +263,15 @@ static int send_message(struct sap_connection *conn, void *buf, size_t size)
 			g_error_free(gerr);
 
 		error("write error (0x%02x).", gstatus);
-		return -EINVAL;
+		return -EIO;
 	}
 
-	if (written != size)
-		error("write error.(written %zu size %zu)", written, size);
+	if (written != size) {
+		error("written %zu bytes out of %zu", written, size);
+		return -EIO;
+	}
 
-	return 0;
+	return written;
 }
 
 static int disconnect_ind(void *sap_device, uint8_t disc_type)