diff options
Diffstat (limited to 'testcode')
-rw-r--r-- | testcode/checklocks.c | 14 | ||||
-rw-r--r-- | testcode/fake_event.c | 39 | ||||
-rw-r--r-- | testcode/lock_verify.c | 5 | ||||
-rw-r--r-- | testcode/petal.c | 1 | ||||
-rw-r--r-- | testcode/readhex.c | 6 | ||||
-rw-r--r-- | testcode/replay.c | 40 | ||||
-rwxr-xr-x | testcode/run_vm.sh | 78 | ||||
-rw-r--r-- | testcode/signit.c | 108 | ||||
-rw-r--r-- | testcode/testbound.c | 11 | ||||
-rw-r--r-- | testcode/testpkts.c | 14 |
10 files changed, 208 insertions, 108 deletions
diff --git a/testcode/checklocks.c b/testcode/checklocks.c index ba020e7..5815e4f 100644 --- a/testcode/checklocks.c +++ b/testcode/checklocks.c @@ -58,6 +58,8 @@ /** if key has been created */ static int key_created = 0; +/** if the key was deleted, i.e. we have quit */ +static int key_deleted = 0; /** we hide the thread debug info with this key. */ static ub_thread_key_t thr_debug_key; /** the list of threads, so all threads can be examined. NULL if unused. */ @@ -273,6 +275,15 @@ checklock_init(enum check_lock_type type, struct checked_lock** lock, thr_debug_key); if(!e) fatal_exit("%s %s %d: out of memory", func, file, line); + if(!thr) { + /* this is called when log_init() calls lock_init() + * functions, and the test check code has not yet + * been initialised. But luckily, the checklock_start() + * routine can be called multiple times without ill effect. + */ + checklock_start(); + thr = (struct thr_check*)pthread_getspecific(thr_debug_key); + } if(!thr) fatal_exit("%s %s %d: lock_init no thread info", func, file, line); @@ -676,6 +687,8 @@ static void* checklock_main(void* arg) /** init the main thread */ void checklock_start(void) { + if(key_deleted) + return; if(!key_created) { struct thr_check* thisthr = (struct thr_check*)calloc(1, sizeof(struct thr_check)); @@ -696,6 +709,7 @@ void checklock_stop(void) { if(key_created) { int i; + key_deleted = 1; if(check_locking_order) fclose(thread_infos[0]->order_info); free(thread_infos[0]); diff --git a/testcode/fake_event.c b/testcode/fake_event.c index 47e4b78..de453aa 100644 --- a/testcode/fake_event.c +++ b/testcode/fake_event.c @@ -734,7 +734,8 @@ run_scenario(struct replay_runtime* runtime) struct listen_dnsport* listen_create(struct comm_base* base, struct listen_port* ATTR_UNUSED(ports), size_t bufsize, int ATTR_UNUSED(tcp_accept_count), - void* ATTR_UNUSED(sslctx), comm_point_callback_t* cb, void* cb_arg) + void* ATTR_UNUSED(sslctx), struct dt_env* ATTR_UNUSED(dtenv), + comm_point_callback_t* cb, void* cb_arg) { struct replay_runtime* runtime = (struct replay_runtime*)base; struct listen_dnsport* l= calloc(1, sizeof(struct listen_dnsport)); @@ -901,7 +902,7 @@ outside_network_create(struct comm_base* base, size_t bufsize, int ATTR_UNUSED(numavailports), size_t ATTR_UNUSED(unwanted_threshold), void (*unwanted_action)(void*), void* ATTR_UNUSED(unwanted_param), int ATTR_UNUSED(do_udp), void* ATTR_UNUSED(sslctx), - int ATTR_UNUSED(delayclose)) + int ATTR_UNUSED(delayclose), struct dt_env* ATTR_UNUSED(dtenv)) { struct replay_runtime* runtime = (struct replay_runtime*)base; struct outside_network* outnet = calloc(1, @@ -934,11 +935,11 @@ outside_network_quit_prepare(struct outside_network* ATTR_UNUSED(outnet)) } struct pending* -pending_udp_query(struct outside_network* outnet, sldns_buffer* packet, - struct sockaddr_storage* addr, socklen_t addrlen, int timeout, - comm_point_callback_t* callback, void* callback_arg) +pending_udp_query(struct serviced_query* sq, sldns_buffer* packet, + int timeout, comm_point_callback_t* callback, void* callback_arg) { - struct replay_runtime* runtime = (struct replay_runtime*)outnet->base; + struct replay_runtime* runtime = (struct replay_runtime*) + sq->outnet->base; struct fake_pending* pend = (struct fake_pending*)calloc(1, sizeof(struct fake_pending)); log_assert(pend); @@ -947,8 +948,8 @@ pending_udp_query(struct outside_network* outnet, sldns_buffer* packet, sldns_buffer_write(pend->buffer, sldns_buffer_begin(packet), sldns_buffer_limit(packet)); sldns_buffer_flip(pend->buffer); - memcpy(&pend->addr, addr, addrlen); - pend->addrlen = addrlen; + memcpy(&pend->addr, &sq->addr, sq->addrlen); + pend->addrlen = sq->addrlen; pend->callback = callback; pend->cb_arg = callback_arg; pend->timeout = timeout/1000; @@ -983,13 +984,12 @@ pending_udp_query(struct outside_network* outnet, sldns_buffer* packet, return (struct pending*)pend; } -struct waiting_tcp* -pending_tcp_query(struct outside_network* outnet, sldns_buffer* packet, - struct sockaddr_storage* addr, socklen_t addrlen, int timeout, - comm_point_callback_t* callback, void* callback_arg, - int ATTR_UNUSED(ssl_upstream)) +struct waiting_tcp* +pending_tcp_query(struct serviced_query* sq, sldns_buffer* packet, + int timeout, comm_point_callback_t* callback, void* callback_arg) { - struct replay_runtime* runtime = (struct replay_runtime*)outnet->base; + struct replay_runtime* runtime = (struct replay_runtime*) + sq->outnet->base; struct fake_pending* pend = (struct fake_pending*)calloc(1, sizeof(struct fake_pending)); log_assert(pend); @@ -998,8 +998,8 @@ pending_tcp_query(struct outside_network* outnet, sldns_buffer* packet, sldns_buffer_write(pend->buffer, sldns_buffer_begin(packet), sldns_buffer_limit(packet)); sldns_buffer_flip(pend->buffer); - memcpy(&pend->addr, addr, addrlen); - pend->addrlen = addrlen; + memcpy(&pend->addr, &sq->addr, sq->addrlen); + pend->addrlen = sq->addrlen; pend->callback = callback; pend->cb_arg = callback_arg; pend->timeout = timeout; @@ -1037,9 +1037,10 @@ pending_tcp_query(struct outside_network* outnet, sldns_buffer* packet, struct serviced_query* outnet_serviced_query(struct outside_network* outnet, uint8_t* qname, size_t qnamelen, uint16_t qtype, uint16_t qclass, uint16_t flags, int dnssec, int ATTR_UNUSED(want_dnssec), - int ATTR_UNUSED(tcp_upstream), int ATTR_UNUSED(ssl_upstream), - struct sockaddr_storage* addr, socklen_t addrlen, uint8_t* zone, - size_t zonelen, comm_point_callback_t* callback, void* callback_arg, + int ATTR_UNUSED(nocaps), int ATTR_UNUSED(tcp_upstream), + int ATTR_UNUSED(ssl_upstream), struct sockaddr_storage* addr, + socklen_t addrlen, uint8_t* zone, size_t zonelen, + comm_point_callback_t* callback, void* callback_arg, sldns_buffer* ATTR_UNUSED(buff)) { struct replay_runtime* runtime = (struct replay_runtime*)outnet->base; diff --git a/testcode/lock_verify.c b/testcode/lock_verify.c index 365fd6e..a46d5d9 100644 --- a/testcode/lock_verify.c +++ b/testcode/lock_verify.c @@ -391,6 +391,11 @@ main(int argc, char* argv[]) rbtree_t* all_locks; int i; time_t starttime = time(NULL); +#ifdef USE_THREAD_DEBUG + /* do not overwrite the ublocktrace files with the ones generated + * by this program (i.e. when the log code creates a lock) */ + check_locking_order = 0; +#endif if(argc <= 1) { usage(); return 1; diff --git a/testcode/petal.c b/testcode/petal.c index 0bdcc41..964735b 100644 --- a/testcode/petal.c +++ b/testcode/petal.c @@ -235,6 +235,7 @@ setup_ctx(char* key, char* cert) SSL_CTX* ctx = SSL_CTX_new(SSLv23_server_method()); if(!ctx) print_exit("out of memory"); (void)SSL_CTX_set_options(ctx, SSL_OP_NO_SSLv2); + (void)SSL_CTX_set_options(ctx, SSL_OP_NO_SSLv3); if(!SSL_CTX_use_certificate_file(ctx, cert, SSL_FILETYPE_PEM)) print_exit("cannot read cert"); if(!SSL_CTX_use_PrivateKey_file(ctx, key, SSL_FILETYPE_PEM)) diff --git a/testcode/readhex.c b/testcode/readhex.c index b986efd..d9aba09 100644 --- a/testcode/readhex.c +++ b/testcode/readhex.c @@ -49,7 +49,7 @@ static void skip_whites(const char** p) { while(1) { - while(isspace((int)**p)) + while(isspace((unsigned char)**p)) (*p)++; if(**p == ';') { /* comment, skip until newline */ @@ -71,11 +71,11 @@ void hex_to_buf(sldns_buffer* pkt, const char* hex) skip_whites(&p); if(sldns_buffer_position(pkt) == sldns_buffer_limit(pkt)) fatal_exit("hex_to_buf: buffer too small"); - if(!isalnum((int)*p)) + if(!isalnum((unsigned char)*p)) break; val = sldns_hexdigit_to_int(*p++) << 4; skip_whites(&p); - log_assert(*p && isalnum((int)*p)); + log_assert(*p && isalnum((unsigned char)*p)); val |= sldns_hexdigit_to_int(*p++); sldns_buffer_write_u8(pkt, (uint8_t)val); skip_whites(&p); diff --git a/testcode/replay.c b/testcode/replay.c index ee87b1a..5c11971 100644 --- a/testcode/replay.c +++ b/testcode/replay.c @@ -130,7 +130,7 @@ strip_end_white(char* p) { size_t i; for(i = strlen(p); i > 0; i--) { - if(isspace((int)p[i-1])) + if(isspace((unsigned char)p[i-1])) p[i-1] = 0; else return; } @@ -170,14 +170,14 @@ replay_range_read(char* remain, FILE* in, const char* name, while(fgets(line, MAX_LINE_LEN-1, in)) { pstate->lineno++; parse = line; - while(isspace((int)*parse)) + while(isspace((unsigned char)*parse)) parse++; if(!*parse || *parse == ';') { pos = ftello(in); continue; } if(parse_keyword(&parse, "ADDRESS")) { - while(isspace((int)*parse)) + while(isspace((unsigned char)*parse)) parse++; strip_end_white(parse); if(!extstrtoaddr(parse, &rng->addr, &rng->addrlen)) { @@ -281,7 +281,7 @@ replay_moment_read(char* remain, FILE* in, const char* name, return NULL; } remain += skip; - while(isspace((int)*remain)) + while(isspace((unsigned char)*remain)) remain++; if(parse_keyword(&remain, "NOTHING")) { mom->evt_type = repevt_nothing; @@ -303,10 +303,10 @@ replay_moment_read(char* remain, FILE* in, const char* name, mom->evt_type = repevt_timeout; } else if(parse_keyword(&remain, "TIME_PASSES")) { mom->evt_type = repevt_time_passes; - while(isspace((int)*remain)) + while(isspace((unsigned char)*remain)) remain++; if(parse_keyword(&remain, "EVAL")) { - while(isspace((int)*remain)) + while(isspace((unsigned char)*remain)) remain++; mom->string = strdup(remain); if(!mom->string) fatal_exit("out of memory"); @@ -316,7 +316,7 @@ replay_moment_read(char* remain, FILE* in, const char* name, } } else if(parse_keyword(&remain, "CHECK_AUTOTRUST")) { mom->evt_type = repevt_autotrust_check; - while(isspace((int)*remain)) + while(isspace((unsigned char)*remain)) remain++; if(strlen(remain)>0 && remain[strlen(remain)-1]=='\n') remain[strlen(remain)-1] = 0; @@ -333,20 +333,20 @@ replay_moment_read(char* remain, FILE* in, const char* name, } else if(parse_keyword(&remain, "INFRA_RTT")) { char *s, *m; mom->evt_type = repevt_infra_rtt; - while(isspace((int)*remain)) + while(isspace((unsigned char)*remain)) remain++; s = remain; remain = strchr(s, ' '); if(!remain) fatal_exit("expected three args for INFRA_RTT"); remain[0] = 0; remain++; - while(isspace((int)*remain)) + while(isspace((unsigned char)*remain)) remain++; m = strchr(remain, ' '); if(!m) fatal_exit("expected three args for INFRA_RTT"); m[0] = 0; m++; - while(isspace((int)*m)) + while(isspace((unsigned char)*m)) m++; if(!extstrtoaddr(s, &mom->addr, &mom->addrlen)) fatal_exit("bad infra_rtt address %s", s); @@ -361,10 +361,10 @@ replay_moment_read(char* remain, FILE* in, const char* name, free(mom); return NULL; } - while(isspace((int)*remain)) + while(isspace((unsigned char)*remain)) remain++; if(parse_keyword(&remain, "ADDRESS")) { - while(isspace((int)*remain)) + while(isspace((unsigned char)*remain)) remain++; if(strlen(remain) > 0) /* remove \n */ remain[strlen(remain)-1] = 0; @@ -408,7 +408,7 @@ static struct replay_scenario* make_scenario(char* line) { struct replay_scenario* scen; - while(isspace((int)*line)) + while(isspace((unsigned char)*line)) line++; if(!*line) { log_err("scenario: no title given"); @@ -442,7 +442,7 @@ replay_scenario_read(FILE* in, const char* name, int* lineno) parse=line; pstate.lineno++; (*lineno)++; - while(isspace((int)*parse)) + while(isspace((unsigned char)*parse)) parse++; if(!*parse) continue; /* empty line */ @@ -651,7 +651,7 @@ do_macro_variable(rbtree_t* store, char* buf, size_t remain) char sv; if(at[0]==0) return NULL; /* no variable name after $ */ - while(*at && (isalnum((int)*at) || *at=='_')) { + while(*at && (isalnum((unsigned char)*at) || *at=='_')) { at++; } /* terminator, we are working in macro_expand() buffer */ @@ -724,7 +724,7 @@ do_macro_arith(char* orig, size_t remain, char** arithstart) /* remember start pos of expr, skip the first number */ at = orig; *arithstart = at; - while(*at && (isdigit((int)*at) || *at == '.')) + while(*at && (isdigit((unsigned char)*at) || *at == '.')) at++; return at; } @@ -737,7 +737,7 @@ do_macro_arith(char* orig, size_t remain, char** arithstart) *arithstart = NULL; return do_macro_arith(orig, remain, arithstart); } - if(isdigit((int)operator)) { + if(isdigit((unsigned char)operator)) { *arithstart = orig; return at+skip; /* do nothing, but setup for later number */ } @@ -820,13 +820,13 @@ macro_expand(rbtree_t* store, struct replay_runtime* runtime, char** text) at = do_macro_recursion(store, runtime, at, remain); } else if(*at == '$') { at = do_macro_variable(store, at, remain); - } else if(isdigit((int)*at)) { + } else if(isdigit((unsigned char)*at)) { at = do_macro_arith(at, remain, &arithstart); } else { /* copy until whitespace or operator */ - if(*at && (isalnum((int)*at) || *at=='_')) { + if(*at && (isalnum((unsigned char)*at) || *at=='_')) { at++; - while(*at && (isalnum((int)*at) || *at=='_')) + while(*at && (isalnum((unsigned char)*at) || *at=='_')) at++; } else at++; } diff --git a/testcode/run_vm.sh b/testcode/run_vm.sh new file mode 100755 index 0000000..78649f0 --- /dev/null +++ b/testcode/run_vm.sh @@ -0,0 +1,78 @@ +#!/usr/local/bin/bash +# run tpkg tests from within a VM. Looks for loopback addr. +# if run not from within a VM, runs the tests as usual. +# with one argument: run that tpkg, otherwise, run all tpkgs. + +get_lo0_ip4() { + if test -x /sbin/ifconfig + then + LO0_IP4=`/sbin/ifconfig lo0 | grep '[^0-9]127\.' | sed -e 's/^[^1]*\(127\.[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\)[^0-9]*.*$/\1/g'` + if ( echo $LO0_IP4 | grep '^127\.[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*$' > /dev/null ) + then + return + fi + fi + LO0_IP4=127.0.0.1 +} +get_lo0_ip4 +export LO0_IP4 +if test "x$LO0_IP4" = "x127.0.0.1" +then + ALT_LOOPBACK=false +else + ALT_LOOPBACK=true +fi +cd testdata +TPKG=../testcode/mini_tpkg.sh +#RUNLIST=`(ls -1 *.tpkg|grep -v '^0[016]')` +RUNLIST=`(ls -1 *.tpkg)` +if test "$#" = "1"; then RUNLIST="$1"; fi + +# fix up tpkg that was edited on keyboard interrupt. +cleanup() { + echo cleanup + if test -f "$t.bak"; then mv "$t.bak" "$t"; fi + exit 0 +} +trap cleanup SIGINT + +for t in $RUNLIST +do + if ! $ALT_LOOPBACK + then + $TPKG exe $t + continue + fi + # We have alternative 127.0.0.1 number + if ( echo $t | grep '6\.tpkg$' ) # skip IPv6 tests + then + continue + elif test "$t" = "edns_cache.tpkg" # This one is IPv6 too! + then + continue + fi + cp -p "$t" "$t.bak" + tar xzf $t + find "${t%.tpkg}.dir" -type f \ + -exec grep -q -e '127\.0\.0\.1' -e '@localhost' {} \; -print | { + while read f + do + sed "s/127\.0\.0\.1/${LO0_IP4}/g" "$f" > "$f._" + mv "$f._" "$f" + sed "s/@localhost/@${LO0_IP4}/g" "$f" > "$f._" + mv "$f._" "$f" + done + } + find "${t%.tpkg}.dir" -type d -name "127.0.0.1" -print | { + while read d + do + mv -v "$d" "${d%127.0.0.1}${LO0_IP4}" + done + } + tar czf $t "${t%.tpkg}.dir" + rm -fr "${t%.tpkg}.dir" + $TPKG exe $t + mv "$t.bak" "$t" +done +# get out of testdata/ +cd .. diff --git a/testcode/signit.c b/testcode/signit.c index 719687b..af4e0fe 100644 --- a/testcode/signit.c +++ b/testcode/signit.c @@ -95,7 +95,7 @@ convert_timeval(const char* str) if (tm.tm_min < 0 || tm.tm_min > 59) return 0; if (tm.tm_sec < 0 || tm.tm_sec > 59) return 0; /* call ldns conversion function */ - t = sldns_mktime_from_utc(&tm); + t = ldns_mktime_from_utc(&tm); return t; } @@ -121,14 +121,14 @@ parse_cmdline(char *argv[], struct keysets* s) } /** read all key files, exit on error */ -static sldns_key_list* +static ldns_key_list* read_keys(int num, char* names[], struct keysets* set) { int i; - sldns_key_list* keys = sldns_key_list_new(); - sldns_key* k; - sldns_rdf* rdf; - sldns_status s; + ldns_key_list* keys = ldns_key_list_new(); + ldns_key* k; + ldns_rdf* rdf; + ldns_status s; int b; FILE* in; @@ -138,45 +138,45 @@ read_keys(int num, char* names[], struct keysets* set) in = fopen(names[i], "r"); if(!in) fatal_exit("could not open %s: %s", names[i], strerror(errno)); - s = sldns_key_new_frm_fp(&k, in); + s = ldns_key_new_frm_fp(&k, in); fclose(in); if(s != LDNS_STATUS_OK) fatal_exit("bad keyfile %s: %s", names[i], - sldns_get_errorstr_by_id(s)); - sldns_key_set_expiration(k, set->expi); - sldns_key_set_inception(k, set->incep); - s = sldns_str2rdf_dname(&rdf, set->owner); + ldns_get_errorstr_by_id(s)); + ldns_key_set_expiration(k, set->expi); + ldns_key_set_inception(k, set->incep); + s = ldns_str2rdf_dname(&rdf, set->owner); if(s != LDNS_STATUS_OK) fatal_exit("bad owner name %s: %s", set->owner, - sldns_get_errorstr_by_id(s)); - sldns_key_set_pubkey_owner(k, rdf); - sldns_key_set_flags(k, set->flags); - sldns_key_set_keytag(k, set->keytag); - b = sldns_key_list_push_key(keys, k); + ldns_get_errorstr_by_id(s)); + ldns_key_set_pubkey_owner(k, rdf); + ldns_key_set_flags(k, set->flags); + ldns_key_set_keytag(k, set->keytag); + b = ldns_key_list_push_key(keys, k); assert(b); } return keys; } /** read list of rrs from the file */ -static sldns_rr_list* +static ldns_rr_list* read_rrs(FILE* in) { uint32_t my_ttl = 3600; - sldns_rdf *my_origin = NULL; - sldns_rdf *my_prev = NULL; - sldns_status s; + ldns_rdf *my_origin = NULL; + ldns_rdf *my_prev = NULL; + ldns_status s; int line_nr = 1; int b; - sldns_rr_list* list; - sldns_rr *rr; + ldns_rr_list* list; + ldns_rr *rr; - list = sldns_rr_list_new(); + list = ldns_rr_list_new(); if(!list) fatal_exit("alloc error"); while(!feof(in)) { - s = sldns_rr_new_frm_fp_l(&rr, in, &my_ttl, &my_origin, + s = ldns_rr_new_frm_fp_l(&rr, in, &my_ttl, &my_origin, &my_prev, &line_nr); if(s == LDNS_STATUS_SYNTAX_TTL || s == LDNS_STATUS_SYNTAX_ORIGIN || @@ -184,8 +184,8 @@ read_rrs(FILE* in) continue; else if(s != LDNS_STATUS_OK) fatal_exit("parse error in line %d: %s", line_nr, - sldns_get_errorstr_by_id(s)); - b = sldns_rr_list_push_rr(list, rr); + ldns_get_errorstr_by_id(s)); + b = ldns_rr_list_push_rr(list, rr); assert(b); } printf("read %d lines\n", line_nr); @@ -195,21 +195,21 @@ read_rrs(FILE* in) /** sign the rrs with the keys */ static void -signit(sldns_rr_list* rrs, sldns_key_list* keys) +signit(ldns_rr_list* rrs, ldns_key_list* keys) { - sldns_rr_list* rrset; - sldns_rr_list* sigs; + ldns_rr_list* rrset; + ldns_rr_list* sigs; - while(sldns_rr_list_rr_count(rrs) > 0) { - rrset = sldns_rr_list_pop_rrset(rrs); + while(ldns_rr_list_rr_count(rrs) > 0) { + rrset = ldns_rr_list_pop_rrset(rrs); if(!rrset) fatal_exit("copy alloc failure"); - sigs = sldns_sign_public(rrset, keys); + sigs = ldns_sign_public(rrset, keys); if(!sigs) fatal_exit("failed to sign"); - sldns_rr_list_print(stdout, rrset); - sldns_rr_list_print(stdout, sigs); + ldns_rr_list_print(stdout, rrset); + ldns_rr_list_print(stdout, sigs); printf("\n"); - sldns_rr_list_free(rrset); - sldns_rr_list_free(sigs); + ldns_rr_list_free(rrset); + ldns_rr_list_free(sigs); } } @@ -217,8 +217,8 @@ signit(sldns_rr_list* rrs, sldns_key_list* keys) static void process_keys(int argc, char* argv[]) { - sldns_rr_list* rrs; - sldns_key_list* keys; + ldns_rr_list* rrs; + ldns_key_list* keys; struct keysets settings; assert(argc == 6); @@ -227,8 +227,8 @@ process_keys(int argc, char* argv[]) rrs = read_rrs(stdin); signit(rrs, keys); - sldns_rr_list_deep_free(rrs); - sldns_key_list_free(keys); + ldns_rr_list_deep_free(rrs); + ldns_key_list_free(keys); } /** process nsec3 params and perform hashing */ @@ -236,37 +236,37 @@ static void process_nsec3(int argc, char* argv[]) { char line[10240]; - sldns_rdf* salt; - sldns_rdf* in, *out; - sldns_status status; - status = sldns_str2rdf_nsec3_salt(&salt, argv[5]); + ldns_rdf* salt; + ldns_rdf* in, *out; + ldns_status status; + status = ldns_str2rdf_nsec3_salt(&salt, argv[5]); if(status != LDNS_STATUS_OK) fatal_exit("Could not parse salt %s: %s", argv[5], - sldns_get_errorstr_by_id(status)); + ldns_get_errorstr_by_id(status)); assert(argc == 6); while(fgets(line, (int)sizeof(line), stdin)) { if(strlen(line) > 0) line[strlen(line)-1] = 0; /* remove trailing newline */ if(line[0]==0) continue; - status = sldns_str2rdf_dname(&in, line); + status = ldns_str2rdf_dname(&in, line); if(status != LDNS_STATUS_OK) fatal_exit("Could not parse name %s: %s", line, - sldns_get_errorstr_by_id(status)); - sldns_rdf_print(stdout, in); + ldns_get_errorstr_by_id(status)); + ldns_rdf_print(stdout, in); printf(" -> "); /* arg 3 is flags, unused */ - out = sldns_nsec3_hash_name(in, (uint8_t)atoi(argv[2]), + out = ldns_nsec3_hash_name(in, (uint8_t)atoi(argv[2]), (uint16_t)atoi(argv[4]), - sldns_rdf_data(salt)[0], sldns_rdf_data(salt)+1); + ldns_rdf_data(salt)[0], ldns_rdf_data(salt)+1); if(!out) fatal_exit("Could not hash %s", line); - sldns_rdf_print(stdout, out); + ldns_rdf_print(stdout, out); printf("\n"); - sldns_rdf_deep_free(in); - sldns_rdf_deep_free(out); + ldns_rdf_deep_free(in); + ldns_rdf_deep_free(out); } - sldns_rdf_deep_free(salt); + ldns_rdf_deep_free(salt); } /** main program */ diff --git a/testcode/testbound.c b/testcode/testbound.c index c5e2d4d..daf8ddd 100644 --- a/testcode/testbound.c +++ b/testcode/testbound.c @@ -97,7 +97,7 @@ add_opts(const char* args, int* pass_argc, char* pass_argv[]) { const char *p = args, *np; size_t len; - while(p && isspace((int)*p)) + while(p && isspace((unsigned char)*p)) p++; while(p && *p) { /* find location of next string and length of this one */ @@ -115,7 +115,7 @@ add_opts(const char* args, int* pass_argc, char* pass_argv[]) (*pass_argc)++; /* go to next option */ p = np; - while(p && isspace((int)*p)) + while(p && isspace((unsigned char)*p)) p++; } } @@ -140,7 +140,7 @@ spool_auto_file(FILE* in, int* lineno, FILE* cfg, char* id) char* parse; FILE* spool; /* find filename for new file */ - while(isspace((int)*id)) + while(isspace((unsigned char)*id)) id++; if(strlen(id)==0) fatal_exit("AUTROTRUST_FILE must have id, line %d", *lineno); @@ -158,7 +158,7 @@ spool_auto_file(FILE* in, int* lineno, FILE* cfg, char* id) while(fgets(line, MAX_LINE_LEN-1, in)) { parse = line; (*lineno)++; - while(isspace((int)*parse)) + while(isspace((unsigned char)*parse)) parse++; if(strncmp(parse, "AUTOTRUST_END", 13) == 0) { fclose(spool); @@ -193,10 +193,11 @@ setup_config(FILE* in, int* lineno, int* pass_argc, char* pass_argv[]) fprintf(cfg, " username: \"\"\n"); fprintf(cfg, " pidfile: \"\"\n"); fprintf(cfg, " val-log-level: 2\n"); + fprintf(cfg, "remote-control: control-enable: no\n"); while(fgets(line, MAX_LINE_LEN-1, in)) { parse = line; (*lineno)++; - while(isspace((int)*parse)) + while(isspace((unsigned char)*parse)) parse++; if(!*parse || parse[0] == ';') continue; diff --git a/testcode/testpkts.c b/testcode/testpkts.c index c5aa244..a494d9f 100644 --- a/testcode/testpkts.c +++ b/testcode/testpkts.c @@ -81,7 +81,7 @@ static int str_keyword(char** str, const char* keyword) if(strncmp(*str, keyword, len) != 0) return 0; *str += len; - while(isspace((int)**str)) + while(isspace((unsigned char)**str)) (*str)++; return 1; } @@ -138,7 +138,7 @@ static void matchline(char* line, struct entry* e) error("expected = or : in MATCH: %s", line); parse++; e->ixfr_soa_serial = (uint32_t)strtol(parse, (char**)&parse, 10); - while(isspace((int)*parse)) + while(isspace((unsigned char)*parse)) parse++; } else { error("could not parse MATCH: '%s'", parse); @@ -226,11 +226,11 @@ static void adjustline(char* line, struct entry* e, e->copy_query = 1; } else if(str_keyword(&parse, "sleep=")) { e->sleeptime = (unsigned int) strtol(parse, (char**)&parse, 10); - while(isspace((int)*parse)) + while(isspace((unsigned char)*parse)) parse++; } else if(str_keyword(&parse, "packet_sleep=")) { pkt->packet_sleep = (unsigned int) strtol(parse, (char**)&parse, 10); - while(isspace((int)*parse)) + while(isspace((unsigned char)*parse)) parse++; } else { error("could not parse ADJUST: '%s'", parse); @@ -344,7 +344,7 @@ hex_buffer2wire(sldns_buffer *data_buffer) for (data_buf_pos = 0; data_buf_pos < sldns_buffer_position(data_buffer); data_buf_pos++) { c = (int) data_wire[data_buf_pos]; - if (state < 2 && !isascii(c)) { + if (state < 2 && !isascii((unsigned char)c)) { /*verbose("non ascii character found in file: (%d) switching to raw mode\n", c);*/ state = 2; } @@ -422,7 +422,7 @@ get_origin(const char* name, struct sldns_file_parse_state* pstate, char* parse) int status; end=parse; - while(!isspace((int)*end) && !isendline(*end)) + while(!isspace((unsigned char)*end) && !isendline(*end)) end++; store = *end; *end = 0; @@ -518,7 +518,7 @@ read_entry(FILE* in, const char* name, struct sldns_file_parse_state* pstate, parse = line; pstate->lineno++; - while(isspace((int)*parse)) + while(isspace((unsigned char)*parse)) parse++; /* test for keywords */ if(isendline(*parse)) |