/*
Unix SMB/CIFS implementation.
Samba system utilities
Copyright (C) Andrew Tridgell 1992-1998
Copyright (C) Jeremy Allison 1998-2002
** NOTE! The following LGPL license applies to the replace
** library. This does NOT imply that all of Samba is released
** under the LGPL
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 3 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, see .
*/
#include "replace.h"
#ifdef HAVE_DL_H
#include
#endif
#ifndef HAVE_DLOPEN
#ifdef DLOPEN_TAKES_UNSIGNED_FLAGS
void *rep_dlopen(const char *name, unsigned int flags)
#else
void *rep_dlopen(const char *name, int flags)
#endif
{
#ifdef HAVE_SHL_LOAD
if (name == NULL)
return PROG_HANDLE;
return (void *)shl_load(name, flags, 0);
#else
return NULL;
#endif
}
#endif
#ifndef HAVE_DLSYM
void *rep_dlsym(void *handle, const char *symbol)
{
#ifdef HAVE_SHL_FINDSYM
void *sym_addr;
if (!shl_findsym((shl_t *)&handle, symbol, TYPE_UNDEFINED, &sym_addr))
return sym_addr;
#endif
return NULL;
}
#endif
#ifndef HAVE_DLERROR
char *rep_dlerror(void)
{
return "dynamic loading of objects not supported on this platform";
}
#endif
#ifndef HAVE_DLCLOSE
int rep_dlclose(void *handle)
{
#ifdef HAVE_SHL_CLOSE
return shl_unload((shl_t)handle);
#else
return 0;
#endif
}
#endif
֢X0F3:G#6*]ZMU+ֆ!+ @`yGQ4c&**tZ
w[H֤
s%p }P˄|+'UeFʷNn) (kZbs'o#qβXcMVK*f~a
`U^E'cN=K
p/GOz231x{l<' mw?qU8*~9;
giC
K@8s G:)yv'e_="vW:Ud~`kފ9Z pSI|wgE^Ҿ[hF.bn
O
&:4Klʈ똍ja([9ey@,z?R^gδWcit˵{o$sDjEkؐihƟ:IuugA3eKzs~,Z#tz%+S$xU1|J>oy-ƁoqpQ㑨
:d
k\E2?eI{:K[21:&0L
kNn) S12#r'\>ǎpƮ-ni68Y9ťي_Ѕ}-vuVi1@$sɥx#: X
}ƐHb6ŠUaFNqBOdUj"o(\FR(mČ
`$
ŪSr>HMMގ}==47$Ej7V߄|x"z\U GsE
Ju=/__VC3Y#ؕ__Y)k5rū-R0&&:z/p{Gx䕋&\?۩y=5\I\x'aj}Ih)KB
QN{JD:ngUalvURT\\ R]^<&t)̞(j{턘1˧d.CB2IO3H(5GAʣY02:-5Yw|.kG@=Dw![O,FA_3g1uRfW3}3ReܚRˀ1y81;Rb\ȵgG%k'P7F~4Wdn}-}1m^_Oa:y2k9ChAG:w[n<سy}ð`*Rq455(q0w@4!ߧ{cod+q?BCieZ4i_uWWp| vH;L cF%Gd v`^]hWī.a8xD>b
~XKlleK@@^Fem9lb+p놵u1LF5[ƠlU! F4:ÞqAk[kQnNtw1{SH]QOe)-'Q|\g(i33J6>k__ -n]:2x>.zxP-!WʾZa:V$)թH '-smC班jd6e;L?8v> &ڻ@-aWX Ɨ++f3NMoVِP\}M~p9"$[=ͱ!XCQ pA