<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Rampart/C: rampart_sec_header_processor.h Source File</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.5 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="dir_2ab6243317ac98a7842daf660931c511.html">include</a>
  </div>
</div>
</div>
<h1>rampart_sec_header_processor.h</h1><a href="rampart__sec__header__processor_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
<a name="l00002"></a>00002 <span class="comment"> *   Copyright 2003-2004 The Apache Software Foundation.</span>
<a name="l00003"></a>00003 <span class="comment"> *</span>
<a name="l00004"></a>00004 <span class="comment"> *   Licensed under the Apache License, Version 2.0 (the "License");</span>
<a name="l00005"></a>00005 <span class="comment"> *   you may not use this file except in compliance with the License.</span>
<a name="l00006"></a>00006 <span class="comment"> *   You may obtain a copy of the License at</span>
<a name="l00007"></a>00007 <span class="comment"> *</span>
<a name="l00008"></a>00008 <span class="comment"> *       http://www.apache.org/licenses/LICENSE-2.0</span>
<a name="l00009"></a>00009 <span class="comment"> *</span>
<a name="l00010"></a>00010 <span class="comment"> *   Unless required by applicable law or agreed to in writing, software</span>
<a name="l00011"></a>00011 <span class="comment"> *   distributed under the License is distributed on an "AS IS" BASIS,</span>
<a name="l00012"></a>00012 <span class="comment"> *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span>
<a name="l00013"></a>00013 <span class="comment"> *   See the License for the specific language governing permissions and</span>
<a name="l00014"></a>00014 <span class="comment"> *   limitations under the License.</span>
<a name="l00015"></a>00015 <span class="comment"> */</span>
<a name="l00016"></a>00016 
<a name="l00017"></a>00017 <span class="preprocessor">#include &lt;axutil_utils_defines.h&gt;</span>
<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;axis2_defines.h&gt;</span>
<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;axutil_env.h&gt;</span>
<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;axiom_soap.h&gt;</span>
<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;axis2_msg_ctx.h&gt;</span>
<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;<a class="code" href="oxs__asym__ctx_8h.html" title="Keeps information relavent for asymmetric encryption.">oxs_asym_ctx.h</a>&gt;</span>
<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;<a class="code" href="oxs__xml__encryption_8h.html" title="Does the XML encryption for OMXMLSecurity.">oxs_xml_encryption.h</a>&gt;</span>
<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;<a class="code" href="rampart__context_8h.html" title="The Rampart Context, in which configurations are stored.">rampart_context.h</a>&gt;</span>
<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;<a class="code" href="oxs__key__mgr_8h.html" title="the Key Manager responsible for loading keys for OMXMLSecurity">oxs_key_mgr.h</a>&gt;</span>
<a name="l00037"></a>00037 <span class="preprocessor">#ifndef RAMPART_SEC_HEADER_PROCESSOR_H</span>
<a name="l00038"></a>00038 <span class="preprocessor"></span><span class="preprocessor">#define RAMPART_SEC_HEADER_PROCESSOR_H</span>
<a name="l00039"></a>00039 <span class="preprocessor"></span>
<a name="l00040"></a>00040 <span class="preprocessor">#ifdef __cplusplus</span>
<a name="l00041"></a>00041 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span> {
<a name="l00042"></a>00042 <span class="preprocessor">#endif</span>
<a name="l00043"></a>00043 <span class="preprocessor"></span>
<a name="l00055"></a>00055     AXIS2_EXTERN axis2_status_t AXIS2_CALL
<a name="l00056"></a>00056     <a class="code" href="group__sec__header__processor.html#gaf77fd94fad547daa8857cd29ce9b0fa">rampart_shp_process_sec_header</a>(<span class="keyword">const</span> axutil_env_t *env,
<a name="l00057"></a>00057                                 axis2_msg_ctx_t *msg_ctx,
<a name="l00058"></a>00058                                 rampart_context_t *rampart_context,
<a name="l00059"></a>00059                                 axiom_soap_envelope_t *soap_envelope,
<a name="l00060"></a>00060                                 axiom_node_t *sec_node);
<a name="l00061"></a>00061 
<a name="l00062"></a>00062 
<a name="l00063"></a>00063     <span class="comment">/* @} */</span>
<a name="l00064"></a>00064 <span class="preprocessor">#ifdef __cplusplus</span>
<a name="l00065"></a>00065 <span class="preprocessor"></span>}
<a name="l00066"></a>00066 <span class="preprocessor">#endif</span>
<a name="l00067"></a>00067 <span class="preprocessor"></span>
<a name="l00068"></a>00068 <span class="preprocessor">#endif    </span><span class="comment">/* !RAMPART_SEC_HEADER_PROCESSOR_H */</span>
</pre></div></div>
<hr size="1"><address style="text-align: right;"><small>Generated on Wed May 13 10:52:53 2009 for Rampart/C by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address>
</body>
</html>
