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
|
.\" This man page is Copyright (C) 1998 Pawel Krawczyk.
.\" Permission is granted to distribute possibly modified copies
.\" of this page provided the header is included verbatim,
.\" and in case of nontrivial modification author and date
.\" of the modification is added to the header.
.\" $Id: sendfile.2,v 1.5 1999/05/18 11:54:11 freitag Exp $
.\"
.\" Translated on Sun Jun 27 1999 by Juan Piernas <piernas@ditec.um.es>
.\"
.TH SENDFILE 2 "1 diciembre 1998" "Pgina man de Linux" "Manual del Programador de Linux"
.SH NOMBRE
sendfile \- transfiere datos entre descriptores de fichero
.SH SINOPSIS
.B #include <unistd.h>
.sp
.BI "int sendfile(int" " out_fd" ", int" " in_fd" ", off_t *" offset ", size_t" " count" )
.SH DESCRIPCIN
Esta llamada copia datos entre un descriptor de fichero y otro. Cualquiera
de los dos descriptores de fichero o los dos pueden referirse a un conector
(socket).
.I in_fd
debe ser un descriptor de fichero abierto para lectura y
.I out_fd
debe ser un descriptor abierto para escritura.
.I offset
es un puntero a una variable que contiene la posicin del puntero del
fichero de entrada desde la que
.BR sendfile (2)
empezar a leer datos. Cuando sendfile regrese, a esta variable se le
asignar la posicin del byte siguiente al ltimo byte que se ha ledo.
.I count
es la cantidad de bytes a copiar entre los descriptores de fichero.
.SH NOTAS
Sendfile no modifica el puntero de fichero actual de
.IR in_fd ,
pero s lo hace para
.IR out_fd .
Si planea usar sendfile para enviar ficheros a un conector TCP, pero
necesita enviar algunos datos de cabecera delante de los contenidos del
fichero, por favor vea la opcin
.B TCP_CORK
en
.BR tcp (7)
para minimizar el nmero de paquetes y ajustar el rendimiento.
.SH "VALOR DEVUELTO"
Si la transferencia ha tenido xito, se devuelve el nmero de bytes escritos
en
.IR out_fd .
En caso de error, se devuelve \-1 y se asigna a
.I errno
un valor apropiado.
.SH ERRORES
.TP 0.8i
.B EBADF
El fichero de entrada no ha sido abierto para lectura o el fichero de salida
no ha sido abierto para escritura.
.TP
.B EINVAL
Descriptor invlido o bloqueado.
.\" These two are from do_generic_file_read() in filemap.c
.TP
.B ENOMEM
No hay memoria suficiente para leer de
.IR in_fd .
.TP
.B EIO
Se ha producido un error indeterminado al leer de
.IR in_fd .
.SH VERSIONES
.B sendfile
es una nueva caracterstica de la versin 2.2 de Linux.
Otros Unix normalmente implementan sendfile con otras semnticas y
prototipos. No debera usarse en programas transportables.
.SH VASE TAMBIN
.BR socket "(2), " open "(2)"
|