+ return rc;
+}
+
+memcached_stat_st *memcached_stat(memcached_st *ptr, char *args, memcached_return *error)
+{
+ unsigned int x;
+ memcached_return rc;
+ memcached_stat_st *stats;
+ rc= memcached_connect(ptr);
+
+ if (rc != MEMCACHED_SUCCESS)
+ {
+ *error= rc;
+ return NULL;
+ }
+
+ stats= (memcached_stat_st *)malloc(sizeof(memcached_st)*(ptr->number_of_hosts+1));
+ if (stats)
+ {
+ *error= MEMCACHED_MEMORY_ALLOCATION_FAILURE;
+ return NULL;
+ }
+ memset(stats, 0, sizeof(memcached_st)*(ptr->number_of_hosts+1));
+
+ for (x= 0; x < ptr->number_of_hosts; x++)
+ {
+ rc= memcached_stats_fetch(ptr, stats+x, args, x);
+ if (rc != MEMCACHED_SUCCESS)
+ rc= MEMCACHED_SOME_ERRORS;
+ }
+
+ *error= x == 0 ? MEMCACHED_SUCCESS : rc;
+ return stats;
+}
+
+memcached_return memcached_stat_hostname(memcached_stat_st *stat, char *args,
+ char *hostname, unsigned int port)
+{
+ size_t send_length;
+ memcached_return rc;
+ char buffer[HUGE_STRING_LEN];
+ memcached_st memc;
+
+ memcached_init(&memc);
+
+ memcached_server_add(&memc, hostname, port);
+
+ rc= memcached_connect(&memc);
+
+ if (rc != MEMCACHED_SUCCESS)
+ return rc;
+
+ rc= memcached_stats_fetch(&memc, stat, args, 0);
+