17 #ifndef GLOBUS_GSI_SYSTEM_CONFIG_H
18 #define GLOBUS_GSI_SYSTEM_CONFIG_H
26 #include "globus_common.h"
28 #include "openssl/x509.h"
35 #ifndef GLOBUS_GLOBAL_DOCUMENT_SET
94 #ifndef GLOBUS_DONT_DOCUMENT_INTERNAL
146 #define GLOBUS_GSI_SYSCONFIG_MODULE (&globus_i_gsi_sysconfig_module)
149 globus_module_descriptor_t globus_i_gsi_sysconfig_module;
152 # define GLOBUS_GSI_SYSCONFIG_SET_KEY_PERMISSIONS \
153 globus_gsi_sysconfig_set_key_permissions_win32
154 # define GLOBUS_GSI_SYSCONFIG_GET_HOME_DIR \
155 globus_gsi_sysconfig_get_home_dir_win32
156 # define GLOBUS_GSI_SYSCONFIG_CHECK_KEYFILE \
157 globus_gsi_sysconfig_check_keyfile_win32
158 # define GLOBUS_GSI_SYSCONFIG_CHECK_CERTFILE \
159 globus_gsi_sysconfig_check_certfile_win32
160 # define GLOBUS_GSI_SYSCONFIG_FILE_EXISTS \
161 globus_gsi_sysconfig_file_exists_win32
162 # define GLOBUS_GSI_SYSCONFIG_DIR_EXISTS \
163 globus_gsi_sysconfig_dir_exists_win32
164 # define GLOBUS_GSI_SYSCONFIG_GET_CERT_DIR \
165 globus_gsi_sysconfig_get_cert_dir_win32
166 # define GLOBUS_GSI_SYSCONFIG_GET_USER_CERT_FILENAME \
167 globus_gsi_sysconfig_get_user_cert_filename_win32
168 # define GLOBUS_GSI_SYSCONFIG_GET_HOST_CERT_FILENAME \
169 globus_gsi_sysconfig_get_host_cert_filename_win32
170 # define GLOBUS_GSI_SYSCONFIG_GET_SERVICE_CERT_FILENAME \
171 globus_gsi_sysconfig_get_service_cert_filename_win32
172 # define GLOBUS_GSI_SYSCONFIG_GET_PROXY_FILENAME \
173 globus_gsi_sysconfig_get_proxy_filename_win32
174 # define GLOBUS_GSI_SYSCONFIG_GET_SIGNING_POLICY_FILENAME \
175 globus_gsi_sysconfig_get_signing_policy_filename_win32
176 # define GLOBUS_GSI_SYSCONFIG_GET_CA_CERT_FILES \
177 globus_gsi_sysconfig_get_ca_cert_files_win32
178 # define GLOBUS_GSI_SYSCONFIG_GET_CURRENT_WORKING_DIR \
179 globus_gsi_sysconfig_get_current_working_dir_win32
180 # define GLOBUS_GSI_SYSCONFIG_MAKE_ABSOLUTE_PATH_FOR_FILENAME \
181 globus_gsi_sysconfig_make_absolute_path_for_filename_win32
182 # define GLOBUS_GSI_SYSCONFIG_SPLIT_DIR_AND_FILENAME \
183 globus_gsi_sysconfig_split_dir_and_filename_win32
184 # define GLOBUS_GSI_SYSCONFIG_REMOVE_ALL_OWNED_FILES \
185 globus_gsi_sysconfig_remove_all_owned_files_win32
186 # define GLOBUS_GSI_SYSCONFIG_GET_GRIDMAP_FILENAME \
187 globus_gsi_sysconfig_get_gridmap_filename_win32
188 # define GLOBUS_GSI_SYSCONFIG_GET_AUTHZ_CONF_FILENAME \
189 globus_gsi_sysconfig_get_authz_conf_filename_win32
190 # define GLOBUS_GSI_SYSCONFIG_GET_GAA_CONF_FILENAME \
191 globus_gsi_sysconfig_get_gaa_conf_filename_win32
192 # define GLOBUS_GSI_SYSCONFIG_IS_SUPERUSER \
193 globus_gsi_sysconfig_is_superuser_win32
194 # define GLOBUS_GSI_SYSCONFIG_GET_USER_ID_STRING \
195 globus_gsi_sysconfig_get_user_id_string_win32
196 # define GLOBUS_GSI_SYSCONFIG_GET_PROC_ID_STRING \
197 globus_gsi_sysconfig_get_proc_id_string_win32
198 # define GLOBUS_GSI_SYSCONFIG_GET_USERNAME \
199 globus_gsi_sysconfig_get_username_win32
208 # define GLOBUS_GSI_SYSCONFIG_SET_KEY_PERMISSIONS \
209 globus_gsi_sysconfig_set_key_permissions_unix
217 # define GLOBUS_GSI_SYSCONFIG_GET_HOME_DIR \
218 globus_gsi_sysconfig_get_home_dir_unix
226 # define GLOBUS_GSI_SYSCONFIG_CHECK_KEYFILE \
227 globus_gsi_sysconfig_check_keyfile_unix
235 # define GLOBUS_GSI_SYSCONFIG_CHECK_CERTFILE \
236 globus_gsi_sysconfig_check_certfile_unix
244 # define GLOBUS_GSI_SYSCONFIG_FILE_EXISTS \
245 globus_gsi_sysconfig_file_exists_unix
253 # define GLOBUS_GSI_SYSCONFIG_DIR_EXISTS \
254 globus_gsi_sysconfig_dir_exists_unix
262 # define GLOBUS_GSI_SYSCONFIG_GET_CERT_DIR \
263 globus_gsi_sysconfig_get_cert_dir_unix
271 # define GLOBUS_GSI_SYSCONFIG_GET_USER_CERT_FILENAME \
272 globus_gsi_sysconfig_get_user_cert_filename_unix
280 # define GLOBUS_GSI_SYSCONFIG_GET_HOST_CERT_FILENAME \
281 globus_gsi_sysconfig_get_host_cert_filename_unix
289 # define GLOBUS_GSI_SYSCONFIG_GET_SERVICE_CERT_FILENAME \
290 globus_gsi_sysconfig_get_service_cert_filename_unix
298 # define GLOBUS_GSI_SYSCONFIG_GET_PROXY_FILENAME \
299 globus_gsi_sysconfig_get_proxy_filename_unix
307 # define GLOBUS_GSI_SYSCONFIG_GET_SIGNING_POLICY_FILENAME \
308 globus_gsi_sysconfig_get_signing_policy_filename_unix
317 # define GLOBUS_GSI_SYSCONFIG_GET_CA_CERT_FILES \
318 globus_gsi_sysconfig_get_ca_cert_files_unix
326 # define GLOBUS_GSI_SYSCONFIG_GET_CURRENT_WORKING_DIR \
327 globus_gsi_sysconfig_get_current_working_dir_unix
335 # define GLOBUS_GSI_SYSCONFIG_MAKE_ABSOLUTE_PATH_FOR_FILENAME \
336 globus_gsi_sysconfig_make_absolute_path_for_filename_unix
344 # define GLOBUS_GSI_SYSCONFIG_SPLIT_DIR_AND_FILENAME \
345 globus_gsi_sysconfig_split_dir_and_filename_unix
353 # define GLOBUS_GSI_SYSCONFIG_REMOVE_ALL_OWNED_FILES \
354 globus_gsi_sysconfig_remove_all_owned_files_unix
362 # define GLOBUS_GSI_SYSCONFIG_GET_GRIDMAP_FILENAME \
363 globus_gsi_sysconfig_get_gridmap_filename_unix
370 # define GLOBUS_GSI_SYSCONFIG_GET_AUTHZ_CONF_FILENAME \
371 globus_gsi_sysconfig_get_authz_conf_filename_unix
379 # define GLOBUS_GSI_SYSCONFIG_GET_GAA_CONF_FILENAME \
380 globus_gsi_sysconfig_get_gaa_conf_filename_unix
388 # define GLOBUS_GSI_SYSCONFIG_IS_SUPERUSER \
389 globus_gsi_sysconfig_is_superuser_unix
397 # define GLOBUS_GSI_SYSCONFIG_GET_USER_ID_STRING \
398 globus_gsi_sysconfig_get_user_id_string_unix
406 # define GLOBUS_GSI_SYSCONFIG_GET_PROC_ID_STRING \
407 globus_gsi_sysconfig_get_proc_id_string_unix
415 # define GLOBUS_GSI_SYSCONFIG_GET_USERNAME \
416 globus_gsi_sysconfig_get_username_unix
425 #define GLOBUS_GSI_SYSCONFIG_GET_UNIQUE_PROXY_FILENAME \
426 globus_gsi_sysconfig_get_unique_proxy_filename
435 globus_gsi_sysconfig_get_home_dir_win32(
440 const char * filename);
444 const char * filename);
447 globus_gsi_sysconfig_check_keyfile_win32(
448 const char * filename);
451 globus_gsi_sysconfig_check_certfile_win32(
452 const char * filename);
460 char ** user_cert_filename,
461 char ** user_key_filename);
465 char ** host_cert_filename,
466 char ** host_key_filename);
471 char ** service_cert_filename,
472 char ** service_key_filename);
476 char ** proxy_filename,
483 char ** signing_policy_filename);
488 globus_fifo_t * ca_cert_list);
492 char ** working_dir);
497 char ** absolute_path);
501 char * full_filename,
503 char ** filename_string);
507 char * default_filename);
514 globus_gsi_sysconfig_get_user_id_string_win32(
515 char ** user_id_string);
518 globus_gsi_sysconfig_get_username_win32(
522 globus_gsi_sysconfig_get_proc_id_string_win32(
523 char ** proc_id_string);
546 const char * filename);
550 const char * filename);
554 const char * filename);
558 const char * filename);
566 char ** user_cert_filename,
567 char ** user_key_filename);
571 char ** host_cert_filename,
572 char ** host_key_filename);
577 char ** service_cert_filename,
578 char ** service_key_filename);
589 char ** signing_policy_filename);
594 globus_fifo_t * ca_cert_list);
598 char ** working_dir);
603 char ** absolute_path);
607 char * full_filename,
609 char ** filename_string);
613 char * default_filename);
621 char ** user_id_string);
629 char ** proc_id_string);
647 char ** unique_filename);
globus_result_t globus_gsi_sysconfig_dir_exists_win32(const char *filename)
Win32 - Directory Exists.
Definition: globus_gsi_system_config.c:825
globus_result_t globus_gsi_sysconfig_get_current_working_dir_unix(char **working_dir)
UNIX - Get Current Working Directory.
Definition: globus_gsi_system_config.c:4212
globus_result_t globus_gsi_sysconfig_get_host_cert_filename_unix(char **host_cert_filename, char **host_key_filename)
UNIX - Get Host Certificate and Key Filenames.
Definition: globus_gsi_system_config.c:5309
globus_result_t globus_gsi_sysconfig_set_key_permissions_unix(char *filename)
UNIX - Set Key Permissions.
Definition: globus_gsi_system_config.c:3726
globus_result_t globus_gsi_sysconfig_get_cert_dir_unix(char **cert_dir)
UNIX - Get Trusted CA Cert Dir.
Definition: globus_gsi_system_config.c:4862
globus_result_t globus_gsi_sysconfig_get_ca_cert_files_win32(char *ca_cert_dir, globus_fifo_t *ca_cert_list)
Win32 - Get CA Cert Filenames.
Definition: globus_gsi_system_config.c:2684
globus_result_t globus_gsi_sysconfig_get_authz_conf_filename_win32(char **filename)
Win32 - Get the path and file name of the grid map file.
Definition: globus_gsi_system_config.c:3041
globus_result_t globus_gsi_sysconfig_get_signing_policy_filename_win32(X509_NAME *ca_name, char *cert_dir, char **signing_policy_filename)
Win32 - Get Signing Policy Filename.
Definition: globus_gsi_system_config.c:3622
globus_result_t globus_gsi_sysconfig_get_proxy_filename_unix(char **user_proxy, globus_gsi_proxy_file_type_t proxy_file_type)
UNIX - Get Proxy Filename.
Definition: globus_gsi_system_config.c:5900
globus_result_t globus_gsi_sysconfig_get_gaa_conf_filename_unix(char **filename)
UNIX - Get the path and file name of the gaa configuration file.
Definition: globus_gsi_system_config.c:6897
globus_result_t globus_gsi_sysconfig_file_exists_unix(const char *filename)
UNIX - File Exists.
Definition: globus_gsi_system_config.c:4397
globus_result_t globus_gsi_sysconfig_get_user_cert_filename_unix(char **user_cert_filename, char **user_key_filename)
UNIX - Get User Certificate and Key Filenames.
Definition: globus_gsi_system_config.c:5070
globus_result_t globus_gsi_sysconfig_make_absolute_path_for_filename_unix(char *filename, char **absolute_path)
UNIX - Make Absolute Path.
Definition: globus_gsi_system_config.c:4047
globus_result_t globus_gsi_sysconfig_get_host_cert_filename_win32(char **host_cert, char **host_key)
Win32 - Get Host Certificate and Key Filenames.
Definition: globus_gsi_system_config.c:1945
globus_result_t globus_gsi_sysconfig_get_signing_policy_filename_unix(X509_NAME *ca_name, char *cert_dir, char **signing_policy_filename)
UNIX - Get Signing Policy Filename.
Definition: globus_gsi_system_config.c:6042
globus_result_t globus_gsi_sysconfig_get_user_id_string_unix(char **user_id_string)
UNIX - Get User ID.
Definition: globus_gsi_system_config.c:3845
globus_result_t globus_gsi_sysconfig_make_absolute_path_for_filename_win32(char *filename, char **absolute_path)
Win32 - Make Absolute Path.
Definition: globus_gsi_system_config.c:1207
globus_result_t globus_gsi_sysconfig_get_proxy_filename_win32(char **user_proxy, globus_gsi_proxy_file_type_t proxy_file_type)
Win32 - Get Proxy Filename.
Definition: globus_gsi_system_config.c:2546
globus_result_t globus_gsi_sysconfig_get_home_dir_unix(char **home_dir)
UNIX - Get HOME DirectoryGet the HOME Directory of the current user. Should be the $HOME environment ...
Definition: globus_gsi_system_config.c:4284
globus_result_t globus_gsi_sysconfig_split_dir_and_filename_unix(char *full_filename, char **dir_string, char **filename_string)
UNIX - Split Directory and Filename.
Definition: globus_gsi_system_config.c:4129
globus_result_t globus_gsi_sysconfig_get_authz_conf_filename_unix(char **filename)
UNIX - Get the path of authorization callback configuration.
Definition: globus_gsi_system_config.c:6540
globus_result_t globus_gsi_sysconfig_file_exists_win32(const char *filename)
Win32 - File Exists.
Definition: globus_gsi_system_config.c:727
globus_result_t globus_gsi_sysconfig_dir_exists_unix(const char *filename)
UNIX - Directory Exists.
Definition: globus_gsi_system_config.c:4496
globus_result_t globus_gsi_sysconfig_is_superuser_win32(int *is_superuser)
Win32 - Check if the current user is root.
Definition: globus_gsi_system_config.c:3584
globus_gsi_proxy_file_type_t
Definition: globus_gsi_system_config_constants.h:113
globus_result_t globus_gsi_sysconfig_get_service_cert_filename_unix(char *service_name, char **service_cert_filename, char **service_key_filename)
UNIX - Get Service Certificate and Key Filenames.
Definition: globus_gsi_system_config.c:5579
globus_result_t globus_gsi_sysconfig_set_key_permissions_win32(char *filename)
Win32 - Set Key Permissions.
Definition: globus_gsi_system_config.c:528
globus_result_t globus_gsi_sysconfig_check_keyfile_unix(const char *filename)
UNIX - Check File Status for Key.
Definition: globus_gsi_system_config.c:4584
globus_result_t globus_gsi_sysconfig_split_dir_and_filename_win32(char *full_filename, char **dir_string, char **filename_string)
Win32 - Split Directory and Filename.
Definition: globus_gsi_system_config.c:1279
Globus GSI System Config Library.
globus_result_t globus_gsi_sysconfig_get_gridmap_filename_unix(char **filename)
UNIX - Get the path and file name of the grid map file.
Definition: globus_gsi_system_config.c:6433
globus_result_t globus_gsi_sysconfig_remove_all_owned_files_win32(char *default_filename)
Win32 - Remove all proxies owned by current uid.
Definition: globus_gsi_system_config.c:2822
globus_result_t globus_gsi_sysconfig_get_current_working_dir_win32(char **working_dir)
Win32 - Get Current Working Directory.
Definition: globus_gsi_system_config.c:1132
globus_result_t globus_gsi_sysconfig_get_username_unix(char **username)
UNIX - Get Username.
Definition: globus_gsi_system_config.c:3906
globus_result_t globus_gsi_sysconfig_get_unique_proxy_filename(char **unique_filename)
Get Unique Proxy Filename.
Definition: globus_gsi_system_config.c:7075
globus_result_t globus_gsi_sysconfig_get_proc_id_string_unix(char **proc_id_string)
UNIX - Get Process ID.
Definition: globus_gsi_system_config.c:3996
globus_result_t globus_gsi_sysconfig_get_gridmap_filename_win32(char **filename)
Win32 - Get the path and file name of the grid map file.
Definition: globus_gsi_system_config.c:2933
globus_result_t globus_gsi_sysconfig_get_service_cert_filename_win32(char *service_name, char **service_cert, char **service_key)
Win32 - Get Service Certificate and Key Filenames.
Definition: globus_gsi_system_config.c:2215
globus_result_t globus_gsi_sysconfig_get_ca_cert_files_unix(char *ca_cert_dir, globus_fifo_t *ca_cert_list)
UNIX - Get CA Cert Filenames.
Definition: globus_gsi_system_config.c:6144
globus_result_t globus_gsi_sysconfig_check_certfile_unix(const char *filename)
UNIX - Check File Status for Cert.
Definition: globus_gsi_system_config.c:4718
globus_result_t globus_gsi_sysconfig_get_cert_dir_win32(char **cert_dir)
Win32 - Get Trusted CA Cert Dir.
Definition: globus_gsi_system_config.c:1499
globus_result_t globus_gsi_sysconfig_is_superuser_unix(int *is_superuser)
UNIX - Check if the current user is root.
Definition: globus_gsi_system_config.c:6395
globus_result_t globus_gsi_sysconfig_remove_all_owned_files_unix(char *default_filename)
UNIX - Remove all proxies owned by current uid.
Definition: globus_gsi_system_config.c:6283
globus_result_t globus_gsi_sysconfig_get_user_cert_filename_win32(char **user_cert, char **user_key)
Win32 - Get User Certificate Filename.
Definition: globus_gsi_system_config.c:1705