<!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_replay_detector.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_replay_detector.h</h1><a href="rampart__replay__detector_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">* Licensed to the Apache Software Foundation (ASF) under one or more</span>
<a name="l00003"></a>00003 <span class="comment">* contributor license agreements.  See the NOTICE file distributed with</span>
<a name="l00004"></a>00004 <span class="comment">* this work for additional information regarding copyright ownership.</span>
<a name="l00005"></a>00005 <span class="comment">* The ASF licenses this file to You under the Apache License, Version 2.0</span>
<a name="l00006"></a>00006 <span class="comment">* (the "License"); you may not use this file except in compliance with</span>
<a name="l00007"></a>00007 <span class="comment">* the License.  You may obtain a copy of the License at</span>
<a name="l00008"></a>00008 <span class="comment">*</span>
<a name="l00009"></a>00009 <span class="comment">*      http://www.apache.org/licenses/LICENSE-2.0</span>
<a name="l00010"></a>00010 <span class="comment">*</span>
<a name="l00011"></a>00011 <span class="comment">* Unless required by applicable law or agreed to in writing, software</span>
<a name="l00012"></a>00012 <span class="comment">* distributed under the License is distributed on an "AS IS" BASIS,</span>
<a name="l00013"></a>00013 <span class="comment">* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span>
<a name="l00014"></a>00014 <span class="comment">* See the License for the specific language governing permissions and</span>
<a name="l00015"></a>00015 <span class="comment">* limitations under the License.</span>
<a name="l00016"></a>00016 <span class="comment">*/</span>
<a name="l00017"></a>00017 
<a name="l00018"></a>00018 <span class="preprocessor">#ifndef RAMPART_REPLAY_DETECTOR_H</span>
<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define RAMPART_REPLAY_DETECTOR_H</span>
<a name="l00020"></a>00020 <span class="preprocessor"></span>
<a name="l00032"></a>00032 <span class="preprocessor">#include &lt;axis2_defines.h&gt;</span>
<a name="l00033"></a>00033 <span class="preprocessor">#include &lt;axutil_env.h&gt;</span>
<a name="l00034"></a>00034 <span class="preprocessor">#include &lt;axis2_msg_ctx.h&gt;</span>
<a name="l00035"></a>00035 <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="l00036"></a>00036 
<a name="l00037"></a>00037 <span class="preprocessor">#ifdef __cplusplus</span>
<a name="l00038"></a>00038 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span>
<a name="l00039"></a>00039 {
<a name="l00040"></a>00040 <span class="preprocessor">#endif</span>
<a name="l00041"></a>00041 <span class="preprocessor"></span>
<a name="l00042"></a>00042     <span class="keyword">typedef</span> <span class="keyword">struct </span>rampart_replay_detector_ops rampart_replay_detector_ops_t;
<a name="l00043"></a>00043     <span class="keyword">typedef</span> <span class="keyword">struct </span>rampart_replay_detector rampart_replay_detector_t;
<a name="l00044"></a>00044 
<a name="l00045"></a>00045     <span class="keyword">struct </span>rampart_replay_detector_ops
<a name="l00046"></a>00046     {
<a name="l00056"></a>00056         axis2_status_t (AXIS2_CALL*
<a name="l00057"></a>00057         is_replayed)(
<a name="l00058"></a>00058             rampart_replay_detector_t *rrd,
<a name="l00059"></a>00059             <span class="keyword">const</span> axutil_env_t* env,
<a name="l00060"></a>00060             axis2_msg_ctx_t *msg_ctx,
<a name="l00061"></a>00061             rampart_context_t *rampart_context);
<a name="l00062"></a>00062 
<a name="l00069"></a>00069         axis2_status_t (AXIS2_CALL*
<a name="l00070"></a>00070         free)(
<a name="l00071"></a>00071             rampart_replay_detector_t *rrd,
<a name="l00072"></a>00072             <span class="keyword">const</span> axutil_env_t* env);
<a name="l00073"></a>00073     };
<a name="l00074"></a>00074 
<a name="l00075"></a>00075     <span class="keyword">struct </span>rampart_replay_detector
<a name="l00076"></a>00076     {
<a name="l00077"></a>00077         rampart_replay_detector_ops_t *ops;
<a name="l00078"></a>00078                 axutil_param_t *param;
<a name="l00079"></a>00079     };
<a name="l00080"></a>00080 
<a name="l00081"></a>00081     
<a name="l00092"></a>00092     AXIS2_EXTERN axis2_status_t AXIS2_CALL
<a name="l00093"></a>00093     <a class="code" href="group__rampart__replay__detector.html#g4756e582a1bde89023b0e7ac63ee4d38">rampart_replay_detector_default</a>(
<a name="l00094"></a>00094         <span class="keyword">const</span> axutil_env_t *env,
<a name="l00095"></a>00095         axis2_msg_ctx_t* msg_ctx,
<a name="l00096"></a>00096         rampart_context_t *rampart_context,
<a name="l00097"></a>00097         <span class="keywordtype">void</span> *user_params);
<a name="l00098"></a>00098 
<a name="l00099"></a>00099     <span class="comment">/*************************** Function macros **********************************/</span>
<a name="l00100"></a>00100 <span class="preprocessor">#define RAMPART_REPLAY_DETECTOR_IS_REPLAYED(replay_detector, env, msg_ctx, rampart_context) \</span>
<a name="l00101"></a>00101 <span class="preprocessor">      ((replay_detector)-&gt;ops-&gt;is_replayed(replay_detector, env, msg_ctx, rampart_context))</span>
<a name="l00102"></a>00102 <span class="preprocessor"></span>
<a name="l00103"></a>00103 <span class="preprocessor">#define RAMPART_REPLAY_DETECTOR_FREE(replay_detector, env) \</span>
<a name="l00104"></a>00104 <span class="preprocessor">        ((replay_detector)-&gt;ops-&gt;free(replay_detector, env))</span>
<a name="l00105"></a>00105 <span class="preprocessor"></span>
<a name="l00107"></a>00107 <span class="preprocessor">#ifdef __cplusplus</span>
<a name="l00108"></a>00108 <span class="preprocessor"></span>}
<a name="l00109"></a>00109 <span class="preprocessor">#endif</span>
<a name="l00110"></a>00110 <span class="preprocessor"></span>
<a name="l00111"></a>00111 <span class="preprocessor">#endif </span><span class="comment">/* RAMPART_REPLAY_DETECTOR_H */</span>
<a name="l00112"></a>00112 
</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>
