diff options
author | Miod Vallat <miod@cvs.openbsd.org> | 2014-05-06 20:32:12 +0000 |
---|---|---|
committer | Miod Vallat <miod@cvs.openbsd.org> | 2014-05-06 20:32:12 +0000 |
commit | b178add5c9c2a038643e7e3e3589881002b8b00d (patch) | |
tree | 40f881118081dc816a3eca976777bce5f9a8a0c3 /lib | |
parent | b1bc89d05a9594c925a69feca47a522360def6f2 (diff) |
Assorted cleanups:
- replace hardcoded sizes with sizeof()
- pqueue_find() apparently used to need to keep track of the previous node
when iterating, which causes its logic to be complicated. However, nowadays
it only needs to iterate, so replace with a straightforward, much
readable logic.
- remove #if 0'ed code
From ``sin'' from 2f30 dot org on tech@, thanks!
Diffstat (limited to 'lib')
-rw-r--r-- | lib/libcrypto/pqueue/pqueue.c | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/lib/libcrypto/pqueue/pqueue.c b/lib/libcrypto/pqueue/pqueue.c index b8fed503a5e..fc68ae19c3d 100644 --- a/lib/libcrypto/pqueue/pqueue.c +++ b/lib/libcrypto/pqueue/pqueue.c @@ -126,7 +126,8 @@ pqueue_insert(pqueue_s *pq, pitem *item) curr = next, next = next->next) { /* we can compare 64-bit value in big-endian encoding * with memcmp:-) */ - int cmp = memcmp(next->priority, item->priority, 8); + int cmp = memcmp(next->priority, item->priority, + sizeof(item->priority)); if (cmp > 0) /* next > item */ { item->next = next; @@ -173,27 +174,16 @@ pqueue_find(pqueue_s *pq, unsigned char *prio64be) if (pq->items == NULL) return NULL; - for (next = pq->items; next->next != NULL; next = next->next) { + for (next = pq->items; next != NULL; next = next->next) { if (memcmp(next->priority, prio64be, 8) == 0) { found = next; break; } } - /* check the one last node */ - if (memcmp(next->priority, prio64be, 8) ==0) - found = next; - - if (! found) + if (!found) return NULL; -#if 0 /* find works in peek mode */ - if (prev == NULL) - pq->items = next->next; - else - prev->next = next->next; -#endif - return found; } |