From 98bfb9dac28585fb5629c5fc951ce0d83490d446 Mon Sep 17 00:00:00 2001 From: Mark Johnston Date: Thu, 29 Jul 2021 09:14:50 -0400 Subject: [PATCH] libc/locale: Use O_CLOEXEC when opening locale tables Reviewed by: kib MFC after: 1 week Sponsored by: The FreeBSD Foundation --- lib/libc/locale/collate.c | 2 +- lib/libc/locale/rune.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/libc/locale/collate.c b/lib/libc/locale/collate.c index c992d2299ab..7afb2043e6a 100644 --- a/lib/libc/locale/collate.c +++ b/lib/libc/locale/collate.c @@ -131,7 +131,7 @@ __collate_load_tables_l(const char *encoding, struct xlocale_collate *table) if (asprintf(&buf, "%s/%s/LC_COLLATE", _PathLocale, encoding) == -1) return (_LDP_ERROR); - if ((fd = _open(buf, O_RDONLY)) < 0) { + if ((fd = _open(buf, O_RDONLY | O_CLOEXEC)) < 0) { free(buf); return (_LDP_ERROR); } diff --git a/lib/libc/locale/rune.c b/lib/libc/locale/rune.c index b7334636f65..ce2095763eb 100644 --- a/lib/libc/locale/rune.c +++ b/lib/libc/locale/rune.c @@ -74,7 +74,7 @@ _Read_RuneMagi(const char *fname) int runetype_ext_len = 0; int fd; - if ((fd = _open(fname, O_RDONLY)) < 0) { + if ((fd = _open(fname, O_RDONLY | O_CLOEXEC)) < 0) { errno = EINVAL; return (NULL); }