}
char *memcached_stat_get_value(memcached_st *ptr, memcached_stat_st *stat,
- char *key, memcached_return *error)
+ const char *key, memcached_return *error)
{
char buffer[SMALL_STRING_LEN];
size_t length;
if (args != NULL)
{
int len= strlen(args);
+
+ rc= memcached_validate_key_length(len, true);
+ unlikely (rc != MEMCACHED_SUCCESS)
+ return rc;
+
request.message.header.request.keylen= htons((uint16_t)len);
request.message.header.request.bodylen= htonl(len);
memcached_return rc;
memcached_stat_st *stats;
+ if (ptr->flags & MEM_USE_UDP)
+ {
+ *error= MEMCACHED_NOT_SUPPORTED;
+ return NULL;
+ }
+
if (ptr->call_malloc)
stats= (memcached_stat_st *)ptr->call_malloc(ptr, sizeof(memcached_stat_st)*(ptr->number_of_hosts));
else
if (!stats)
{
*error= MEMCACHED_MEMORY_ALLOCATION_FAILURE;
- if (ptr->call_free)
- ptr->call_free(ptr, stats);
- else
- free(stats);
-
return NULL;
}
memset(stats, 0, sizeof(memcached_stat_st)*(ptr->number_of_hosts));