|Copyright||(c) The University of Glasgow 2002|
|License||BSD-style (see the file libraries/base/LICENSE)|
|Portability||non-portable (requires POSIX)|
POSIX.1-2008 support with
ByteString file paths and environment strings.
This module exports exactly the same API as System.Posix, except that all file paths and environment strings are represented by
ByteString instead of
String. The System.Posix API implicitly translates all file paths and environment strings using the locale encoding, whereas this version of the API does no encoding or decoding and works directly in terms of raw bytes.
Note that if you do need to interpret file paths or environment strings as text, then some Unicode encoding or decoding should be applied first.
A literal POSIX file path
On some hosts (e.g. SuSe and Ubuntu Linux)
RTLD_DEFAULT) are not visible without setting the macro
_GNU_SOURCE. Since we don't want to define this macro, you can use the function
haveRtldNext to check wether the flag
Next is available. Ideally, this will be optimized by the compiler so that it should be as efficient as an
If you fail to test the flag and use it although it is undefined,
packDL will throw an error.
Deprecated: defaults to True
dlsym returns the address binding of the symbol described in
symbol, as it occurs in the shared object identified by
undl obtains the raw handle. You mustn't do something like
withDL mod flags $ liftM undl >>= p -> use p
© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).