From: miod Date: Sun, 18 May 2014 09:39:18 +0000 (+0000) Subject: No need to check for NULL before invoking free(); use calloc() when X-Git-Url: http://artulab.com/gitweb/?a=commitdiff_plain;h=b1e5b1d2679788c52b1513101be27be49a87e32d;p=openbsd No need to check for NULL before invoking free(); use calloc() when applicable; further simplify pqueue_find(). From Dimitris Papastamos on tech@ --- diff --git a/lib/libssl/pqueue.c b/lib/libssl/pqueue.c index 99c118c3b6f..daf5e21b3ae 100644 --- a/lib/libssl/pqueue.c +++ b/lib/libssl/pqueue.c @@ -84,30 +84,18 @@ pitem_new(unsigned char *prio64be, void *data) void pitem_free(pitem *item) { - if (item == NULL) - return; - free(item); } pqueue_s * pqueue_new(void) { - pqueue_s *pq = (pqueue_s *)malloc(sizeof(pqueue_s)); - - if (pq == NULL) - return NULL; - - memset(pq, 0x00, sizeof(pqueue_s)); - return pq; + return (pqueue_s *)calloc(1, sizeof(pqueue_s)); } void pqueue_free(pqueue_s *pq) { - if (pq == NULL) - return; - free(pq); } @@ -126,9 +114,8 @@ pqueue_insert(pqueue_s *pq, pitem *item) /* we can compare 64-bit value in big-endian encoding * with memcmp:-) */ int cmp = memcmp(next->priority, item->priority, - sizeof(item->priority)); - if (cmp > 0) /* next > item */ - { + sizeof(item->priority)); + if (cmp > 0) { /* next > item */ item->next = next; if (curr == NULL) @@ -168,23 +155,13 @@ pitem * pqueue_find(pqueue_s *pq, unsigned char *prio64be) { pitem *next; - pitem *found = NULL; - if (pq->items == NULL) - return NULL; - - for (next = pq->items; next != NULL; next = next->next) { + for (next = pq->items; next != NULL; next = next->next) if (memcmp(next->priority, prio64be, - sizeof(next->priority)) == 0) { - found = next; - break; - } - } - - if (!found) - return NULL; + sizeof(next->priority)) == 0) + return next; - return found; + return NULL; } pitem * diff --git a/lib/libssl/src/ssl/pqueue.c b/lib/libssl/src/ssl/pqueue.c index 99c118c3b6f..daf5e21b3ae 100644 --- a/lib/libssl/src/ssl/pqueue.c +++ b/lib/libssl/src/ssl/pqueue.c @@ -84,30 +84,18 @@ pitem_new(unsigned char *prio64be, void *data) void pitem_free(pitem *item) { - if (item == NULL) - return; - free(item); } pqueue_s * pqueue_new(void) { - pqueue_s *pq = (pqueue_s *)malloc(sizeof(pqueue_s)); - - if (pq == NULL) - return NULL; - - memset(pq, 0x00, sizeof(pqueue_s)); - return pq; + return (pqueue_s *)calloc(1, sizeof(pqueue_s)); } void pqueue_free(pqueue_s *pq) { - if (pq == NULL) - return; - free(pq); } @@ -126,9 +114,8 @@ pqueue_insert(pqueue_s *pq, pitem *item) /* we can compare 64-bit value in big-endian encoding * with memcmp:-) */ int cmp = memcmp(next->priority, item->priority, - sizeof(item->priority)); - if (cmp > 0) /* next > item */ - { + sizeof(item->priority)); + if (cmp > 0) { /* next > item */ item->next = next; if (curr == NULL) @@ -168,23 +155,13 @@ pitem * pqueue_find(pqueue_s *pq, unsigned char *prio64be) { pitem *next; - pitem *found = NULL; - if (pq->items == NULL) - return NULL; - - for (next = pq->items; next != NULL; next = next->next) { + for (next = pq->items; next != NULL; next = next->next) if (memcmp(next->priority, prio64be, - sizeof(next->priority)) == 0) { - found = next; - break; - } - } - - if (!found) - return NULL; + sizeof(next->priority)) == 0) + return next; - return found; + return NULL; } pitem *