+memcached_return pre_nonblock(memcached_st *memc)
+{
+ memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_NO_BLOCK, NULL);
+
+ return MEMCACHED_SUCCESS;
+}
+
+memcached_return pre_md5(memcached_st *memc)
+{
+ memcached_hash value= MEMCACHED_HASH_MD5;
+ memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_HASH, &value);
+
+ return MEMCACHED_SUCCESS;
+}
+
+memcached_return pre_crc(memcached_st *memc)
+{
+ memcached_hash value= MEMCACHED_HASH_CRC;
+ memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_HASH, &value);
+
+ return MEMCACHED_SUCCESS;
+}
+
+memcached_return pre_unix_socket(memcached_st *memc)
+{
+ memcached_return rc;
+ struct stat buf;
+
+ memcached_server_list_free(memc->hosts);
+ memc->hosts= NULL;
+ memc->number_of_hosts= 0;
+
+ if (stat("/tmp/memcached.socket", &buf))
+ return MEMCACHED_FAILURE;
+
+ rc= memcached_server_add_unix_socket(memc, "/tmp/memcached.socket");
+
+ return rc;
+}
+
+memcached_return pre_nodelay(memcached_st *memc)
+{
+ memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_NO_BLOCK, NULL);
+ memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_TCP_NODELAY, NULL);
+
+ return MEMCACHED_SUCCESS;
+}
+
+typedef struct collection_st collection_st;