00001 00002 #ifdef HAVE_DLFCN_H 00003 #include <dlfcn.h> 00004 #endif 00005 00006 #include <stdio.h> 00007 #include <string.h> 00008 #include <pwd.h> 00009 #include <unistd.h> 00010 #include <sxpath.h> 00011 00012 typedef struct adaptor_i adaptor; 00015 struct adaptor_i { 00017 char **mime_types; 00019 int n_mime_types; 00021 void *lib_handle; 00023 adaptor *next_adaptor; 00024 }; 00025 00026 adaptor *first_adaptor; 00027 static int adaptor_loaded = 0; 00028 00029 void loadAdaptors( void ); 00030 adaptor *newAdaptor( char *line, adaptor *prev_ad ); 00031 void unloadAdaptors( void ); 00032 int adaptorsLoaded( void ); 00033 adaptor *getFirstAdaptor( void ); 00034 00035 void declareAdaptorNamespaces( QueryContext Q ); 00036 00037