added chunk_compare() which compares orders chunks
This commit is contained in:
parent
51ae94d775
commit
ef49c3486a
|
@ -230,6 +230,21 @@ chunk_t chunk_skip(chunk_t chunk, size_t bytes)
|
||||||
return chunk_empty;
|
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.
|
* Described in header.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -123,6 +123,12 @@ void chunk_free(chunk_t *chunk);
|
||||||
*/
|
*/
|
||||||
chunk_t chunk_skip(chunk_t chunk, size_t bytes);
|
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,
|
* Compare two chunks for equality,
|
||||||
* NULL chunks are never equal.
|
* NULL chunks are never equal.
|
||||||
|
|
Loading…
Reference in New Issue