libs/lmo: apply FD_CLOEXEC on archive descriptors to avoid leaking i18n file fds into executed subprocesses
This commit is contained in:
parent
9dcf1d9e60
commit
f383dc0229
1 changed files with 3 additions and 2 deletions
|
@ -1,7 +1,7 @@
|
||||||
/*
|
/*
|
||||||
* lmo - Lua Machine Objects - Base functions
|
* lmo - Lua Machine Objects - Base functions
|
||||||
*
|
*
|
||||||
* Copyright (C) 2009 Jo-Philipp Wich <xm@subsignal.org>
|
* Copyright (C) 2009-2010 Jo-Philipp Wich <xm@subsignal.org>
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
|
@ -94,6 +94,8 @@ lmo_archive_t * lmo_open(const char *file)
|
||||||
ar->fd = in;
|
ar->fd = in;
|
||||||
ar->length = idx_offset;
|
ar->length = idx_offset;
|
||||||
|
|
||||||
|
fcntl(ar->fd, F_SETFD, fcntl(ar->fd, F_GETFD) | FD_CLOEXEC);
|
||||||
|
|
||||||
for( i = idx_offset;
|
for( i = idx_offset;
|
||||||
i < (s.st_size - sizeof(uint32_t));
|
i < (s.st_size - sizeof(uint32_t));
|
||||||
i += (4 * sizeof(uint32_t))
|
i += (4 * sizeof(uint32_t))
|
||||||
|
@ -230,4 +232,3 @@ int lmo_lookup(lmo_archive_t *ar, const char *key, char *dest, int len)
|
||||||
|
|
||||||
return copy_len;
|
return copy_len;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue