diff options
author | Martin Nagy <mnagy@redhat.com> | 2009-03-25 17:59:54 +0100 |
---|---|---|
committer | Martin Nagy <mnagy@redhat.com> | 2009-03-25 17:59:54 +0100 |
commit | 743aed3ee3952c13f79289d1a7b8efe2aeaa20bf (patch) | |
tree | 698ef5b696dba655c11399be7bcd85f96094890c /str.c | |
parent | 571bf6b7f2fd9ca6551b207e60f486473c45ba96 (diff) | |
download | ldap_driver_testing-743aed3ee3952c13f79289d1a7b8efe2aeaa20bf.tar.gz ldap_driver_testing-743aed3ee3952c13f79289d1a7b8efe2aeaa20bf.tar.xz ldap_driver_testing-743aed3ee3952c13f79289d1a7b8efe2aeaa20bf.zip |
Refactoring related to isc_buffer_t.
Diffstat (limited to 'str.c')
-rw-r--r-- | str.c | 40 |
1 files changed, 40 insertions, 0 deletions
@@ -24,8 +24,10 @@ * Review all the REQUIRE() macros. */ +#include <isc/buffer.h> #include <isc/mem.h> #include <isc/mutex.h> +#include <isc/region.h> #include <isc/util.h> #include <dns/result.h> @@ -342,6 +344,30 @@ cleanup: return result; } +isc_result_t +str_cat_isc_region(ld_string_t *dest, const isc_region_t *region) +{ + REQUIRE(dest != NULL); + REQUIRE(region != NULL); + + return str_cat_char_len(dest, (char *)region->base, region->length); +} + +isc_result_t +str_cat_isc_buffer(ld_string_t *dest, const isc_buffer_t *buffer) +{ + isc_region_t region; + isc_buffer_t *deconst_buffer; + + REQUIRE(dest != NULL); + REQUIRE(ISC_BUFFER_VALID(buffer)); + + DE_CONST(buffer, deconst_buffer); + isc_buffer_usedregion(deconst_buffer, ®ion); + + return str_cat_isc_region(dest, ®ion); +} + /* * Concatenate string src to string dest. */ @@ -412,6 +438,20 @@ str_toupper(ld_string_t *str) *ptr = toupper((unsigned char)*ptr); } +void +str_to_isc_buffer(const ld_string_t *src, isc_buffer_t *dest) +{ + size_t len; + + REQUIRE(src != NULL); + REQUIRE(dest != NULL); + + len = str_len_internal(src) - 1; + + isc_buffer_init(dest, src->data, len); + isc_buffer_add(dest, len); +} + int str_casecmp_char(const ld_string_t *s1, const char *s2) { |