h350_exp_fn.h

00001 /*
00002  * $Id: $
00003  *
00004  * Kamailio H.350 Module
00005  *
00006  * Copyright (C) 2007 University of North Carolina
00007  *
00008  * Original author: Christian Schlatter, cs@unc.edu
00009  *
00010  *
00011  * This file is part of Kamailio, a free SIP server.
00012  *
00013  * Kamailio is free software; you can redistribute it and/or modify
00014  * it under the terms of the GNU General Public License as published by
00015  * the Free Software Foundation; either version 2 of the License, or
00016  * (at your option) any later version
00017  *
00018  * Kamailio is distributed in the hope that it will be useful,
00019  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00020  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00021  * GNU General Public License for more details.
00022  *
00023  * You should have received a copy of the GNU General Public License
00024  * along with this program; if not, write to the Free Software
00025  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00026  *
00027  * History:
00028  * --------
00029  * 2007-03-12: Initial version
00030  */
00031 
00032 #ifndef H350_EXP_FN_H
00033 #define H350_EXP_FN_H
00034 
00035 #include "../../parser/msg_parser.h"
00036 #include "../../pvar.h"
00037 #include "../../parser/msg_parser.h"
00038 
00039 #define E_H350_SUCCESS 1
00040 #define E_H350_INTERNAL -1
00041 #define E_H350_NO_SUCCESS -2
00042 
00043 struct h350_auth_lookup_avp_params
00044 {
00045         pv_spec_t   username_avp_spec;
00046         pv_spec_t   password_avp_spec;
00047 };
00048 
00049 int h350_exp_fn_init(void);
00050 
00051 int h350_sipuri_lookup(struct sip_msg* _msg, pv_elem_t* _sip_uri);
00052 
00053 int h350_auth_lookup(
00054         struct sip_msg* _msg, 
00055         pv_elem_t* _digest_username, 
00056         struct h350_auth_lookup_avp_params* _avp_specs);
00057 
00058 int h350_call_preferences(struct sip_msg* _msg, pv_elem_t* _avp_name_prefix);
00059 
00060 int h350_service_level(struct sip_msg* _msg, pv_elem_t* _avp_name_prefix);
00061 
00062 #endif /* H350_EXP_FN_H */