diff options
author | Jeff Trawick <trawick@apache.org> | 2001-04-27 19:00:46 +0000 |
---|---|---|
committer | Jeff Trawick <trawick@apache.org> | 2001-04-27 19:00:46 +0000 |
commit | 13c3003ed4ab3ffc9ac0298fe6903eb31a3a9c7b (patch) | |
tree | 55348a172f68a1874003f7869b9e95c98a59f016 /dso/os390 | |
parent | b7b23519117813af11df6a3ad95ef30fc149852d (diff) | |
download | apr-13c3003ed4ab3ffc9ac0298fe6903eb31a3a9c7b.tar.gz |
implement apr_os_dso_handle_get() and apr_os_dso_handle_put() for
OS/390; also, store the pool pointer in the apr_dso_handle_t in an
existing path
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@61558 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'dso/os390')
-rw-r--r-- | dso/os390/dso.c | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/dso/os390/dso.c b/dso/os390/dso.c index 02a2970bf..feeeaa0d2 100644 --- a/dso/os390/dso.c +++ b/dso/os390/dso.c @@ -52,6 +52,7 @@ * <http://www.apache.org/>. */ +#include "apr_portable.h" #include "apr_strings.h" #include "dso.h" #include <errno.h> @@ -59,6 +60,23 @@ #if APR_HAS_DSO +APR_DECLARE(apr_status_t) apr_os_dso_handle_put(apr_dso_handle_t **aprdso, + apr_os_dso_handle_t osdso, + apr_pool_t *pool) +{ + *aprdso = apr_pcalloc(pool, sizeof **aprdso); + (*aprdso)->handle = osdso; + (*aprdso)->pool = pool; + return APR_SUCCESS; +} + +APR_DECLARE(apr_status_t) apr_os_dso_handle_get(apr_os_dso_handle_t *osdso, + apr_dso_handle_t *aprdso) +{ + *osdso = aprdso->handle; + return APR_SUCCESS; +} + static apr_status_t dso_cleanup(void *thedso) { apr_dso_handle_t *dso = thedso; @@ -84,7 +102,7 @@ APR_DECLARE(apr_status_t) apr_dso_load(apr_dso_handle_t **res_handle, int rc; *res_handle = apr_pcalloc(ctx, sizeof(*res_handle)); - + (*res_handle)->pool = ctx; if ((handle = dllload(path)) != NULL) { (*res_handle)->handle = handle; apr_pool_cleanup_register(ctx, *res_handle, dso_cleanup, apr_pool_cleanup_null); |