Sync 4.next from master
[exim.git] / src / src / lookups / redis.c
index 5f677ff067a11829126e632fa3f359c4616e3aca..3a96f5ef940139337f9dc8b269de95e4b10e0925 100644 (file)
@@ -2,12 +2,12 @@
 *     Exim - an Internet mail transport agent    *
 *************************************************/
 
-/* Copyright (c) University of Cambridge 1995 - 2009 */
+/* Copyright (c) University of Cambridge 1995 - 2015 */
 /* See the file NOTICE for conditions of use and distribution. */
 
 #include "../exim.h"
 
-#ifdef EXPERIMENTAL_REDIS
+#ifdef LOOKUP_REDIS
 
 #include "lf_functions.h"
 
@@ -118,7 +118,7 @@ if (sdata[2][0] == 0) sdata[2] = NULL;
 
 /* See if we have a cached connection to the server */
 
-for (cn = redis_connections; cn != NULL; cn = cn->next)
+for (cn = redis_connections; cn; cn = cn->next)
   if (Ustrcmp(cn->server, server_copy) == 0)
     {
     redis_handle = cn->handle;
@@ -219,7 +219,7 @@ if(sdata[1])
     {
     for (argv[i] = NULL, siz = ptr = 0; (c = *s) && !isspace(c); s++)
       if (c != '\\' || *++s)           /* backslash protects next char */
-       argv[i] = string_cat(argv[i], &siz, &ptr, s, 1);
+       argv[i] = string_catn(argv[i], &siz, &ptr, s, 1);
     *(argv[i]+ptr) = '\0';
     DEBUG(D_lookup) debug_printf("REDIS: argv[%d] '%s'\n", i, argv[i]);
     while (isspace(*s)) s++;
@@ -256,12 +256,12 @@ switch (redis_reply->type)
 
   case REDIS_REPLY_INTEGER:
     ttmp = (redis_reply->integer != 0) ? US"true" : US"false";
-    result = string_cat(result, &ssize, &offset, US ttmp, Ustrlen(ttmp));
+    result = string_cat(result, &ssize, &offset, US ttmp);
     break;
 
   case REDIS_REPLY_STRING:
   case REDIS_REPLY_STATUS:
-    result = string_cat(result, &ssize, &offset,
+    result = string_catn(result, &ssize, &offset,
                        US redis_reply->str, redis_reply->len);
     break;
 
@@ -275,16 +275,16 @@ switch (redis_reply->type)
       entry = redis_reply->element[i];
 
       if (result)
-       result = string_cat(result, &ssize, &offset, US"\n", 1);
+       result = string_catn(result, &ssize, &offset, US"\n", 1);
 
       switch (entry->type)
        {
        case REDIS_REPLY_INTEGER:
          tmp = string_sprintf("%d", entry->integer);
-         result = string_cat(result, &ssize, &offset, US tmp, Ustrlen(tmp));
+         result = string_cat(result, &ssize, &offset, US tmp);
          break;
        case REDIS_REPLY_STRING:
-         result = string_cat(result, &ssize, &offset,
+         result = string_catn(result, &ssize, &offset,
                              US entry->str, entry->len);
          break;
        case REDIS_REPLY_ARRAY:
@@ -293,17 +293,16 @@ switch (redis_reply->type)
            tentry = entry->element[j];
 
            if (result)
-             result = string_cat(result, &ssize, &offset, US"\n", 1);
+             result = string_catn(result, &ssize, &offset, US"\n", 1);
 
            switch (tentry->type)
              {
              case REDIS_REPLY_INTEGER:
                ttmp = string_sprintf("%d", tentry->integer);
-               result = string_cat(result, &ssize, &offset,
-                                   US ttmp, Ustrlen(ttmp));
+               result = string_cat(result, &ssize, &offset, US ttmp);
                break;
              case REDIS_REPLY_STRING:
-               result = string_cat(result, &ssize, &offset,
+               result = string_catn(result, &ssize, &offset,
                                    US tentry->str, tentry->len);
                break;
              case REDIS_REPLY_ARRAY:
@@ -345,7 +344,7 @@ as it is cached. */
 
 if (redis_reply) freeReplyObject(redis_reply);
 
-/* Non-NULL result indicates a sucessful result */
+/* Non-NULL result indicates a successful result */
 
 if (result)
   {
@@ -458,11 +457,11 @@ static lookup_info redis_lookup_info = {
 };
 
 #ifdef DYNLOOKUP
-#define redis_lookup_module_info _lookup_module_info
+# define redis_lookup_module_info _lookup_module_info
 #endif /* DYNLOOKUP */
 
 static lookup_info *_lookup_list[] = { &redis_lookup_info };
 lookup_module_info redis_lookup_module_info = { LOOKUP_MODULE_INFO_MAGIC, _lookup_list, 1 };
 
-#endif /* EXPERIMENTAL_REDIS */
+#endif /* LOOKUP_REDIS */
 /* End of lookups/redis.c */