nfs-ganesha 1.4
|
00001 /* 00002 * vim:expandtab:shiftwidth=8:tabstop=8: 00003 */ 00004 00014 #ifdef HAVE_CONFIG_H 00015 #include "config.h" 00016 #endif 00017 00018 #include "fsal.h" 00019 #include "fsal_internal.h" 00020 00021 #ifdef _USE_MYSQL 00022 my_bool my_init(void); 00023 #endif /* _USE_MYSQL */ 00024 00046 fsal_status_t POSIXFSAL_Init(fsal_parameter_t * init_info /* IN */ 00047 ) 00048 { 00049 #if defined(_USE_PGSQL) 00050 posixfs_specific_initinfo_t * posix_init 00051 = (posixfs_specific_initinfo_t *)&init_info->fs_specific_info; 00052 int rc = 0 ; 00053 #endif 00054 fsal_status_t status; 00055 00056 /* sanity check. */ 00057 if(!init_info) 00058 Return(ERR_FSAL_FAULT, 0, INDEX_FSAL_Init); 00059 00060 /* proceeds FSAL internal initialization */ 00061 00062 status = fsal_internal_init_global(&(init_info->fsal_info), 00063 &(init_info->fs_common_info), 00064 &(init_info->fs_specific_info)); 00065 00066 if(FSAL_IS_ERROR(status)) 00067 Return(status.major, status.minor, INDEX_FSAL_Init); 00068 00069 /* FS Specific initialization. */ 00070 00071 /* Define the password file path used by PostgreSQL */ 00072 #if defined(_USE_PGSQL) 00073 if(!posix_init->dbparams.passwdfile[0] == '\0') 00074 { 00075 rc = setenv("PGPASSFILE", posix_init->dbparams.passwdfile, 1); 00076 if(rc != 0) 00077 LogMajor(COMPONENT_FSAL, "FSAL INIT: *** WARNING: Could not set POSTGRESQL keytab path."); 00078 } 00079 #elif defined (_USE_MYSQL) 00080 my_init(); 00081 #endif 00082 00083 Return(ERR_FSAL_NO_ERROR, 0, INDEX_FSAL_Init); 00084 00085 }