Message ID | mvmpntz2blf.fsf@suse.de |
---|---|
State | New |
Headers | show |
Series | nscd: avoid assertion failure during persistent db check | expand |
* Andreas Schwab: > nscd should not abort when it finds inconsistencies in the persistent db. > > * nscd/connections.c (check_use): Don't abort on invalid len. > --- > nscd/connections.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/nscd/connections.c b/nscd/connections.c > index 47fbb9923a..9818200764 100644 > --- a/nscd/connections.c > +++ b/nscd/connections.c > @@ -304,7 +304,8 @@ static int > check_use (const char *data, nscd_ssize_t first_free, uint8_t *usemap, > enum usekey use, ref_t start, size_t len) > { > - assert (len >= 2); > + if (len < 2) > + return 0; This looks okay to me. (nscd_init logs a message if verification of a persistent database fails.) Thanks, Florian
diff --git a/nscd/connections.c b/nscd/connections.c index 47fbb9923a..9818200764 100644 --- a/nscd/connections.c +++ b/nscd/connections.c @@ -304,7 +304,8 @@ static int check_use (const char *data, nscd_ssize_t first_free, uint8_t *usemap, enum usekey use, ref_t start, size_t len) { - assert (len >= 2); + if (len < 2) + return 0; if (start > first_free || start + len > first_free || (start & BLOCK_ALIGN_M1))