hpux man page for sendfile64

Query: sendfile64

OS: hpux

Section: 2

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

sendfile64(2)							System Calls Manual						     sendfile64(2)

NAME
sendfile64() - send the contents of a Large File through a socket
SYNOPSIS
DESCRIPTION
The system call transmits the contents of a file (including a Large File (greater than 2GB)) associated with the file descriptor fd, plus an optional header and trailer buffers across a socket connection specified by s. should be used by 32-bit applications using Large Files; however, 64-bit applications can use for compatibility. 64-bit applications can also use directly to send Large Files without special com- pile flags. can be used only when the socket is in a connected state. offset specifies the offset within the file at which to start the file data transfer. nbytes is the number of bytes to be sent from the file. If this parameter is set to zero, data from the offset to the end of the file will be sent. hdtrl points to a two entry structure. See write(2) for a description of the structure. The first entry is for header information. If this pointer is non-NULL, the contents of the buffer are sent before sending any data from the file. The second entry is for trailer information. If this pointer is non-NULL, the contents of the buffer will be sent after the data from the file. If both pointers are NULL, or hdtrl is a NULL pointer, only the specified range of the file will be transferred. At the end of the call, the socket connection will be left completely open for both reading and writing, unless the flags parameter is set to: Disallow further sends and receives. Notes If no buffer space is available to hold the data to be transmitted, blocks unless nonblocking mode is enabled. See send(2) for a descrip- tion of the nonblocking mode behavior. Applications that compile with the compile flag have system calls converted implicitly to Also bsize_t, sbsize_t, and off_t types are implicitly converted to bsize64_t, sbsize64_t, and off64_t types. Both the and compile flag must be used to explicitly use the system call. These are the recommended compile flags for both applications using either or that may want to access Large Files.
RETURN VALUE
Upon successful completion, returns the number of bytes sent. This includes the header, trailer, and the file contents. Otherwise, is returned and is set to indicate the error.
ERRORS
If fails, is set to one of the following values. [EBADF] An invalid socket descriptor s , or file descriptor fd is specified. [ENOTSOCK] s is a valid file descriptor, but it is not a socket. [EFAULT] An invalid pointer was specified in the hdtrl parameter or the structure. [ENOBUFS] No buffer space is available in the system to perform the operation. [EINTR] The operation was interrupted by a signal before any data was sent. (If some data was sent, returns the number of bytes sent before the signal, and [EINTR] is not set). [EINVAL] The offset or flags parameter is invalid. The hdtrl parameter, or a length in the structure is invalid. [ENOTCONN] A on a socket that is not connected, or a on a socket that has not completed the connect sequence with its peer, or is no longer connected to its peer. [EPIPE] With signal. An attempt was made to send on a socket that was connected, but the connection has been shut down either by the remote peer or by this side of the connection. Note that the default action for unless the process has estab- lished a signal handler for this signal, is to terminate the process. [EAGAIN] Nonblocking I/O is enabled using the flag with and the requested operation would block. [EWOULDBLOCK] The socket is marked non-blocking and the requested operation would block. [ENOMEM] No memory is available in the system to perform the operation. [EOPNOTSUPP] The socket is not a TCP socket. Return Value == 0 An application has opened a large file (see open(2)) and is trying to use without having been compiled with and compile flags.
SEE ALSO
connect(2), creat64(2), read(2), send(2), sendfile(2), shutdown(2), socket(2), tcp(7P), write(2). sendfile64(2)
Related Man Pages
sendfile(2) - mojave
send(3) - linux
sendto(2) - ultrix
send(2) - osf1
send(3xnet) - sunos
Similar Topics in the Unix Linux Community
Large File Support
Large File HexEditor 0.41 (Default branch)