More Cleanup
authorBrian Aker <brian@gaz>
Fri, 22 Jan 2010 01:16:04 +0000 (17:16 -0800)
committerBrian Aker <brian@gaz>
Fri, 22 Jan 2010 01:16:04 +0000 (17:16 -0800)
16 files changed:
libhashkit/algorithm.c
libhashkit/algorithm.h
libhashkit/include.am
libhashkit/md5.c
libmemcached/do.c
libmemcached/do.h
libmemcached/get.c
libmemcached/hash.c
libmemcached/hash.h
libmemcached/hosts.c
libmemcached/include.am
libmemcached/memcached.c
libmemcached/server.c
libmemcached/server_list.c [new file with mode: 0644]
libmemcached/util/pool.h
tests/include.am

index 380950e96dd81c736a330b1fd607cb634a4bc07b..e8f859e879cfe8ad67ec5666dffc20d9f5ccbc99 100644 (file)
@@ -60,8 +60,8 @@ uint32_t libhashkit_md5(const char *key, size_t key_length)
   return hashkit_md5(key, key_length, NULL);
 }
 
-void libhashkit_md5_signature(const unsigned char *key, uint32_t length, unsigned char *result)
+void libhashkit_md5_signature(const unsigned char *key, size_t length, unsigned char *result)
 {
-  md5_signature(key, length, result);
+  md5_signature(key, (uint32_t)length, result);
 }
 
index 9e005eaf28b908ca1071bccf412584416ceda3ec..40ab98ae27e381f4b96726c651462de1158e36ac 100644 (file)
@@ -83,7 +83,7 @@ HASHKIT_LOCAL
 uint32_t hashkit_md5(const char *key, size_t key_length, void *context);
 
 HASHKIT_API
-void libhashkit_md5_signature(const unsigned char *key, uint32_t length, unsigned char *result);
+void libhashkit_md5_signature(const unsigned char *key, size_t length, unsigned char *result);
 
 #ifdef __cplusplus
 }
index 11287a7a06867142f1669bac7f612d2269c393c8..f0dfe7541f36f011ab3706bfdcb9ea19bdaca549 100644 (file)
@@ -44,17 +44,15 @@ libhashkit_libhashkit_la_SOURCES+= libhashkit/hsieh.c
 endif
 
 libhashkit_libhashkit_la_CFLAGS= \
-                     ${AM_CFLAGS} \
-                     -DBUILDING_HASHKIT
+                                ${AM_CFLAGS} \
+                                -DBUILDING_HASHKIT
 
 libhashkit_libhashkit_la_LDFLAGS= \
                                  $(LIBM) \
                                  -version-info $(HASHKIT_LIBRARY_VERSION)
 
-noinst_LTLIBRARIES+= \
-                    libhashkit/libhashkitinc.la
+noinst_LTLIBRARIES+= libhashkit/libhashkitinc.la
 
 libhashkit_libhashkitinc_la_SOURCES= ${libhashkit_libhashkit_la_SOURCES}
 libhashkit_libhashkitinc_la_CFLAGS= ${libhashkit_libhashkit_la_CFLAGS}
-libhashkit_libhashkitinc_la_LDFLAGS= ${libhashkit_libhashkit_la_LDFLAGS}
-
+libhashkit_libhashkitinc_la_LDFLAGS=  $(LIBM)
index a968548d6c8958df8a6499048143a09be37122ab..7371c6d1093235c2222152007bbdb7d976685afc 100644 (file)
@@ -169,8 +169,8 @@ static void MD5Update (
 
   /* Update number of bits */
   if ((context->count[0] += ((UINT4)inputLen << 3))
-   < ((UINT4)inputLen << 3))
- context->count[1]++;
+      < ((UINT4)inputLen << 3))
   context->count[1]++;
   context->count[1] += ((UINT4)inputLen >> 29);
 
   partLen = 64 - idx;
index 31d4584035aed7b18f70a7e36bc03f1210a9c934..d5a75484244137103804d8eaac80396b2b1a6607 100644 (file)
@@ -1,3 +1,14 @@
+/* LibMemcached
+ * Copyright (C) 2006-2010 Brian Aker
+ * All rights reserved.
+ *
+ * Use and distribution licensed under the BSD license.  See
+ * the COPYING file in the parent directory for full text.
+ *
+ * Summary: 
+ *
+ */
+
 #include "common.h"
 
 memcached_return_t memcached_do(memcached_server_st *ptr, const void *command, 
index 223ed832c56c2e1a7fc2ab7adbc2b3cae0e895ab..d62cd489371a73094e2b9ef0006f14c8c0fdb170 100644 (file)
@@ -1,5 +1,5 @@
 /* LibMemcached
- * Copyright (C) 2006-2009 Brian Aker
+ * Copyright (C) 2006-2010 Brian Aker
  * All rights reserved.
  *
  * Use and distribution licensed under the BSD license.  See
index 990f9bbf40bbd23a13fe8dfe5c6aea9554b0dbb2..ba4d4bc3b479b83ec7a516ee085de8569e26f29f 100644 (file)
@@ -588,11 +588,19 @@ static memcached_return_t binary_mget_by_key(memcached_st *ptr,
     }
 
     if (is_master_key_set)
+    {
       for (size_t x= 0; x < number_of_keys; x++)
+      {
         hash[x]= master_server_key;
+      }
+    }
     else
+    {
       for (size_t x= 0; x < number_of_keys; x++)
+      {
         hash[x]= memcached_generate_hash(ptr, keys[x], key_length[x]);
+      }
+    }
 
     rc= replication_binary_mget(ptr, hash, dead_servers, keys,
                                 key_length, number_of_keys);
index 392155c02bc3b22213256e393b4cf7333ece9f18..dbdcc7ded0f13f122ac42c96ec095092e7ce5b49 100644 (file)
@@ -1,3 +1,14 @@
+/* LibMemcached
+ * Copyright (C) 2006-2010 Brian Aker
+ * All rights reserved.
+ *
+ * Use and distribution licensed under the BSD license.  See
+ * the COPYING file in the parent directory for full text.
+ *
+ * Summary: 
+ *
+ */
+
 #include "common.h"
 
 
@@ -107,3 +118,8 @@ uint32_t memcached_generate_hash(memcached_st *ptr, const char *key, size_t key_
 
   return dispatch_host(ptr, hash);
 }
+
+hashkit_st *memcached_get_hashkit(memcached_st *ptr)
+{
+  return &ptr->hashkit;
+}
index d82372d8746cbdc521c412313659ecefcfbaffd0..40f1f5652ee6839612369f6c44bdf4c79bd52183 100644 (file)
@@ -20,9 +20,13 @@ extern "C" {
 LIBMEMCACHED_API
 uint32_t memcached_generate_hash_value(const char *key, size_t key_length, memcached_hash_t hash_algorithm);
 
+LIBMEMCACHED_API
+hashkit_st *memcached_get_hashkit(memcached_st *ptr);
+
 LIBMEMCACHED_API
 uint32_t memcached_generate_hash(memcached_st *ptr, const char *key, size_t key_length);
 
+
 #ifdef __cplusplus
 }
 #endif
index 9d8870dca7c731b8b00bd246e176e8963a910e8e..b98a18e86398c1fc559d7abf587fb588c480bdab 100644 (file)
@@ -1,3 +1,14 @@
+/* LibMemcached
+ * Copyright (C) 2006-2010 Brian Aker
+ * All rights reserved.
+ *
+ * Use and distribution licensed under the BSD license.  See
+ * the COPYING file in the parent directory for full text.
+ *
+ * Summary: 
+ *
+ */
+
 #include "common.h"
 #include <math.h>
 
@@ -63,7 +74,7 @@ memcached_return_t run_distribution(memcached_st *ptr)
   return MEMCACHED_SUCCESS;
 }
 
-static uint32_t ketama_server_hash(const char *key, unsigned int key_length, uint32_t alignment)
+static uint32_t ketama_server_hash(const char *key, size_t key_length, uint32_t alignment)
 {
   unsigned char results[16];
 
@@ -214,9 +225,9 @@ static memcached_return_t update_continuum(memcached_st *ptr)
 
         if (is_ketama_weighted)
         {
-          for (uint32_t x = 0; x < pointer_per_hash; x++)
+          for (uint32_t x= 0; x < pointer_per_hash; x++)
           {
-             value= ketama_server_hash(sort_host, (uint32_t) sort_host_length, x);
+             value= ketama_server_hash(sort_host, sort_host_length, x);
              ptr->continuum[continuum_index].index= host_index;
              ptr->continuum[continuum_index++].value= value;
           }
@@ -260,7 +271,7 @@ static memcached_return_t update_continuum(memcached_st *ptr)
         {
           for (uint32_t x = 0; x < pointer_per_hash; x++)
           {
-             value= ketama_server_hash(sort_host, (uint32_t) sort_host_length, (int) x);
+             value= ketama_server_hash(sort_host, sort_host_length, x);
              ptr->continuum[continuum_index].index= host_index;
              ptr->continuum[continuum_index++].value= value;
           }
@@ -428,83 +439,3 @@ static memcached_return_t server_add(memcached_st *ptr, const char *hostname,
 
   return run_distribution(ptr);
 }
-
-/**
-  @todo allow lists to query themselves even if they lack a root
-*/
-memcached_return_t memcached_server_remove(memcached_server_st *st_ptr)
-{
-  uint32_t x, host_index;
-  memcached_st *root= (memcached_st *)st_ptr->root;
-  memcached_server_st *list;
-
-  if (root == NULL)
-    return MEMCACHED_FAILURE;
-
-  list= memcached_server_list(root);
-
-  for (x= 0, host_index= 0; x < memcached_server_count(root); x++)
-  {
-    if (strncmp(list[x].hostname, st_ptr->hostname, MEMCACHED_MAX_HOST_LENGTH) != 0 || list[x].port != st_ptr->port)
-    {
-      if (host_index != x)
-        memcpy(list+host_index, list+x, sizeof(memcached_server_st));
-      host_index++;
-    }
-  }
-  root->number_of_hosts= host_index;
-
-  if (st_ptr->address_info)
-  {
-    freeaddrinfo(st_ptr->address_info);
-    st_ptr->address_info= NULL;
-  }
-  run_distribution(root);
-
-  return MEMCACHED_SUCCESS;
-}
-
-memcached_server_st *memcached_server_list_append(memcached_server_st *ptr,
-                                                  const char *hostname, in_port_t port,
-                                                  memcached_return_t *error)
-{
-  return memcached_server_list_append_with_weight(ptr, hostname, port, 0, error);
-}
-
-memcached_server_st *memcached_server_list_append_with_weight(memcached_server_st *ptr,
-                                                              const char *hostname, in_port_t port,
-                                                              uint32_t weight,
-                                                              memcached_return_t *error)
-{
-  unsigned int count;
-  memcached_server_instance_st *new_host_list;
-
-  if (hostname == NULL || error == NULL)
-    return NULL;
-
-  if (! port)
-    port= MEMCACHED_DEFAULT_PORT;
-
-  /* Increment count for hosts */
-  count= 1;
-  if (ptr != NULL)
-  {
-    count+= memcached_servers_count(ptr);
-  }
-
-  new_host_list= (memcached_server_instance_st *)realloc(ptr, sizeof(memcached_server_instance_st) * count);
-  if (!new_host_list)
-  {
-    *error= MEMCACHED_MEMORY_ALLOCATION_FAILURE;
-    return NULL;
-  }
-
-  /* TODO: Check return type */
-  memcached_server_create_with(NULL, &new_host_list[count-1], hostname, port, weight, MEMCACHED_CONNECTION_TCP);
-
-  /* Backwards compatibility hack */
-  memcached_servers_set_count(new_host_list, count);
-
-  *error= MEMCACHED_SUCCESS;
-  return new_host_list;
-}
index aa96d923e34544c598be0733b48e566d3c4e7c4a..6dc3d705c0e4c10705a6929b4f18b84cb81aad45 100644 (file)
@@ -74,9 +74,9 @@ libmemcached_libmemcachedcallbacks_la_SOURCES = libmemcached/callback.c
 # This noinst lib contains things we want to be ABI private but still want to
 # either use in client programs or be able to test in test cases
 # These symbols will not be exposed in the shipped .so
-noinst_LTLIBRARIES+= \
-                    libmemcached/libmemcachedinternal.la
-libmemcached_libmemcachedinternal_la_SOURCES = libmemcached/string.c
+noinst_LTLIBRARIES+= libmemcached/libmemcachedinternal.la
+libmemcached_libmemcachedinternal_la_SOURCES= \
+                                             libmemcached/string.c
 
 lib_LTLIBRARIES+= libmemcached/libmemcached.la
 libmemcached_libmemcached_la_CFLAGS= ${AM_CFLAGS} ${NO_CONVERSION}
@@ -104,6 +104,7 @@ libmemcached_libmemcached_la_SOURCES = \
                                       libmemcached/response.c \
                                       libmemcached/result.c \
                                       libmemcached/server.c \
+                                      libmemcached/server_list.c \
                                       libmemcached/stats.c \
                                       libmemcached/storage.c \
                                       libmemcached/strerror.c \
index 6df260c6acdc9cd6a6c6bc15156f3fd38974e43f..c0fee34d0e6520405e678bdaa9b2e44114e383db 100644 (file)
@@ -1,6 +1,14 @@
-/*
-  Memcached library
-*/
+/* LibMemcached
+ * Copyright (C) 2006-2010 Brian Aker
+ * All rights reserved.
+ *
+ * Use and distribution licensed under the BSD license.  See
+ * the COPYING file in the parent directory for full text.
+ *
+ * Summary: 
+ *
+ */
+
 #include "common.h"
 
 static const memcached_st global_copy= {
index bcc211f655a4e9e88aa73aac4868970ab2c6ae1d..68e1ebaa4faf58118eea118dd2938dbfc343802f 100644 (file)
@@ -227,3 +227,38 @@ void memcached_server_list_free(memcached_server_st *ptr)
 {
   server_list_free(NULL, ptr);
 }
+
+/**
+  @todo allow lists to query themselves even if they lack a root
+*/
+memcached_return_t memcached_server_remove(memcached_server_st *st_ptr)
+{
+  uint32_t x, host_index;
+  memcached_st *root= (memcached_st *)st_ptr->root;
+  memcached_server_st *list;
+
+  if (root == NULL)
+    return MEMCACHED_FAILURE;
+
+  list= memcached_server_list(root);
+
+  for (x= 0, host_index= 0; x < memcached_server_count(root); x++)
+  {
+    if (strncmp(list[x].hostname, st_ptr->hostname, MEMCACHED_MAX_HOST_LENGTH) != 0 || list[x].port != st_ptr->port)
+    {
+      if (host_index != x)
+        memcpy(list+host_index, list+x, sizeof(memcached_server_st));
+      host_index++;
+    }
+  }
+  root->number_of_hosts= host_index;
+
+  if (st_ptr->address_info)
+  {
+    freeaddrinfo(st_ptr->address_info);
+    st_ptr->address_info= NULL;
+  }
+  run_distribution(root);
+
+  return MEMCACHED_SUCCESS;
+}
diff --git a/libmemcached/server_list.c b/libmemcached/server_list.c
new file mode 100644 (file)
index 0000000..f3750ea
--- /dev/null
@@ -0,0 +1,58 @@
+/* LibMemcached
+ * Copyright (C) 2006-2010 Brian Aker
+ * All rights reserved.
+ *
+ * Use and distribution licensed under the BSD license.  See
+ * the COPYING file in the parent directory for full text.
+ *
+ * Summary: 
+ *
+ */
+
+
+#include "common.h"
+
+memcached_server_st *memcached_server_list_append_with_weight(memcached_server_st *ptr,
+                                                              const char *hostname, in_port_t port,
+                                                              uint32_t weight,
+                                                              memcached_return_t *error)
+{
+  unsigned int count;
+  memcached_server_instance_st *new_host_list;
+
+  if (hostname == NULL || error == NULL)
+    return NULL;
+
+  if (! port)
+    port= MEMCACHED_DEFAULT_PORT;
+
+  /* Increment count for hosts */
+  count= 1;
+  if (ptr != NULL)
+  {
+    count+= memcached_servers_count(ptr);
+  }
+
+  new_host_list= (memcached_server_instance_st *)realloc(ptr, sizeof(memcached_server_instance_st) * count);
+  if (!new_host_list)
+  {
+    *error= MEMCACHED_MEMORY_ALLOCATION_FAILURE;
+    return NULL;
+  }
+
+  /* TODO: Check return type */
+  memcached_server_create_with(NULL, &new_host_list[count-1], hostname, port, weight, MEMCACHED_CONNECTION_TCP);
+
+  /* Backwards compatibility hack */
+  memcached_servers_set_count(new_host_list, count);
+
+  *error= MEMCACHED_SUCCESS;
+  return new_host_list;
+}
+
+memcached_server_st *memcached_server_list_append(memcached_server_st *ptr,
+                                                  const char *hostname, in_port_t port,
+                                                  memcached_return_t *error)
+{
+  return memcached_server_list_append_with_weight(ptr, hostname, port, 0, error);
+}
index b6325f3e6b968f948608bf5adce81fb50b075e61..f2e71a2a415c8c23020883fe4e5ed87944488c30 100644 (file)
@@ -10,8 +10,8 @@
  */
 
 
-#ifndef MEMCACHED_POOL_H
-#define MEMCACHED_POOL_H
+#ifndef __LIMEMCACHED_UTIL_POOL_H__
+#define __LIMEMCACHED_UTIL_POOL_H__
 
 #include <libmemcached/memcached.h>
 
@@ -45,7 +45,7 @@ memcached_return_t memcached_pool_behavior_get(memcached_pool_st *ptr,
                                                uint64_t *value);
 
 #ifdef __cplusplus
-}
+} // extern "C"
 #endif
 
-#endif /* MEMCACHED_POOL_H */
+#endif /* __LIMEMCACHED_UTIL_POOL_H__ */
index f1d00ef0f2636204fda7df1701505338734a9fcb..73b883428afc37798a14698efdd036c8832eb74b 100644 (file)
@@ -51,11 +51,11 @@ tests_libtest_la_SOURCES= tests/test.c
 tests_testapp_CFLAGS= $(AM_CFLAGS) $(NO_CONVERSION) $(NO_STRICT_ALIASING)
 tests_testapp_SOURCES= tests/mem_functions.c
 tests_testapp_LDADD= \
-       clients/libgenexec.la \
-       tests/libserver.la \
-       tests/libtest.la \
-       libmemcached/libmemcachedinternal.la \
-       $(TESTS_LDADDS)
+                    clients/libgenexec.la \
+                    tests/libserver.la \
+                    tests/libtest.la \
+                    libmemcached/libmemcachedinternal.la \
+$(TESTS_LDADDS)
 tests_testapp_DEPENDENCIES= $(tests_testapp_LDADD)
 
 tests_testplus_SOURCES= tests/plus.cpp