00001 #ifndef ALIASDB_API_H
00002 #define ALIASDB_API_H
00003 #include "../../str.h"
00004
00005 typedef int (*alias_db_lookup_t)(struct sip_msg*, str table);
00006
00007 typedef struct alias_db_binds {
00008 alias_db_lookup_t alias_db_lookup;
00009 } alias_db_api_t;
00010
00011 typedef int (*bind_alias_db_f)(alias_db_api_t*);
00012
00013 int bind_alias_db(struct alias_db_binds*);
00014
00015 inline static int alias_db_load_api(alias_db_api_t *pxb)
00016 {
00017 bind_alias_db_f bind_alias_db_exports;
00018 if (!(bind_alias_db_exports = (bind_alias_db_f)find_export("bind_alias_db", 1, 0)))
00019 {
00020 LM_ERR("Failed to import bind_alias_db\n");
00021 return -1;
00022 }
00023 return bind_alias_db_exports(pxb);
00024 }
00025
00026 #endif