if (key)
{
- ptr->prefix_key_length= strlen(key);
+ size_t key_length= strlen(key);
+
+ if ((ptr->flags & MEM_VERIFY_KEY) && (memcachd_key_test((char **)&key, &key_length, 1) == MEMCACHED_BAD_KEY_PROVIDED))
+ return MEMCACHED_BAD_KEY_PROVIDED;
+
if ((ptr->prefix_key_length > MEMCACHED_PREFIX_KEY_MAX_SIZE -1)
|| (strcpy(ptr->prefix_key, key) == NULL))
{