Module: sip-router
Branch: master
Commit: 9dbb14fef6eb0dafff363eb3061e293de45bf7af
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=9dbb14f…
Author: Andrei Pelinescu-Onciul <andrei(a)iptel.org>
Committer: Andrei Pelinescu-Onciul <andrei(a)iptel.org>
Date: Mon Aug 30 23:02:48 2010 +0200
doc: rpc_list: improve DEFS parsing
When getting all the makefile variables from the Makefiles obey
also the conditionals (ifdef, ifndef) and make sure all the
makefiles rules are filtered out (to avoid miss-interpreting a
shell variable assignment in a rule as a makefile variable).
---
doc/rpc_list/Makefile | 23 +++++++++++++++++++----
1 files changed, 19 insertions(+), 4 deletions(-)
diff --git a/doc/rpc_list/Makefile b/doc/rpc_list/Makefile
index ac6e31a..bf9f5bf 100644
--- a/doc/rpc_list/Makefile
+++ b/doc/rpc_list/Makefile
@@ -137,13 +137,26 @@ get_make_idefs=$(subst ^LF^,$(LF),$(shell sed \
# get all the lines from the makefile containing variable definitions.
+# It will also return conditionals and try to filter out possible rules.
# WARNING: does not work with all sed implementation (tested with GNU sed).
# It uses a hack to restore the LFs (LFs are removed by $(shell)): LFs are
# replaced with '^LF^' and then ^LF^ is subst'ed back to a real LF.
-get_make_vars=$(subst ^LF^,$(LF),$(shell sed \
- -ne '/^[\t ]*[A-Za-z0-9_-]\+[\t ]*[+:]\?=.*[^\]$$/H'\
- -ne '/^[\t ]*[A-Za-z0-9_-]\+[\t ]*[+:]\?=.*\\$$/,/\(^$$\)\|\([^\]$$\)/H'\
- -ne '$${g;s/\n/^LF^/g;p}'\
+get_make_vars=$(subst ^LF^,$(LF),$(shell sed -n \
+ -e ': start' \
+ -e '/^\(ifeq\|ifneq\|else\|endif\)[\t ]*\($$\|.*[^\]$$\)/{H;d}' \
+ -e '/^\(ifeq\|ifneq\|else\|endif\)[\t ]\+.*[\]$$/,/[^\]$$/{H;d}' \
+ -e '/^[a-zA-Z._/$$][a-zA-Z0-9._()/$$ \t-]*:\([^=]\|$$\)/b eat_rule' \
+ -e '/^[\t ]*[A-Za-z._][A-Za-z0-9._-]*[\t ]*[+:]\?=.*[^\]$$/{H;d}' \
+ -e '/^[\t ]*[A-Za-z._][A-Za-z0-9._-]*[\t ]*[+:]\?=.*\\$$/,/\(^$$\)\|\([^\]$$\)/{H;d}' \
+ -e ': end' \
+ -e '$${g;s/\n/^LF^/g;p}'\
+ -e 'b' \
+ -e ': eat_rule' \
+ -e '$$b end' \
+ -e 'n' \
+ -e '/^[a-zA-Z._/$$][a-zA-Z0-9._()/$$ \t-]*:\([^=]\|$$\)/b eat_rule' \
+ -e '/^[\t]/b eat_rule' \
+ -e 'b start' \
< $(1)/Makefile ))
@@ -159,6 +172,8 @@ INCLUDES:=
# extract all the includes and defs from the module makefile and
# evaluate them
$$(eval $$(call get_make_vars,$$(dir $$(call get_prereq,$(1)))))
+# override COREPATH (we know better)
+COREPATH=../..
# save the result in a per group e_idefs_<grp_name> var
$$(eval e_idefs_$$(call get_grp,$(1)):=$$(DEFS) $$(INCLUDES))
Module: sip-router
Branch: master
Commit: b6a87729cb1c2c22095bdd11031d7a199c979b72
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=b6a8772…
Author: Andrei Pelinescu-Onciul <andrei(a)iptel.org>
Committer: Andrei Pelinescu-Onciul <andrei(a)iptel.org>
Date: Mon Aug 30 13:32:18 2010 +0200
doc: select_list: parse DEFS from the modules Makefiles
Get all the variable definitions from each module Makefile and
evaluate them to get proper DEFS and INCLUDES (using sed to
extract the variable definitions, conditionals and filter-out
rules from the Makefiles, some hack to preserve the LFs and
$(eval) to evaluate the extracted stuff in the current context).
The DEFS and INCLUDES will be passed to the documentation
generating script (dump_selects.pl) as extra arguments for gcc.
This way the proper defines and includes will be used for each
module.
Fixes select list generation failure for modules with non-standard
include dirs.
---
doc/select_list/Makefile | 85 +++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 80 insertions(+), 5 deletions(-)
diff --git a/doc/select_list/Makefile b/doc/select_list/Makefile
index e3f510e..7d43356 100644
--- a/doc/select_list/Makefile
+++ b/doc/select_list/Makefile
@@ -62,7 +62,23 @@ override force_grp=
endif
# command used for gcc (contains extra includes)
-gcc=gcc -I$(COREPATH)/lib -I/usr/include/libxml2
+gcc=gcc
+#-I$(COREPATH)/lib -I$(COREPATH) -I/usr/include/libxml2
+
+# defines used by gcc
+c_defs=-D__CPU_i386 -D__OS_linux -DSER_VER=2099099 -DPKG_MALLOC -DSHM_MEM \
+ -DSHM_MMAP -DDNS_IP_HACK -DUSE_IPV6 -DUSE_MCAST -DUSE_TCP \
+ -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLACKLIST -DUSE_NAPTR \
+ -DUSE_TLS -DTLS_HOOKS -DFAST_LOCK -DCC_GCC_LIKE_ASM \
+ -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD \
+ -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H \
+ -DHAVE_SCHED_SETSCHEDULER -DHAVE_EPOLL -DUSE_SCTP -DNAME='\"ser\"' \
+ -DVERSION='\"2.99.99-pre3\"' -DARCH='\"i386\"' -DOS_QUOTED='\"linux\"'
+
+
+# common makefile vars used in defs
+LOCALBASE=/usr/local
+SYSBASE=/usr
filter_files=$(subst .h:,.c:, $(filter-out $(addsuffix %,$(file_exclude)),\
$(filter-out $(addprefix %:,$(grp_exclude)),$(1))) )
@@ -95,23 +111,82 @@ get_grp=$(strip $(if $(grp_f_$(call get_bname,$(1))), \
# get target from file:grp (get_target(file:grp) => select_grp)
get_target=select_$(call get_grp,$(1))
+
+# $(LF) definition (do not remove)
+define LF
+
+
+endef
+
+# get all the lines containing DEFS or INCLUDES definitions from the Makefile.
+# WARNING: does not work with all sed implementation (tested with GNU sed).
+# It uses a hack to restore the LFs (LFs are removed by $(shell)): LFs are
+# replaced with '^LF^' and then ^LF^ is subst'ed back to a real LF.
+get_make_idefs=$(subst ^LF^,$(LF),$(shell sed \
+ -ne '/^[\t ]*\(DEFS\|INCLUDES\)[\t ]*[+:]\?=.*[^\]$$/H'\
+ -ne '/^[\t ]*\(DEFS\|INCLUDES\)[\t ]*[+:]\?=.*\\$$/,/\(^$$\)\|\([^\]$$\)/H'\
+ -ne '$${g;s/\n/^LF^/g;p}'\
+< $(1)/Makefile ))
+
+
+# get all the lines from the makefile containing variable definitions.
+# It will also return conditionals and try to filter out possible rules.
+# WARNING: does not work with all sed implementation (tested with GNU sed).
+# It uses a hack to restore the LFs (LFs are removed by $(shell)): LFs are
+# replaced with '^LF^' and then ^LF^ is subst'ed back to a real LF.
+get_make_vars=$(subst ^LF^,$(LF),$(shell sed -n \
+ -e ': start' \
+ -e '/^\(ifeq\|ifneq\|else\|endif\)[\t ]*\($$\|.*[^\]$$\)/{H;d}' \
+ -e '/^\(ifeq\|ifneq\|else\|endif\)[\t ]\+.*[\]$$/,/[^\]$$/{H;d}' \
+ -e '/^[a-zA-Z._/$$][a-zA-Z0-9._()/$$ \t-]*:\([^=]\|$$\)/b eat_rule' \
+ -e '/^[\t ]*[A-Za-z._][A-Za-z0-9._-]*[\t ]*[+:]\?=.*[^\]$$/{H;d}' \
+ -e '/^[\t ]*[A-Za-z._][A-Za-z0-9._-]*[\t ]*[+:]\?=.*\\$$/,/\(^$$\)\|\([^\]$$\)/{H;d}' \
+ -e ': end' \
+ -e '$${g;s/\n/^LF^/g;p}'\
+ -e 'b' \
+ -e ': eat_rule' \
+ -e '$$b end' \
+ -e 'n' \
+ -e '/^[a-zA-Z._/$$][a-zA-Z0-9._()/$$ \t-]*:\([^=]\|$$\)/b eat_rule' \
+ -e '/^[\t]/b eat_rule' \
+ -e 'b start' \
+< $(1)/Makefile ))
+
+
define mk_rules
$(call check_fname_grp, $(1))
#$$(info generating select_$$(call get_grp,$(1)).txt: $$(call get_prereq,$(1)))
+
+DEFS:=
+INCLUDES:=
+# extract all the includes and defs from the module makefile and
+# evaluate them
+$$(eval $$(call get_make_vars,$$(dir $$(call get_prereq,$(1)))))
+# override COREPATH (we know better)
+COREPATH=../..
+# save the result in a per group e_idefs_<grp_name> var
+$$(eval e_idefs_$$(call get_grp,$(1)):=$$(DEFS) $$(INCLUDES))
+
+# debugging:
+#$$(info eval: $$(call get_make_vars,$$(dir $$(call get_prereq,$(1)))))
+#$$(info e_idefs_$$(call get_grp,$(1))=$$(e_idefs_$$(call get_grp,$(1))))
+
$(txt_output_dir)/$$(call get_target,$(1)).txt: \
$$(call get_prereq,$(1)) Makefile $(CFG2TXT)
$(CFG2TXT) --file $$< --$(force_grp)grp=$$(call get_grp,$(1)) \
- --gcc="$(gcc)" --txt $(CFG2TXT_EXTRA_OPTS) > "$$@" || \
- (rm -f "$$@"; exit 1)
+ --gcc="$(gcc)" --txt $(CFG2TXT_EXTRA_OPTS) \
+ --defs="$(c_defs) $$(e_idefs_$$(call get_grp,$(1)))" \
+ > "$$@" || (rm -f "$$@"; exit 1)
$(docbook_output_dir)/$$(call get_target,$(1)).xml: \
$$(call get_prereq,$(1)) Makefile $(CFG2TXT)
$(CFG2DOCBOOK) --file $$< --$(force_grp)grp=$$(call get_grp,$(1)) \
- --gcc="$(gcc)" --docbook $(CFG2DOCBOOK_EXTRA_OPTS) > "$$@" || \
- (rm -f "$$@"; exit 1)
+ --gcc="$(gcc)" --docbook $(CFG2DOCBOOK_EXTRA_OPTS) \
+ --defs="$(c_defs) $$(e_idefs_$$(call get_grp,$(1)))" \
+ > "$$@" || (rm -f "$$@"; exit 1)
clean_$$(call get_target,$(1)).txt:
Module: sip-router
Branch: master
Commit: 5e67b01516fd1672e1ed5c25b270eccca4d885a1
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=5e67b01…
Author: Andrei Pelinescu-Onciul <andrei(a)iptel.org>
Committer: Andrei Pelinescu-Onciul <andrei(a)iptel.org>
Date: Mon Aug 30 13:46:33 2010 +0200
doc: rpc_list: parse DEFS from the modules Makefiles
Get all the variable definitions from each module Makefile and
evaluate them to get proper DEFS and INCLUDES (using sed to
extract the variable definitions from the Makefiles, some hack to
preserve the LFs and $(eval) to evaluate them in the current
context).
The DEFS and INCLUDES will be passed to the documentation
generating script (dump_rpcs.pl) as extra arguments for gcc. This
way the proper defines and includes will be used for each module.
Fixes rpc list generation failure for modules with kamailio module
interface or with non-standard include dirs.
---
doc/rpc_list/Makefile | 68 ++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 65 insertions(+), 3 deletions(-)
diff --git a/doc/rpc_list/Makefile b/doc/rpc_list/Makefile
index 80a9783..ac6e31a 100644
--- a/doc/rpc_list/Makefile
+++ b/doc/rpc_list/Makefile
@@ -69,7 +69,23 @@ override force_grp=
endif
# command used for gcc (contains extra includes)
-gcc=gcc -I$(COREPATH)/lib -I/usr/include/libxml2
+gcc=gcc
+#-I$(COREPATH)/lib -I$(COREPATH) -I/usr/include/libxml2
+
+# defines used by gcc
+c_defs=-D__CPU_i386 -D__OS_linux -DSER_VER=2099099 -DPKG_MALLOC -DSHM_MEM \
+ -DSHM_MMAP -DDNS_IP_HACK -DUSE_IPV6 -DUSE_MCAST -DUSE_TCP \
+ -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLACKLIST -DUSE_NAPTR \
+ -DUSE_TLS -DTLS_HOOKS -DFAST_LOCK -DCC_GCC_LIKE_ASM \
+ -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD \
+ -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H \
+ -DHAVE_SCHED_SETSCHEDULER -DHAVE_EPOLL -DUSE_SCTP -DNAME='\"ser\"' \
+ -DVERSION='\"2.99.99-pre3\"' -DARCH='\"i386\"' -DOS_QUOTED='\"linux\"'
+
+
+# common makefile vars used in defs
+LOCALBASE=/usr/local
+SYSBASE=/usr
filter_files=$(filter-out $(addsuffix %,$(file_exclude)),\
$(filter-out $(addprefix %:,$(grp_exclude)),$(1)))
@@ -102,21 +118,67 @@ get_grp=$(strip $(if $(grp_f_$(call get_bname,$(1))), \
# get target from file:grp (get_target(file:grp) => rpc_grp.txt)
get_target=rpc_$(call get_grp,$(1))
+
+# $(LF) definition (do not remove)
+define LF
+
+
+endef
+
+# get all the lines containing DEFS or INCLUDES definitions from the Makefile.
+# WARNING: does not work with all sed implementation (tested with GNU sed).
+# It uses a hack to restore the LFs (LFs are removed by $(shell)): LFs are
+# replaced with '^LF^' and then ^LF^ is subst'ed back to a real LF.
+get_make_idefs=$(subst ^LF^,$(LF),$(shell sed \
+ -ne '/^[\t ]*\(DEFS\|INCLUDES\)[\t ]*[+:]\?=.*[^\]$$/H'\
+ -ne '/^[\t ]*\(DEFS\|INCLUDES\)[\t ]*[+:]\?=.*\\$$/,/\(^$$\)\|\([^\]$$\)/H'\
+ -ne '$${g;s/\n/^LF^/g;p}'\
+< $(1)/Makefile ))
+
+
+# get all the lines from the makefile containing variable definitions.
+# WARNING: does not work with all sed implementation (tested with GNU sed).
+# It uses a hack to restore the LFs (LFs are removed by $(shell)): LFs are
+# replaced with '^LF^' and then ^LF^ is subst'ed back to a real LF.
+get_make_vars=$(subst ^LF^,$(LF),$(shell sed \
+ -ne '/^[\t ]*[A-Za-z0-9_-]\+[\t ]*[+:]\?=.*[^\]$$/H'\
+ -ne '/^[\t ]*[A-Za-z0-9_-]\+[\t ]*[+:]\?=.*\\$$/,/\(^$$\)\|\([^\]$$\)/H'\
+ -ne '$${g;s/\n/^LF^/g;p}'\
+< $(1)/Makefile ))
+
+
define mk_rules
$(call check_fname_grp, $(1))
#$$(info generating rpc_$$(call get_grp,$(1)).txt: $$(call get_prereq,$(1)))
+
+DEFS:=
+INCLUDES:=
+# extract all the includes and defs from the module makefile and
+# evaluate them
+$$(eval $$(call get_make_vars,$$(dir $$(call get_prereq,$(1)))))
+# save the result in a per group e_idefs_<grp_name> var
+$$(eval e_idefs_$$(call get_grp,$(1)):=$$(DEFS) $$(INCLUDES))
+
+# debugging:
+#$$(info eval: $$(call get_make_vars,$$(dir $$(call get_prereq,$(1)))))
+#$$(info e_idefs_$$(call get_grp,$(1))=$$(e_idefs_$$(call get_grp,$(1))))
+
$(txt_output_dir)/$$(call get_target,$(1)).txt: \
$$(call get_prereq,$(1)) Makefile $(CFG2TXT)
$(CFG2TXT) --file $$< --$(force_grp)grp=$$(call get_grp,$(1)) \
- --gcc="$(gcc)" --txt > "$$@" || (rm -f "$$@"; exit 1)
+ --gcc="$(gcc)" --txt \
+ --defs="$(c_defs) $$(e_idefs_$$(call get_grp,$(1)))" \
+ > "$$@" || (rm -f "$$@"; exit 1)
$(docbook_output_dir)/$$(call get_target,$(1)).xml: \
$$(call get_prereq,$(1)) Makefile $(CFG2TXT)
$(CFG2DOCBOOK) --file $$< --$(force_grp)grp=$$(call get_grp,$(1)) \
- --gcc="$(gcc)" --docbook > "$$@" || (rm -f "$$@"; exit 1)
+ --gcc="$(gcc)" --docbook \
+ --defs="$(c_defs) $$(e_idefs_$$(call get_grp,$(1)))" \
+ > "$$@" || (rm -f "$$@"; exit 1)
clean_$$(call get_target,$(1)).txt:
when i build master on debian squeeze, i get an error
docbook2x-man -s ../../doc/stylesheets/serdoc2man.xsl auth.xml
make[2]: docbook2x-man: Command not found
make[2]: *** [auth.7] Error 127
make[1]: [modules-man] Error 1 (ignored)
should docbook2x be listed in build dependencies?
-- juha
Module: sip-router
Branch: master
Commit: 9d8d30c691fbd779ccf68c5f0f12cef17792934d
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=9d8d30c…
Author: Marius Zbihlei <marius.zbihlei(a)1and1.ro>
Committer: Marius Zbihlei <marius.zbihlei(a)1and1.ro>
Date: Mon Aug 30 17:19:17 2010 +0300
modules/db_berkeley Added a compatibility layer between libdb versions smaller than 4.6 and libdb4.6
Cursor method close() is not present in versions smaller than 4.6 thus the module would not compile.
Also c_* methods are marked as deprecated so the compatibility layer should be extended as well.
---
modules/db_berkeley/bdb_cmd.c | 3 +-
modules/db_berkeley/bdb_crs_compat.h | 43 ++++++++++++++++++++++++++++++++++
modules/db_berkeley/bdb_res.c | 3 +-
modules/db_berkeley/km_db_berkeley.c | 9 ++++---
4 files changed, 52 insertions(+), 6 deletions(-)
diff --git a/modules/db_berkeley/bdb_cmd.c b/modules/db_berkeley/bdb_cmd.c
index 64b46c3..8396690 100644
--- a/modules/db_berkeley/bdb_cmd.c
+++ b/modules/db_berkeley/bdb_cmd.c
@@ -44,6 +44,7 @@
#include "bdb_uri.h"
#include "bdb_res.h"
#include "bdb_lib.h"
+#include "bdb_crs_compat.h"
#define BDB_BUF_SIZE 1024
@@ -56,7 +57,7 @@ static void bdb_cmd_free(db_cmd_t* cmd, bdb_cmd_t* payload)
{
db_drv_free(&payload->gen);
if (payload->dbcp)
- payload->dbcp->c_close(payload->dbcp);
+ payload->dbcp->CLOSE_CURSOR(payload->dbcp);
if(payload->skey.s)
pkg_free(payload->skey.s);
pkg_free(payload);
diff --git a/modules/db_berkeley/bdb_crs_compat.h b/modules/db_berkeley/bdb_crs_compat.h
new file mode 100644
index 0000000..5d2d558
--- /dev/null
+++ b/modules/db_berkeley/bdb_crs_compat.h
@@ -0,0 +1,43 @@
+/*
+ * $Id$
+ *
+ * BDB Compatibility layer for SIP-router
+ *
+ * Copyright (C) 2010 Marius Zbihlei marius.zbihlei at 1and1 dot ro
+ *
+ * This file is part of SIP-router, a free SIP server.
+ *
+ * SIP-router is free software; you can redistribute it and/or modify it under the
+ * terms of the GNU General Public License as published by the Free Software
+ * Foundation; either version 2 of the License, or (at your option) any later
+ * version.
+ *
+ * SIP-router is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+ */
+#ifndef BDB_CRS_COMPAT_H
+#define BDB_CRS_COMPAT_H
+
+#include <db.h>
+
+/* this is a compatibility layer for cursor close function
+ * Historically, the function was called c_close() but it became deprecated
+ * starting with version 4.6
+ */
+#if DB_VERSION_MAJOR < 4
+# define CLOSE_CURSOR c_close
+#else
+#if (DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR < 6)
+# define CLOSE_CURSOR c_close
+#else
+# define CLOSE_CURSOR close
+#endif
+#endif
+
+#endif //BDB_CRS_COMPAT_H
\ No newline at end of file
diff --git a/modules/db_berkeley/bdb_res.c b/modules/db_berkeley/bdb_res.c
index 75bd856..1b73335 100644
--- a/modules/db_berkeley/bdb_res.c
+++ b/modules/db_berkeley/bdb_res.c
@@ -32,6 +32,7 @@
#include "bdb_res.h"
#include "bdb_cmd.h"
+#include "bdb_crs_compat.h"
#include "../../mem/mem.h"
#include "../../dprint.h"
@@ -48,7 +49,7 @@ void bdb_res_free(db_res_t* res, bdb_res_t *payload)
if(bcmd->dbcp!=NULL)
{
- bcmd->dbcp->close(bcmd->dbcp);
+ bcmd->dbcp->CLOSE_CURSOR(bcmd->dbcp);
bcmd->dbcp = NULL;
}
db_drv_free(&payload->gen);
diff --git a/modules/db_berkeley/km_db_berkeley.c b/modules/db_berkeley/km_db_berkeley.c
index 9bab9d2..daeaca6 100644
--- a/modules/db_berkeley/km_db_berkeley.c
+++ b/modules/db_berkeley/km_db_berkeley.c
@@ -51,6 +51,7 @@
#include "km_bdb_res.h"
#include "km_bdb_mi.h"
#include "bdb_mod.h"
+#include "bdb_crs_compat.h"
#ifndef CFG_DIR
#define CFG_DIR "/tmp"
@@ -457,7 +458,7 @@ int km_bdb_query(db1_con_t* _con, db_key_t* _k, db_op_t* _op, db_val_t* _v,
i++;
}
- dbcp->c_close(dbcp);
+ dbcp->CLOSE_CURSOR(dbcp);
ret=0;
#ifdef BDB_EXTRA_DEBUG
@@ -520,7 +521,7 @@ int km_bdb_query(db1_con_t* _con, db_key_t* _k, db_op_t* _op, db_val_t* _v,
i++;
}
- dbcp->c_close(dbcp);
+ dbcp->CLOSE_CURSOR(dbcp);
BDB_CON_RESULT(_con) = *_r;
return 0;
}
@@ -834,7 +835,7 @@ int bdb_delete(db1_con_t* _h, db_key_t* _k, db_op_t* _op, db_val_t* _v, int _n)
ret = dbcp->c_del(dbcp, 0);
}
- dbcp->c_close(dbcp);
+ dbcp->CLOSE_CURSOR(dbcp);
return 0;
}
@@ -1006,7 +1007,7 @@ int _bdb_delete_cursor(db1_con_t* _h, db_key_t* _k, db_op_t* _op, db_val_t* _v,
error:
if(dbcp)
- dbcp->c_close(dbcp);
+ dbcp->CLOSE_CURSOR(dbcp);
if(_r)
db_free_result(_r);
if(lkey)