28 #undef HAVE_SYS_TIME_H
30 #ifndef HAVE_SYS_TIME_H
31 #define HAVE_SYS_TIME_H 1
39 #ifndef NO_GLOBUS_CONFIG_H
47 #ifdef HAVE_SYS_TIME_H
57 #define ERRNO_INVALID_ARGUMENT EINVAL
59 #define OLDGAA_NO_OPTIONS ((oldgaa_options_ptr)0)
60 #define OLDGAA_NO_BUFFER ((oldgaa_buffer_ptr)0)
61 #define OLDGAA_EMPTY_BUFFER {0, NULL}
62 #define OLDGAA_NO_DATA ((oldgaa_data_ptr) 0)
64 #define OLDGAA_NO_SEC_CONTEXT ((oldgaa_sec_context_ptr)0)
65 #define OLDGAA_SEC_ATTRBTS_UNBOUND ((oldgaa_sec_attribute_list_ptr)0)
67 #define OLDGAA_NO_PRINCIPALS ((oldgaa_principals_ptr)0)
68 #define OLDGAA_NO_RIGHTS ((oldgaa_rights_ptr) 0)
69 #define OLDGAA_NO_CONDITIONS ((oldgaa_conditions_ptr)0)
70 #define OLDGAA_NO_COND_BINDINGS ((oldgaa_cond_bindings_ptr)0)
71 #define OLDGAA_NO_UNEVAL_CRED ((oldgaa_uneval_cred_ptr)0)
72 #define OLDGAA_NO_ANSWER ((oldgaa_answer_ptr)0)
73 #define OLDGAA_NO_SEC_ATTRB ((oldgaa_sec_attrb_ptr)0)
75 #define OLDGAA_NO_IDENTITY_CRED ((oldgaa_identity_cred_ptr)0)
76 #define OLDGAA_NO_AUTHORIZATION_CRED ((oldgaa_authr_cred_ptr)0)
77 #define OLDGAA_NO_ATTRIBUTES ((oldgaa_attributes_ptr)0)
82 #define OLDGAA_NUM_ACCESS_RIGHTS 32
83 #define MAX_COND_LENGTH 200
87 #define COND_DAY "cond_day"
88 #define COND_TIME "cond_time"
89 #define HOUR_SCALE_24 "hr_scale_24"
92 #define OLDGAA_ANYBODY "access_id_ANYBODY"
93 #define OLDGAA_USER "access_id_USER"
94 #define OLDGAA_GROUP "access_id_GROUP"
95 #define OLDGAA_HOST "access_id_HOST"
96 #define OLDGAA_CA "access_id_CA"
97 #define OLDGAA_APPLICATION "access_id_APPLICATION"
101 #define COND_SEC_MECH "cond_sec_mech"
102 #define COND_BANNED_SUBJECTS "cond_banned_subjects"
110 #define AUTH_GLOBUS "globus"
111 #define COND_SUBJECTS "cond_subjects"
112 #define GLOBUS_RIGHTS_VALUE "CA:sign"
122 #define COND_FLG_EVALUATED 0x01
123 #define COND_FLG_MET 0x10
124 #define COND_FLG_ENFORCE 0x100
126 #define out_of_memory() oldgaa_gl__fout_of_memory(__FILE__, __LINE__);
146 OLDGAA_RETRIEVE_ERROR
150 typedef unsigned int uint32;
155 typedef struct oldgaa_data_struct oldgaa_data,
157 struct oldgaa_data_struct {
164 typedef struct oldgaa_buffer_struct oldgaa_buffer,
166 struct oldgaa_buffer_struct {
171 typedef struct oldgaa_options_struct oldgaa_options,
174 struct oldgaa_options_struct {
180 typedef struct oldgaa_principals_struct oldgaa_principals,
181 *oldgaa_principals_ptr,
185 typedef struct oldgaa_rights_struct oldgaa_rights,
189 typedef struct oldgaa_cond_bindings_struct oldgaa_cond_bindings,
190 *oldgaa_cond_bindings_ptr;
193 typedef struct oldgaa_conditions_struct oldgaa_conditions,
194 *oldgaa_conditions_ptr;
198 struct oldgaa_principals_struct {
202 oldgaa_rights_ptr rights;
203 oldgaa_principals_ptr next;
207 struct oldgaa_rights_struct {
211 oldgaa_cond_bindings_ptr cond_bindings;
212 oldgaa_rights_ptr next;
217 struct oldgaa_cond_bindings_struct {
218 oldgaa_conditions_ptr condition;
219 oldgaa_cond_bindings_ptr next;
224 struct oldgaa_conditions_struct {
229 oldgaa_conditions_ptr next;
236 typedef struct oldgaa_sec_attrb_struct oldgaa_sec_attrb,
237 *oldgaa_sec_attrb_ptr;
238 struct oldgaa_sec_attrb_struct {
242 oldgaa_sec_attrb_ptr next;
294 OLDGAA_GROUP_NON_MEMB ,
301 typedef struct oldgaa_sec_context_struct oldgaa_sec_context,
302 *oldgaa_sec_context_ptr;
304 typedef struct oldgaa_identity_cred_struct oldgaa_identity_cred,
305 *oldgaa_identity_cred_ptr;
307 typedef struct oldgaa_authr_cred_struct oldgaa_authr_cred,
308 *oldgaa_authr_cred_ptr;
310 typedef struct oldgaa_attributes_struct oldgaa_attributes,
311 *oldgaa_attributes_ptr;
313 typedef struct oldgaa_uneval_cred_struct oldgaa_uneval_cred,
314 *oldgaa_uneval_cred_ptr;
317 struct oldgaa_sec_context_struct {
318 oldgaa_identity_cred_ptr identity_cred;
319 oldgaa_authr_cred_ptr authr_cred;
320 oldgaa_identity_cred_ptr group_membership;
321 oldgaa_identity_cred_ptr group_non_membership;
322 oldgaa_attributes_ptr attributes;
323 oldgaa_uneval_cred_ptr unevl_cred;
324 oldgaa_buffer_ptr connection_state;
327 (*condition_evaluation)(oldgaa_sec_context_ptr, oldgaa_options_ptr,
328 oldgaa_conditions_ptr, ...);
331 (*pull_cred)(oldgaa_sec_context_ptr, ...);
334 (*cred_evaluate)(oldgaa_sec_context_ptr, ...);
339 struct oldgaa_identity_cred_struct {
340 oldgaa_principals_ptr principal;
341 oldgaa_conditions_ptr conditions;
342 oldgaa_buffer_ptr mech_spec_cred;
343 oldgaa_identity_cred_ptr next;
347 struct oldgaa_authr_cred_struct{
348 oldgaa_principals_ptr grantor;
349 oldgaa_principals_ptr grantee;
350 oldgaa_buffer objects;
351 oldgaa_rights_ptr access_rights;
352 oldgaa_buffer_ptr mech_spec_cred;
353 oldgaa_authr_cred_ptr next;
357 struct oldgaa_attributes_struct {
361 oldgaa_cond_bindings_ptr conditions;
362 oldgaa_buffer_ptr mech_spec_cred;
363 oldgaa_attributes_ptr next;
367 struct oldgaa_uneval_cred_struct {
368 oldgaa_cred_type cred_type;
369 oldgaa_principals_ptr grantor;
370 oldgaa_principals_ptr grantee;
371 oldgaa_buffer_ptr mech_spec_cred;
372 void (*cred_verification )(oldgaa_sec_context_ptr, va_list ap);
373 oldgaa_uneval_cred_ptr next;
381 typedef struct oldgaa_time_period_struct oldgaa_time_period,
382 *oldgaa_time_period_ptr;
383 struct oldgaa_time_period_struct{
408 typedef struct oldgaa_answer_struct oldgaa_answer, *oldgaa_answer_ptr;
410 struct oldgaa_answer_struct{
411 oldgaa_time_period_ptr valid_time;
412 oldgaa_rights_ptr rights;
425 oldgaa_get_object_policy_info(uint32* minor_status,
426 oldgaa_data_ptr
object,
427 oldgaa_data_ptr policy_db,
428 oldgaa_policy_ptr(*retrieve)(uint32* minor_status,
429 oldgaa_data_ptr
object,
430 oldgaa_data_ptr policy_db, ... ),
431 oldgaa_policy_ptr* policy , ...);
439 oldgaa_check_authorization
440 (uint32 *minor_status,
441 oldgaa_sec_context_ptr sec_context,
442 oldgaa_policy_ptr policy_handle,
443 oldgaa_rights_ptr check_access_rights,
444 oldgaa_options_ptr oldgaa_options,
445 oldgaa_answer_ptr *detailed_answer
453 oldgaa_inquire_policy_info
454 (uint32 *minor_status,
455 oldgaa_sec_context_ptr sec_context,
456 oldgaa_policy_ptr policy_handle,
457 oldgaa_rights_ptr *rights
466 oldgaa_allocate_data (oldgaa_data_ptr* buffer );
470 oldgaa_allocate_options (oldgaa_options_ptr* buffer_addr );
474 oldgaa_allocate_sec_attrb (oldgaa_sec_attrb_ptr* buffer_addr );
477 oldgaa_allocate_buffer (oldgaa_buffer_ptr* buffer_addr );
480 oldgaa_allocate_principals (oldgaa_principals_ptr* buffer_addr);
483 oldgaa_allocate_conditions (oldgaa_conditions_ptr* buffer_addr);
486 oldgaa_allocate_rights (oldgaa_rights_ptr* buffer_addr );
489 oldgaa_allocate_cond_bindings (oldgaa_cond_bindings_ptr* buffer_addr );
492 oldgaa_allocate_sec_attb_list (oldgaa_sec_attrb_ptr* buffer_addr );
495 oldgaa_allocate_sec_context (oldgaa_sec_context_ptr* buffer_addr);
498 oldgaa_allocate_identity_cred(oldgaa_identity_cred_ptr* buffer_addr );
501 oldgaa_allocate_answer(oldgaa_answer_ptr *ptr);
503 oldgaa_sec_context_ptr
504 oldgaa_globus_allocate_sec_context(
char *signer);
507 oldgaa_globus_allocate_rights();
513 oldgaa_release_buffer (uint32 *minor_status,
514 oldgaa_buffer_ptr * buffer);
517 oldgaa_release_buffer_contents (uint32 *minor_status,
518 oldgaa_buffer_ptr buffer);
521 oldgaa_release_sec_context(uint32 *minor_status,
522 oldgaa_sec_context_ptr *sec_context);
525 oldgaa_release_identity_cred (uint32 *minor_status,
526 oldgaa_identity_cred_ptr *identity_cred);
529 oldgaa_release_authr_cred(uint32 *minor_status,
530 oldgaa_authr_cred_ptr *authr_cred);
533 oldgaa_release_attributes(uint32 *minor_status,
534 oldgaa_attributes_ptr *attributes);
537 oldgaa_release_options(uint32 *minor_status,
538 oldgaa_options_ptr buffer);
540 oldgaa_release_uneval_cred(uint32 *minor_status,
541 oldgaa_uneval_cred_ptr *uneval_cred);
544 oldgaa_release_principals(uint32 *minor_status,
545 oldgaa_principals_ptr *principals);
548 oldgaa_release_rights(uint32 *minor_status,
549 oldgaa_rights_ptr *rights);
552 oldgaa_release_cond_bindings(uint32 *minor_status,
553 oldgaa_cond_bindings_ptr *cond_bind);
556 oldgaa_release_conditions(uint32 *minor_status,
557 oldgaa_conditions_ptr *conditions);
560 oldgaa_release_answer(uint32 *minor_status,
561 oldgaa_answer_ptr *answer);
564 oldgaa_release_data(uint32 *minor_status,
565 oldgaa_data_ptr buffer);
568 oldgaa_release_sec_attrb(uint32 *minor_status,
569 oldgaa_sec_attrb_ptr *attributes);
Globus Platform Configuration.