added chunk_compare() which compares orders chunks

This commit is contained in:
Andreas Steffen 2007-03-27 04:37:15 +00:00
parent 51ae94d775
commit ef49c3486a
2 changed files with 21 additions and 0 deletions

View File

@ -230,6 +230,21 @@ chunk_t chunk_skip(chunk_t chunk, size_t bytes)
return chunk_empty;
}
/**
* Described in header.
*/
int chunk_compare(chunk_t a, chunk_t b)
{
int compare_len = a.len - b.len;
int len = (compare_len < 0)? a.len : b.len;
if (compare_len != 0 || len == 0)
{
return compare_len;
}
return memcmp(a.ptr, b.ptr, len);
};
/**
* Described in header.
*/

View File

@ -123,6 +123,12 @@ void chunk_free(chunk_t *chunk);
*/
chunk_t chunk_skip(chunk_t chunk, size_t bytes);
/**
* Compare two chunks, returns zero if a equals b
* or negative/positive if a is small/greater than b
*/
int chunk_compare(chunk_t a, chunk_t b);
/**
* Compare two chunks for equality,
* NULL chunks are never equal.