xref: /unit/src/nxt_dyld.h (revision 0)
1*0Sigor@sysoev.ru 
2*0Sigor@sysoev.ru /*
3*0Sigor@sysoev.ru  * Copyright (C) Igor Sysoev
4*0Sigor@sysoev.ru  * Copyright (C) NGINX, Inc.
5*0Sigor@sysoev.ru  */
6*0Sigor@sysoev.ru 
7*0Sigor@sysoev.ru #ifndef _NXT_UNIX_DYLD_H_INCLUDED_
8*0Sigor@sysoev.ru #define _NXT_UNIX_DYLD_H_INCLUDED_
9*0Sigor@sysoev.ru 
10*0Sigor@sysoev.ru 
11*0Sigor@sysoev.ru typedef struct {
12*0Sigor@sysoev.ru     void              *handle;
13*0Sigor@sysoev.ru     char              *name;
14*0Sigor@sysoev.ru } nxt_dyld_t;
15*0Sigor@sysoev.ru 
16*0Sigor@sysoev.ru 
17*0Sigor@sysoev.ru #define NXT_DYLD_ANY  RTLD_DEFAULT
18*0Sigor@sysoev.ru 
19*0Sigor@sysoev.ru 
20*0Sigor@sysoev.ru #define                                                                       \
21*0Sigor@sysoev.ru nxt_dyld_is_valid(dyld)                                                       \
22*0Sigor@sysoev.ru     ((dyld)->handle != NULL)
23*0Sigor@sysoev.ru 
24*0Sigor@sysoev.ru 
25*0Sigor@sysoev.ru NXT_EXPORT nxt_int_t nxt_dyld_load(nxt_dyld_t *dyld);
26*0Sigor@sysoev.ru NXT_EXPORT void *nxt_dyld_symbol(nxt_dyld_t *dyld, const char *symbol);
27*0Sigor@sysoev.ru NXT_EXPORT nxt_int_t nxt_dyld_unload(nxt_dyld_t *dyld);
28*0Sigor@sysoev.ru 
29*0Sigor@sysoev.ru 
30*0Sigor@sysoev.ru #endif /* _NXT_UNIX_DYLD_H_INCLUDED_ */
31