You are viewing a plain text version of this content. The canonical link for it is here.
Posted to rampart-dev@ws.apache.org by pi...@apache.org on 2007/09/06 12:49:17 UTC

svn commit: r573215 [7/22] - in /webservices/rampart/tags/c/0.90: ./ build/ build/linux/ build/win32/ include/ samples/ samples/authn_provider/ samples/callback/ samples/callback/htpasswd_callback/ samples/client/ samples/client/sec_echo/ samples/clien...

Added: webservices/rampart/tags/c/0.90/include/rp_symmetric_binding.h
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/include/rp_symmetric_binding.h?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/include/rp_symmetric_binding.h (added)
+++ webservices/rampart/tags/c/0.90/include/rp_symmetric_binding.h Thu Sep  6 03:48:44 2007
@@ -0,0 +1,91 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef RP_SYMMETRIC_BINDING_H
+#define RP_SYMMETRIC_BINDING_H
+
+/** @defgroup rp_symmetric_binding
+ * @ingroup rp_symmetric_binding
+ * @{
+ */
+
+#include <rp_includes.h>
+#include <rp_symmetric_asymmetric_binding_commons.h>
+#include <rp_property.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+    typedef struct rp_symmetric_binding_t rp_symmetric_binding_t;
+
+    AXIS2_EXTERN rp_symmetric_binding_t *AXIS2_CALL
+    rp_symmetric_binding_create(const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_symmetric_binding_free(
+        rp_symmetric_binding_t *symmetric_binding,
+        const axutil_env_t *env);
+
+    AXIS2_EXTERN rp_symmetric_asymmetric_binding_commons_t *AXIS2_CALL
+    rp_symmetric_binding_get_symmetric_asymmetric_binding_commons(
+        rp_symmetric_binding_t *symmetric_binding,
+        const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_symmetric_binding_set_symmetric_asymmetric_binding_commons(
+        rp_symmetric_binding_t *symmetric_binding,
+        const axutil_env_t *env,
+        rp_symmetric_asymmetric_binding_commons_t *symmetric_asymmetric_binding_commons);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_symmetric_binding_set_protection_token(
+        rp_symmetric_binding_t *symmetric_binding,
+        const axutil_env_t *env,
+        rp_property_t *protection_token);
+
+    AXIS2_EXTERN rp_property_t *AXIS2_CALL
+    rp_symmetric_binding_get_protection_token(
+        rp_symmetric_binding_t *symmetric_binding,
+        const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_symmetric_binding_set_encryption_token(
+        rp_symmetric_binding_t *symmetric_binding,
+        const axutil_env_t *env,
+        rp_property_t *encryption_token);
+
+    AXIS2_EXTERN rp_property_t *AXIS2_CALL
+    rp_symmetric_binding_get_encryption_token(
+        rp_symmetric_binding_t *symmetric_binding,
+        const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_symmetric_binding_set_signature_token(
+        rp_symmetric_binding_t *symmetric_binding,
+        const axutil_env_t *env,
+        rp_property_t *signature_token);
+
+    AXIS2_EXTERN rp_property_t *AXIS2_CALL
+    rp_symmetric_binding_get_signature_token(
+        rp_symmetric_binding_t *symmetric_binding,
+        const axutil_env_t *env);
+
+#ifdef __cplusplus
+}
+#endif
+#endif

Added: webservices/rampart/tags/c/0.90/include/rp_symmetric_binding_builder.h
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/include/rp_symmetric_binding_builder.h?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/include/rp_symmetric_binding_builder.h (added)
+++ webservices/rampart/tags/c/0.90/include/rp_symmetric_binding_builder.h Thu Sep  6 03:48:44 2007
@@ -0,0 +1,57 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef RP_SYMMETRIC_BINDING_BUILDER_H
+#define RP_SYMMETRIC_BINDING_BUILDER_H
+
+/** @defgroup rp_symmetric_binding_builder
+ * @ingroup rp_symmetric_binding_builder
+ * @{
+ */
+
+#include <rp_includes.h>
+#include <rp_property.h>
+#include <rp_symmetric_binding.h>
+#include <rp_symmetric_asymmetric_commons_builder.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+    AXIS2_EXTERN rp_symmetric_binding_t *AXIS2_CALL
+    rp_symmetric_binding_builder_build(
+        const axutil_env_t *env,
+        axiom_node_t *symmetric);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_symmetric_binding_builder_set_token_type(
+        const axutil_env_t *env,
+        rp_symmetric_binding_t *symmetric_binding,
+        axiom_node_t *node,
+        axiom_element_t *element,
+        axis2_char_t *local_name);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_symmetric_binding_builder_istoken(
+        const axutil_env_t *env,
+        axis2_char_t *local_name);
+
+
+#ifdef __cplusplus
+}
+#endif
+#endif

Added: webservices/rampart/tags/c/0.90/include/rp_token_builder.h
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/include/rp_token_builder.h?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/include/rp_token_builder.h (added)
+++ webservices/rampart/tags/c/0.90/include/rp_token_builder.h Thu Sep  6 03:48:44 2007
@@ -0,0 +1,56 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef RP_TOKEN_BUILDER_H
+#define RP_TOKEN_BUILDER_H
+
+/** @defgroup rp_token_builder
+ * @ingroup rp_token_builder
+ * @{
+ */
+
+#include <rp_includes.h>
+#include <rp_property.h>
+#include <rp_qname_matcher.h>
+#include <rp_x509_token.h>
+#include <rp_x509_token_builder.h>
+#include <rp_username_token_builder.h>
+#include <rp_security_context_token_builder.h>
+#include <rp_https_token_builder.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_token_builder_set_token(
+        axiom_node_t *node,
+        axiom_element_t *element,
+        axis2_char_t *value,
+        rp_property_t *token,
+        const axutil_env_t *env);
+
+    AXIS2_EXTERN rp_property_t *AXIS2_CALL
+    rp_token_builder_build(
+        const axutil_env_t *env,
+        axiom_node_t *token);
+
+
+#ifdef __cplusplus
+}
+#endif
+#endif

Added: webservices/rampart/tags/c/0.90/include/rp_transport_binding.h
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/include/rp_transport_binding.h?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/include/rp_transport_binding.h (added)
+++ webservices/rampart/tags/c/0.90/include/rp_transport_binding.h Thu Sep  6 03:48:44 2007
@@ -0,0 +1,69 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef RP_TRANSPORT_BINDING_H
+#define RP_TRANSPORT_BINDING_H
+
+/** @defgroup rp_transport_binding
+ * @ingroup rp_transport_binding
+ * @{
+ */
+
+#include <rp_includes.h>
+#include <rp_binding_commons.h>
+#include <rp_property.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+    typedef struct rp_transport_binding_t rp_transport_binding_t;
+
+    AXIS2_EXTERN rp_transport_binding_t *AXIS2_CALL
+    rp_transport_binding_create(const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_transport_binding_free(
+        rp_transport_binding_t *transport_binding,
+        const axutil_env_t *env);
+
+    AXIS2_EXTERN rp_binding_commons_t *AXIS2_CALL
+    rp_transport_binding_get_binding_commons(
+        rp_transport_binding_t *transport_binding,
+        const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_transport_binding_set_binding_commons(
+        rp_transport_binding_t *transport_binding,
+        const axutil_env_t *env,
+        rp_binding_commons_t *binding_commons);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_transport_binding_set_transport_token(
+        rp_transport_binding_t *transport_binding,
+        const axutil_env_t *env,
+        rp_property_t *transport_token);
+
+    AXIS2_EXTERN rp_property_t *AXIS2_CALL
+    rp_transport_binding_get_transport_token(
+        rp_transport_binding_t *transport_binding,
+        const axutil_env_t *env);
+
+#ifdef __cplusplus
+}
+#endif
+#endif

Added: webservices/rampart/tags/c/0.90/include/rp_transport_binding_builder.h
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/include/rp_transport_binding_builder.h?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/include/rp_transport_binding_builder.h (added)
+++ webservices/rampart/tags/c/0.90/include/rp_transport_binding_builder.h Thu Sep  6 03:48:44 2007
@@ -0,0 +1,57 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef RP_TRANSPORT_BINDING_BUILDER_H
+#define RP_TRANSPORT_BINDING_BUILDER_H
+
+/** @defgroup rp_transport_binding_builder
+ * @ingroup rp_transport_binding_builder
+ * @{
+ */
+
+#include <rp_includes.h>
+#include <rp_property.h>
+#include <rp_transport_binding.h>
+
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+    AXIS2_EXTERN rp_transport_binding_t *AXIS2_CALL
+    rp_transport_binding_builder_build(
+        const axutil_env_t *env,
+        axiom_node_t *transport);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_transport_binding_builder_set_token_type(
+        const axutil_env_t *env,
+        rp_transport_binding_t *transport_binding,
+        axiom_node_t *node,
+        axiom_element_t *element,
+        axis2_char_t *local_name);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_transport_binding_builder_istoken(
+        const axutil_env_t *env,
+        axis2_char_t *local_name);
+
+
+#ifdef __cplusplus
+}
+#endif
+#endif

Added: webservices/rampart/tags/c/0.90/include/rp_username_token.h
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/include/rp_username_token.h?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/include/rp_username_token.h (added)
+++ webservices/rampart/tags/c/0.90/include/rp_username_token.h Thu Sep  6 03:48:44 2007
@@ -0,0 +1,89 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef RP_USERNAME_TOKEN_H
+#define RP_USERNAME_TOKEN_H
+
+/** @defgroup rp_username_token
+ * @ingroup rp_username_token
+ * @{
+ */
+
+#include <rp_includes.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+    typedef struct rp_username_token_t rp_username_token_t;
+
+    AXIS2_EXTERN rp_username_token_t *AXIS2_CALL
+    rp_username_token_create(const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_username_token_free(
+        rp_username_token_t *username_token,
+        const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_char_t *AXIS2_CALL
+    rp_username_token_get_inclusion(
+        rp_username_token_t *username_token,
+        const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_username_token_set_inclusion(
+        rp_username_token_t *username_token,
+        const axutil_env_t *env,
+        axis2_char_t *inclusion);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_username_token_get_derivedkeys(
+        rp_username_token_t *username_token,
+        const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_username_token_set_derivedkeys(
+        rp_username_token_t *username_token,
+        const axutil_env_t *env,
+        axis2_bool_t derivedkeys);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_username_token_get_useUTprofile10(
+        rp_username_token_t *username_token,
+        const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_username_token_set_useUTprofile10(
+        rp_username_token_t *username_token,
+        const axutil_env_t *env,
+        axis2_bool_t useUTprofile10);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_username_token_get_useUTprofile11(
+        rp_username_token_t *username_token,
+        const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_username_token_set_useUTprofile11(
+        rp_username_token_t *username_token,
+        const axutil_env_t *env,
+        axis2_bool_t useUTprofile11);
+
+#ifdef __cplusplus
+}
+#endif
+#endif

Added: webservices/rampart/tags/c/0.90/include/rp_username_token_builder.h
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/include/rp_username_token_builder.h?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/include/rp_username_token_builder.h (added)
+++ webservices/rampart/tags/c/0.90/include/rp_username_token_builder.h Thu Sep  6 03:48:44 2007
@@ -0,0 +1,58 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef RP_USERNAME_TOKEN_BUILDER_H
+#define RP_USERNAME_TOKEN_BUILDER_H
+
+/** @defgroup rp_username_token_builder
+ * @ingroup rp_username_token_builder
+ * @{
+ */
+
+#include <rp_includes.h>
+#include <rp_qname_matcher.h>
+#include <rp_username_token.h>
+
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+    AXIS2_EXTERN rp_username_token_t *AXIS2_CALL
+    rp_username_token_builder_build(
+        const axutil_env_t *env,
+        axiom_node_t *username,
+        axiom_element_t *username_ele);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_username_token_builder_set_inclusion_value(
+        const axutil_env_t *env,
+        rp_username_token_t *token,
+        axiom_element_t *element);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_username_token_builder_set_properties(
+        axiom_node_t *node,
+        axiom_element_t *element,
+        axis2_char_t *local_name,
+        rp_username_token_t *username_token,
+        const axutil_env_t *env);
+
+#ifdef __cplusplus
+}
+#endif
+#endif

Added: webservices/rampart/tags/c/0.90/include/rp_wss10.h
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/include/rp_wss10.h?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/include/rp_wss10.h (added)
+++ webservices/rampart/tags/c/0.90/include/rp_wss10.h Thu Sep  6 03:48:44 2007
@@ -0,0 +1,80 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef RP_WSS10_H
+#define RP_WSS10_H
+
+/** @defgroup wss10
+ * @ingroup wss10
+ * @{
+ */
+
+#include <rp_includes.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+    typedef struct rp_wss10_t rp_wss10_t;
+
+    AXIS2_EXTERN rp_wss10_t *AXIS2_CALL
+    rp_wss10_create(const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_wss10_free(rp_wss10_t *wss10,
+                  const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_wss10_get_must_support_ref_key_identifier(rp_wss10_t *wss10,
+            const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_wss10_set_must_support_ref_key_identifier(rp_wss10_t *wss10,
+            const axutil_env_t *env,
+            axis2_bool_t must_support_ref_key_identifier);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_wss10_get_must_support_ref_issuer_serial(rp_wss10_t *wss10,
+            const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_wss10_set_must_support_ref_issuer_serial(rp_wss10_t *wss10,
+            const axutil_env_t *env,
+            axis2_bool_t must_support_ref_issuer_serial);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_wss10_get_must_support_ref_external_uri(rp_wss10_t *wss10,
+            const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_wss10_set_must_support_ref_external_uri(rp_wss10_t *wss10,
+            const axutil_env_t *env,
+            axis2_bool_t must_support_ref_external_uri);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_wss10_get_must_support_ref_embedded_token(rp_wss10_t *wss10,
+            const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_wss10_set_must_support_ref_embedded_token(rp_wss10_t *wss10,
+            const axutil_env_t *env,
+            axis2_bool_t must_support_ref_embedded_token);
+
+#ifdef __cplusplus
+}
+#endif
+#endif

Added: webservices/rampart/tags/c/0.90/include/rp_wss10_builder.h
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/include/rp_wss10_builder.h?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/include/rp_wss10_builder.h (added)
+++ webservices/rampart/tags/c/0.90/include/rp_wss10_builder.h Thu Sep  6 03:48:44 2007
@@ -0,0 +1,51 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef RP_WSS10_BUILDER_H
+#define RP_WSS10_BUILDER_H
+
+/** @defgroup rp_wss10_builder
+ * @ingroup rp_wss10_builder
+ * @{
+ */
+
+#include <rp_includes.h>
+#include <rp_qname_matcher.h>
+#include <rp_wss10.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+    AXIS2_EXTERN rp_wss10_t *AXIS2_CALL
+    rp_wss10_builder_build(
+        const axutil_env_t *env,
+        axiom_node_t *wss10);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_wss10_builder_set_properties(
+        axiom_node_t *node,
+        axiom_element_t *element,
+        axis2_char_t *local_name,
+        rp_wss10_t *wss10,
+        const axutil_env_t *env);
+
+
+#ifdef __cplusplus
+}
+#endif
+#endif

Added: webservices/rampart/tags/c/0.90/include/rp_wss11.h
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/include/rp_wss11.h?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/include/rp_wss11.h (added)
+++ webservices/rampart/tags/c/0.90/include/rp_wss11.h Thu Sep  6 03:48:44 2007
@@ -0,0 +1,108 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef RP_WSS11_H
+#define RP_WSS11_H
+
+/** @defgroup wss11
+ * @ingroup wss11
+ * @{
+ */
+
+#include <rp_includes.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+    typedef struct rp_wss11_t rp_wss11_t;
+
+    AXIS2_EXTERN rp_wss11_t *AXIS2_CALL
+    rp_wss11_create(const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_wss11_free(rp_wss11_t *wss11,
+                  const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_wss11_get_must_support_ref_key_identifier(rp_wss11_t *wss11,
+            const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_wss11_set_must_support_ref_key_identifier(rp_wss11_t *wss11,
+            const axutil_env_t *env,
+            axis2_bool_t must_support_ref_key_identifier);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_wss11_get_must_support_ref_issuer_serial(rp_wss11_t *wss11,
+            const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_wss11_set_must_support_ref_issuer_serial(rp_wss11_t *wss11,
+            const axutil_env_t *env,
+            axis2_bool_t must_support_ref_issuer_serial);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_wss11_get_must_support_ref_external_uri(rp_wss11_t *wss11,
+            const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_wss11_set_must_support_ref_external_uri(rp_wss11_t *wss11,
+            const axutil_env_t *env,
+            axis2_bool_t must_support_ref_external_uri);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_wss11_get_must_support_ref_embedded_token(rp_wss11_t *wss11,
+            const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_wss11_set_must_support_ref_embedded_token(rp_wss11_t *wss11,
+            const axutil_env_t *env,
+            axis2_bool_t must_support_ref_embedded_token);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_wss11_get_must_support_ref_thumbprint(rp_wss11_t *wss11,
+            const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_wss11_set_must_support_ref_thumbprint(rp_wss11_t *wss11,
+            const axutil_env_t *env,
+            axis2_bool_t must_support_ref_thumbprint);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_wss11_set_must_support_ref_encryptedkey(rp_wss11_t *wss11,
+            const axutil_env_t *env,
+            axis2_bool_t must_support_ref_encryptedkey);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_wss11_get_must_support_ref_encryptedkey(rp_wss11_t *wss11,
+            const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_wss11_set_require_signature_confirmation(rp_wss11_t *wss11,
+            const axutil_env_t *env,
+            axis2_bool_t require_signature_confirmation);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_wss11_get_require_signature_confirmation(rp_wss11_t *wss11,
+            const axutil_env_t *env);
+
+
+#ifdef __cplusplus
+}
+#endif
+#endif

Added: webservices/rampart/tags/c/0.90/include/rp_wss11_builder.h
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/include/rp_wss11_builder.h?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/include/rp_wss11_builder.h (added)
+++ webservices/rampart/tags/c/0.90/include/rp_wss11_builder.h Thu Sep  6 03:48:44 2007
@@ -0,0 +1,51 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef RP_WSS11_BUILDER_H
+#define RP_WSS11_BUILDER_H
+
+/** @defgroup rp_wss11_builder
+ * @ingroup rp_wss11_builder
+ * @{
+ */
+
+#include <rp_includes.h>
+#include <rp_qname_matcher.h>
+#include <rp_wss11.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+    AXIS2_EXTERN rp_wss11_t *AXIS2_CALL
+    rp_wss11_builder_build(
+        const axutil_env_t *env,
+        axiom_node_t *wss11);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_wss11_builder_set_properties(
+        axiom_node_t *node,
+        axiom_element_t *element,
+        axis2_char_t *local_name,
+        rp_wss11_t *wss11,
+        const axutil_env_t *env);
+
+
+#ifdef __cplusplus
+}
+#endif
+#endif

Added: webservices/rampart/tags/c/0.90/include/rp_x509_token.h
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/include/rp_x509_token.h?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/include/rp_x509_token.h (added)
+++ webservices/rampart/tags/c/0.90/include/rp_x509_token.h Thu Sep  6 03:48:44 2007
@@ -0,0 +1,110 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef RP_X509_TOKEN_H
+#define RP_X509_TOKEN_H
+
+/** @defgroup rp_x509_token
+ * @ingroup rp_x509_token
+ * @{
+ */
+
+#include <rp_includes.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+    typedef struct rp_x509_token_t rp_x509_token_t;
+
+    AXIS2_EXTERN rp_x509_token_t *AXIS2_CALL
+    rp_x509_token_create(const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_x509_token_free(rp_x509_token_t *x509_token,
+                       const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_char_t *AXIS2_CALL
+    rp_x509_token_get_inclusion(rp_x509_token_t *x509_token,
+                                const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_x509_token_set_inclusion(rp_x509_token_t *x509_token,
+                                const axutil_env_t *env,
+                                axis2_char_t *inclusion);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_x509_token_get_derivedkeys(rp_x509_token_t *x509_token,
+                                  const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_x509_token_set_derivedkeys(rp_x509_token_t *x509_token,
+                                  const axutil_env_t *env,
+                                  axis2_bool_t derivedkeys);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_x509_token_get_require_key_identifier_reference(rp_x509_token_t *x509_token,
+            const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_x509_token_set_require_key_identifier_reference(rp_x509_token_t *x509_token,
+            const axutil_env_t *env,
+            axis2_bool_t require_key_identifier_reference);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_x509_token_get_require_issuer_serial_reference(rp_x509_token_t *x509_token,
+            const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_x509_token_set_require_issuer_serial_reference(rp_x509_token_t *x509_token,
+            const axutil_env_t *env,
+            axis2_bool_t require_issuer_serial_reference);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_x509_token_get_require_embedded_token_reference(rp_x509_token_t *x509_token,
+            const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_x509_token_set_require_embedded_token_reference(rp_x509_token_t *x509_token,
+            const axutil_env_t *env,
+            axis2_bool_t require_embedded_token_reference);
+
+    AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+    rp_x509_token_get_require_thumb_print_reference(rp_x509_token_t *x509_token,
+            const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_x509_token_set_require_thumb_print_reference(rp_x509_token_t *x509_token,
+            const axutil_env_t *env,
+            axis2_bool_t require_thumb_print_reference);
+
+    AXIS2_EXTERN axis2_char_t *AXIS2_CALL
+    rp_x509_token_get_token_version_and_type(rp_x509_token_t *x509_token,
+            const axutil_env_t *env);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_x509_token_set_token_version_and_type(rp_x509_token_t *x509_token,
+            const axutil_env_t *env,
+            axis2_char_t *token_version_and_type);
+
+
+
+
+#ifdef __cplusplus
+}
+#endif
+#endif

Added: webservices/rampart/tags/c/0.90/include/rp_x509_token_builder.h
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/include/rp_x509_token_builder.h?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/include/rp_x509_token_builder.h (added)
+++ webservices/rampart/tags/c/0.90/include/rp_x509_token_builder.h Thu Sep  6 03:48:44 2007
@@ -0,0 +1,59 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef RP_X509_TOKEN_BUILDER_H
+#define RP_X509_TOKEN_BUILDER_H
+
+/** @defgroup rp_x509_token_builder
+ * @ingroup rp_x509_token_builder
+ * @{
+ */
+
+#include <rp_includes.h>
+#include <rp_qname_matcher.h>
+#include <rp_x509_token.h>
+
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+    AXIS2_EXTERN rp_x509_token_t *AXIS2_CALL
+    rp_x509_token_builder_build(
+        const axutil_env_t *env,
+        axiom_node_t *x509,
+        axiom_element_t *x509_ele);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_x509_token_builder_set_inclusion_value(
+        const axutil_env_t *env,
+        rp_x509_token_t *token,
+        axiom_element_t *element);
+
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    rp_x509_token_builder_set_properties(
+        axiom_node_t *node,
+        axiom_element_t *element,
+        axis2_char_t *local_name,
+        rp_x509_token_t *x509_token,
+        const axutil_env_t *env);
+
+
+#ifdef __cplusplus
+}
+#endif
+#endif

Added: webservices/rampart/tags/c/0.90/rampart-bindist.sh
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/rampart-bindist.sh?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/rampart-bindist.sh (added)
+++ webservices/rampart/tags/c/0.90/rampart-bindist.sh Thu Sep  6 03:48:44 2007
@@ -0,0 +1,83 @@
+#!/bin/bash
+echo "If you do not need to build Rampart/C %sh rampart-bindist nobuild"
+BIN_DIR=rampartc-bin-0.90-linux
+TAR_GZ=$BIN_DIR.tar.gz
+MD5=$TAR_GZ.md5
+PWDIR=$PWD
+
+if [ $# -ne 1 ]
+then
+    echo "Build Rampart"
+    ./build.sh 
+
+    echo "Build samples"
+    cd samples
+    ./build.sh
+cd ..
+
+fi
+
+echo "Deleting $BIN_DIR, $TAR_GZ, $MD5 if any"
+rm -rf $BIN_DIR
+rm $TAR_GZ
+rm $MD5
+
+ls 
+sleep 1
+
+echo "Creating directories in $PWDIR"
+mkdir $BIN_DIR
+mkdir $BIN_DIR/modules
+mkdir $BIN_DIR/modules/rampart
+mkdir $BIN_DIR/samples
+mkdir $BIN_DIR/samples/secpolicy
+mkdir $BIN_DIR/samples/server
+mkdir $BIN_DIR/include
+
+echo "Copy related files to $BIN_DIR"
+#Copy other related files
+cp AUTHORS $BIN_DIR
+cp COPYING $BIN_DIR
+cp INSTALL $BIN_DIR
+cp LICENSE $BIN_DIR
+cp NEWS $BIN_DIR
+cp README $BIN_DIR
+cp NOTICE $BIN_DIR
+
+echo "Copy rampart module"
+#Copy rampart module
+cp $AXIS2C_HOME/modules/rampart/* $BIN_DIR/modules/rampart/
+cp $AXIS2C_HOME/modules/rampart/module.xml $BIN_DIR/modules/rampart
+
+echo "Copy samples"
+#copy samples
+cp -r samples/secpolicy/* $BIN_DIR/samples/secpolicy/
+cp -r $AXIS2C_HOME/bin/samples/rampart/* $BIN_DIR/samples/
+cp -r $AXIS2C_HOME/services/sec_echo $BIN_DIR/samples/server/
+cp samples/server/sec_echo/services.xml $BIN_DIR/samples/server/sec_echo/services.xml
+cp samples/secpolicy/scenario7/client-outgoing-secpolicy.xml $BIN_DIR/samples/server/sec_echo/outgoing-secpolicy.xml
+cp samples/secpolicy/scenario7/client-incoming-secpolicy.xml $BIN_DIR/samples/server/sec_echo/incoming-secpolicy.xml
+
+echo "Copy headers"
+cp include/*.h $BIN_DIR/include
+
+echo "Removing garbage in $BIN_DIR"
+cd $BIN_DIR
+
+for i in `find . -name "*.svn"`
+do
+   rm -rf $i
+done
+
+
+cd $PWDIR
+echo "Creating tar.gz in $PWDIR"
+tar  -czvf $TAR_GZ $BIN_DIR
+
+echo "Creating MD5"
+openssl md5 < $TAR_GZ > $MD5
+
+echo "To sign please enter password for the private key"
+gpg --armor --output $TAR_GZ.asc --detach-sig $TAR_GZ
+
+echo "DONE" 

Propchange: webservices/rampart/tags/c/0.90/rampart-bindist.sh
------------------------------------------------------------------------------
    svn:executable = *

Added: webservices/rampart/tags/c/0.90/samples/AUTHORS
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/AUTHORS?rev=573215&view=auto
==============================================================================
    (empty)

Added: webservices/rampart/tags/c/0.90/samples/ChangeLog
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/ChangeLog?rev=573215&view=auto
==============================================================================
    (empty)

Added: webservices/rampart/tags/c/0.90/samples/INSTALL
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/INSTALL?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/INSTALL (added)
+++ webservices/rampart/tags/c/0.90/samples/INSTALL Thu Sep  6 03:48:44 2007
@@ -0,0 +1,14 @@
+Getting Axis2/C Rampart samples source working on Linux
+=============================================
+Build the source
+This can be done using the following command sequence:
+        ./configure
+        make
+        make install
+        use './configure --help' for options
+
+Please refer the ../INSTALL for more information
+
+
+
+

Added: webservices/rampart/tags/c/0.90/samples/Makefile.am
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/Makefile.am?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/Makefile.am (added)
+++ webservices/rampart/tags/c/0.90/samples/Makefile.am Thu Sep  6 03:48:44 2007
@@ -0,0 +1,3 @@
+TESTS =
+SUBDIRS = callback client server keys authn_provider credential_provider 
+

Added: webservices/rampart/tags/c/0.90/samples/NEWS
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/NEWS?rev=573215&view=auto
==============================================================================
    (empty)

Added: webservices/rampart/tags/c/0.90/samples/README
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/README?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/README (added)
+++ webservices/rampart/tags/c/0.90/samples/README Thu Sep  6 03:48:44 2007
@@ -0,0 +1,46 @@
+
+                          Apache Rampart/C samples
+
+  Rampart, What is it?
+  -----------
+  Please read the rampart/README file.
+
+  The Latest Version
+  ------------------
+
+  You can get the latest svn checkout of Apache Axis2/C Rampart samples from
+
+  https://svn.apache.org/repos/asf/webservices/rampart/trunk/c
+
+  Installation
+  ------------
+
+  Please see the file called INSTALL.
+
+  Try samples
+  -----------
+  Please install the sec_echo service and invoke that service using enc_echo client sample.
+  To get more information read 
+  rampart/samples/server/sec_echo/README
+  rampart/samples/client/enc_echo/README
+
+  Licensing
+  ---------
+
+  Please see the file called LICENSE.
+
+  Contacts
+  --------
+
+     o If you have a bug report for Apache Axis2/C Rampart samples please go log a 
+       Jira issue at https://issues.apache.org/jira/browse/RAMPARTC-2
+
+     o If you want to participate in actively developing Apache Axis2/C Rampart 
+       samples please subscribe to the `rampart-dev@ws.apache.org' mailing list 
+       
+
+  Acknowledgments
+  ----------------
+
+  Apache Rampart/C samples relies heavily on the use of autoconf and 
+  libtool to provide a build environment. 

Added: webservices/rampart/tags/c/0.90/samples/authn_provider/Makefile.am
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/authn_provider/Makefile.am?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/authn_provider/Makefile.am (added)
+++ webservices/rampart/tags/c/0.90/samples/authn_provider/Makefile.am Thu Sep  6 03:48:44 2007
@@ -0,0 +1,7 @@
+prglibdir=$(prefix)/bin/samples/rampart/authn_provider
+prglib_LTLIBRARIES = libauthn.la
+libauthn_la_SOURCES = authn_provider.c
+libauthn_la_LIBADD  = ../../src/util/librampart_util.la \
+					  ../../src/omxmlsec/openssl/libomopenssl.la
+INCLUDES = -I ../../include\
+			-I$(AXIS2C_HOME)/include/axis2-1.0

Added: webservices/rampart/tags/c/0.90/samples/authn_provider/authn_provider.c
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/authn_provider/authn_provider.c?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/authn_provider/authn_provider.c (added)
+++ webservices/rampart/tags/c/0.90/samples/authn_provider/authn_provider.c Thu Sep  6 03:48:44 2007
@@ -0,0 +1,213 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <stdio.h>
+#include <axis2_defines.h>
+#include <axutil_error.h>
+#include <axutil_env.h>
+#include <axutil_utils.h>
+#include <rampart_authn_provider.h>
+#include <rampart_crypto_util.h> 
+#include <axutil_string.h>
+#include <axis2_svc_skeleton.h>
+#include <axutil_string.h>
+
+axis2_char_t* AXIS2_CALL
+ramaprt_get_sample_password_from_file(const axutil_env_t *env,
+        const axis2_char_t *username)
+{
+    axis2_char_t * password = NULL;
+    FILE *file = NULL;
+    axis2_char_t *filename = "samples/rampart/data/passwords.txt";
+
+    file = fopen ( filename, "r" );
+    if ( file != NULL )
+    {
+       axis2_char_t line [ 128 ];
+       axis2_char_t ch = 0;
+       axis2_char_t *res = NULL;
+       axis2_char_t *un = NULL;
+       axis2_char_t *pw = NULL;
+
+       while ( fgets ( line, sizeof line, file ) != NULL )
+       {
+          res = axutil_strstr(line, ":");
+          ch = res[0];
+          res[0] = '\0';
+          un = (axis2_char_t *) axutil_strdup(env, line);
+          res[0] = ch;
+          if(0 == axutil_strcmp(un, username)){
+             pw = (axis2_char_t *) axutil_strdup(env, &(res[1]));
+             password = axutil_strndup(env, pw, axutil_strlen(pw)-1); /*We need to remove the end of line character*/
+
+             break;
+          }
+       }
+       AXIS2_FREE(env->allocator, un);
+       AXIS2_FREE(env->allocator, pw);
+       fclose ( file );
+    }else{
+       AXIS2_LOG_INFO(env->log, "Cannot load the password file %s ", filename);
+       perror ( filename );
+    }
+    return password; 
+}
+#if 0
+axis2_char_t* AXIS2_CALL
+ramaprt_get_sample_password(const axutil_env_t *env,
+        const axis2_char_t *username)
+{
+    /*First set pf password are for sample usernames*/
+    axis2_char_t * pw = NULL;
+    if (0 == axutil_strcmp(username, "Raigama"))
+    {
+        pw = "RaigamaPW" ;
+    }
+    else if (0 == axutil_strcmp(username, "Gampola"))
+    {
+        pw = "GampolaPW";
+    }
+    else if (0 == axutil_strcmp(username, "alice"))
+    {
+        pw = "password";
+    }
+    else if (0 == axutil_strcmp(username, "bob"))
+    {
+        pw = "bobPW";
+    }
+    /*These are for sample keystores*/
+    else if (0 == axutil_strcmp(username, "a"))
+    {
+        pw = "a12345";
+    }
+    else if (0 == axutil_strcmp(username, "b"))
+    {
+        pw = "b12345";
+    }
+    else if (0 == axutil_strcmp(username, "x"))
+    {
+        pw = "x12345";
+    }
+    else if (0 == axutil_strcmp(username, "y"))
+    {
+        pw = "y12345";
+    }
+    else
+    {
+        /*Append 12345 for any name not specified above*/
+        /*sprintf(pw, "%s%s",  username, "12345");*/
+    }
+    return pw;
+};
+#endif
+
+/*Two sample implementations*/
+rampart_authn_provider_status_t AXIS2_CALL
+rampart_sample_authn_provider_check_password(rampart_authn_provider_t *authn_provider,
+                const axutil_env_t* env,
+                axis2_msg_ctx_t *msg_ctx,
+                const axis2_char_t *username,
+                const axis2_char_t *password)
+{
+    axis2_char_t *local_pw = NULL;
+
+    /*local_pw = ramaprt_get_sample_password( env, username);*/
+    local_pw = ramaprt_get_sample_password_from_file(env, username);
+    if(local_pw){
+        /*Compare passwords*/
+        if(0 == axutil_strcmp(password, local_pw)){
+            return RAMPART_AUTHN_PROVIDER_GRANTED;
+        }else{
+            return RAMPART_AUTHN_PROVIDER_DENIED;
+        }
+    }else{
+        return RAMPART_AUTHN_PROVIDER_USER_NOT_FOUND;
+    }
+}
+
+rampart_authn_provider_status_t AXIS2_CALL
+rampart_sample_authn_provider_check_password_digest(rampart_authn_provider_t *authn_provider,
+                const axutil_env_t* env,
+                axis2_msg_ctx_t *msg_ctx,
+                const axis2_char_t *username,
+                const axis2_char_t *nonce,
+                const axis2_char_t *created,
+                const axis2_char_t *digest)
+{
+
+    axis2_char_t *local_pw = NULL;
+
+    /*local_pw = ramaprt_get_sample_password( env, username);*/
+    local_pw = ramaprt_get_sample_password_from_file(env, username);
+    if(local_pw){
+        axis2_char_t *local_digest = NULL;
+        /*Generate the digest*/
+        local_digest = rampart_crypto_sha1(env, nonce, created, local_pw);
+        /*Compare digest*/
+        if(0 == axutil_strcmp(digest, local_digest)){
+            return RAMPART_AUTHN_PROVIDER_GRANTED;
+        }else{
+            return RAMPART_AUTHN_PROVIDER_DENIED;
+        }
+     
+    }else{
+        return RAMPART_AUTHN_PROVIDER_USER_NOT_FOUND;
+    }
+}
+
+/**
+ * Following block distinguishes the exposed part of the dll.
+ */
+AXIS2_EXPORT int
+axis2_get_instance(rampart_authn_provider_t **inst,
+        const axutil_env_t *env)
+{
+    rampart_authn_provider_t* authn_p = NULL;
+
+    authn_p = AXIS2_MALLOC(env->allocator,
+            sizeof(rampart_authn_provider_t));
+
+    authn_p->ops = AXIS2_MALLOC(
+                env->allocator, sizeof(rampart_authn_provider_ops_t));
+
+    /*assign function pointers*/
+
+    authn_p->ops->rampart_authn_provider_check_password = rampart_sample_authn_provider_check_password;
+    authn_p->ops->rampart_authn_provider_check_password_digest = rampart_sample_authn_provider_check_password_digest;
+   
+    *inst = authn_p;
+
+    if (!(*inst))
+    {
+        return AXIS2_FAILURE;
+    }
+
+    return AXIS2_SUCCESS;
+}
+
+AXIS2_EXPORT int
+axis2_remove_instance(rampart_authn_provider_t *inst,
+        const axutil_env_t *env)
+{
+    axis2_status_t status = AXIS2_FAILURE;
+    if (inst)
+    {
+        status = AXIS2_SVC_SKELETON_FREE(inst, env);
+    }
+    return status;
+}
+

Added: webservices/rampart/tags/c/0.90/samples/autogen.sh
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/autogen.sh?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/autogen.sh (added)
+++ webservices/rampart/tags/c/0.90/samples/autogen.sh Thu Sep  6 03:48:44 2007
@@ -0,0 +1,43 @@
+#!/bin/bash
+
+echo -n 'Running libtoolize...'
+if libtoolize --force > /dev/null 2>&1; then
+	echo 'done.'
+else
+	echo 'failed.'
+	exit 1
+fi
+
+echo -n 'Running aclocal...'
+if aclocal > /dev/null 2>&1; then
+	echo 'done.'
+else
+	echo 'failed.'
+	exit 1
+fi
+
+echo -n 'Running autoheader...'
+if autoheader > /dev/null 2>&1; then
+	echo 'done.'
+else
+	echo 'failed.'
+	exit 1
+fi
+
+echo -n 'Running autoconf...'
+if autoconf > /dev/null 2>&1; then
+	echo 'done.'
+else
+	echo 'failed.'
+	exit 1
+fi
+
+echo -n 'Running automake...'
+if automake --add-missing > /dev/null 2>&1; then
+	echo 'done.'
+else
+	echo 'failed.'
+	exit 1
+fi
+
+echo 'done'

Propchange: webservices/rampart/tags/c/0.90/samples/autogen.sh
------------------------------------------------------------------------------
    svn:executable = *

Added: webservices/rampart/tags/c/0.90/samples/build.sh
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/build.sh?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/build.sh (added)
+++ webservices/rampart/tags/c/0.90/samples/build.sh Thu Sep  6 03:48:44 2007
@@ -0,0 +1,11 @@
+#!/bin/bash
+./autogen.sh
+./configure --prefix=${AXIS2C_HOME} --enable-static=no 
+make
+make install
+cd client/sec_echo
+sh deploy_client_repo.sh
+cd ../../secpolicy
+sh deploy.sh scenario7
+cd ../
+echo "samples successfuly build.To run echo client cd to client/sec_echo and run update_n_run.sh"

Propchange: webservices/rampart/tags/c/0.90/samples/build.sh
------------------------------------------------------------------------------
    svn:executable = *

Added: webservices/rampart/tags/c/0.90/samples/callback/Makefile.am
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/callback/Makefile.am?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/callback/Makefile.am (added)
+++ webservices/rampart/tags/c/0.90/samples/callback/Makefile.am Thu Sep  6 03:48:44 2007
@@ -0,0 +1,7 @@
+SUBDIRS=htpasswd_callback
+prglibdir=$(prefix)/bin/samples/rampart/callback
+prglib_LTLIBRARIES = libpwcb.la
+libpwcb_la_SOURCES = pwcb.c
+libpwcb_la_LIBADD  =
+INCLUDES = -I ../../include\
+			-I$(AXIS2C_HOME)/include/axis2-1.0

Added: webservices/rampart/tags/c/0.90/samples/callback/htpasswd_callback/Makefile.am
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/callback/htpasswd_callback/Makefile.am?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/callback/htpasswd_callback/Makefile.am (added)
+++ webservices/rampart/tags/c/0.90/samples/callback/htpasswd_callback/Makefile.am Thu Sep  6 03:48:44 2007
@@ -0,0 +1,8 @@
+prglibdir=$(prefix)/bin/samples/rampart/callback/htpasswd_callback
+prglibdir=$(prefix)/lib
+prglib_LTLIBRARIES = libhtpwcb.la
+libhtpwcb_la_SOURCES = htpwcb.c
+
+libhtpwcb_la_LIBADD  =
+INCLUDES = -I ../../../include \
+			-I$(AXIS2C_HOME)/include/axis2-1.0

Added: webservices/rampart/tags/c/0.90/samples/callback/htpasswd_callback/htpwcb.c
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/callback/htpasswd_callback/htpwcb.c?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/callback/htpasswd_callback/htpwcb.c (added)
+++ webservices/rampart/tags/c/0.90/samples/callback/htpasswd_callback/htpwcb.c Thu Sep  6 03:48:44 2007
@@ -0,0 +1,122 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <stdio.h>
+#include <axis2_defines.h>
+#include <axutil_error.h>
+#include <axutil_env.h>
+#include <axutil_utils.h>
+#include <rampart_callback.h>
+#include <axutil_string.h>
+#include <axis2_svc_skeleton.h>
+#include <axutil_string.h>
+
+
+axis2_char_t* AXIS2_CALL
+get_ht_password(rampart_callback_t *rcb,
+        const axutil_env_t *env, 
+        const axis2_char_t *username, 
+        void *param)
+{
+    axis2_char_t * password = NULL;
+    FILE *file = NULL;
+    /*The default location is the following. But this will be overridden by the property values set in the msg_ctx*/
+    axis2_char_t *filename = "/usr/local/apache2/passwd/passwords";
+
+    if(param){
+        filename = (axis2_char_t *)param;
+    }else{
+       AXIS2_LOG_INFO(env->log, "Using the default password file location %s", filename);
+    }
+
+    
+    file = fopen ( filename, "r" );
+    if ( file != NULL )
+    {
+       axis2_char_t line [ 128 ]; 
+       axis2_char_t ch = 0;
+       axis2_char_t *res = NULL;
+       axis2_char_t *un = NULL;
+       axis2_char_t *pw = NULL;
+
+       while ( fgets ( line, sizeof line, file ) != NULL ) 
+       {
+          res = axutil_strstr(line, ":");
+          ch = res[0];
+          res[0] = '\0';
+          un = (axis2_char_t *) axutil_strdup(env, line);
+          res[0] = ch;
+          if(0 == axutil_strcmp(un, username)){
+             pw = (axis2_char_t *) axutil_strdup( env, &(res[1]));
+             password = axutil_strndup(env, pw, axutil_strlen(pw)-1); /*We need to remove the end of line character*/
+
+             break;
+          }
+       }
+       AXIS2_FREE(env->allocator, un);
+       AXIS2_FREE(env->allocator, pw);
+       fclose ( file );
+    }else
+    {
+       AXIS2_LOG_INFO(env->log, "Cannot load the password file %s in the callback module", filename);
+       perror ( filename ); 
+    }
+    return password;
+ };
+
+
+/**
+ * Following block distinguish the exposed part of the dll.
+ */
+AXIS2_EXPORT int
+axis2_get_instance(rampart_callback_t **inst,
+        const axutil_env_t *env)
+{
+    rampart_callback_t* rcb = NULL;
+
+    rcb = AXIS2_MALLOC(env->allocator,
+            sizeof(rampart_callback_t));
+
+    rcb->ops = AXIS2_MALLOC(
+                env->allocator, sizeof(rampart_callback_ops_t));
+
+    /*assign function pointers*/
+
+    rcb->ops->callback_password = get_ht_password;
+
+    *inst = rcb;
+
+    if (!(*inst))
+    {
+        return AXIS2_FAILURE;
+    }
+
+    return AXIS2_SUCCESS;
+}
+
+AXIS2_EXPORT int
+axis2_remove_instance(rampart_callback_t *inst,
+        const axutil_env_t *env)
+{
+    axis2_status_t status = AXIS2_FAILURE;
+    if (inst)
+    {
+        status = AXIS2_SVC_SKELETON_FREE(inst, env);
+    }
+    return status;
+}
+

Added: webservices/rampart/tags/c/0.90/samples/callback/pwcb.c
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/callback/pwcb.c?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/callback/pwcb.c (added)
+++ webservices/rampart/tags/c/0.90/samples/callback/pwcb.c Thu Sep  6 03:48:44 2007
@@ -0,0 +1,118 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <stdio.h>
+#include <axis2_defines.h>
+#include <axutil_error.h>
+#include <axutil_env.h>
+#include <axutil_utils.h>
+#include <rampart_callback.h>
+#include <axutil_string.h>
+#include <axis2_svc_skeleton.h>
+#include <axutil_string.h>
+
+
+axis2_char_t* AXIS2_CALL
+get_sample_password(rampart_callback_t *rcb,
+        const axutil_env_t *env, 
+        const axis2_char_t *username,
+        void *param)
+{
+    /*First set pf password are for sample usernames*/
+    axis2_char_t * pw = NULL;
+    if (0 == axutil_strcmp(username, "Raigama"))
+    {
+        pw = "RaigamaPW" ;
+    }
+    else if (0 == axutil_strcmp(username, "Gampola"))
+    {
+        pw = "GampolaPW";
+    }
+    else if (0 == axutil_strcmp(username, "alice"))
+    {
+        pw = "password";
+    }
+    else if (0 == axutil_strcmp(username, "bob"))
+    {
+        pw = "bobPW";
+    }
+    /*These are for sample keystores*/
+    else if (0 == axutil_strcmp(username, "a"))
+    {
+        pw = "a12345";
+    }
+    else if (0 == axutil_strcmp(username, "b"))
+    {
+        pw = "b12345";
+    }
+    else if (0 == axutil_strcmp(username, "x"))
+    {
+        pw = "x12345";
+    }
+    else if (0 == axutil_strcmp(username, "y"))
+    {
+        pw = "y12345";
+    }
+    else
+    {
+        /*Append 12345 for any name not specified above*/
+        /*sprintf(pw, "%s%s",  username, "12345");*/
+    }
+    return pw;
+};
+
+/**
+ * Following block distinguish the exposed part of the dll.
+ */
+AXIS2_EXPORT int
+axis2_get_instance(rampart_callback_t **inst,
+        const axutil_env_t *env)
+{
+    rampart_callback_t* rcb = NULL;
+
+    rcb = AXIS2_MALLOC(env->allocator,
+            sizeof(rampart_callback_t));
+
+    rcb->ops = AXIS2_MALLOC(
+                env->allocator, sizeof(rampart_callback_ops_t));
+
+    /*assign function pointers*/
+
+    rcb->ops->callback_password = get_sample_password;
+
+    *inst = rcb;
+
+    if (!(*inst))
+    {
+        return AXIS2_FAILURE;
+    }
+
+    return AXIS2_SUCCESS;
+}
+
+AXIS2_EXPORT int
+axis2_remove_instance(rampart_callback_t *inst,
+        const axutil_env_t *env)
+{
+    axis2_status_t status = AXIS2_FAILURE;
+    if (inst)
+    {
+        status = AXIS2_SVC_SKELETON_FREE(inst, env);
+    }
+    return status;
+}
+

Added: webservices/rampart/tags/c/0.90/samples/client/Makefile.am
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/client/Makefile.am?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/client/Makefile.am (added)
+++ webservices/rampart/tags/c/0.90/samples/client/Makefile.am Thu Sep  6 03:48:44 2007
@@ -0,0 +1,3 @@
+TESTS =
+SUBDIRS = sec_echo
+

Added: webservices/rampart/tags/c/0.90/samples/client/sec_echo/Makefile.am
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/client/sec_echo/Makefile.am?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/client/sec_echo/Makefile.am (added)
+++ webservices/rampart/tags/c/0.90/samples/client/sec_echo/Makefile.am Thu Sep  6 03:48:44 2007
@@ -0,0 +1,27 @@
+SUBDIRS = data 
+prgbindir=$(prefix)/bin/samples/rampart/client/sec_echo
+prgbin_PROGRAMS = echo 
+datadir=$(prefix)/bin/samples/rampart/client/sec_echo
+data_DATA= README.txt update_n_run.sh deploy_client_repo.sh
+#samplesdir=$(prefix)/samples/client/echo
+#samples_DATA=echo.c README.txt Makefile.am Makefile.in
+echo_SOURCES = echo.c
+
+echo_LDADD   = $(LDFLAGS) \
+                    -L$(AXIS2C_HOME)/lib \
+					-laxutil \
+                    -laxis2_axiom \
+                    -laxis2_engine \
+                    -laxis2_parser \
+                    -lpthread \
+                    -laxis2_http_sender \
+                    -laxis2_http_receiver \
+                    $(GUTHTHILA_LIBS) \
+                    $(LIBXML2_LIBS)
+
+INCLUDES = -I$(AXIS2C_HOME)/include/axis2-1.0 \
+            -I ../../../include \
+			@UTILINC@ \
+			@AXIOMINC@
+
+EXTRA_DIST = README.txt

Added: webservices/rampart/tags/c/0.90/samples/client/sec_echo/README.txt
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/client/sec_echo/README.txt?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/client/sec_echo/README.txt (added)
+++ webservices/rampart/tags/c/0.90/samples/client/sec_echo/README.txt Thu Sep  6 03:48:44 2007
@@ -0,0 +1,42 @@
+This sample works with sec_echo service.
+
+1. HOW TO CONFIGURE SERVER?
+-----------------------
+Go to rampart/samples/server/sec_echo and 
+Run  %make install
+This will deploy a sec_echo service and copy security enabled services.xml
+file.
+
+2. HOW TO START SERVER
+---------------------
+Start server in port 8080 
+     ./axis2_http_server -p8080
+
+3. HOW TO CONFIGURE TCP MONITOR (To view messages)
+------------------------------
+    Listen port: 9090 [specified as in the client argument]
+    Target port: 8080 [server port]
+
+NOTE: This step is OPTIONAL and can be avoided by starting the server without -p8080
+option.
+
+HOW TO RUN CLIENT?
+-----------------
+Using scripts
+-------------------------
+1. Run %deploy_client_repo.sh/bat 
+2. Run %update_n_run.sh/bat
+
+Using the actual binary
+--------------------------------------
+Run %echo <address> <client_repository>
+
+
+If everything is configured properly You should be able to see the security token(s) is/are  attached to the header of
+    the SOAP message in the TCP Monitor.
+
+NOTE:
+You need to change the passwordCallbackClass/authnModule and the en/decryptionPropFile
+in rampart/samples/client/enc_echo/data/client.axis2.xml and
+rampart/samples/server/sec_echo/services.xml to suit your environment.
+

Added: webservices/rampart/tags/c/0.90/samples/client/sec_echo/data/Makefile.am
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/client/sec_echo/data/Makefile.am?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/client/sec_echo/data/Makefile.am (added)
+++ webservices/rampart/tags/c/0.90/samples/client/sec_echo/data/Makefile.am Thu Sep  6 03:48:44 2007
@@ -0,0 +1,2 @@
+datadir=$(prefix)/bin/samples/rampart/client/sec_echo/data
+data_DATA= client.axis2.xml

Added: webservices/rampart/tags/c/0.90/samples/client/sec_echo/data/client.axis2.xml
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/client/sec_echo/data/client.axis2.xml?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/client/sec_echo/data/client.axis2.xml (added)
+++ webservices/rampart/tags/c/0.90/samples/client/sec_echo/data/client.axis2.xml Thu Sep  6 03:48:44 2007
@@ -0,0 +1,133 @@
+<axisconfig name="Axis2/C">
+    <!-- ================================================= -->
+    <!-- Parameters -->
+    <!-- ================================================= -->
+    <parameter name="hotdeployment" locked="false">false</parameter>
+    <parameter name="hotupdate" locked="false">false</parameter>
+    <!--parameter name="enableMTOM" locked="false">true</parameter-->
+    <!-- Uncomment this to enable REST support -->
+    <parameter name="enableREST" locked="false">true</parameter>
+
+
+    <parameter name="userName" locked="false">admin</parameter>
+    <parameter name="password" locked="false">axis2</parameter>
+
+    <parameter name="seralizeLocation" locked="false">.</parameter>
+
+
+    <!--Rampart configurations START -->
+    <parameter name="OutflowSecurityPolicy">AXIS2C_HOME/client_repo/outgoing-secpolicy.xml</parameter>
+    <parameter name="InflowSecurityPolicy">AXIS2C_HOME/client_repo/incoming-secpolicy.xml</parameter>
+
+    <!--Rampart configurations END -->
+
+
+    <!--if you want to extract the service archive file and work with that please uncomment this-->
+    <!--else , it wont extract archive file or does not take into consideration if someone drop-->
+    <!--exploded directory into /service directory-->
+    <!--<parameter name="extractServiceArchive" locked="false">true</parameter>-->
+
+
+    <!-- ================================================= -->
+    <!-- Message Receivers -->
+    <!-- ================================================= -->
+    <!-- This is the Deafult Message Receiver for the Request Response style Operations -->
+    <!--messageReceiver mep="INOUT" class="axis2_receivers"/-->
+
+    <!-- ================================================= -->
+    <!-- Transport Ins -->
+    <!-- ================================================= -->
+    <transportReceiver name="http" class="axis2_http_receiver">
+        <parameter name="port" locked="false">6060</parameter>
+    </transportReceiver>
+
+
+
+    <!-- Uncomment this one with the appropriate papameters to enable the SMTP transport Receiver
+    <transportReceiver name="mail" class="org.apache.axis2.transport.mail.SimpleMailListener">
+          <parameter name="transport.mail.pop3.host" locked="false">127.0.0.1</parameter>
+          <parameter name="transport.mail.pop3.user" locked="false">axis2</parameter>
+          <parameter name="transport.mail.pop3.password" locked="false">axis2</parameter>
+          <parameter name="transport.mail.pop3.port" locked="false">110</parameter>
+          <parameter name="transport.mail.replyToAddress" locked="false">axis2@127.0.0.1</parameter>
+      </transportReceiver> -->
+    
+    <!--
+    <transportReceiver name="tcp" class="org.apache.axis2.transport.tcp.TCPServer">
+        <parameter name="port" locked="false">6060</parameter>
+    </transportReceiver>
+    -->
+    <!-- ================================================= -->
+    <!-- Transport Outs -->
+    <!-- ================================================= -->
+
+    <!--
+    <transportSender name="tcp" class="org.apache.axis2.transport.tcp.TCPTransportSender"/>
+    <transportSender name="local" class="org.apache.axis2.transport.local.LocalTransportSender"/> 
+    -->
+    <transportSender name="http" class="axis2_http_sender">
+        <parameter name="PROTOCOL" locked="false">HTTP/1.1</parameter>
+        <!--parameter name="Transfer-Encoding">chunked</parameter-->
+        <!--parameter name="PROXY" proxy_host="127.0.0.1" proxy_port="8080" locked="true"/-->
+    </transportSender>
+    <!--
+    <transportSender name="https" class="axis2_http_sender">
+        <parameter name="PROTOCOL" locked="false">HTTP/1.1</parameter>
+    </transportSender>
+    -->
+    <!-- Uncomment this one with the appropriate papameters to enable the SMTP transport Receiver
+   <transportSender name="mailto" class="org.apache.axis2.transport.mail.MailTransportSender">
+       <parameter name="transport.mail.smtp.host" locked="false">127.0.0.1</parameter>
+       <parameter name="transport.mail.smtp.user" locked="false">axis2</parameter>
+       <parameter name="transport.mail.smtp.password" locked="false">axis2</parameter>
+       <parameter name="transport.mail.smtp.port" locked="false">25</parameter>
+   </transportSender>
+   -->
+
+    <!-- ================================================= -->
+    <!-- Global Modules  -->
+    <!-- ================================================= -->
+    <!-- Comment this to disable Addressing -->
+    <module ref="addressing"/>
+
+    <!-- Comment this to disable Security -->
+    <module ref="rampart"/>
+
+    <!--Configuring module , providing paramters for modules whether they refer or not-->
+    <!--<moduleConfig name="addressing">-->
+    <!--<parameter name="addressingPara" locked="false">N/A</parameter>-->
+    <!--</moduleConfig>-->
+
+    <!-- ================================================= -->
+    <!-- Phases  -->
+    <!-- ================================================= -->
+    <phaseOrder type="inflow">
+        <!-- System pre defined phases       -->
+        <phase name="Transport"/>
+        <phase name="PreDispatch"/>
+        <phase name="Dispatch"/>
+        <phase name="PostDispatch"/>
+        <!-- System pre defined phases       -->
+        <!-- After PostDispatch phase, module or service author can add any phase as required  -->
+        <!--phase name="userphase1"/-->
+    </phaseOrder>
+    <phaseOrder type="outflow">
+        <!-- User defined phases could be added here -->
+	    <!--phase name="RMPhase"/-->
+        <!--phase name="userphase1"/-->
+        <!--system predefined phase-->
+        <phase name="MessageOut"/>
+    </phaseOrder>
+    <phaseOrder type="INfaultflow">
+        <!-- User defined phases could be added here -->
+        <!--phase name="userphase1"/-->
+	    <!--phase name="RMPhase"/-->
+    </phaseOrder>
+    <phaseOrder type="Outfaultflow">
+        <!-- User defined phases could be added here -->
+        <!--phase name="RMPhase"/-->
+        <!--phase name="userphase1"/-->
+        <phase name="MessageOut"/>
+    </phaseOrder>
+</axisconfig>
+

Added: webservices/rampart/tags/c/0.90/samples/client/sec_echo/deploy_client_repo.bat
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/client/sec_echo/deploy_client_repo.bat?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/client/sec_echo/deploy_client_repo.bat (added)
+++ webservices/rampart/tags/c/0.90/samples/client/sec_echo/deploy_client_repo.bat Thu Sep  6 03:48:44 2007
@@ -0,0 +1,25 @@
+echo off
+
+rem if your client repository is different, change the value.
+set CLIENT_REPO=%AXIS2C_HOME%\client_repo
+
+echo Start creating a client repository at %CLIENT_REPO%
+
+if exist  "%CLIENT_REPO%" (
+    echo %CLIENT_REPO% exists.
+) else (
+    echo Creating a new directory for client repo
+    mkdir "%CLIENT_REPO%"
+)
+
+
+@echo Copying axis2.xml to client_repo
+copy /Y ".\data\client.axis2.xml" "%CLIENT_REPO%\axis2.xml"
+
+@echo Copying libraries to client_repo
+xcopy /S/I/Q/Y "%AXIS2C_HOME%\lib" "%CLIENT_REPO%\lib"
+
+@echo Copying latest modules to client_repo
+xcopy /S/I/Q/Y "%AXIS2C_HOME%\modules" "%CLIENT_REPO%\modules"
+
+echo on

Added: webservices/rampart/tags/c/0.90/samples/client/sec_echo/deploy_client_repo.sh
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/client/sec_echo/deploy_client_repo.sh?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/client/sec_echo/deploy_client_repo.sh (added)
+++ webservices/rampart/tags/c/0.90/samples/client/sec_echo/deploy_client_repo.sh Thu Sep  6 03:48:44 2007
@@ -0,0 +1,31 @@
+#!/bin/bash
+
+CLIENT_REPO="$AXIS2C_HOME/client_repo"
+SERVICE_HOME="$AXIS2C_HOME/services/sec_echo"
+echo "Start creating a client repository at $CLIENT_REPO"
+
+if [ -d  $CLIENT_REPO ]; 
+then
+    echo "$CLIENT_REPO exists. "
+else
+    #Create client repo
+    echo "Creating a new directory for client repo"
+    mkdir $CLIENT_REPO
+fi
+
+#copy [client]axis2.xml to CLIENT_REPO
+echo "Copying axis2.xml to $CLIENT_REPO"
+cp data/client.axis2.xml $CLIENT_REPO/axis2.xml
+
+#copy libs to client_repo
+echo "Copying libraries to $CLIENT_REPO"
+cp -r $AXIS2C_HOME/lib $CLIENT_REPO/
+
+#INSTALL MODULES to make sure that both server and client have the same module.
+echo "Copying latest modules to $CLIENT_REPO"
+cp -r $AXIS2C_HOME/modules $CLIENT_REPO/
+
+sed -i 's,AXIS2C_HOME,'$AXIS2C_HOME',g' $CLIENT_REPO/axis2.xml
+sed -i 's,AXIS2C_HOME,'$AXIS2C_HOME',g' $SERVICE_HOME/services.xml
+
+echo "WARNING: Make sure that you have correct configurations in sec_echo/services.xml and $CLIENT_REPO/axis2.xml file."

Propchange: webservices/rampart/tags/c/0.90/samples/client/sec_echo/deploy_client_repo.sh
------------------------------------------------------------------------------
    svn:executable = *

Added: webservices/rampart/tags/c/0.90/samples/client/sec_echo/echo.c
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/client/sec_echo/echo.c?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/client/sec_echo/echo.c (added)
+++ webservices/rampart/tags/c/0.90/samples/client/sec_echo/echo.c Thu Sep  6 03:48:44 2007
@@ -0,0 +1,176 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <stdio.h>
+#include <axiom.h>
+#include <axis2_util.h>
+#include <axiom_soap.h>
+#include <axis2_client.h>
+#include <rampart_constants.h>
+
+
+axiom_node_t *
+build_om_payload_for_echo_svc(const axutil_env_t *env);
+
+
+int main(int argc, char** argv)
+{
+    const axutil_env_t *env = NULL;
+    const axis2_char_t *address = NULL;
+    axis2_endpoint_ref_t* endpoint_ref = NULL;
+    axis2_options_t *options = NULL;
+    const axis2_char_t *client_home = NULL;
+    axis2_svc_client_t* svc_client = NULL;
+    axiom_node_t *payload = NULL;
+    axiom_node_t *ret_node = NULL;
+    /* Set up the environment */
+    env = axutil_env_create_all("echo.log", AXIS2_LOG_LEVEL_TRACE);
+
+    /* Set end point reference of echo service */
+    address = "http://localhost:9090/axis2/services/echo";
+    if (argc > 2)
+    {
+        address = argv[1];
+        client_home = argv[2];
+        printf("Using endpoint : %s\n", address);
+        printf("Using client_home : %s\n", client_home);
+    }
+
+    if (axutil_strcmp(address, "-h") == 0)
+    {
+        printf("Usage : %s [endpoint_url] [client_home]\n", argv[0]);
+        printf("use -h for help\n");
+        return 0;
+    }
+
+
+    /* Create EPR with given address */
+    endpoint_ref = axis2_endpoint_ref_create(env, address);
+
+    /* Setup options */
+    options = axis2_options_create(env);
+    axis2_options_set_to(options, env, endpoint_ref);
+    axis2_options_set_action(options, env,
+            "http://ws.apache.org/axis2/c/samples/echoString");
+
+
+
+    /*
+     * Set security params. If you need to enable dynamic settings uncomment
+     * following code section.
+     */
+
+
+    if (!client_home)
+    {
+        client_home = AXIS2_GETENV("AXIS2C_HOME");
+        printf("\nNo client_home specified. Using default %s", client_home);
+    }
+
+
+    /* Set up deploy folder. It is from the deploy folder, the configuration is picked up
+     * using the axis2.xml file.
+     * In this sample client_home points to the Axis2/C default deploy folder. The client_home can 
+     * be different from this folder on your system. For example, you may have a different folder 
+     * (say, my_client_folder) with its own axis2.xml file. my_client_folder/modules will have the 
+     * modules that the client uses
+     */
+    /*    if (!client_home)
+            client_home = "../../deploy";
+    */
+
+    /* Create service client */
+    printf("client_home= %s", client_home);
+    svc_client = axis2_svc_client_create(env, client_home);
+    if (!svc_client)
+    {
+        printf("Error creating service client\n");
+        /*AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "Stub invoke FAILED: Error code:"
+                " %d :: %s", env->error->error_number,
+                axutil_error_get_message(env->error));*/
+        return -1;
+    }
+
+    /* Set service client options */
+    axis2_svc_client_set_options(svc_client, env, options);
+
+
+    /* Build the SOAP request message payload using OM API.*/
+    payload = build_om_payload_for_echo_svc(env);
+    /*axis2_svc_client_engage_module(svc_client, env, "rampart");*/
+    /* Send request */
+    ret_node = axis2_svc_client_send_receive(svc_client, env, payload);
+
+    if (ret_node){
+        axis2_char_t *om_str = NULL;
+        om_str = axiom_node_to_string(ret_node, env);
+        if (om_str)
+            printf("\nReceived OM : %s\n", om_str);
+        printf("\necho client invoke SUCCESSFUL!\n");
+    }else{
+        /*AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "Stub invoke FAILED: Error code:"
+                " %d :: %s", env->error->error_number,
+                axutil_error_get_message(env->error));*/
+        printf("echo client invoke FAILED!\n");
+    }
+
+    if (svc_client)
+    {
+        axis2_svc_client_free(svc_client, env);
+        svc_client = NULL;
+    }
+    /*    if (endpoint_ref)
+        {
+            axis2_endpoint_ref_free(endpoint_ref, env);
+            endpoint_ref = NULL;
+        }
+    */
+    if (env)
+    {
+        axutil_env_free((axutil_env_t *) env);
+        env = NULL;
+    }
+    
+    return 0;
+}
+
+/* build SOAP request message content using OM */
+axiom_node_t *
+build_om_payload_for_echo_svc(const axutil_env_t *env)
+{
+    axiom_node_t *echo_om_node = NULL;
+    axiom_element_t* echo_om_ele = NULL;
+    axiom_node_t* text_om_node = NULL;
+    axiom_element_t * text_om_ele = NULL;
+    axiom_namespace_t *ns1 = NULL;
+    axis2_char_t *om_str = NULL;
+
+    ns1 = axiom_namespace_create(env, "http://ws.apache.org/axis2/c/samples", "ns1");
+    echo_om_ele = axiom_element_create(env, NULL, "echoString", ns1, &echo_om_node);
+    
+    
+    text_om_ele = axiom_element_create(env, echo_om_node, "text", NULL, &text_om_node);
+    axiom_element_set_text(text_om_ele, env, "echo5\n", text_om_node);
+
+    om_str = axiom_node_to_string(echo_om_node, env);
+    if (om_str){
+        printf("\nSending OM : %s\n", om_str);
+        AXIS2_FREE(env->allocator, om_str);
+        om_str =  NULL;
+    }
+    return echo_om_node;
+}

Added: webservices/rampart/tags/c/0.90/samples/client/sec_echo/update_n_run.bat
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/client/sec_echo/update_n_run.bat?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/client/sec_echo/update_n_run.bat (added)
+++ webservices/rampart/tags/c/0.90/samples/client/sec_echo/update_n_run.bat Thu Sep  6 03:48:44 2007
@@ -0,0 +1,12 @@
+@echo off
+rem if your client repository is different, change the value.
+set CLIENT_REPO=%AXIS2C_HOME%\clientrepo
+
+rem INSTALL MODULE to make sure that both server and client have the same module.
+echo "Copying latest module to client_repo"
+xcopy /E /Y /I "%AXIS2C_HOME%\modules\rampart" "%CLIENT_REPO%\modules"
+
+echo RUN echo.exe http://localhost:9090/axis2/services/echo %CLIENT_REPO%
+"%AXIS2C_HOME%\bin\samples\rampart\client\enc_echo\enc_echo.exe" http://localhost:9090/axis2/services/echo "%CLIENT_REPO%"
+
+@echo on

Added: webservices/rampart/tags/c/0.90/samples/client/sec_echo/update_n_run.sh
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/client/sec_echo/update_n_run.sh?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/client/sec_echo/update_n_run.sh (added)
+++ webservices/rampart/tags/c/0.90/samples/client/sec_echo/update_n_run.sh Thu Sep  6 03:48:44 2007
@@ -0,0 +1,10 @@
+#!/bin/bash
+#If your client repository is different, change the value.
+CLIENT_REPO="$AXIS2C_HOME/client_repo"
+
+#INSTALL MODULE to make sure that both server and client have the same module.
+echo "Copying latest module to client_repo"
+cp -r $AXIS2C_HOME/modules/rampart $CLIENT_REPO/modules
+
+#RUN
+./echo http://localhost:9090/axis2/services/sec_echo $CLIENT_REPO

Propchange: webservices/rampart/tags/c/0.90/samples/client/sec_echo/update_n_run.sh
------------------------------------------------------------------------------
    svn:executable = *

Added: webservices/rampart/tags/c/0.90/samples/configure.ac
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/configure.ac?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/configure.ac (added)
+++ webservices/rampart/tags/c/0.90/samples/configure.ac Thu Sep  6 03:48:44 2007
@@ -0,0 +1,99 @@
+dnl run autogen.sh to generate the configure script.
+
+AC_PREREQ(2.59)
+
+AC_INIT(rampart-samples-src, 0.90)
+AC_CANONICAL_SYSTEM
+AM_CONFIG_HEADER(config.h)
+AM_INIT_AUTOMAKE([tar-ustar])
+AC_PREFIX_DEFAULT(/usr/local/rampart/samples)
+
+dnl Checks for programs.
+AC_PROG_CC
+AC_PROG_CXX
+AC_PROG_CPP
+AM_PROG_LIBTOOL
+AC_PROG_INSTALL
+AC_PROG_LN_S
+AC_PROG_MAKE_SET
+
+dnl check for flavours of varargs macros (test from GLib)
+AC_MSG_CHECKING(for ISO C99 varargs macros in C)
+AC_TRY_COMPILE([],[
+int a(int p1, int p2, int p3);
+#define call_a(...) a(1,__VA_ARGS__)
+call_a(2,3);
+],axis2c_have_iso_c_varargs=yes,axis2c_have_iso_c_varargs=no)
+AC_MSG_RESULT($axis2c_have_iso_c_varargs)
+
+AC_MSG_CHECKING(for GNUC varargs macros)
+AC_TRY_COMPILE([],[
+int a(int p1, int p2, int p3);
+#define call_a(params...) a(1,params)
+call_a(2,3);
+],axis2c_have_gnuc_varargs=yes,axis2c_have_gnuc_varargs=no)
+AC_MSG_RESULT($axis2c_have_gnuc_varargs)
+
+dnl Output varargs tests
+if test x$axis2c_have_iso_c_varargs = xyes; then
+    AC_DEFINE(HAVE_ISO_VARARGS,1,[Have ISO C99 varargs macros])
+fi
+if test x$axis2c_have_gnuc_varargs = xyes; then
+    AC_DEFINE(HAVE_GNUC_VARARGS,1,[Have GNU-style varargs macros])
+fi
+
+dnl Checks for libraries.
+AC_CHECK_LIB(dl, dlopen)
+
+CFLAGS="$CFLAGS -D_LARGEFILE64_SOURCE"
+if test "$GCC" = "yes"; then
+    CFLAGS="$CFLAGS -ansi -Wall -Werror -Wno-implicit-function-declaration"
+fi
+
+LDFLAGS="$LDFLAGS -lpthread"
+
+dnl Checks for header files.
+AC_HEADER_STDC
+AC_CHECK_HEADERS([stdio.h stdlib.h string.h])
+
+dnl Checks for typedefs, structures, and compiler characteristics.
+AC_C_CONST
+
+dnl Checks for library functions.
+AC_FUNC_MALLOC
+AC_FUNC_REALLOC
+#AC_CHECK_FUNCS([memmove])
+
+
+AXIOMINC=$axiominc
+UTILINC=$axis2_utilinc
+XMLSCHEMAINC=$axis2_xml_schemainc
+
+AC_SUBST(AXIOMINC)
+AC_SUBST(UTILINC)
+AC_SUBST(XMLSCHEMAINC)
+AC_SUBST(TESTDIR)
+AC_SUBST(PARSER_DIR)
+
+AC_CONFIG_FILES([Makefile \
+        data/Makefile \
+        callback/Makefile \
+        callback/htpasswd_callback/Makefile \
+        authn_provider/Makefile \
+        credential_provider/Makefile \
+        server/Makefile \
+        server/sec_echo/Makefile \
+        client/Makefile
+        client/sec_echo/Makefile \
+        client/sec_echo/data/Makefile \
+        omxmlsec/Makefile \
+        omxmlsec/xmlsig/Makefile \
+        omxmlsec/xmlenc/Makefile \
+        keys/Makefile \
+        keys/ahome/Makefile \
+        keys/bhome/Makefile \
+        keys/xhome/Makefile \
+        keys/yhome/Makefile 
+    ])
+    
+AC_OUTPUT

Added: webservices/rampart/tags/c/0.90/samples/credential_provider/Makefile.am
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/credential_provider/Makefile.am?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/credential_provider/Makefile.am (added)
+++ webservices/rampart/tags/c/0.90/samples/credential_provider/Makefile.am Thu Sep  6 03:48:44 2007
@@ -0,0 +1,7 @@
+prglibdir=$(prefix)/bin/samples/rampart/credential_provider
+prglib_LTLIBRARIES = libcredential.la
+libcredential_la_SOURCES = cred_provider.c
+libcredential_la_LIBADD  = ../../src/util/librampart_util.la \
+					  ../../src/omxmlsec/openssl/libomopenssl.la
+INCLUDES = -I ../../include\
+			-I$(AXIS2C_HOME)/include/axis2-1.0

Added: webservices/rampart/tags/c/0.90/samples/credential_provider/cred_provider.c
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/credential_provider/cred_provider.c?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/credential_provider/cred_provider.c (added)
+++ webservices/rampart/tags/c/0.90/samples/credential_provider/cred_provider.c Thu Sep  6 03:48:44 2007
@@ -0,0 +1,85 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <stdio.h>
+#include <axis2_defines.h>
+#include <axutil_error.h>
+#include <axutil_env.h>
+#include <axutil_utils.h>
+#include <rampart_credentials.h>
+#include <rampart_crypto_util.h> 
+#include <axutil_string.h>
+#include <axis2_svc_skeleton.h>
+#include <axutil_string.h>
+
+
+rampart_credentials_status_t AXIS2_CALL
+rampart_sample_credentials_username_get(
+                rampart_credentials_t *credentials,
+                const axutil_env_t* env,
+                axis2_msg_ctx_t *msg_ctx,
+                axis2_char_t **username,
+                axis2_char_t **password
+            )
+{
+    *username = "Gampola";
+    *password = "GampolaPW";
+
+    return RAMPART_CREDENTIALS_PW_FOUND;
+}
+
+/**
+ * Following block distinguishes the exposed part of the dll.
+ */
+AXIS2_EXPORT int
+axis2_get_instance(rampart_credentials_t **inst,
+        const axutil_env_t *env)
+{
+    rampart_credentials_t* cred_p = NULL;
+
+    cred_p = AXIS2_MALLOC(env->allocator,
+            sizeof(rampart_credentials_t));
+
+    cred_p->ops = AXIS2_MALLOC(
+                env->allocator, sizeof(rampart_credentials_t));
+
+    /*assign function pointers*/
+
+    cred_p->ops->rampart_credentials_username_get = rampart_sample_credentials_username_get;
+   
+    *inst = cred_p;
+
+    if (!(*inst))
+    {
+        return AXIS2_FAILURE;
+    }
+
+    return AXIS2_SUCCESS;
+}
+
+AXIS2_EXPORT int
+axis2_remove_instance(rampart_credentials_t *inst,
+        const axutil_env_t *env)
+{
+    axis2_status_t status = AXIS2_FAILURE;
+    if (inst)
+    {
+        status = AXIS2_SVC_SKELETON_FREE(inst, env);
+    }
+    return status;
+}
+

Added: webservices/rampart/tags/c/0.90/samples/data/Makefile.am
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/data/Makefile.am?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/data/Makefile.am (added)
+++ webservices/rampart/tags/c/0.90/samples/data/Makefile.am Thu Sep  6 03:48:44 2007
@@ -0,0 +1,3 @@
+resdir=$(prefix)/bin/samples/rampart/data
+res_DATA= passwords.txt
+

Added: webservices/rampart/tags/c/0.90/samples/data/passwords.txt
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/data/passwords.txt?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/data/passwords.txt (added)
+++ webservices/rampart/tags/c/0.90/samples/data/passwords.txt Thu Sep  6 03:48:44 2007
@@ -0,0 +1,8 @@
+bob:bobPW
+Raigama:RaigamaPW
+Gampola:GampolaPW
+alice:password
+a:a12345
+b:b12345
+c:c12345
+d:d12345

Added: webservices/rampart/tags/c/0.90/samples/keys/Makefile.am
URL: http://svn.apache.org/viewvc/webservices/rampart/tags/c/0.90/samples/keys/Makefile.am?rev=573215&view=auto
==============================================================================
--- webservices/rampart/tags/c/0.90/samples/keys/Makefile.am (added)
+++ webservices/rampart/tags/c/0.90/samples/keys/Makefile.am Thu Sep  6 03:48:44 2007
@@ -0,0 +1 @@
+SUBDIRS=ahome bhome xhome yhome