Pull up following revision(s) (requested by ozaki-r in ticket #1816):

lib/libc/gen/getcap.c: revision 1.58

Fix memory leak in getent()

Memory was not freed if record was not found
This commit is contained in:
martin 2024-03-11 20:02:12 +00:00
parent 2781ace8f0
commit da67ab4db2
1 changed files with 5 additions and 3 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: getcap.c,v 1.57 2017/06/18 03:56:39 manu Exp $ */
/* $NetBSD: getcap.c,v 1.57.8.1 2024/03/11 20:02:12 martin Exp $ */
/*-
* Copyright (c) 1992, 1993
@ -41,7 +41,7 @@
#if 0
static char sccsid[] = "@(#)getcap.c 8.3 (Berkeley) 3/25/94";
#else
__RCSID("$NetBSD: getcap.c,v 1.57 2017/06/18 03:56:39 manu Exp $");
__RCSID("$NetBSD: getcap.c,v 1.57.8.1 2024/03/11 20:02:12 martin Exp $");
#endif
#endif /* LIBC_SCCS and not lint */
@ -502,8 +502,10 @@ getent(char **cap, size_t *len, const char * const *db_array, int fd,
break;
}
if (!foundit)
if (!foundit) {
free(record);
return -1;
}
/*
* Got the capability record, but now we have to expand all tc=name