X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=include%2Fsearch.h;h=02e407e3c2aba21b6fe4d015c6430c3155c3db69;hb=0ab97350f01b42de0f9fd811ee08653169661859;hp=ebfe08a22756020eeaae7f004108c0789b31ae8f;hpb=c1a9658bd19245ff0fb52d3da567815d822fb622;p=musl diff --git a/include/search.h b/include/search.h index ebfe08a2..02e407e3 100644 --- a/include/search.h +++ b/include/search.h @@ -13,7 +13,7 @@ extern "C" { typedef enum { FIND, ENTER } ACTION; typedef enum { preorder, postorder, endorder, leaf } VISIT; -typedef struct { +typedef struct entry { char *key; void *data; } ENTRY; @@ -22,6 +22,18 @@ int hcreate(size_t); void hdestroy(void); ENTRY *hsearch(ENTRY, ACTION); +#ifdef _GNU_SOURCE +struct hsearch_data { + struct __tab *__tab; + unsigned int __unused1; + unsigned int __unused2; +}; + +int hcreate_r(size_t, struct hsearch_data *); +void hdestroy_r(struct hsearch_data *); +int hsearch_r(ENTRY, ACTION, ENTRY **, struct hsearch_data *); +#endif + void insque(void *, void *); void remque(void *);