|
Packit |
423ecb |
|
|
Packit |
423ecb |
<html>
|
|
Packit |
423ecb |
<head>
|
|
Packit |
423ecb |
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
|
|
Packit |
423ecb |
<title>xmlmodule: dynamic module loading</title>
|
|
Packit |
423ecb |
<meta name="generator" content="Libxml2 devhelp stylesheet"/>
|
|
Packit |
423ecb |
<link rel="start" href="index.html" title="libxml2 Reference Manual"/>
|
|
Packit |
423ecb |
<link rel="up" href="general.html" title="API"/>
|
|
Packit |
423ecb |
<link rel="stylesheet" href="style.css" type="text/css"/>
|
|
Packit |
423ecb |
<link rel="chapter" href="general.html" title="API"/>
|
|
Packit |
423ecb |
</head>
|
|
Packit |
423ecb |
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
![Prev](left.png)
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
![Up](up.png)
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
![Home](home.png)
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
![Next](right.png)
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
libxml2 Reference Manual
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
xmlmodule
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
xmlmodule - dynamic module loading
|
|
Packit |
423ecb |
basic API for dynamic module loading, used by libexslt added in 2.6.17
|
|
Packit |
423ecb |
Author(s): Joel W. Reed
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
Synopsis
|
|
Packit |
423ecb |
typedef struct _xmlModule xmlModule;
|
|
Packit |
423ecb |
typedef xmlModule * xmlModulePtr;
|
|
Packit |
423ecb |
typedef enum xmlModuleOption;
|
|
Packit |
423ecb |
int xmlModuleFree (xmlModulePtr module);
|
|
Packit |
423ecb |
int xmlModuleSymbol (xmlModulePtr module, const char * name, void ** symbol);
|
|
Packit |
423ecb |
xmlModulePtr xmlModuleOpen (const char * name, int options);
|
|
Packit |
423ecb |
int xmlModuleClose (xmlModulePtr module);
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
Description
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
Details
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
The content of this structure is not made public by the API.
|
|
Packit |
423ecb |
} xmlModule;
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
XML_MODULE_LAZY = 1 /* lazy binding */
|
|
Packit |
423ecb |
XML_MODULE_LOCAL = 2 /* local binding */
|
|
Packit |
423ecb |
};
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
A handle to a dynamically loaded module
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
The close operations unload the associated module and free the data associated to the module.
|
|
Packit |
423ecb |
<tt>module</tt>: | the module handle | <tt>Returns</tt>: | 0 in case of success, -1 in case of argument error and -2 if the module could not be closed/unloaded. |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
The free operations free the data associated to the module but does not unload the associated shared library which may still be in use.
|
|
Packit |
423ecb |
<tt>module</tt>: | the module handle | <tt>Returns</tt>: | 0 in case of success, -1 in case of argument error |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
Opens a module/shared library given its name or path NOTE: that due to portability issues, behaviour can only be guaranteed with @name using ASCII. We canot guarantee that an UTF-8 string would work, which is why name is a const char * and not a const xmlChar * . TODO: options are not yet implemented.
|
|
Packit |
423ecb |
<tt>name</tt>: | the module name | <tt>options</tt>: | a set of xmlModuleOption | <tt>Returns</tt>: | a handle for the module or NULL in case of error |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
Lookup for a symbol address in the given module NOTE: that due to portability issues, behaviour can only be guaranteed with @name using ASCII. We canot guarantee that an UTF-8 string would work, which is why name is a const char * and not a const xmlChar * .
|
|
Packit |
423ecb |
<tt>module</tt>: | the module | <tt>name</tt>: | the name of the symbol | <tt>symbol</tt>: | the resulting symbol address | <tt>Returns</tt>: | 0 if the symbol was found, or -1 in case of error |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
|
|
Packit |
423ecb |
</body>
|
|
Packit |
423ecb |
</html>
|