1 /* Determine a temporary directory. 2 Copyright (C) 2001-2002, 2009-2021 Free Software Foundation, Inc. 3 4 This file is free software: you can redistribute it and/or modify 5 it under the terms of the GNU Lesser General Public License as 6 published by the Free Software Foundation; either version 3 of the 7 License, or (at your option) any later version. 8 9 This file is distributed in the hope that it will be useful, 10 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 GNU Lesser General Public License for more details. 13 14 You should have received a copy of the GNU Lesser General Public License 15 along with this program. If not, see <https://www.gnu.org/licenses/>. */ 16 17 #include <stdbool.h> 18 #include <stddef.h> 19 20 /* Path search algorithm, for tmpnam, tmpfile, etc. If DIR is 21 non-null and exists, uses it; otherwise uses the first of $TMPDIR, 22 P_tmpdir, /tmp that exists. Copies into TMPL a template suitable 23 for use with mk[s]temp. Will fail (-1) if DIR is non-null and 24 doesn't exist, none of the searched dirs exists, or there's not 25 enough space in TMPL. */ 26 extern int path_search (char *tmpl, size_t tmpl_len, const char *dir, const char *pfx, bool try_tmpdir);