Adding buffered IO to reads
[m6w6/libmemcached] / lib / memcached_response.c
index 1276351332d829d851eab826fe4ce61f540465ed..24ee832f148a593ab9791f049abb1308d2170aad 100644 (file)
@@ -21,7 +21,9 @@ memcached_return memcached_response(memcached_st *ptr,
   while (1)
   {
     unsigned int read_length;
-    read_length= recv(ptr->hosts[server_key].fd, buffer_ptr, 1, 0);
+
+    read_length= memcached_io_read(ptr, server_key,
+                                   buffer_ptr, 1);
 
     if (read_length != 1)
       return  MEMCACHED_UNKNOWN_READ_FAILURE;
@@ -48,7 +50,7 @@ memcached_return memcached_response(memcached_st *ptr,
         return MEMCACHED_UNKNOWN_READ_FAILURE;
     }
   case 'D': /* DELETED */
-    return MEMCACHED_SUCCESS;
+    return MEMCACHED_DELETED;
   case 'N': /* NOT_FOUND */
     {
       if (buffer[4] == 'F')
@@ -61,7 +63,7 @@ memcached_return memcached_response(memcached_st *ptr,
   case 'E': /* PROTOCOL ERROR or END */
     {
       if (buffer[1] == 'N')
-        return MEMCACHED_NOTFOUND;
+        return MEMCACHED_END;
       else if (buffer[1] == 'R')
         return MEMCACHED_PROTOCOL_ERROR;
       else