rampart_callback.h

Go to the documentation of this file.
00001 /*
00002 * Licensed to the Apache Software Foundation (ASF) under one or more
00003 * contributor license agreements.  See the NOTICE file distributed with
00004 * this work for additional information regarding copyright ownership.
00005 * The ASF licenses this file to You under the Apache License, Version 2.0
00006 * (the "License"); you may not use this file except in compliance with
00007 * the License.  You may obtain a copy of the License at
00008 *
00009 *      http://www.apache.org/licenses/LICENSE-2.0
00010 *
00011 * Unless required by applicable law or agreed to in writing, software
00012 * distributed under the License is distributed on an "AS IS" BASIS,
00013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00014 * See the License for the specific language governing permissions and
00015 * limitations under the License.
00016 */
00017 #include <axutil_utils_defines.h>
00018 #include <axis2_defines.h>
00019 #include <axutil_param.h>
00020 #ifndef RAMPART_CALLBACK_H
00021 #define RAMPART_CALLBACK_H
00022 
00029 #ifdef __cplusplus
00030 extern "C"
00031 {
00032 #endif
00033 
00043     typedef struct rampart_callback_ops rampart_callback_ops_t;
00044 
00049     typedef struct rampart_callback rampart_callback_t;
00050 
00055     struct rampart_callback_ops
00056     {
00067         axis2_char_t *(AXIS2_CALL*
00068                        callback_password)(rampart_callback_t *callback,
00069                                           const axutil_env_t *env,
00070                                           const axis2_char_t *username,
00071                                           void *param);
00072 
00079         axis2_status_t (AXIS2_CALL*
00080                         free)(rampart_callback_t *rcb,
00081                               const axutil_env_t* env);
00082 
00083     };
00084 
00085     struct rampart_callback
00086     {
00087         rampart_callback_ops_t *ops;
00088         axutil_param_t *param;
00089     };
00090 
00091     /*************************** Function macros **********************************/
00092 #define RAMPART_CALLBACK_FREE(callback, env) \
00093       ((callback)->ops->free (callback, env))
00094 
00095 #define RAMPART_CALLBACK_CALLBACK_PASSWORD(callback, env, username, param) \
00096       ((callback)->ops->callback_password(callback, env, username, param))
00097 
00099 #ifdef __cplusplus
00100 }
00101 #endif
00102 
00103 #endif                          /* RAMPART_CALLBACK_H */
00104 

Generated on Thu Oct 4 17:37:07 2007 for Rampart/C by  doxygen 1.4.7