rampart_callback.h

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 
00018 #ifndef RAMPART_CALLBACK_H
00019 #define RAMPART_CALLBACK_H
00020 
00021 
00022 #ifdef __cplusplus
00023 extern "C"
00024 {
00025 #endif
00026 
00037     typedef struct rampart_callback_ops rampart_callback_ops_t;
00038 
00043     typedef struct rampart_callback rampart_callback_t;
00044     
00049      struct rampart_callback_ops
00050     {            
00061             axis2_char_t *(AXIS2_CALL*
00062             callback_password)(rampart_callback_t *callback,
00063             const axis2_env_t *env, 
00064             const axis2_char_t *username,
00065             void *param);
00066            
00073             axis2_status_t (AXIS2_CALL*
00074             free)(rampart_callback_t *rcb,
00075                   const axis2_env_t* env);
00076 
00077     };
00078 
00079     struct rampart_callback
00080     {
00081         rampart_callback_ops_t *ops;
00082     };
00083 
00084 /*************************** Function macros **********************************/
00085 #define RAMPART_CALLBACK_FREE(callback, env) \
00086       ((callback)->ops->free (callback, env))
00087 
00088 #define RAMPART_CALLBACK_CALLBACK_PASSWORD(callback, env, username, param) \
00089       ((callback)->ops->callback_password(callback, env, username, param))
00090 
00092 #ifdef __cplusplus
00093 }
00094 #endif
00095 
00096 #endif                          /* RAMPART_CALLBACK_H */
00097 

Generated on Wed Dec 20 20:14:10 2006 for Axis2/C by  doxygen 1.5.1