From: Willy Tarreau Date: Sat, 10 May 2014 06:34:01 +0000 (+0200) Subject: DOC: ebtree: indicate that prefix insertion/lookup may be used with strings X-Git-Tag: v1.5-dev25~8 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9f791939846c7d3cf8117c1fa627837e75eedd64;p=thirdparty%2Fhaproxy.git DOC: ebtree: indicate that prefix insertion/lookup may be used with strings And indicate what is required for this (that the pattern is properly terminated by a zero). (cherry picked from commit c87c93800ce4045b1053302d99a3cd78321a7ec4) --- diff --git a/ebtree/ebmbtree.h b/ebtree/ebmbtree.h index 48dc13082f..5ab115d0f9 100644 --- a/ebtree/ebmbtree.h +++ b/ebtree/ebmbtree.h @@ -373,7 +373,9 @@ __ebmb_insert(struct eb_root *root, struct ebmb_node *new, unsigned int len) /* Find the first occurence of the longest prefix matching a key in the * tree . It's the caller's responsibility to ensure that key is at - * least as long as the keys in the tree. If none can be found, return NULL. + * least as long as the keys in the tree. Note that this can be ensured by + * having a byte at the end of which cannot be part of any prefix, typically + * the trailing zero for a string. If none can be found, return NULL. */ static forceinline struct ebmb_node *__ebmb_lookup_longest(struct eb_root *root, const void *x) { @@ -465,7 +467,9 @@ static forceinline struct ebmb_node *__ebmb_lookup_longest(struct eb_root *root, /* Find the first occurence of a prefix matching a key of BITS in the * tree . It's the caller's responsibility to ensure that key is at - * least as long as the keys in the tree. If none can be found, return NULL. + * least as long as the keys in the tree. Note that this can be ensured by + * having a byte at the end of which cannot be part of any prefix, typically + * the trailing zero for a string. If none can be found, return NULL. */ static forceinline struct ebmb_node *__ebmb_lookup_prefix(struct eb_root *root, const void *x, unsigned int pfx) {