File: mkstemp.3

package info (click to toggle)
manpages-es 1.24a-6
  • links: PTS
  • area: main
  • in suites: potato
  • size: 4,256 kB
  • ctags: 7
  • sloc: makefile: 66; sh: 62
file content (82 lines) | stat: -rw-r--r-- 3,481 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
.\" Copyright (C) 1993 David Metcalfe (david@prism.demon.co.uk)
.\"
.\" Se autoriza hacer y distribuir copias literales de este manual siempre
.\" que el aviso de copyright y este aviso de autorizacin se preserven en
.\" todas las copias.
.\"
.\" Se autoriza copiar y distribuir versiones modificadas de este manual
.\" bajo las condiciones para copiar literalmente, siempre que todo el trabajo
.\" resultante sea distribuido bajo los trminos de un aviso de autorizacin
.\" idntico a ste.
.\"
.\" Ya que el kernel y las bibliotecas de Linux estn cambiando
.\" constantemente, esta pgina de manual puede ser incorrecta u obsoleta.
.\" El(Los) autor(es) no asumen ninguna responsabilidad de los errores u
.\" omisiones, o de los daos resultantes del uso de la informacin contenida
.\" aqu. El(Los) autor(es) pueden no haber tomado el mismo nivel de cuidado en
.\" la produccin de este manual, que es licenciado gratuitamente, como el que
.\" podran haber tomado trabajando profesionalmente.
.\"
.\" Las versiones procesadas o tratadas de este manual que no se acompaen
.\" con los fuentes deben reconocer el copyright y los autores de este trabajo.
.\"
.\" Referencias consultadas:
.\"     Cdigo fuente de la libc de Linux
.\"     Gua del Programador _POSIX de Lewine (O'Reilly & Associates, 1991)
.\"     pginas 'man' de 386BSD
.\" Modificado el Sbado 24 de Julio de 1993 a las 18:48:48 por Rik Faith (faith@cs.unc.edu)
.\" Modificado el 10 Marzo 1998, aeb
.\" Traduccin revisada el 17 Agosto 1998 por Juan Piernas <piernas@ditec.um.es>
.\" Modificado el 28 de marzo de 1999 por aeb
.\" Traduccin revisada el 6 de abril de 1999 por
.\" 	Juan Piernas <piernas@ditec.um.es>
.\"
.TH MKSTEMP 3  "3 Abril 1993" "GNU" "Manual del Programador de Linux"
.SH NOMBRE
mkstemp \- crea un fichero temporal nico (no repetido)
.SH SINOPSIS
.nf
.B #include <stdlib.h>
.sp
.BI "int mkstemp(char *" template );
.fi
.SH DESCRIPCIN
La funcin \fBmkstemp()\fP genera un nombre de fichero temporal nico
a partir de \fItemplate\fP.  Los ltimos seis caracteres de \fItemplate\fP
deben ser XXXXXX y stos son reemplazados con una cadena que hace que el
nombre no est repetido. El fichero es entonces creado en modo de
lectura/escritura y los permisos 0666 (glibc 2.0.6 y anteriores) o 0600
(glibc 2.0.7 y posteriores).
Ya que ser modificada,
.I template
no debe ser una cadena constante sino que se debera declarar como un
array de caracteres.
El fichero se abre con la opcin O_EXCL, garantizando que cuando
.B mkstemp
termine con xito seremos el nico usuario.
.SH "VALOR DEVUELTO"
La funcin \fBmkstemp()\fP devuelve el descriptor de fichero (fd) del
fichero temporal creado o \-1 en caso de error.
.SH "ERRORES"
.TP
.B EINVAL
Los ltimos seis caracteres de \fItemplate\fP no eran XXXXXX.
En este caso \fItemplate\fP no se modifica.
.TP
.B EEXIST
No se pudo crear un nombre no repetido de fichero temporal.
En este caso el contenido de \fItemplate\fP es indefinido.
.SH "FALLOS"
El comportamiento anterior (crear un fichero con el modo 0666) puede ser un
peligro para la seguridad, especialmente porque otras versiones de Unix usan
0600 y alguien podra pasar por alto este detalle al portar programas.
.SH "CONFORME A"
BSD 4.3
.SH NOTA
El prototipo se encuentra en 
.I <unistd.h>
para libc4, libc5 y glibc1; glibc2 sigue `the Single Unix Specification'
y tiene el prototipo en
.IR <stdlib.h> .
.SH "VASE TAMBIN"
.BR mktemp "(3), " tmpnam "(3), " tempnam "(3), " tmpfile (3)