OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [insight/] [libiberty/] [tmpnam.c] - Blame information for rev 1776

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 578 markom
#include <stdio.h>
2
 
3
#ifndef L_tmpnam
4
#define L_tmpnam 100
5
#endif
6
#ifndef P_tmpdir
7
#define P_tmpdir "/usr/tmp"
8
#endif
9
 
10
static char tmpnam_buffer[L_tmpnam];
11
static int tmpnam_counter;
12
 
13
extern int getpid ();
14
 
15
char *
16
tmpnam (s)
17
     char *s;
18
{
19
  int pid = getpid ();
20
 
21
  if (s == NULL)
22
    s = tmpnam_buffer;
23
 
24
  /*  Generate the filename and make sure that there isn't one called
25
      it already.  */
26
 
27
  while (1)
28
    {
29
      FILE *f;
30
      sprintf (s, "%s/%s%x.%x", P_tmpdir, "t", pid, tmpnam_counter);
31
      f = fopen (s, "r");
32
      if (f == NULL)
33
        break;
34
      tmpnam_counter++;
35
      fclose (f);
36
    }
37
 
38
  return s;
39
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.