/* * Copyright (c) 1999 * Steven G. Kargl. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * 1. Redistributions of source code must retain the above copyright notice, * this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright notice, * this list of conditions and the following disclaimer in the documentation * and/or other materials provided with the distribution. * * This software is provided by Steven G. Kargl and contributors ``as is'' and * any express or implied warranties, including, but not limited to, the implied * warranties of merchantability and fitness for a particular purpose are * disclaimed. In no event shall Steven G. Kargl or contributors be liable for * any direct, indirect, incidental, special, exemplary, or consequential * damages (including, but not limited to, procurement of substitute goods or * services; loss of use, data, or profits; or business interruption) however * caused and on any theory of liability, whether in contract, strict liability, * or tort (including negligence or otherwise) arising in any way out of the * use of this software, even if advised of the possibility of such damage. */ #include #include #include #include #include "proto.h" char *gettmpname(char *dir, char *ext) { char *name; if (dir) { name = char_malloc(strlen(dir) + strlen(ext) + 8); strcpy(name, dir); strcat(name, "/f77XXXX"); } else { name = char_malloc(strlen(ext) + 8); strcpy(name, "f77XXXX"); } if (!mktemp(name)) { fputs("f77: gettmpname: name generation\n", stderr); exit(1); } strcat(name, ext); return name; }