aboutsummaryrefslogtreecommitdiff
path: root/src/gdbmsetopt.c
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org.ua>2016-07-09 11:40:19 +0300
committerSergey Poznyakoff <gray@gnu.org.ua>2016-07-09 12:11:20 +0300
commite8cad816f36b1cad11bb67c96f0ce878cf30844e (patch)
treec971d9de6369f9e340a3764d848c24d4a2ce96e8 /src/gdbmsetopt.c
parent0eafbb93c82a489204f54259593f2aaeb9cdbfc4 (diff)
downloadgdbm-e8cad816f36b1cad11bb67c96f0ce878cf30844e.tar.gz
gdbm-e8cad816f36b1cad11bb67c96f0ce878cf30844e.tar.bz2
Don't bail out on fatal errors, unless the user defines the fatal_err function
* src/bucket.c (_gdbm_get_bucket) (_gdbm_split_bucket, _gdbm_write_bucket): Return error code. All callers updated. * src/proto.h (_gdbm_get_bucket) (_gdbm_split_bucket, _gdbm_write_bucket): Update declarations * src/falloc.c (push_avail_block) (pop_avail_block): Return error code. All callers updated. * src/update.c (_gdbm_fatal): Exit only if the user defined fatal_err function. * src/gdbmerrno.c (gdbm_needs_recovery): New function. * src/gdbm.h.in (gdbm_needs_recovery): New proto. * compat/dbminit.c: Set gdbm_errno on fatal errors. * compat/dbmopen.c: Likewise. * src/findkey.c: Likewise. * src/gdbm_load.c: Likewise. * src/gdbmcount.c: Likewise. * src/gdbmdefs.h: Likewise. * src/gdbmdelete.c: Likewise. * src/gdbmdump.c: Likewise. * src/gdbmexists.c: Likewise. * src/gdbmexp.c: Likewise. * src/gdbmfetch.c: Likewise. * src/gdbmimp.c: Likewise. * src/gdbmload.c: Likewise. * src/gdbmopen.c: Likewise. * src/gdbmreorg.c: Likewise. * src/gdbmseq.c: Likewise. * src/gdbmsetopt.c: Likewise. * src/gdbmstore.c: Likewise. * src/gdbmsync.c: Likewise. * src/mmap.c: Likewise.
Diffstat (limited to 'src/gdbmsetopt.c')
-rw-r--r--src/gdbmsetopt.c40
1 files changed, 20 insertions, 20 deletions
diff --git a/src/gdbmsetopt.c b/src/gdbmsetopt.c
index 47e01ad..39b5e04 100644
--- a/src/gdbmsetopt.c
+++ b/src/gdbmsetopt.c
@@ -68,13 +68,13 @@ gdbm_setopt (GDBM_FILE dbf, int optflag, void *optval, int optlen)
/* Optval will point to the new size of the cache. */
if (dbf->bucket_cache != NULL)
{
- gdbm_set_errno (dbf, GDBM_OPT_ALREADY_SET, 0);
+ gdbm_set_errno (dbf, GDBM_OPT_ALREADY_SET, FALSE);
return -1;
}
if (get_size (optval, optlen, &sz))
{
- gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, 0);
+ gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, FALSE);
return -1;
}
return _gdbm_init_cache (dbf, (sz > 9) ? sz : 10);
@@ -82,7 +82,7 @@ gdbm_setopt (GDBM_FILE dbf, int optflag, void *optval, int optlen)
case GDBM_GETCACHESIZE:
if (!optval || optlen != sizeof (size_t))
{
- gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, 0);
+ gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, FALSE);
return -1;
}
*(size_t*) optval = dbf->cache_size;
@@ -92,7 +92,7 @@ gdbm_setopt (GDBM_FILE dbf, int optflag, void *optval, int optlen)
case GDBM_FASTMODE:
if ((n = getbool (optval, optlen)) == -1)
{
- gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, 0);
+ gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, FALSE);
return -1;
}
dbf->fast_write = n;
@@ -104,7 +104,7 @@ gdbm_setopt (GDBM_FILE dbf, int optflag, void *optval, int optlen)
/* Optval will point to either true or false. */
if ((n = getbool (optval, optlen)) == -1)
{
- gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, 0);
+ gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, FALSE);
return -1;
}
dbf->fast_write = !n;
@@ -113,7 +113,7 @@ gdbm_setopt (GDBM_FILE dbf, int optflag, void *optval, int optlen)
case GDBM_GETSYNCMODE:
if (!optval || optlen != sizeof (int))
{
- gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, 0);
+ gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, FALSE);
return -1;
}
*(int*) optval = !dbf->fast_write;
@@ -124,7 +124,7 @@ gdbm_setopt (GDBM_FILE dbf, int optflag, void *optval, int optlen)
/* Optval will point to either true or false. */
if ((n = getbool (optval, optlen)) == -1)
{
- gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, 0);
+ gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, FALSE);
return -1;
}
dbf->central_free = n;
@@ -133,7 +133,7 @@ gdbm_setopt (GDBM_FILE dbf, int optflag, void *optval, int optlen)
case GDBM_GETCENTFREE:
if (!optval || optlen != sizeof (int))
{
- gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, 0);
+ gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, FALSE);
return -1;
}
*(int*) optval = !dbf->central_free;
@@ -144,7 +144,7 @@ gdbm_setopt (GDBM_FILE dbf, int optflag, void *optval, int optlen)
/* Optval will point to either true or false. */
if ((n = getbool (optval, optlen)) == -1)
{
- gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, 0);
+ gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, FALSE);
return -1;
}
dbf->coalesce_blocks = n;
@@ -153,7 +153,7 @@ gdbm_setopt (GDBM_FILE dbf, int optflag, void *optval, int optlen)
case GDBM_GETCOALESCEBLKS:
if (!optval || optlen != sizeof (int))
{
- gdbm_set_errno (NULL, GDBM_OPT_ILLEGAL, 0);
+ gdbm_set_errno (NULL, GDBM_OPT_ILLEGAL, FALSE);
return -1;
}
*(int*) optval = dbf->coalesce_blocks;
@@ -164,7 +164,7 @@ gdbm_setopt (GDBM_FILE dbf, int optflag, void *optval, int optlen)
#if HAVE_MMAP
if ((n = getbool (optval, optlen)) == -1)
{
- gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, 0);
+ gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, FALSE);
return -1;
}
__fsync (dbf);
@@ -183,7 +183,7 @@ gdbm_setopt (GDBM_FILE dbf, int optflag, void *optval, int optlen)
dbf->memory_mapping = FALSE;
}
#else
- gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, 0);
+ gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, FALSE);
return -1;
#endif
break;
@@ -191,7 +191,7 @@ gdbm_setopt (GDBM_FILE dbf, int optflag, void *optval, int optlen)
case GDBM_GETMMAP:
if (!optval || optlen != sizeof (int))
{
- gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, 0);
+ gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, FALSE);
return -1;
}
*(int*) optval = dbf->memory_mapping;
@@ -205,7 +205,7 @@ gdbm_setopt (GDBM_FILE dbf, int optflag, void *optval, int optlen)
if (get_size (optval, optlen, &sz))
{
- gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, 0);
+ gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, FALSE);
return -1;
}
dbf->mapped_size_max = ((sz + page_size - 1) / page_size) *
@@ -214,14 +214,14 @@ gdbm_setopt (GDBM_FILE dbf, int optflag, void *optval, int optlen)
break;
}
#else
- gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, 0);
+ gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, FALSE);
return -1;
#endif
case GDBM_GETMAXMAPSIZE:
if (!optval || optlen != sizeof (size_t))
{
- gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, 0);
+ gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, FALSE);
return -1;
}
*(size_t*) optval = dbf->mapped_size_max;
@@ -231,7 +231,7 @@ gdbm_setopt (GDBM_FILE dbf, int optflag, void *optval, int optlen)
case GDBM_GETFLAGS:
if (!optval || optlen != sizeof (int))
{
- gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, 0);
+ gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, FALSE);
return -1;
}
else
@@ -250,7 +250,7 @@ gdbm_setopt (GDBM_FILE dbf, int optflag, void *optval, int optlen)
case GDBM_GETDBNAME:
if (!optval || optlen != sizeof (char*))
{
- gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, 0);
+ gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, FALSE);
return -1;
}
else
@@ -258,7 +258,7 @@ gdbm_setopt (GDBM_FILE dbf, int optflag, void *optval, int optlen)
char *p = strdup (dbf->name);
if (!p)
{
- gdbm_set_errno (dbf, GDBM_MALLOC_ERROR, 0);
+ gdbm_set_errno (dbf, GDBM_MALLOC_ERROR, FALSE);
return -1;
}
*(char**) optval = p;
@@ -266,7 +266,7 @@ gdbm_setopt (GDBM_FILE dbf, int optflag, void *optval, int optlen)
break;
default:
- gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, 0);
+ gdbm_set_errno (dbf, GDBM_OPT_ILLEGAL, FALSE);
return -1;
}

Return to:

Send suggestions and report system problems to the System administrator.