X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=include%2Fldap_queue.h;h=dc90ac9be03eac0e94b32bc8d9eebd99b7f03ebe;hb=98c6d5259374c98582f9c426781a9b1856d0ac59;hp=572ce17261520ad82bba8bac223ec49f804f433e;hpb=3c598e89fb34a892d369a138daa8c3314294493c;p=openldap diff --git a/include/ldap_queue.h b/include/ldap_queue.h index 572ce17261..dc90ac9be0 100644 --- a/include/ldap_queue.h +++ b/include/ldap_queue.h @@ -2,7 +2,7 @@ /* $OpenLDAP$ */ /* This work is part of OpenLDAP Software . * - * Copyright 2001-2004 The OpenLDAP Foundation. + * Copyright 2001-2011 The OpenLDAP Foundation. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -111,6 +111,7 @@ * _HEAD + + + + + * _ENTRY + + + + + * _INIT + + + + + + * _ENTRY_INIT + + + + + * _EMPTY + + + + + * _FIRST + + + + + * _NEXT + + + + + @@ -160,6 +161,10 @@ struct { \ (head)->slh_first = NULL; \ } +#define LDAP_SLIST_ENTRY_INIT(var, field) { \ + (var)->field.sle_next = NULL; \ +} + #define LDAP_SLIST_INSERT_AFTER(slistelm, elm, field) do { \ (elm)->field.sle_next = (slistelm)->field.sle_next; \ (slistelm)->field.sle_next = (elm); \ @@ -219,6 +224,10 @@ struct { \ (head)->stqh_last = &(head)->stqh_first; \ } while (0) +#define LDAP_STAILQ_ENTRY_INIT(var, field) { \ + (entry)->field.stqe_next = NULL; \ +} + #define LDAP_STAILQ_FIRST(head) ((head)->stqh_first) #define LDAP_STAILQ_LAST(head, type, field) \ @@ -310,6 +319,11 @@ struct { \ (head)->lh_first = NULL; \ } while (0) +#define LDAP_LIST_ENTRY_INIT(var, field) do { \ + (var)->field.le_next = NULL; \ + (var)->field.le_prev = NULL; \ +} while (0) + #define LDAP_LIST_INSERT_AFTER(listelm, elm, field) do { \ if (((elm)->field.le_next = (listelm)->field.le_next) != NULL) \ (listelm)->field.le_next->field.le_prev = \ @@ -396,6 +410,11 @@ struct { \ (head)->tqh_last = &(head)->tqh_first; \ } while (0) +#define LDAP_TAILQ_ENTRY_INIT(var, field) do { \ + (var)->field.tqe_next = NULL; \ + (var)->field.tqe_prev = NULL; \ +} while (0) + #define LDAP_TAILQ_INSERT_HEAD(head, elm, field) do { \ if (((elm)->field.tqe_next = (head)->tqh_first) != NULL) \ (head)->tqh_first->field.tqe_prev = \ @@ -476,6 +495,11 @@ struct { \ (head)->cqh_last = (void *)(head); \ } while (0) +#define LDAP_CIRCLEQ_ENTRY_INIT(var, field) do { \ + (var)->field.cqe_next = NULL; \ + (var)->field.cqe_prev = NULL; \ +} while (0) + #define LDAP_CIRCLEQ_INSERT_AFTER(head, listelm, elm, field) do { \ (elm)->field.cqe_next = (listelm)->field.cqe_next; \ (elm)->field.cqe_prev = (listelm); \