00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef SAML_H
00018 #define SAML_H
00019
00020 #include <axutil_utils.h>
00021 #include <axutil_array_list.h>
00022 #include <axutil_hash.h>
00023 #include <axutil_date_time.h>
00024 #include <axiom.h>
00025 #include <oxs_xml_signature.h>
00026 #include <oxs_sign_ctx.h>
00027 #include <oxs_xml_key_processor.h>
00028 #include <oxs_utility.h>
00029 #include <oxs_transforms_factory.h>
00030 #include <oxs_xml_key_info_builder.h>
00031 #include <oxs_key_mgr.h>
00032 #include <oxs_transform.h>
00033 #include <oxs_x509_cert.h>
00034
00035 #ifdef __cplusplus
00036 extern "C"
00037 {
00038 #endif
00039
00040
00041 #define SAML_VERSION_MAX 16
00042 #define SAML_URI_LEN_MAX 2048
00043 #define SAML_ARRAY_LIST_DEF 4
00044
00045 #define SAML_PREFIX "saml"
00046 #define SAML_NMSP_URI "urn:oasis:names:tc:SAML:1.0:assertion"
00047 #define SAML_XML_TYPE "type"
00048 #define SAML_XSI_NS "http://www.w3.org/2001/XMLSchema-instance"
00049 #define SAML_XSI "xsi"
00050
00051 #define SAML_MAJORVERSION "MajorVersion"
00052 #define SAML_MINORVERSION "MinorVersion"
00053 #define SAML_ASSERTION_ID "AssertionID"
00054 #define SAML_ISSUER "Issuer"
00055 #define SAML_ISSUE_INSTANT "IssueInstant"
00056 #define SAML_STATEMENT "Statement"
00057 #define SAML_SUBJECT_STATEMENT "SubjectStatement"
00058 #define SAML_AUTHENTICATION_STATEMENT "AuthenticationStatement"
00059 #define SAML_AUTHORIZATION_DECISION_STATEMENT "AuthorizationDecisionStatement"
00060 #define SAML_ATTRIBUTE_STATEMENT "AttributeStatement"
00061 #define SAML_CONDITIONS "Conditions"
00062 #define SAML_ADVICE "Advice"
00063 #define SAML_NOT_BEFORE "NotBefore"
00064 #define SAML_NOT_ON_OR_AFTER "NotOnOrAfter"
00065 #define SAML_SIGNATURE "Signature"
00066
00067 #define SAML_EMAIL_ADDRESS "#emailAddress"
00068 #define SAML_X509_SUBJECT_NAME "#X509SubjectName"
00069 #define SAML_WINDOWS_DOMAIN_QUALIFIED_NAME "#WindowsDomainQualifiedName"
00070
00071 #define SAML_NAME_QUALIFIER "NameQualifier"
00072 #define SAML_FORMAT "Format"
00073 #define SAML_NAME_IDENTIFIER "NameIdentifier"
00074 #define SAML_SUBJECT_CONFIRMATION "SubjectConfirmation"
00075 #define SAML_CONFIRMATION_METHOD "ConfirmationMethod"
00076 #define SAML_SUBJECT_CONFIRMATION_DATA "SubjectConfirmationData"
00077 #define SAML_KEY_INFO "KeyInfo"
00078 #define SAML_SUBJECT "Subject"
00079
00080 #define SAML_AUDIENCE "Audience"
00081 #define SAML_AUDIENCE_RESTRICTION_CONDITION_TYPE "AudienceRestrictionConditionType"
00082 #define SAML_AUDIENCE_RESTRICTION_CONDITION "AudienceRestrictionCondition"
00083
00084 #define SAML_AUTHENTICATION_METHOD "AuthenticationMethod"
00085 #define SAML_AUTHENTICATION_INSTANT "AuthenticationInstant"
00086 #define SAML_IP_ADDRESS "IPAddress"
00087 #define SAML_DNS_ADDRESS "DNSAddress"
00088 #define SAML_SUBJECT_LOCALITY "SubjectLocality"
00089 #define SAML_AUTHORITY_BINDING "AuthorityBinding"
00090 #define SAML_AUTHORITY_KIND "AuthorityKind"
00091 #define SAML_LOCATION "Location"
00092 #define SAML_BINDING "Binding"
00093
00094 #define SAML_RESOURCE "Resource"
00095 #define SAML_DECISION "Decision"
00096 #define SAML_ACTION "Action"
00097 #define SAML_NAMESPACE "Namespace"
00098 #define SAML_ASSERTION_ID_REFERENCE "AssertionIDReference"
00099 #define SAML_ASSERTION "Assertion"
00100 #define SAML_ACTION "Action"
00101 #define SAML_EVIDENCE "Evidence"
00102
00103 #define SAML_ATTRIBUTE_NAME "AttributeName"
00104 #define SAML_ATTRIBUTE_NAMESPACE "AttributeNamespace"
00105 #define SAML_ATTRIBUTE_VALUE "AttributeValue"
00106 #define SAML_ATTRIBUTE "Attribute"
00107 #define SAML_ATTRIBUTE_DESIGNATOR "AttributeDesignator"
00108
00109 #define SAML_SUB_CONFIRMATION_HOLDER_OF_KEY "urn:oasis:names:tc:SAML:1.0:cm:holder-of-key"
00110 #define SAML_SUB_CONFIRMATION_SENDER_VOUCHES "urn:oasis:names:tc:SAML:1.0:cm:sender-vouches"
00111 #define SAML_SUB_CONFIRMATION_ARTIFACT "urn:oasis:names:tc:SAML:1.0:cm:artifact-01"
00112 #define SAML_SUB_CONFIRMATION_BEARER "urn:oasis:names:tc:SAML:1.0:cm:bearer"
00113
00114 #define SAML_AUTH_METHOD_URI_PASSWORD "urn:oasis:names:tc:SAML:1.0:am:password"
00115 #define SAML_AUTH_METHOD_URI_KERBEROS "urn:ietf:rfc:1510"
00116 #define SAML_AUTH_METHOD_URI_SRP "urn:ietf:rfc:2945"
00117 #define SAML_AUTH_METHOD_URI_HARDWARE_TOKEN "urn:oasis:names:tc:SAML:1.0:am:HardwareToken"
00118 #define SAML_AUTH_METHOD_URI_SSL_TLS "urn:ietf:rfc:2246"
00119 #define SAML_AUTH_METHOD_URI_X509 "urn:oasis:names:tc:SAML:1.0:am:X509-PKI"
00120 #define SAML_AUTH_METHOD_URI_PGP "urn:oasis:names:tc:SAML:1.0:am:PGP"
00121 #define SAML_AUTH_METHOD_URI_SPKI "urn:oasis:names:tc:SAML:1.0:am:SPKI"
00122 #define SAML_AUTH_METHOD_URI_XKMS "urn:oasis:names:tc:SAML:1.0:am:XKMS"
00123 #define SAML_AUTH_METHOD_URI_XML_DS "urn:ietf:rfc:3075"
00124 #define SAML_AUTH_METHOD_URI_UNSPECIFIED "urn:oasis:names:tc:SAML:1.0:am:unspecified"
00125
00126 #define SAML_ACTION_URI_RWEDC_N "urn:oasis:names:tc:SAML:1.0:action:rwedc-negation"
00127 #define SAML_ACTION_URI_RWEDC "urn:oasis:names:tc:SAML:1.0:action:rwedc"
00128
00129 #define SAML_ACTION_READ "Read"
00130 #define SAML_ACTION_WRITE "Write"
00131 #define SAML_ACTION_EXECUTE "Execute"
00132 #define SAML_ACTION_DELETE "Delete"
00133 #define SAML_ACTION_CONTROL "Control"
00134 #define SAML_ACTION_READ_N "~Read"
00135 #define SAML_ACTION_WRITE_N "~Write"
00136 #define SAML_ACTION_EXECUTE_N "~Execute"
00137 #define SAML_ACTION_DELETE_N "~Delete"
00138 #define SAML_ACTION_CONTROL_N "~Control"
00139
00140 #define SAML_MAJOR_VERSION "1"
00141
00142 typedef struct saml_assertion_s saml_assertion_t;
00143
00144 #ifndef SAML_DECLARE
00145 #define SAML_DECLARE(type) AXIS2_EXTERN type AXIS2_CALL
00146 #endif
00147
00148
00149
00150
00151 typedef enum decision_type
00152 {
00153 PERMIT = 0,
00154 DENY,
00155 INDETERMINATE
00156 } decision_type_t;
00157
00158 typedef enum
00159 {
00160 SAML_COND_UNSPECFIED = 0,
00161 SAML_COND_AUDI_RESTRICTION
00162 } saml_cond_type_t;
00163
00164 typedef struct condition_s
00165 {
00166 saml_cond_type_t type;
00167 void *cond;
00168 } saml_condition_t;
00169
00170 typedef struct saml_audi_restriction_cond_s
00171 {
00172 axutil_array_list_t *audiences;
00173 } saml_audi_restriction_cond_t;
00174
00175 typedef struct saml_advise_s
00176 {
00177 int a;
00178 } saml_advise_t;
00179
00180 typedef enum
00181 {
00182 SAML_STMT_UNSPECIFED = 0,
00183 SAML_STMT_SUBJECTSTATEMENT,
00184 SAML_STMT_AUTHENTICATIONSTATEMENT,
00185 SAML_STMT_AUTHORIZATIONDECISIONSTATEMENT,
00186 SAML_STMT_ATTRIBUTESTATEMENT
00187 } saml_stmt_type_t;
00188
00189 typedef struct
00190 {
00191 saml_stmt_type_t type;
00192 void *stmt;
00193 } saml_stmt_t;
00194
00195 typedef struct saml_named_id_s
00196 {
00197
00198
00199
00200 axis2_char_t *name_qualifier;
00201
00202
00203 axis2_char_t *format;
00204
00205 axis2_char_t *name;
00206 } saml_named_id_t;
00207
00208
00209 typedef struct saml_subject_s
00210 {
00211 saml_named_id_t *named_id;
00212
00213
00214
00215
00216 axutil_array_list_t *confirmation_methods;
00217
00218
00219
00220
00221 axiom_node_t *key_info;
00222
00223
00224
00225
00226 axiom_node_t *confirmation_data;
00227 } saml_subject_t;
00228
00229 typedef struct saml_subject_stmt_s
00230 {
00231 saml_subject_t *subject;
00232 } saml_subject_stmt_t;
00233
00234 typedef struct saml_action
00235 {
00236
00237 char *name_space;
00238
00239
00240 char *data;
00241 } saml_action_t;
00242
00243
00244 typedef struct saml_evidence_s
00245 {
00246
00247
00248
00249 axutil_array_list_t *assertion_ids;
00250
00251
00252 axutil_array_list_t *assertions;
00253 } saml_evidence_t;
00254
00255
00256 typedef struct saml_subject_locality
00257 {
00258
00259 axis2_char_t *ip;
00260
00261
00262 axis2_char_t *dns;
00263 } saml_subject_locality_t;
00264
00265
00266 typedef struct saml_auth_binding
00267 {
00268
00269
00270
00271 axis2_char_t *auth_kind;
00272
00273
00274
00275
00276 axis2_char_t *location;
00277
00278
00279
00280
00281 axis2_char_t *binding;
00282 } saml_auth_binding_t;
00283
00284 typedef struct saml_auth_stmt
00285 {
00286 saml_subject_t *subject;
00287
00288
00289 axis2_char_t *auth_method;
00290
00291
00292 axutil_date_time_t *auth_instanse;
00293
00294
00295
00296
00297
00298
00299 axis2_char_t *ip;
00300
00301 axis2_char_t *dns;
00302
00303
00304 axutil_array_list_t *auth_binding;
00305
00306 } saml_auth_stmt_t;
00307
00308 typedef struct saml_auth_desicion_stmt
00309 {
00310 saml_subject_t *subject;
00311
00312 char *resource;
00313
00314
00315 char *decision;
00316
00317
00318 axutil_array_list_t *action;
00319
00320
00321 saml_evidence_t *evidence;
00322 } saml_auth_desicion_stmt_t;
00323
00324 typedef struct saml_attr_s
00325 {
00326
00327 char *attr_name;
00328
00329
00330 char *attr_nmsp;
00331
00332 axutil_array_list_t *attr_value;
00333 } saml_attr_t;
00334
00335
00336 typedef struct saml_attr_stmt_s
00337 {
00338 saml_subject_t *subject;
00339
00340 axutil_array_list_t *attribute;
00341 } saml_attr_stmt_t;
00342
00343 typedef struct saml_attr_desig_s
00344 {
00345 axis2_char_t *attr_name;
00346 axis2_char_t *attr_nmsp;
00347 } saml_attr_desig_t;
00348
00349 struct saml_assertion_s
00350 {
00351
00352 axis2_char_t *major_version;
00353
00354
00355 axis2_char_t *minor_version;
00356
00357
00358 axis2_char_t *assertion_id;
00359
00360
00361 axis2_char_t *issuer;
00362
00363
00364 axutil_date_time_t *issue_instant;
00365
00366
00367 axutil_date_time_t *not_before;
00368
00369
00370 axutil_date_time_t *not_on_or_after;
00371
00372
00373 axutil_array_list_t *conditions;
00374
00375
00376 axiom_node_t *signature;
00377
00378
00379 axutil_array_list_t *statements;
00380
00381
00382 oxs_sign_ctx_t *sign_ctx;
00383
00384
00385 axiom_node_t *ori_xml;
00386 };
00387
00388
00389
00390
00391
00392
00393
00394 AXIS2_EXTERN saml_assertion_t *AXIS2_CALL
00395 saml_assertion_create(
00396 const axutil_env_t *env);
00397
00398
00399
00400
00401
00402 AXIS2_EXTERN void AXIS2_CALL
00403 saml_assertion_free(
00404 saml_assertion_t *assertion,
00405 const axutil_env_t *env);
00406
00407
00408
00409
00410
00411
00412 AXIS2_EXTERN int AXIS2_CALL
00413 saml_assertion_build(
00414 saml_assertion_t *a,
00415 axiom_node_t *node,
00416 const axutil_env_t *env);
00417
00418
00419
00420
00421
00422
00423
00424 AXIS2_EXTERN axiom_node_t * AXIS2_CALL
00425 saml_assertion_to_om(
00426 saml_assertion_t *assertion,
00427 axiom_node_t *parent,
00428 const axutil_env_t *env);
00429
00430
00431
00432
00433
00434
00435 AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL
00436 saml_assetion_get_conditions(
00437 saml_assertion_t *assertion,
00438 const axutil_env_t *env);
00439
00440
00441
00442
00443
00444
00445 AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL
00446 saml_assertion_get_statements(
00447 saml_assertion_t *assertion,
00448 const axutil_env_t *env);
00449
00450
00451
00452
00453
00454
00455
00456
00457 AXIS2_EXTERN int AXIS2_CALL
00458 saml_assertion_set_conditions(
00459 saml_assertion_t *assertion,
00460 const axutil_env_t *env, axutil_array_list_t *list);
00461
00462
00463
00464
00465
00466
00467
00468 AXIS2_EXTERN int AXIS2_CALL
00469 saml_assertion_add_condition(
00470 saml_assertion_t *assertion,
00471 const axutil_env_t *env,
00472 saml_condition_t *cond);
00473
00474
00475
00476
00477
00478
00479 AXIS2_EXTERN int AXIS2_CALL
00480 saml_assertion_remove_condition(
00481 saml_assertion_t *assertion,
00482 const axutil_env_t *env,
00483 int index);
00484
00485
00486
00487
00488
00489
00490
00491
00492 AXIS2_EXTERN int AXIS2_CALL
00493 saml_assertion_set_statements(
00494 saml_assertion_t *assertion,
00495 const axutil_env_t *env,
00496 axutil_array_list_t *list);
00497
00498
00499
00500
00501
00502
00503
00504 AXIS2_EXTERN int AXIS2_CALL
00505 saml_assertion_add_statement(
00506 saml_assertion_t *assertion,
00507 const axutil_env_t *env,
00508 saml_stmt_t *stmt);
00509
00510
00511
00512
00513
00514
00515 AXIS2_EXTERN int AXIS2_CALL
00516 saml_assertion_remove_statement(
00517 saml_assertion_t *assertion,
00518 const axutil_env_t *env,
00519 int index);
00520
00521
00522
00523
00524
00525
00526
00527 AXIS2_EXTERN int AXIS2_CALL
00528 saml_assertion_set_minor_version(
00529 saml_assertion_t *assertion,
00530 const axutil_env_t *env,
00531 int version);
00532
00533
00534
00535
00536
00537
00538 AXIS2_EXTERN int AXIS2_CALL
00539 saml_assertion_set_issuer(
00540 saml_assertion_t *assertion,
00541 const axutil_env_t *env,
00542 axis2_char_t *issuer);
00543
00544
00545
00546
00547
00548
00549
00550 AXIS2_EXTERN int AXIS2_CALL
00551 saml_assertion_set_issue_instant(
00552 saml_assertion_t *assertion,
00553 const axutil_env_t *env,
00554 axutil_date_time_t *instant);
00555
00556
00557
00558
00559
00560
00561
00562 AXIS2_EXTERN int AXIS2_CALL
00563 saml_assertion_set_not_before(
00564 saml_assertion_t *assertion,
00565 const axutil_env_t *env,
00566 axutil_date_time_t *time);
00567
00568
00569
00570
00571
00572
00573
00574 AXIS2_EXTERN int AXIS2_CALL
00575 saml_assertion_set_not_on_or_after(
00576 saml_assertion_t *assertion,
00577 const axutil_env_t *env,
00578 axutil_date_time_t *time);
00579
00580
00581
00582
00583
00584
00585
00586 AXIS2_EXTERN axis2_char_t * AXIS2_CALL
00587 saml_assertion_get_issuer(
00588 saml_assertion_t *assertion,
00589 const axutil_env_t *env);
00590
00591
00592
00593
00594
00595
00596 AXIS2_EXTERN axutil_date_time_t * AXIS2_CALL
00597 saml_assertion_get_issue_instant(
00598 saml_assertion_t *assertion,
00599 const axutil_env_t *env);
00600
00601
00602
00603
00604
00605
00606 AXIS2_EXTERN axutil_date_time_t * AXIS2_CALL
00607 saml_assertion_get_not_before(
00608 saml_assertion_t *assertion,
00609 const axutil_env_t *env);
00610
00611
00612
00613
00614
00615
00616 AXIS2_EXTERN axutil_date_time_t * AXIS2_CALL
00617 saml_assertion_get_not_on_or_after(
00618 saml_assertion_t *assertion,
00619 const axutil_env_t *env);
00620
00621
00622
00623
00624
00625
00626
00627
00628
00629
00630 AXIS2_EXTERN int AXIS2_CALL
00631 saml_assertion_is_signed(
00632 saml_assertion_t *assertion,
00633 const axutil_env_t *env);
00634
00635
00636
00637
00638
00639
00640
00641
00642 AXIS2_EXTERN int AXIS2_CALL
00643 saml_assertion_is_sign_set(
00644 saml_assertion_t *assertion,
00645 const axutil_env_t *env);
00646
00647
00648
00649
00650
00651
00652
00653 AXIS2_EXTERN int AXIS2_CALL
00654 saml_assertion_signature_verify(
00655 saml_assertion_t *assertion,
00656 const axutil_env_t *env);
00657
00658
00659
00660
00661
00662
00663
00664 AXIS2_EXTERN int AXIS2_CALL
00665 saml_assertion_sign(
00666 saml_assertion_t *assertion,
00667 axiom_node_t *node,
00668 const axutil_env_t *env);
00669
00670
00671
00672
00673
00674
00675 AXIS2_EXTERN int AXIS2_CALL
00676 saml_assertion_unsign(
00677 saml_assertion_t *assertion,
00678 const axutil_env_t *env);
00679
00680
00681
00682
00683
00684
00685
00686 AXIS2_EXTERN int AXIS2_CALL
00687 saml_assertion_set_default_signature(
00688 saml_assertion_t *assertion,
00689 const axutil_env_t *env,
00690 oxs_sign_ctx_t *sign_ctx);
00691
00692
00693
00694
00695
00696
00697
00698 AXIS2_EXTERN int AXIS2_CALL
00699 saml_assertion_set_signature(
00700 saml_assertion_t *assertion,
00701 const axutil_env_t *env,
00702 oxs_sign_ctx_t *sign_ctx);
00703
00704
00705
00706
00707
00708
00709
00710
00711
00712
00713 AXIS2_EXTERN saml_stmt_t * AXIS2_CALL
00714 saml_stmt_create(
00715 const axutil_env_t *env);
00716
00717
00718
00719
00720
00721
00722 AXIS2_EXTERN void AXIS2_CALL
00723 saml_stmt_free(
00724 saml_stmt_t *stmt,
00725 const axutil_env_t *env);
00726
00727
00728
00729
00730
00731
00732
00733
00734 AXIS2_EXTERN int AXIS2_CALL
00735 saml_stmt_build(
00736 saml_stmt_t *stmt,
00737 axiom_node_t *node,
00738 const axutil_env_t *env);
00739
00740
00741
00742
00743
00744
00745
00746 AXIS2_EXTERN axiom_node_t * AXIS2_CALL
00747 saml_stmt_to_om(saml_stmt_t *stmt, axiom_node_t *parent, const axutil_env_t *env);
00748
00749
00750
00751
00752
00753
00754
00755 AXIS2_EXTERN saml_stmt_type_t AXIS2_CALL
00756 saml_stmt_get_type(saml_stmt_t *stmt, const axutil_env_t *env);
00757
00758
00759
00760
00761
00762
00763 AXIS2_EXTERN saml_stmt_t * AXIS2_CALL
00764 saml_stmt_get_stmt(saml_stmt_t *stmt, const axutil_env_t *env);
00765
00766
00767
00768
00769
00770
00771
00772 AXIS2_EXTERN int AXIS2_CALL
00773 saml_stmt_set_type(saml_stmt_t *stmt, const axutil_env_t *env, saml_stmt_type_t type);
00774
00775
00776
00777
00778
00779
00780
00781
00782 AXIS2_EXTERN int AXIS2_CALL
00783 saml_stmt_set_stmt(saml_stmt_t *stmt, const axutil_env_t *env,
00784 void *st, saml_stmt_type_t type);
00785
00786
00787
00788 AXIS2_EXTERN axis2_char_t * AXIS2_CALL saml_id_generate_random_bytes(const axutil_env_t *env);
00789
00790
00791
00792
00793
00794
00795
00796
00797
00798 AXIS2_EXTERN saml_auth_binding_t * AXIS2_CALL
00799 saml_auth_binding_create(const axutil_env_t *env);
00800
00801
00802
00803
00804
00805
00806 AXIS2_EXTERN void AXIS2_CALL
00807 saml_auth_binding_free(saml_auth_binding_t *auth_bind, const axutil_env_t *env);
00808
00809
00810
00811
00812
00813
00814
00815 AXIS2_EXTERN int AXIS2_CALL
00816 saml_auth_binding_build(saml_auth_binding_t *auth_bind,
00817 axiom_node_t *node, const axutil_env_t *env);
00818
00819
00820
00821
00822
00823
00824
00825 AXIS2_EXTERN axiom_node_t * AXIS2_CALL
00826 saml_auth_binding_to_om(saml_auth_binding_t *auth_binding,
00827 axiom_node_t *parent, const axutil_env_t *env);
00828
00829
00830
00831
00832
00833
00834
00835 AXIS2_EXTERN axis2_char_t * AXIS2_CALL
00836 saml_auth_binding_get_authoity_kind(saml_auth_binding_t *auth_bind,
00837 const axutil_env_t *env);
00838
00839
00840
00841
00842
00843
00844
00845 AXIS2_EXTERN axis2_char_t * AXIS2_CALL
00846 saml_auth_binding_get_binding(saml_auth_binding_t *auth_binding,
00847 const axutil_env_t *env);
00848
00849
00850
00851
00852
00853
00854 AXIS2_EXTERN axis2_char_t * AXIS2_CALL
00855 saml_auth_binding_get_location(saml_auth_binding_t *auth_bind,
00856 const axutil_env_t *env);
00857
00858
00859
00860
00861
00862
00863
00864
00865 AXIS2_EXTERN int AXIS2_CALL
00866 saml_auth_binding_set_authority_kind(saml_auth_binding_t *auth_bind,
00867 const axutil_env_t *env, axis2_char_t *auth_kind);
00868
00869
00870
00871
00872
00873
00874
00875
00876 AXIS2_EXTERN int AXIS2_CALL
00877 saml_auth_binding_set_binding(saml_auth_binding_t *auth_bind,
00878 const axutil_env_t *env, axis2_char_t *binding);
00879
00880
00881
00882
00883
00884
00885
00886 AXIS2_EXTERN int AXIS2_CALL
00887 saml_auth_binding_set_location(saml_auth_binding_t *auth_bind,
00888 const axutil_env_t *env, axis2_char_t *location);
00889
00890
00891
00892
00893
00894
00895
00896
00897 AXIS2_EXTERN saml_subject_locality_t * AXIS2_CALL
00898 saml_subject_locality_create(const axutil_env_t *env);
00899
00900
00901
00902
00903
00904
00905 AXIS2_EXTERN void AXIS2_CALL
00906 saml_subject_locality_free(saml_subject_locality_t *sub_locality,
00907 const axutil_env_t *env);
00908
00909
00910
00911
00912
00913
00914
00915
00916 AXIS2_EXTERN int AXIS2_CALL
00917 saml_subject_locality_build(saml_subject_locality_t *sub_locality,
00918 axiom_node_t *node, const axutil_env_t *env);
00919
00920
00921
00922
00923
00924
00925
00926 AXIS2_EXTERN axiom_node_t *AXIS2_CALL
00927 saml_subject_locality_to_om(saml_subject_locality_t *sub_locality,
00928 axiom_node_t *parent, const axutil_env_t *env);
00929
00930
00931
00932
00933
00934
00935
00936 AXIS2_EXTERN axis2_char_t * AXIS2_CALL
00937 saml_subject_locality_get_ip(saml_subject_locality_t *sub_locality,
00938 const axutil_env_t *env);
00939
00940
00941
00942
00943
00944
00945
00946 AXIS2_EXTERN axis2_char_t * AXIS2_CALL
00947 saml_subject_locality_get_dns(saml_subject_locality_t *sub_locality,
00948 const axutil_env_t *env);
00949
00950
00951
00952
00953
00954
00955
00956 AXIS2_EXTERN int AXIS2_CALL
00957 saml_subject_locality_set_ip(saml_subject_locality_t *sub_locality,
00958 const axutil_env_t *env, axis2_char_t *ip);
00959
00960
00961
00962
00963
00964
00965
00966 AXIS2_EXTERN int AXIS2_CALL
00967 saml_subject_locality_set_dns(saml_subject_locality_t *sub_locality,
00968 const axutil_env_t *env, axis2_char_t *dns);
00969
00970
00971
00972
00973
00974
00975
00976
00977 AXIS2_EXTERN saml_subject_t * AXIS2_CALL
00978 saml_subject_create(const axutil_env_t *env);
00979
00980
00981
00982
00983
00984
00985 AXIS2_EXTERN void AXIS2_CALL
00986 saml_subject_free(saml_subject_t *subject, const axutil_env_t *env);
00987
00988
00989
00990
00991
00992
00993
00994 AXIS2_EXTERN int AXIS2_CALL
00995 saml_subject_build(saml_subject_t *subject,
00996 axiom_node_t *node, const axutil_env_t *env);
00997
00998
00999
01000
01001
01002
01003
01004 AXIS2_EXTERN axiom_node_t * AXIS2_CALL
01005 saml_subject_to_om(saml_subject_t *subject,
01006 axiom_node_t *parent, const axutil_env_t *env);
01007
01008
01009
01010
01011
01012
01013
01014 AXIS2_EXTERN saml_named_id_t * AXIS2_CALL
01015 saml_subject_get_named_id(saml_subject_t *subject, const axutil_env_t *env);
01016
01017
01018
01019
01020
01021
01022
01023 AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL
01024 saml_subject_get_confirmation_methods(saml_subject_t *subject,
01025 const axutil_env_t *env);
01026
01027
01028
01029
01030
01031
01032
01033 AXIS2_EXTERN axiom_node_t * AXIS2_CALL
01034 saml_subject_get_confirmation_data(saml_subject_t *subject, const axutil_env_t *env);
01035
01036
01037
01038
01039
01040
01041
01042 AXIS2_EXTERN axiom_node_t * AXIS2_CALL
01043 saml_subject_get_key_info(saml_subject_t *subject, const axutil_env_t *env);
01044
01045
01046
01047
01048
01049
01050
01051 AXIS2_EXTERN int AXIS2_CALL
01052 saml_subject_set_named_id(saml_subject_t *subject,
01053 const axutil_env_t *env, saml_named_id_t *named_id);
01054
01055
01056
01057
01058
01059
01060
01061
01062
01063 AXIS2_EXTERN int AXIS2_CALL
01064 saml_subject_set_confirmation_methods(saml_subject_t *subject,
01065 const axutil_env_t *env,
01066 axutil_array_list_t *list);
01067
01068
01069
01070
01071
01072
01073 AXIS2_EXTERN int AXIS2_CALL
01074 saml_subject_add_confirmation(saml_subject_t *subject,
01075 const axutil_env_t *env,
01076 axis2_char_t *sub_confirmation);
01077
01078
01079
01080
01081
01082
01083
01084 AXIS2_EXTERN int AXIS2_CALL
01085 saml_subject_remove_subject_confiirmation(saml_subject_t *subject,
01086 const axutil_env_t *env, int index);
01087
01088
01089
01090
01091
01092
01093
01094
01095 AXIS2_EXTERN int AXIS2_CALL
01096 saml_subject_set_key_info(saml_subject_t *subject,
01097 const axutil_env_t *env, axiom_node_t *node);
01098
01099
01100
01101
01102
01103
01104
01105
01106
01107 AXIS2_EXTERN int AXIS2_CALL
01108 saml_subject_stmt_build(saml_subject_stmt_t *subject_stmt,
01109 axiom_node_t *node, const axutil_env_t *env);
01110
01111
01112
01113
01114
01115
01116 AXIS2_EXTERN void AXIS2_CALL
01117 saml_subject_stmt_free(saml_subject_stmt_t *subject_stmt,
01118 const axutil_env_t *env);
01119
01120
01121
01122
01123
01124
01125 AXIS2_EXTERN saml_subject_stmt_t * AXIS2_CALL
01126 saml_subject_stmt_create(const axutil_env_t *env);
01127
01128
01129
01130
01131
01132
01133
01134 AXIS2_EXTERN axiom_node_t * AXIS2_CALL
01135 saml_subject_stmt_to_om(saml_subject_stmt_t *subject_stmt,
01136 axiom_node_t *parent, const axutil_env_t *env);
01137
01138
01139
01140
01141
01142
01143
01144 AXIS2_EXTERN int AXIS2_CALL
01145 saml_subject_stmt_set_subject(saml_subject_stmt_t *subject_stmt,
01146 const axutil_env_t *env, saml_subject_t *subject);
01147
01148
01149
01150
01151
01152
01153
01154 AXIS2_EXTERN saml_subject_t * AXIS2_CALL
01155 saml_subject_stmt_get_subject(saml_subject_stmt_t *subject_stmt,
01156 const axutil_env_t *env);
01157
01158
01159
01160
01161
01162
01163
01164 AXIS2_EXTERN saml_auth_desicion_stmt_t * AXIS2_CALL
01165 saml_auth_desicion_stmt_create(const axutil_env_t *env);
01166
01167
01168
01169
01170
01171
01172 AXIS2_EXTERN void AXIS2_CALL
01173 saml_auth_desicion_stmt_free(saml_auth_desicion_stmt_t *auth_des_stmt,
01174 const axutil_env_t *env);
01175
01176
01177
01178
01179
01180
01181
01182
01183 AXIS2_EXTERN int AXIS2_CALL
01184 saml_auth_desicion_stmt_build(saml_auth_desicion_stmt_t *auth_des_stmt,
01185 axiom_node_t *node, const axutil_env_t *env);
01186
01187
01188
01189
01190
01191
01192
01193 AXIS2_EXTERN axiom_node_t * AXIS2_CALL
01194 saml_auth_desicion_stmt_to_om(saml_auth_desicion_stmt_t *auth_des_stmt,
01195 axiom_node_t *parent, const axutil_env_t *env);
01196
01197
01198
01199
01200
01201
01202 AXIS2_EXTERN saml_subject_t * AXIS2_CALL
01203 saml_auth_desicion_stmt_get_subject(saml_auth_desicion_stmt_t *auth_des_stmt,
01204 const axutil_env_t *env);
01205
01206
01207
01208
01209
01210
01211 AXIS2_EXTERN axis2_char_t * AXIS2_CALL
01212 saml_auth_desicion_stmt_get_resource(saml_auth_desicion_stmt_t *auth_des_stmt,
01213 const axutil_env_t *env);
01214
01215
01216
01217
01218
01219
01220
01221 AXIS2_EXTERN axis2_char_t * AXIS2_CALL
01222 saml_auth_desicion_stmt_get_desicion(saml_auth_desicion_stmt_t *auth_des_stmt,
01223 const axutil_env_t *env);
01224
01225
01226
01227
01228
01229
01230
01231 AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL
01232 saml_auth_desicion_stmt_get_actions(saml_auth_desicion_stmt_t *auth_des_stmt,
01233 const axutil_env_t *env);
01234
01235
01236
01237
01238
01239
01240
01241 AXIS2_EXTERN saml_evidence_t * AXIS2_CALL
01242 saml_auth_desicion_stmt_get_evidence(saml_auth_desicion_stmt_t *auth_des_stmt,
01243 const axutil_env_t *env);
01244
01245
01246
01247
01248
01249
01250
01251
01252 AXIS2_EXTERN int AXIS2_CALL
01253 saml_auth_desicion_stmt_set_resource(saml_auth_desicion_stmt_t *auth_des_stmt,
01254 const axutil_env_t *env, axis2_char_t *resource);
01255
01256
01257
01258
01259
01260
01261
01262
01263
01264 AXIS2_EXTERN int AXIS2_CALL
01265 saml_auth_desicion_stmt_set_desicion(saml_auth_desicion_stmt_t *auth_des_stmt,
01266 const axutil_env_t *env, axis2_char_t *desicion);
01267
01268
01269
01270
01271
01272
01273
01274
01275 AXIS2_EXTERN int AXIS2_CALL
01276 saml_auth_desicion_stmt_set_actions(saml_auth_desicion_stmt_t *auth_des_stmt,
01277 const axutil_env_t *env, axutil_array_list_t *list);
01278
01279
01280
01281
01282
01283
01284 AXIS2_EXTERN int AXIS2_CALL
01285 saml_auth_desicion_stmt_remove_action(saml_auth_desicion_stmt_t *auth_des_stmt,
01286 const axutil_env_t *env, int index);
01287
01288
01289
01290
01291
01292
01293
01294 AXIS2_EXTERN int AXIS2_CALL
01295 saml_auth_desicion_stmt_add_action(saml_auth_desicion_stmt_t *auth_des_stmt,
01296 const axutil_env_t *env, saml_action_t *action);
01297
01298
01299
01300
01301
01302
01303
01304 AXIS2_EXTERN int AXIS2_CALL
01305 saml_auth_desicion_stmt_set_subject(saml_auth_desicion_stmt_t *auth_des_stmt,
01306 const axutil_env_t *env, saml_subject_t *subject);
01307
01308
01309
01310
01311
01312
01313
01314
01315 AXIS2_EXTERN saml_auth_stmt_t * AXIS2_CALL
01316 saml_auth_stmt_create(const axutil_env_t *env);
01317
01318
01319
01320
01321
01322
01323 AXIS2_EXTERN void AXIS2_CALL
01324 saml_auth_stmt_free(saml_auth_stmt_t *auth_stmt, const axutil_env_t *env);
01325
01326
01327
01328
01329
01330
01331
01332 AXIS2_EXTERN int AXIS2_CALL
01333 saml_auth_stmt_build(saml_auth_stmt_t *auth_stmt,
01334 axiom_node_t *node, const axutil_env_t *env);
01335
01336
01337
01338
01339
01340
01341
01342 AXIS2_EXTERN axiom_node_t *AXIS2_CALL
01343 saml_auth_stmt_to_om(saml_auth_stmt_t *auth_stmt,
01344 axiom_node_t *parent, const axutil_env_t *env);
01345
01346
01347
01348
01349
01350
01351
01352
01353 AXIS2_EXTERN axis2_char_t * AXIS2_CALL
01354 saml_auth_stmt_get_auth_method(saml_auth_stmt_t *auth_stmt,
01355 const axutil_env_t *env);
01356
01357
01358
01359
01360
01361
01362
01363 AXIS2_EXTERN axutil_date_time_t * AXIS2_CALL
01364 saml_auth_stmt_get_auth_instant(saml_auth_stmt_t *auth_stmt,
01365 const axutil_env_t *env);
01366
01367
01368
01369
01370
01371
01372
01373
01374 AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL
01375 saml_auth_stmt_get_auth_bindings(saml_auth_stmt_t *auth_stmt,
01376 const axutil_env_t *env);
01377
01378
01379
01380
01381
01382
01383
01384 AXIS2_EXTERN axis2_char_t * AXIS2_CALL
01385 saml_auth_stmt_get_subject_ip(saml_auth_stmt_t *auth_stmt,
01386 const axutil_env_t *env);
01387
01388
01389
01390
01391
01392
01393 AXIS2_EXTERN axis2_char_t * AXIS2_CALL
01394 saml_auth_stmt_get_subject_dns(saml_auth_stmt_t *auth_stmt,
01395 const axutil_env_t *env);
01396
01397
01398
01399
01400
01401
01402
01403 AXIS2_EXTERN int AXIS2_CALL
01404 saml_auth_stmt_set_subject(saml_auth_stmt_t *auth_stmt,
01405 const axutil_env_t *env, saml_subject_t *subject);
01406
01407
01408
01409
01410
01411
01412
01413
01414 AXIS2_EXTERN int AXIS2_CALL
01415 saml_auth_stmt_set_auth_method(saml_auth_stmt_t *auth_stmt,
01416 const axutil_env_t *env, axis2_char_t *method);
01417
01418
01419
01420
01421
01422
01423
01424 AXIS2_EXTERN int AXIS2_CALL
01425 saml_auth_stmt_set_auth_instant(saml_auth_stmt_t *auth_stmt,
01426 const axutil_env_t *env, axutil_date_time_t *dt);
01427
01428
01429
01430
01431
01432
01433
01434
01435 AXIS2_EXTERN int AXIS2_CALL
01436 saml_auth_stmt_set_auth_bindings(saml_auth_stmt_t *auth_stmt,
01437 const axutil_env_t *env, axutil_array_list_t *list);
01438
01439
01440
01441
01442
01443
01444
01445
01446 AXIS2_EXTERN int AXIS2_CALL
01447 saml_auth_stmt_add_auth_binding(saml_auth_stmt_t *auth_stmt,
01448 const axutil_env_t *env, saml_auth_binding_t *bind);
01449
01450
01451
01452
01453
01454
01455
01456 AXIS2_EXTERN int AXIS2_CALL
01457 saml_auth_stmt_remove_auth_binding(saml_auth_stmt_t *auth_stmt,
01458 const axutil_env_t *env, int index);
01459
01460
01461
01462
01463
01464
01465
01466 AXIS2_EXTERN int AXIS2_CALL
01467 saml_auth_stmt_set_subject_dns(saml_auth_stmt_t *auth_stmt,
01468 const axutil_env_t *env, axis2_char_t *dns);
01469
01470
01471
01472
01473
01474
01475
01476 AXIS2_EXTERN int AXIS2_CALL
01477 saml_auth_stmt_set_subject_ip(saml_auth_stmt_t *auth_stmt,
01478 const axutil_env_t *env, axis2_char_t *ip);
01479
01480
01481
01482
01483
01484
01485
01486
01487 AXIS2_EXTERN saml_attr_stmt_t * AXIS2_CALL
01488 saml_attr_stmt_create(const axutil_env_t *env);
01489
01490
01491
01492
01493
01494
01495 AXIS2_EXTERN void AXIS2_CALL
01496 saml_attr_stmt_free(saml_attr_stmt_t *attr_stmt, const axutil_env_t *env);
01497
01498
01499
01500
01501
01502
01503
01504
01505 AXIS2_EXTERN int AXIS2_CALL
01506 saml_attr_stmt_build(saml_attr_stmt_t *attr_stmt,
01507 axiom_node_t *node, const axutil_env_t *env);
01508
01509
01510
01511
01512
01513
01514
01515 AXIS2_EXTERN axiom_node_t * AXIS2_CALL
01516 saml_attr_stmt_to_om(saml_attr_stmt_t *attr_stmt,
01517 axiom_node_t *parent, const axutil_env_t *env);
01518
01519
01520
01521
01522
01523
01524
01525 AXIS2_EXTERN saml_subject_t * AXIS2_CALL
01526 saml_attr_stmt_get_subject(saml_attr_stmt_t *attr_stmt, const axutil_env_t *env);
01527
01528
01529
01530
01531
01532
01533
01534 AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL
01535 saml_attr_stmt_get_attributes(saml_attr_stmt_t *attr_stmt, const axutil_env_t *env);
01536
01537
01538
01539
01540
01541
01542
01543 AXIS2_EXTERN int AXIS2_CALL
01544 saml_attr_stmt_set_subject(saml_attr_stmt_t *attr_stmt,
01545 const axutil_env_t *env, saml_subject_t *subject);
01546
01547
01548
01549
01550
01551
01552
01553
01554 AXIS2_EXTERN int AXIS2_CALL
01555 saml_attr_stmt_set_attributes(saml_attr_stmt_t *attr_stmt,
01556 const axutil_env_t *env, axutil_array_list_t *list);
01557
01558
01559
01560
01561
01562
01563
01564 AXIS2_EXTERN int AXIS2_CALL
01565 saml_attr_stmt_add_attribute(saml_attr_stmt_t *attr_stmt,
01566 const axutil_env_t *env, saml_attr_t *attribute);
01567
01568
01569
01570
01571
01572
01573
01574 AXIS2_EXTERN int AXIS2_CALL
01575 saml_attr_stmt_remove_attribute(saml_attr_stmt_t *attr_stmt,
01576 const axutil_env_t *env, int index);
01577
01578
01579
01580
01581
01582
01583
01584
01585
01586 AXIS2_EXTERN saml_condition_t * AXIS2_CALL
01587 saml_condition_create(const axutil_env_t *env);
01588
01589
01590
01591
01592
01593
01594
01595 AXIS2_EXTERN void AXIS2_CALL
01596 saml_condition_free(saml_condition_t *cond, const axutil_env_t *env);
01597
01598
01599
01600
01601
01602
01603
01604
01605 AXIS2_EXTERN int AXIS2_CALL
01606 saml_condition_build(saml_condition_t *cond,
01607 axiom_node_t *node, const axutil_env_t *env);
01608
01609
01610
01611
01612
01613
01614
01615 AXIS2_EXTERN axiom_node_t * AXIS2_CALL
01616 saml_condition_to_om(saml_condition_t *cond,
01617 axiom_node_t *parent, const axutil_env_t *env);
01618
01619
01620
01621
01622
01623
01624
01625
01626 AXIS2_EXTERN int AXIS2_CALL
01627 saml_condition_set_condition(saml_condition_t *cond,
01628 const axutil_env_t *env, void * condition,
01629 saml_cond_type_t type);
01630
01631
01632
01633
01634
01635
01636
01637 AXIS2_EXTERN int AXIS2_CALL
01638 saml_condition_set_type(saml_condition_t *cond,
01639 const axutil_env_t *env, saml_cond_type_t type);
01640
01641
01642
01643
01644
01645
01646 AXIS2_EXTERN void * AXIS2_CALL
01647 saml_condition_get_condition(saml_condition_t *cond, const axutil_env_t *env);
01648
01649
01650
01651
01652
01653
01654 AXIS2_EXTERN saml_cond_type_t AXIS2_CALL
01655 saml_condition_get_type(saml_condition_t *cond, const axutil_env_t *env);
01656
01657
01658
01659
01660
01661
01662
01663
01664
01665 AXIS2_EXTERN int AXIS2_CALL
01666 saml_audi_restriction_cond_build(saml_audi_restriction_cond_t *arc,
01667 axiom_node_t *node, const axutil_env_t *env);
01668
01669
01670
01671
01672
01673
01674
01675 AXIS2_EXTERN axiom_node_t *AXIS2_CALL
01676 saml_audi_restriction_cond_to_om(saml_audi_restriction_cond_t *arc,
01677 axiom_node_t *parent, const axutil_env_t *env);
01678
01679
01680
01681
01682
01683
01684 AXIS2_EXTERN void AXIS2_CALL
01685 saml_audi_restriction_cond_free(saml_audi_restriction_cond_t *arc,
01686 const axutil_env_t *env);
01687
01688
01689
01690
01691
01692
01693 AXIS2_EXTERN saml_audi_restriction_cond_t * AXIS2_CALL
01694 saml_audi_restriction_cond_create(const axutil_env_t *env);
01695
01696
01697
01698
01699
01700
01701 AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL
01702 saml_audi_restriction_cond_get_audiences(saml_audi_restriction_cond_t *arc,
01703 const axutil_env_t *env);
01704
01705
01706
01707
01708
01709
01710 AXIS2_EXTERN int AXIS2_CALL
01711 saml_audi_restriction_cond_set_audiences(saml_audi_restriction_cond_t *cond,
01712 const axutil_env_t *env, axutil_array_list_t *list);
01713
01714
01715
01716
01717
01718
01719
01720 AXIS2_EXTERN int AXIS2_CALL
01721 saml_audi_restriction_cond_remove_audiences(saml_audi_restriction_cond_t *cond,
01722 const axutil_env_t *env, int index);
01723
01724
01725
01726
01727
01728
01729
01730 AXIS2_EXTERN int AXIS2_CALL
01731 saml_audi_restriction_cond_add_audience(saml_audi_restriction_cond_t *cond,
01732 const axutil_env_t *env, axis2_char_t *audience);
01733
01734
01735
01736
01737
01738
01739
01740
01741
01742 AXIS2_EXTERN saml_action_t * AXIS2_CALL
01743 saml_action_create(const axutil_env_t *env);
01744
01745
01746
01747
01748
01749
01750 AXIS2_EXTERN void AXIS2_CALL
01751 saml_action_free(saml_action_t *action, const axutil_env_t *env);
01752
01753
01754
01755
01756
01757
01758
01759 AXIS2_EXTERN int AXIS2_CALL
01760 saml_action_build(saml_action_t *action, axiom_node_t *node, const axutil_env_t *env);
01761
01762
01763
01764
01765
01766
01767
01768 AXIS2_EXTERN axiom_node_t * AXIS2_CALL
01769 saml_action_to_om(saml_action_t *action,
01770 axiom_node_t *parent, const axutil_env_t *env);
01771
01772
01773
01774
01775
01776
01777 AXIS2_EXTERN axis2_char_t * AXIS2_CALL
01778 saml_action_get_data(saml_action_t *action, const axutil_env_t *env);
01779
01780
01781
01782
01783
01784
01785
01786 AXIS2_EXTERN axis2_char_t * AXIS2_CALL
01787 saml_action_get_namespace(saml_action_t *action, const axutil_env_t *env);
01788
01789
01790
01791
01792
01793
01794
01795 AXIS2_EXTERN int AXIS2_CALL
01796 saml_action_set_data(saml_action_t *action, const axutil_env_t *env,
01797 axis2_char_t *data);
01798
01799
01800
01801
01802
01803
01804
01805
01806 AXIS2_EXTERN int AXIS2_CALL
01807 saml_action_set_namespace(saml_action_t *action, const axutil_env_t *env,
01808 axis2_char_t *name_space);
01809
01810
01811 AXIS2_EXTERN saml_evidence_t * AXIS2_CALL
01812 saml_evidence_create(const axutil_env_t *env);
01813
01814 AXIS2_EXTERN void AXIS2_CALL
01815 saml_evidence_free(saml_evidence_t *evidence, const axutil_env_t *env);
01816
01817 AXIS2_EXTERN int AXIS2_CALL
01818 saml_evidence_build(saml_evidence_t *evidence,
01819 axiom_node_t *node, const axutil_env_t *env);
01820
01821 AXIS2_EXTERN axiom_node_t * AXIS2_CALL
01822 saml_evidence_to_om(saml_evidence_t *evidence, axiom_node_t *parent,
01823 const axutil_env_t *env);
01824
01825 AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL
01826 saml_evidence_get_assertions(saml_evidence_t *evidence, const axutil_env_t *env);
01827
01828 AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL
01829 saml_evidence_get_assertion_ids(saml_evidence_t *evidence, const axutil_env_t *env);
01830
01831 AXIS2_EXTERN int AXIS2_CALL
01832 saml_evidence_set_assertions(saml_evidence_t *evidence,
01833 const axutil_env_t *env, axutil_array_list_t *list);
01834
01835 AXIS2_EXTERN int AXIS2_CALL
01836 saml_evidence_remove_assertion(saml_evidence_t *evidence,
01837 const axutil_env_t *env, int index);
01838
01839 AXIS2_EXTERN int AXIS2_CALL
01840 saml_evidence_add_assertion(saml_evidence_t *evidence,
01841 const axutil_env_t *env, saml_assertion_t *assertion);
01842
01843 AXIS2_EXTERN int AXIS2_CALL
01844 saml_evidence_set_assertion_ids(saml_evidence_t *evidence,
01845 const axutil_env_t *env, axutil_array_list_t *list);
01846
01847 AXIS2_EXTERN int AXIS2_CALL
01848 saml_evidence_remove_assertion_id(saml_evidence_t *evidence,
01849 const axutil_env_t *env, int index);
01850
01851 AXIS2_EXTERN int AXIS2_CALL
01852 saml_evidence_add_assertion_id(saml_evidence_t *evidence,
01853 const axutil_env_t *env, axis2_char_t *assertion_id);
01854
01855
01856
01857
01858
01859
01860
01861
01862 AXIS2_EXTERN saml_attr_desig_t * AXIS2_CALL
01863 saml_attr_desig_create(const axutil_env_t *env);
01864
01865
01866
01867
01868
01869
01870 AXIS2_EXTERN void AXIS2_CALL
01871 saml_attr_desig_free(saml_attr_desig_t *attr_desig, const axutil_env_t *env);
01872
01873
01874
01875
01876
01877
01878
01879 AXIS2_EXTERN int AXIS2_CALL
01880 saml_attr_desig_build(saml_attr_desig_t *attr_desig,
01881 axiom_node_t *node, const axutil_env_t *env);
01882
01883
01884
01885
01886
01887
01888
01889 AXIS2_EXTERN axiom_node_t * AXIS2_CALL
01890 saml_attr_desig_to_om(saml_attr_desig_t *attr_desig,
01891 axiom_node_t *parent, const axutil_env_t *env);
01892
01893
01894
01895
01896
01897
01898
01899 AXIS2_EXTERN axis2_char_t * AXIS2_CALL
01900 saml_attr_desig_get_name(saml_attr_desig_t *attr_desig, const axutil_env_t *env);
01901
01902
01903
01904
01905
01906
01907
01908 AXIS2_EXTERN axis2_char_t * AXIS2_CALL
01909 saml_attr_desig_get_namespace(saml_attr_desig_t *attr_desig, const axutil_env_t *env);
01910
01911
01912
01913
01914
01915
01916
01917 AXIS2_EXTERN int AXIS2_CALL
01918 saml_attr_desig_set_name(saml_attr_desig_t *attr_desig,
01919 const axutil_env_t *env, axis2_char_t *name);
01920
01921
01922
01923
01924
01925
01926
01927 AXIS2_EXTERN int AXIS2_CALL
01928 saml_attr_desig_set_namespace(saml_attr_desig_t *attr_desig,
01929 const axutil_env_t *env, axis2_char_t *name_space);
01930
01931
01932
01933
01934
01935
01936
01937
01938 AXIS2_EXTERN saml_attr_t * AXIS2_CALL
01939 saml_attr_create(const axutil_env_t *env);
01940
01941
01942
01943
01944
01945
01946 AXIS2_EXTERN void AXIS2_CALL
01947 saml_attr_free(saml_attr_t *attr, const axutil_env_t *env);
01948
01949
01950
01951
01952
01953
01954
01955 AXIS2_EXTERN int AXIS2_CALL
01956 saml_attr_build(saml_attr_t *attr, axiom_node_t *node, const axutil_env_t *env);
01957
01958
01959
01960
01961
01962
01963
01964 AXIS2_EXTERN axiom_node_t * AXIS2_CALL
01965 saml_attr_to_om(saml_attr_t *attr, axiom_node_t *parent, const axutil_env_t *env);
01966
01967
01968
01969
01970
01971
01972
01973 AXIS2_EXTERN axis2_char_t * AXIS2_CALL
01974 saml_attr_get_name(saml_attr_t *attr, const axutil_env_t *env);
01975
01976
01977
01978
01979
01980
01981
01982 AXIS2_EXTERN axis2_char_t * AXIS2_CALL
01983 saml_attr_get_namespace(saml_attr_t *attr_stmt, const axutil_env_t *env);
01984
01985
01986
01987
01988
01989
01990
01991 AXIS2_EXTERN int AXIS2_CALL
01992 saml_attr_set_name(saml_attr_t *attr, const axutil_env_t *env, axis2_char_t *name);
01993
01994
01995
01996
01997
01998
01999
02000 AXIS2_EXTERN int AXIS2_CALL
02001 saml_attr_set_namespace(saml_attr_t *attr, const axutil_env_t *env,
02002 axis2_char_t *name_space);
02003
02004
02005
02006
02007
02008
02009
02010 AXIS2_EXTERN int AXIS2_CALL
02011 saml_attr_set_values(saml_attr_t *attr, const axutil_env_t *env,
02012 axutil_array_list_t *list);
02013
02014
02015
02016
02017
02018
02019
02020 AXIS2_EXTERN int AXIS2_CALL
02021 saml_attr_remove_value(saml_attr_t *attr, const axutil_env_t *env, int index);
02022
02023
02024
02025
02026
02027
02028
02029 AXIS2_EXTERN int AXIS2_CALL
02030 saml_attr_add_value(saml_attr_t *attr, const axutil_env_t *env, axiom_node_t *value);
02031
02032
02033
02034
02035
02036
02037
02038
02039
02040 AXIS2_EXTERN saml_named_id_t * AXIS2_CALL
02041 saml_named_id_create(const axutil_env_t *env);
02042
02043
02044
02045
02046
02047
02048 AXIS2_EXTERN void AXIS2_CALL
02049 saml_named_id_free(saml_named_id_t *named_id, const axutil_env_t *env);
02050
02051
02052
02053
02054
02055
02056
02057 AXIS2_EXTERN int AXIS2_CALL
02058 saml_named_id_build(saml_named_id_t *named_id, axiom_node_t *node,
02059 const axutil_env_t *env);
02060
02061
02062
02063
02064
02065
02066
02067 AXIS2_EXTERN axiom_node_t * AXIS2_CALL
02068 saml_named_id_to_om(saml_named_id_t *id, axiom_node_t *parent,
02069 const axutil_env_t *env);
02070
02071
02072
02073
02074
02075
02076
02077 AXIS2_EXTERN axis2_char_t * AXIS2_CALL
02078 saml_named_id_get_name(saml_named_id_t *id, const axutil_env_t *env);
02079
02080
02081
02082
02083
02084
02085
02086
02087 AXIS2_EXTERN axis2_char_t * AXIS2_CALL
02088 saml_named_id_get_format(saml_named_id_t *id, const axutil_env_t *env);
02089
02090
02091
02092
02093
02094
02095
02096
02097 AXIS2_EXTERN axis2_char_t * AXIS2_CALL
02098 saml_named_id_get_name_qualifier(saml_named_id_t *id, const axutil_env_t *env);
02099
02100
02101
02102
02103
02104
02105
02106 AXIS2_EXTERN int AXIS2_CALL
02107 saml_named_id_set_name(saml_named_id_t *id,
02108 const axutil_env_t *env, axis2_char_t *name);
02109
02110
02111
02112
02113
02114
02115
02116
02117 AXIS2_EXTERN int AXIS2_CALL
02118 saml_named_id_set_format(saml_named_id_t *id,
02119 const axutil_env_t *env, axis2_char_t *format);
02120
02121
02122
02123
02124
02125
02126
02127
02128 AXIS2_EXTERN int AXIS2_CALL
02129 saml_named_id_set_name_qualifier(saml_named_id_t *id,
02130 const axutil_env_t *env, axis2_char_t *qualifier);
02131
02132
02133
02134 AXIS2_EXTERN int AXIS2_CALL saml_util_set_sig_ctx_defaults(oxs_sign_ctx_t *sig_ctx, const axutil_env_t *env, axis2_char_t *id);
02135
02136 #ifdef __cplusplus
02137 }
02138 #endif
02139
02140
02141 #endif