/* * Copyright (c) 1988 Regents of the University of California. * All rights reserved. * * Redistribution and use in source and binary forms are permitted provided * that this notice is preserved and that due credit is given to the * University of California at Berkeley. The name of the University may not be * used to endorse or promote products derived from this software without * specific written prior permission. This software is provided ``as is'' * without express or implied warranty. * * RCS: @(#) $Id: tmpnam.c,v 1.3 2007/04/16 13:36:34 dkf Exp $ */ #include #include #include #include /* * Use /tmp instead of /usr/tmp, because L_tmpname is only 14 chars on some * machines (like NeXT machines) and /usr/tmp will cause buffer overflows. */ #ifdef P_tmpdir # undef P_tmpdir #endif #define P_tmpdir "/tmp" char * tmpnam( char *s) { static char name[50]; char *mktemp(char *); if (!s) { s = name; } (void) sprintf(s, "%s/XXXXXX", P_tmpdir); return mktemp(s); }