Grid Community Toolkit  6.2.1541705016
globus_gsi_system_config.h
Go to the documentation of this file.
1 /*
2  * Copyright 1999-2006 University of Chicago
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 #ifndef GLOBUS_GSI_SYSTEM_CONFIG_H
18 #define GLOBUS_GSI_SYSTEM_CONFIG_H
19 
26 #include "globus_common.h"
28 #include "openssl/x509.h"
29 
30 
31 #ifdef __cplusplus
32 extern "C" {
33 #endif
34 
35 #ifndef GLOBUS_GLOBAL_DOCUMENT_SET
36 
41 #endif
42 
94 #ifndef GLOBUS_DONT_DOCUMENT_INTERNAL
95 
110 #endif
111 
146 #define GLOBUS_GSI_SYSCONFIG_MODULE (&globus_i_gsi_sysconfig_module)
147 
148 extern
149 globus_module_descriptor_t globus_i_gsi_sysconfig_module;
150 
151 #ifdef WIN32
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_KEYFILE_UID \
159  globus_gsi_sysconfig_check_keyfile_uid_win32
160 # define GLOBUS_GSI_SYSCONFIG_CHECK_CERTFILE \
161  globus_gsi_sysconfig_check_certfile_win32
162 # define GLOBUS_GSI_SYSCONFIG_CHECK_CERTFILE_UID \
163  globus_gsi_sysconfig_check_certfile_uid_win32
164 # define GLOBUS_GSI_SYSCONFIG_FILE_EXISTS \
165  globus_gsi_sysconfig_file_exists_win32
166 # define GLOBUS_GSI_SYSCONFIG_DIR_EXISTS \
167  globus_gsi_sysconfig_dir_exists_win32
168 # define GLOBUS_GSI_SYSCONFIG_GET_CERT_DIR \
169  globus_gsi_sysconfig_get_cert_dir_win32
170 # define GLOBUS_GSI_SYSCONFIG_GET_USER_CERT_FILENAME \
171  globus_gsi_sysconfig_get_user_cert_filename_win32
172 # define GLOBUS_GSI_SYSCONFIG_GET_HOST_CERT_FILENAME \
173  globus_gsi_sysconfig_get_host_cert_filename_win32
174 # define GLOBUS_GSI_SYSCONFIG_GET_SERVICE_CERT_FILENAME \
175  globus_gsi_sysconfig_get_service_cert_filename_win32
176 # define GLOBUS_GSI_SYSCONFIG_GET_PROXY_FILENAME \
177  globus_gsi_sysconfig_get_proxy_filename_win32
178 # define GLOBUS_GSI_SYSCONFIG_GET_SIGNING_POLICY_FILENAME \
179  globus_gsi_sysconfig_get_signing_policy_filename_win32
180 # define GLOBUS_GSI_SYSCONFIG_GET_CA_CERT_FILES \
181  globus_gsi_sysconfig_get_ca_cert_files_win32
182 # define GLOBUS_GSI_SYSCONFIG_GET_CURRENT_WORKING_DIR \
183  globus_gsi_sysconfig_get_current_working_dir_win32
184 # define GLOBUS_GSI_SYSCONFIG_MAKE_ABSOLUTE_PATH_FOR_FILENAME \
185  globus_gsi_sysconfig_make_absolute_path_for_filename_win32
186 # define GLOBUS_GSI_SYSCONFIG_SPLIT_DIR_AND_FILENAME \
187  globus_gsi_sysconfig_split_dir_and_filename_win32
188 # define GLOBUS_GSI_SYSCONFIG_REMOVE_ALL_OWNED_FILES \
189  globus_gsi_sysconfig_remove_all_owned_files_win32
190 # define GLOBUS_GSI_SYSCONFIG_GET_GRIDMAP_FILENAME \
191  globus_gsi_sysconfig_get_gridmap_filename_win32
192 # define GLOBUS_GSI_SYSCONFIG_GET_AUTHZ_CONF_FILENAME \
193  globus_gsi_sysconfig_get_authz_conf_filename_win32
194 # define GLOBUS_GSI_SYSCONFIG_GET_GAA_CONF_FILENAME \
195  globus_gsi_sysconfig_get_gaa_conf_filename_win32
196 # define GLOBUS_GSI_SYSCONFIG_IS_SUPERUSER \
197  globus_gsi_sysconfig_is_superuser_win32
198 # define GLOBUS_GSI_SYSCONFIG_GET_USER_ID_STRING \
199  globus_gsi_sysconfig_get_user_id_string_win32
200 # define GLOBUS_GSI_SYSCONFIG_GET_PROC_ID_STRING \
201  globus_gsi_sysconfig_get_proc_id_string_win32
202 # define GLOBUS_GSI_SYSCONFIG_GET_USERNAME \
203  globus_gsi_sysconfig_get_username_win32
204 #else
205 
212 # define GLOBUS_GSI_SYSCONFIG_SET_KEY_PERMISSIONS \
213  globus_gsi_sysconfig_set_key_permissions_unix
214 
221 # define GLOBUS_GSI_SYSCONFIG_GET_HOME_DIR \
222  globus_gsi_sysconfig_get_home_dir_unix
223 
230 # define GLOBUS_GSI_SYSCONFIG_CHECK_KEYFILE \
231  globus_gsi_sysconfig_check_keyfile_unix
232 
240 # define GLOBUS_GSI_SYSCONFIG_CHECK_KEYFILE_UID \
241  globus_gsi_sysconfig_check_keyfile_uid_unix
242 
249 # define GLOBUS_GSI_SYSCONFIG_CHECK_CERTFILE \
250  globus_gsi_sysconfig_check_certfile_unix
251 
259 # define GLOBUS_GSI_SYSCONFIG_CHECK_CERTFILE_UID \
260  globus_gsi_sysconfig_check_certfile_uid_unix
261 
268 # define GLOBUS_GSI_SYSCONFIG_FILE_EXISTS \
269  globus_gsi_sysconfig_file_exists_unix
270 
277 # define GLOBUS_GSI_SYSCONFIG_DIR_EXISTS \
278  globus_gsi_sysconfig_dir_exists_unix
279 
286 # define GLOBUS_GSI_SYSCONFIG_GET_CERT_DIR \
287  globus_gsi_sysconfig_get_cert_dir_unix
288 
295 # define GLOBUS_GSI_SYSCONFIG_GET_USER_CERT_FILENAME \
296  globus_gsi_sysconfig_get_user_cert_filename_unix
297 
304 # define GLOBUS_GSI_SYSCONFIG_GET_HOST_CERT_FILENAME \
305  globus_gsi_sysconfig_get_host_cert_filename_unix
306 
313 # define GLOBUS_GSI_SYSCONFIG_GET_SERVICE_CERT_FILENAME \
314  globus_gsi_sysconfig_get_service_cert_filename_unix
315 
322 # define GLOBUS_GSI_SYSCONFIG_GET_PROXY_FILENAME \
323  globus_gsi_sysconfig_get_proxy_filename_unix
324 
331 # define GLOBUS_GSI_SYSCONFIG_GET_SIGNING_POLICY_FILENAME \
332  globus_gsi_sysconfig_get_signing_policy_filename_unix
333 
341 # define GLOBUS_GSI_SYSCONFIG_GET_CA_CERT_FILES \
342  globus_gsi_sysconfig_get_ca_cert_files_unix
343 
350 # define GLOBUS_GSI_SYSCONFIG_GET_CURRENT_WORKING_DIR \
351  globus_gsi_sysconfig_get_current_working_dir_unix
352 
359 # define GLOBUS_GSI_SYSCONFIG_MAKE_ABSOLUTE_PATH_FOR_FILENAME \
360  globus_gsi_sysconfig_make_absolute_path_for_filename_unix
361 
368 # define GLOBUS_GSI_SYSCONFIG_SPLIT_DIR_AND_FILENAME \
369  globus_gsi_sysconfig_split_dir_and_filename_unix
370 
377 # define GLOBUS_GSI_SYSCONFIG_REMOVE_ALL_OWNED_FILES \
378  globus_gsi_sysconfig_remove_all_owned_files_unix
379 
386 # define GLOBUS_GSI_SYSCONFIG_GET_GRIDMAP_FILENAME \
387  globus_gsi_sysconfig_get_gridmap_filename_unix
388 
394 # define GLOBUS_GSI_SYSCONFIG_GET_AUTHZ_CONF_FILENAME \
395  globus_gsi_sysconfig_get_authz_conf_filename_unix
396 
403 # define GLOBUS_GSI_SYSCONFIG_GET_GAA_CONF_FILENAME \
404  globus_gsi_sysconfig_get_gaa_conf_filename_unix
405 
412 # define GLOBUS_GSI_SYSCONFIG_IS_SUPERUSER \
413  globus_gsi_sysconfig_is_superuser_unix
414 
421 # define GLOBUS_GSI_SYSCONFIG_GET_USER_ID_STRING \
422  globus_gsi_sysconfig_get_user_id_string_unix
423 
430 # define GLOBUS_GSI_SYSCONFIG_GET_PROC_ID_STRING \
431  globus_gsi_sysconfig_get_proc_id_string_unix
432 
439 # define GLOBUS_GSI_SYSCONFIG_GET_USERNAME \
440  globus_gsi_sysconfig_get_username_unix
441 #endif
442 
449 #define GLOBUS_GSI_SYSCONFIG_GET_UNIQUE_PROXY_FILENAME \
450  globus_gsi_sysconfig_get_unique_proxy_filename
451 
458 #define GLOBUS_GSI_SYSCONFIG_GET_VHOST_CRED_DIR \
459  globus_gsi_sysconfig_get_vhost_cred_dir
460 
463  char * filename);
464 
467  char ** home_dir);
468 
471  const char * filename);
472 
475  const char * filename);
476 
479  const char * filename);
480 
483  const char * filename,
484  uid_t uid);
485 
488  const char * filename);
489 
492  const char * filename,
493  uid_t uid);
494 
497  char ** cert_dir);
498 
501  char ** user_cert_filename,
502  char ** user_key_filename);
503 
506  char ** host_cert_filename,
507  char ** host_key_filename);
508 
511  char * service_name,
512  char ** service_cert_filename,
513  char ** service_key_filename);
514 
517  char ** proxy_filename,
518  globus_gsi_proxy_file_type_t proxy_file_type);
519 
522  X509_NAME * ca_name,
523  char * cert_dir,
524  char ** signing_policy_filename);
525 
528  char * ca_cert_dir,
529  globus_fifo_t * ca_cert_list);
530 
533  char ** working_dir);
534 
537  char * filename,
538  char ** absolute_path);
539 
542  char * full_filename,
543  char ** dir_string,
544  char ** filename_string);
545 
548  char * default_filename);
549 
552  int * is_superuser);
553 
556  char ** user_id_string);
557 
560  char ** username);
561 
564  char ** proc_id_string);
565 
568  char ** filename);
569 
572  char ** filename);
573 
576  char ** unique_filename);
577 
580  char **dir_name_out);
581 
582 #ifdef __cplusplus
583 }
584 #endif
585 
586 #endif /* GLOBUS_GSI_SYSTEM_CONFIG_H */
#define GLOBUS_GSI_SYSCONFIG_CHECK_KEYFILE
Definition: globus_gsi_system_config.h:230
#define GLOBUS_GSI_SYSCONFIG_CHECK_CERTFILE_UID
Definition: globus_gsi_system_config.h:259
#define GLOBUS_GSI_SYSCONFIG_GET_CERT_DIR
Definition: globus_gsi_system_config.h:286
#define GLOBUS_GSI_SYSCONFIG_GET_CURRENT_WORKING_DIR
Definition: globus_gsi_system_config.h:350
#define GLOBUS_GSI_SYSCONFIG_GET_AUTHZ_CONF_FILENAME
Definition: globus_gsi_system_config.h:394
#define GLOBUS_GSI_SYSCONFIG_GET_PROXY_FILENAME
Definition: globus_gsi_system_config.h:322
#define GLOBUS_GSI_SYSCONFIG_GET_PROC_ID_STRING
Definition: globus_gsi_system_config.h:430
#define GLOBUS_GSI_SYSCONFIG_GET_USERNAME
Definition: globus_gsi_system_config.h:439
#define GLOBUS_GSI_SYSCONFIG_FILE_EXISTS
Definition: globus_gsi_system_config.h:268
struct globus_fifo_s * globus_fifo_t
Definition: globus_fifo.h:48
#define GLOBUS_GSI_SYSCONFIG_DIR_EXISTS
Definition: globus_gsi_system_config.h:277
#define GLOBUS_GSI_SYSCONFIG_GET_USER_ID_STRING
Definition: globus_gsi_system_config.h:421
#define GLOBUS_GSI_SYSCONFIG_GET_USER_CERT_FILENAME
Definition: globus_gsi_system_config.h:295
#define GLOBUS_GSI_SYSCONFIG_GET_CA_CERT_FILES
Definition: globus_gsi_system_config.h:341
#define GLOBUS_GSI_SYSCONFIG_GET_HOME_DIR
Definition: globus_gsi_system_config.h:221
#define GLOBUS_GSI_SYSCONFIG_SET_KEY_PERMISSIONS
Definition: globus_gsi_system_config.h:212
globus_gsi_proxy_file_type_t
Definition: globus_gsi_system_config_constants.h:113
#define GLOBUS_GSI_SYSCONFIG_GET_UNIQUE_PROXY_FILENAME
Definition: globus_gsi_system_config.h:449
#define GLOBUS_GSI_SYSCONFIG_MAKE_ABSOLUTE_PATH_FOR_FILENAME
Definition: globus_gsi_system_config.h:359
Globus GSI System Config Library.
#define GLOBUS_GSI_SYSCONFIG_CHECK_CERTFILE
Definition: globus_gsi_system_config.h:249
#define GLOBUS_GSI_SYSCONFIG_GET_VHOST_CRED_DIR
Definition: globus_gsi_system_config.h:458
Headers common to all of Globus.
uint32_t globus_result_t
Definition: globus_types.h:99
#define GLOBUS_GSI_SYSCONFIG_GET_SERVICE_CERT_FILENAME
Definition: globus_gsi_system_config.h:313
#define GLOBUS_GSI_SYSCONFIG_GET_SIGNING_POLICY_FILENAME
Definition: globus_gsi_system_config.h:331
#define GLOBUS_GSI_SYSCONFIG_GET_GRIDMAP_FILENAME
Definition: globus_gsi_system_config.h:386
#define GLOBUS_GSI_SYSCONFIG_CHECK_KEYFILE_UID
Definition: globus_gsi_system_config.h:240
#define GLOBUS_GSI_SYSCONFIG_GET_HOST_CERT_FILENAME
Definition: globus_gsi_system_config.h:304
#define GLOBUS_GSI_SYSCONFIG_IS_SUPERUSER
Definition: globus_gsi_system_config.h:412
#define GLOBUS_GSI_SYSCONFIG_REMOVE_ALL_OWNED_FILES
Definition: globus_gsi_system_config.h:377
#define GLOBUS_GSI_SYSCONFIG_SPLIT_DIR_AND_FILENAME
Definition: globus_gsi_system_config.h:368
Module Descriptor.
Definition: globus_module.h:69