globus_extension.h - Online Linux Manual PageSection : 3
Updated : Tue Jan 26 2021
Source : Version 18.9
Note : globus_common
NAMEglobus_extension.h − Globus Extension Modules.
SYNOPSIS
#include 'globus_common_include.h'
#include 'globus_module.h'
#include 'globus_hashtable.h'
Macros#define GlobusExtensionDefineModule(name) globus_module_descriptor_t name##_module
Functionsint globus_extension_activate (const char *extension_name)
void * globus_extension_lookup (globus_extension_handle_t *handle, globus_extension_registry_t *registry, void *symbol)
int globus_extension_register_builtin (const char *extension_name, globus_module_descriptor_t *module_descriptor)
Detailed DescriptionGlobus Extension Modules.
Macro Definition Documentation
#define GlobusExtensionDefineModule(name) globus_module_descriptor_t name##_moduleDeclare your module with the following. Ex: GlobusExtensionDefineModule(my_module) = { 'my_module', globus_l_my_module_activate, globus_l_my_module_deactivate, NULL, NULL, &local_version };
Function Documentation
int globus_extension_activate (const char * extension_name)loads the shared library 'libextension_name_flavor.so' from $GLOBUS_LOCATION/lib (or other location in LD_LIBRARY_PATH and activates the module defined within. In the future, a configuration file will be supported allowing arbitrary extension names to be mapped to a specific library name. Also, when builtin (compiled in) extensions are supported, this will activate those directly without needing to load the library. Search order: • extension_name in mappings hash XXX not implemented • mapped name in builtin hash XXX not implemented • mapped name in dll hash XXX not implemented • load mapped name XXX not implemented • extension_name in builtin hash • extension_name in dll hash • load library if(strchr(extension_name, '/')) • concatenate / + dirname(extension_name) + /lib + basename(extension_name) + _<flavor>.so to $GLOBUS_LOCATION/lib and each search path in mappings file XXX not implemented (eg, for extension_name == wsrf/services/CounterService, load $GLOBUS_LOCATION/lib/wsrf/services/libCounterService_gcc32dbg.so) • lib + basename(entension_name) + _flavor.so subject to LD_LIBRARY_PATH else • load libextension_name_build_flavor subject to LD_LIBRARY_PATH
void* globus_extension_lookup (globus_extension_handle_t * handle, globus_extension_registry_t * registry, void * symbol)Get the datum associated with symbol in this registry. You MUST call globus_extension_release() when you are done using the data. the lookup() and release() calls handle the reference counting that prevents an extension from being unloaded while things it provides are being used. Do NOT call release() until you are done accessing the data from * the lookup() call. release() could potentially block as a result of module deactivation and unloading. ensuring that globus_extension_deactivate() is not called with outstanding references will prevent that. symbol is a char * by default. the key can be changed by calling globus_extension_registry_set_hashing() before it is accessed.
int globus_extension_register_builtin (const char * extension_name, globus_module_descriptor_t * module_descriptor)hopefully in the future, these functions will only be needed by generated code
AuthorGenerated automatically by Doxygen for globus_common from the source code. 0
Johanes Gumabo
Data Size : 14,867 byte
man-GlobusExtensionDefineModule.3Build : 2024-12-05, 20:55 :
Visitor Screen : x
Visitor Counter ( page / site ) : 3 / 165,564
Visitor ID : :
Visitor IP : 3.149.214.28 :
Visitor Provider : AMAZON-02 :
Provider Position ( lat x lon ) : 39.962500 x -83.006100 : x
Provider Accuracy Radius ( km ) : 1000 :
Provider City : Columbus :
Provider Province : Ohio , : ,
Provider Country : United States :
Provider Continent : North America :
Visitor Recorder : Version :
Visitor Recorder : Library :
Online Linux Manual Page : Version : Online Linux Manual Page - Fedora.40 - march=x86-64 - mtune=generic - 24.12.05
Online Linux Manual Page : Library : lib_c - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Online Linux Manual Page : Library : lib_m - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Data Base : Version : Online Linux Manual Page Database - 24.04.13 - march=x86-64 - mtune=generic - fedora-38
Data Base : Library : lib_c - 23.02.07 - march=x86-64 - mtune=generic - fedora.36
Very long time ago, I have the best tutor, Wenzel Svojanovsky . If someone knows the email address of Wenzel Svojanovsky , please send an email to johanes_gumabo@yahoo.co.id .
If error, please print screen and send to johanes_gumabo@yahoo.co.id
Under development. Support me via PayPal.