]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Use memcp for string comparisons to be \0 safe
authorArran Cudbard-Bell <a.cudbardb@freeradius.org>
Fri, 29 Aug 2014 19:38:08 +0000 (21:38 +0200)
committerArran Cudbard-Bell <a.cudbardb@freeradius.org>
Fri, 29 Aug 2014 19:38:19 +0000 (21:38 +0200)
src/lib/valuepair.c

index dfea003adcc5f9152fb74b73c8e22c0049d3fc30..9ba6e4bd46a74db6cbe6f2b53767d494d158ea0a 100644 (file)
@@ -2261,6 +2261,7 @@ int paircmp_value(VALUE_PAIR const *one, VALUE_PAIR const *two)
        switch (one->da->type) {
        case PW_TYPE_ABINARY:
        case PW_TYPE_OCTETS:
+       case PW_TYPE_STRING:    /* We use memcmp to be \0 safe */
        {
                size_t length;
 
@@ -2285,12 +2286,6 @@ int paircmp_value(VALUE_PAIR const *one, VALUE_PAIR const *two)
        }
                break;
 
-       case PW_TYPE_STRING:
-               fr_assert(one->vp_strvalue);
-               fr_assert(two->vp_strvalue);
-               compare = strcmp(one->vp_strvalue, two->vp_strvalue);
-               break;
-
                /*
                 *      Short-hand for simplicity.
                 */