aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org>2018-07-02 19:46:24 +0300
committerSergey Poznyakoff <gray@gnu.org>2018-07-02 19:46:24 +0300
commitb4333893277f7e4e4b5e673c158cc8b68ce1ea93 (patch)
tree379eae4af3a8d9ade7c4bdff96430b65213ef1c8
parent030e685eb9df82f63d73a1bf206da84b7aa52374 (diff)
downloadgdbm-b4333893277f7e4e4b5e673c158cc8b68ce1ea93.tar.gz
gdbm-b4333893277f7e4e4b5e673c158cc8b68ce1ea93.tar.bz2
Bugfixes
* src/recover.c (backup_name): Fix memory overwrite. * src/gdbmtool.c (recover_handler): New option "force".
-rw-r--r--src/gdbmtool.c6
-rw-r--r--src/recover.c2
2 files changed, 6 insertions, 2 deletions
diff --git a/src/gdbmtool.c b/src/gdbmtool.c
index 5ae668c..454465e 100644
--- a/src/gdbmtool.c
+++ b/src/gdbmtool.c
@@ -593,2 +593,6 @@ recover_handler (struct handler_param *param)
593 } 593 }
594 else if (strcmp (arg, "force") == 0)
595 {
596 flags |= GDBM_RCVR_FORCE;
597 }
594 else if (strcmp (arg, "summary") == 0) 598 else if (strcmp (arg, "summary") == 0)
@@ -599,3 +603,2 @@ recover_handler (struct handler_param *param)
599 { 603 {
600 rcvr.errfun = err_printer;
601 flags |= GDBM_RCVR_BACKUP; 604 flags |= GDBM_RCVR_BACKUP;
@@ -1265,2 +1268,3 @@ struct command command_tab[] = {
1265 { "[backup]", GDBM_ARG_STRING }, 1268 { "[backup]", GDBM_ARG_STRING },
1269 { "[force]", GDBM_ARG_STRING },
1266 { "[max-failed-keys=N]", GDBM_ARG_STRING }, 1270 { "[max-failed-keys=N]", GDBM_ARG_STRING },
diff --git a/src/recover.c b/src/recover.c
index f6859ea..a64a1b4 100644
--- a/src/recover.c
+++ b/src/recover.c
@@ -54,3 +54,3 @@ backup_name (char const *name)
54 54
55 len = strlen (name + sizeof (INITIAL_SUFFIX)); 55 len = strlen (name) + sizeof (INITIAL_SUFFIX);
56 buf = malloc (len); 56 buf = malloc (len);

Return to:

Send suggestions and report system problems to the System administrator.