support cachecrls=yes
[strongswan.git] / src / libstrongswan / library.c
index ce3f827..9f96d11 100644 (file)
@@ -43,6 +43,7 @@ ENUM(status_names, SUCCESS, DESTROY_ME,
        "VERIFY_ERROR",
        "INVALID_STATE",
        "DESTROY_ME",
+       "NEED_MORE",
 );
 
 /**
@@ -59,6 +60,18 @@ void *clalloc(void * pointer, size_t size)
 }
 
 /**
+ * Described in header.
+ */
+void memxor(u_int8_t dest[], u_int8_t src[], size_t n)
+{
+       size_t i;
+       for (i = 0; i < n; i++)
+       {
+               dest[i] ^= src[i];
+       }
+}
+
+/**
  * We use a single mutex for all refcount variables. This
  * is not optimal for performance, but the critical section
  * is not that long...
@@ -146,19 +159,19 @@ static int print_time_delta(FILE *stream, const struct printf_info *info,
        if (delta > 2 * 60 * 60 * 24)
        {
                delta /= 60 * 60 * 24;
-               unit = "days";
+               unit = "day";
        }
        else if (delta > 2 * 60 * 60)
        {
                delta /= 60 * 60;
-               unit = "hours";
+               unit = "hour";
        }
        else if (delta > 2 * 60)
        {
                delta /= 60;
-               unit = "minutes";
+               unit = "minute";
        }
-       return fprintf(stream, "%d %s", delta, unit);
+       return fprintf(stream, "%d %s%s", delta, unit, (delta == 1)? "":"s");
 }
 
 /**