00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033 #ifndef LDAP_EXP_FN_H
00034 #define LDAP_EXP_FN_H
00035
00036
00037 #include "../../str.h"
00038 #include "../../pvar.h"
00039 #include "../../parser/msg_parser.h"
00040 #include "../../re.h"
00041
00042 struct ldap_result_params
00043 {
00044 str ldap_attr_name;
00045 int dst_avp_val_type;
00046 pv_spec_t dst_avp_spec;
00047 };
00048
00049 struct ldap_result_check_params
00050 {
00051 str ldap_attr_name;
00052 pv_elem_p check_str_elem_p;
00053 };
00054
00055 int ldap_search_impl(
00056 struct sip_msg* _msg,
00057 pv_elem_t* _ldap_url);
00058
00059 int ldap_write_result(
00060 struct sip_msg* _msg,
00061 struct ldap_result_params* _lrp,
00062 struct subst_expr* _se);
00063
00064 int ldap_result_next(void);
00065
00066 int ldap_filter_url_encode(
00067 struct sip_msg* _msg,
00068 pv_elem_t* _filter_component,
00069 pv_spec_t* _dst_avp_spec);
00070
00071 int rfc2254_escape(
00072 struct sip_msg* _msg,
00073 char* _value,
00074 char* _avp_name);
00075
00076 int ldap_result_check(
00077 struct sip_msg* _msg,
00078 struct ldap_result_check_params* _lrp,
00079 struct subst_expr* _se);
00080
00081 #endif