Intel Extensible Firmware Interface Network Router User Manual


  Open as PDF
of 1084
 
Extensible Firmware Interface Specification
15-52 12/01/02 Version 1.10
ListenTimeout The number of seconds a client should listen for an active
multicast session before requesting a new multicast session.
TransmitTimeout The number of seconds a client should wait for a packet from the
server before retransmitting the previous open request or data
ack packet.
Description
This function is used to perform TFTP and MTFTP services. This includes the TFTP operations to
get the size of a file, read a directory, read a file, and write a file. It also includes the MTFTP
operations to get the size of a file, read a directory, and read a file. The type of operation is
specified by Operation. If the callback function that is invoked during the TFTP/MTFTP
operation does not return EFI_PXE_BASE_CODE_CALLBACK_STATUS_CONTINUE, then
EFI_ABORTED will be returned.
For read operations, the return data will be placed in the buffer specified by BufferPtr. If
BufferSize is too small to contain the entire downloaded file, then
EFI_BUFFER_TOO_SMALL will be returned and BufferSize will be set to zero or the size of
the requested file (the size of the requested file is only returned if the TFTP server supports TFTP
options). If BufferSize is large enough for the read operation, then BufferSize will be set to
the size of the downloaded file, and EFI_SUCCESS will be returned. Applications using the
PxeBc.Mtftp() services should use the get-file-size operations to determine the size of the
downloaded file prior to using the read-file operationsespecially when downloading large
(greater than 64 MB) filesinstead of making two calls to the read-file operation. Following this
recommendation will save time if the file is larger than expected and the TFTP server does not
support TFTP option extensions. Without TFTP option extension support, the client has to
download the entire file, counting and discarding the received packets, to determine the file size.
For write operations, the data to be sent is in the buffer specified by BufferPtr. BufferSize
specifies the number of bytes to send. If the write operation completes successfully, then
EFI_SUCCESS will be returned.
For TFTP get file size operations, the size of the requested file or directory is returned in
BufferSize, and EFI_SUCCESS will be returned. If the TFTP server does not support options,
the file will be downloaded into a bit bucket and the length of the downloaded file will be returned.
For MTFTP get file size operations, if the MTFTP server does not support the get file size
option, EFI_UNSUPPORTED will be returned.