• source navigation  • diff markup  • identifier search  • freetext search  • 

Sources/libubox/avl-cmp.c

  1 /*
  2  * Copyright (C) 2012 Felix Fietkau <nbd@openwrt.org>
  3  *
  4  * Permission to use, copy, modify, and/or distribute this software for any
  5  * purpose with or without fee is hereby granted, provided that the above
  6  * copyright notice and this permission notice appear in all copies.
  7  *
  8  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
  9  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 10  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 11  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 12  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 13  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 14  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 15  */
 16 #include <string.h>
 17 #include "avl-cmp.h"
 18 #include "blob.h"
 19 
 20 static inline int _min(int v1, int v2)
 21 {
 22         return v1 < v2 ? v1 : v2;
 23 }
 24 
 25 int
 26 avl_strcmp(const void *k1, const void *k2, void *ptr)
 27 {
 28         return strcmp(k1, k2);
 29 }
 30 
 31 int
 32 avl_blobcmp(const void *k1, const void *k2, void *ptr)
 33 {
 34         int len = _min(blob_raw_len(k1), blob_raw_len(k2));
 35 
 36         return memcmp(k1, k2, len);
 37 }
 38 

This page was automatically generated by LXR 0.3.1.  •  OpenWrt