GNU Octave
3.8.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
liboctave
system
tempnam.c
Go to the documentation of this file.
1
/* Copyright (C) 1991, 1993 Free Software Foundation, Inc.
2
This file is part of the GNU C Library.
3
4
The GNU C Library is free software; you can redistribute it and/or
5
modify it under the terms of the GNU Library General Public License as
6
published by the Free Software Foundation; either version 2 of the
7
License, or (at your option) any later version.
8
9
The GNU C Library 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 GNU
12
Library General Public License for more details.
13
14
You should have received a copy of the GNU Library General Public
15
License along with the GNU C Library; see the file COPYING.LIB. If
16
not, write to the Free Software Foundation, Inc., 51 Franklin Street,
17
Fifth Floor, Boston, MA 02110-1301, USA. */
18
19
#ifdef HAVE_CONFIG_H
20
#include <config.h>
21
#endif
22
23
#ifndef HAVE_TEMPNAM
24
25
#include <stddef.h>
26
#include <stdio.h>
27
#include <stdlib.h>
28
#include <string.h>
29
30
extern
char
*
__stdio_gen_tempname
(
const
char
*dir,
const
char
*pfx,
31
int
dir_search,
size_t
*lenptr,
32
FILE **streamptr);
33
34
/* Generate a unique temporary filename using up to five characters of PFX
35
if it is not NULL. The directory to put this file in is searched for
36
as follows: First the environment variable "TMPDIR" is checked.
37
If it contains the name of a writable directory, that directory is used.
38
If not and if DIR is not NULL, that value is checked. If that fails,
39
P_tmpdir is tried and finally "/tmp". The storage for the filename
40
is allocated by `malloc'. */
41
char
*
42
tempnam
(
const
char
*dir,
const
char
*pfx)
43
{
44
size_t
len;
45
register
char
*s;
46
register
char
*t =
__stdio_gen_tempname
(dir, pfx, 1, &len, (FILE **) NULL);
47
48
if
(t == NULL)
49
return
NULL;
50
51
s = (
char
*) malloc (len);
52
if
(s == NULL)
53
return
NULL;
54
55
(
void
) memcpy (s, t, len);
56
return
s;
57
}
58
59
#endif
Generated on Mon Dec 30 2013 03:04:54 for GNU Octave by
1.8.1.2