+++ /dev/null
-/** @file\r
- Mtftp routines for PxeBc.\r
-\r
-Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>\r
-This program and the accompanying materials\r
-are licensed and made available under the terms and conditions of the BSD License\r
-which accompanies this distribution. The full text of the license may be found at\r
-http://opensource.org/licenses/bsd-license.php\r
-\r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
-\r
-**/\r
-\r
-#ifndef __EFI_PXEBC_MTFTP_H__\r
-#define __EFI_PXEBC_MTFTP_H__\r
-\r
-#define PXE_MTFTP_OPTION_BLKSIZE_INDEX 0\r
-#define PXE_MTFTP_OPTION_TIMEOUT_INDEX 1\r
-#define PXE_MTFTP_OPTION_TSIZE_INDEX 2\r
-#define PXE_MTFTP_OPTION_MULTICAST_INDEX 3\r
-#define PXE_MTFTP_OPTION_MAXIMUM_INDEX 4\r
-\r
-#define PXE_MTFTP_ERROR_STRING_LENGTH 127\r
-#define PXE_MTFTP_OPTBUF_MAXNUM_INDEX 128\r
-\r
-\r
-/**\r
- This function is to get size of a file by Tftp.\r
-\r
- @param Private Pointer to PxeBc private data\r
- @param Config Pointer to Mtftp configuration data\r
- @param Filename Pointer to file name\r
- @param BlockSize Pointer to block size\r
- @param BufferSize Pointer to buffer size\r
-\r
- @retval EFI_SUCCESS Get the size of file success\r
- @retval EFI_NOT_FOUND Parse the tftp ptions failed.\r
- @retval EFI_DEVICE_ERROR The network device encountered an error during this operation.\r
- @retval Other Has not get the size of the file.\r
-\r
-**/\r
-EFI_STATUS\r
-PxeBcTftpGetFileSize (\r
- IN PXEBC_PRIVATE_DATA *Private,\r
- IN EFI_MTFTP4_CONFIG_DATA *Config,\r
- IN UINT8 *Filename,\r
- IN UINTN *BlockSize,\r
- IN OUT UINT64 *BufferSize\r
- );\r
-\r
-\r
-/**\r
- This function is to get data of a file by Tftp.\r
-\r
- @param Private Pointer to PxeBc private data\r
- @param Config Pointer to Mtftp configuration data\r
- @param Filename Pointer to file name\r
- @param BlockSize Pointer to block size\r
- @param BufferPtr Pointer to buffer\r
- @param BufferSize Pointer to buffer size\r
- @param DontUseBuffer Indicate whether with a receive buffer\r
-\r
- @retval EFI_SUCCESS Read the data success from the special file.\r
- @retval EFI_DEVICE_ERROR The network device encountered an error during this operation.\r
- @retval other Read data from file failed.\r
-\r
-**/\r
-EFI_STATUS\r
-PxeBcTftpReadFile (\r
- IN PXEBC_PRIVATE_DATA *Private,\r
- IN EFI_MTFTP4_CONFIG_DATA *Config,\r
- IN UINT8 *Filename,\r
- IN UINTN *BlockSize,\r
- IN UINT8 *BufferPtr,\r
- IN OUT UINT64 *BufferSize,\r
- IN BOOLEAN DontUseBuffer\r
- );\r
-\r
-\r
-/**\r
- This function is put data of a file by Tftp.\r
-\r
- @param Private Pointer to PxeBc private data\r
- @param Config Pointer to Mtftp configuration data\r
- @param Filename Pointer to file name\r
- @param Overwrite Indicate whether with overwrite attribute\r
- @param BlockSize Pointer to block size\r
- @param BufferPtr Pointer to buffer\r
- @param BufferSize Pointer to buffer size\r
-\r
- @retval EFI_SUCCESS Write the data success into the special file.\r
- @retval EFI_DEVICE_ERROR The network device encountered an error during this operation.\r
- @retval other Write data into file failed.\r
-\r
-**/\r
-EFI_STATUS\r
-PxeBcTftpWriteFile (\r
- IN PXEBC_PRIVATE_DATA *Private,\r
- IN EFI_MTFTP4_CONFIG_DATA *Config,\r
- IN UINT8 *Filename,\r
- IN BOOLEAN Overwrite,\r
- IN UINTN *BlockSize,\r
- IN UINT8 *BufferPtr,\r
- IN OUT UINT64 *BufferSize\r
- );\r
-\r
-\r
-/**\r
- This function is to get data(file) from a directory(may be a server) by Tftp.\r
-\r
- @param Private Pointer to PxeBc private data.\r
- @param Config Pointer to Mtftp configuration data.\r
- @param Filename Pointer to file name.\r
- @param BlockSize Pointer to block size.\r
- @param BufferPtr Pointer to buffer.\r
- @param BufferSize Pointer to buffer size.\r
- @param DontUseBuffer Indicate whether with a receive buffer.\r
-\r
- @retval EFI_SUCCES Get the data from the file included in directory success.\r
- @retval EFI_DEVICE_ERROR The network device encountered an error during this operation.\r
- @retval other Operation failed.\r
-\r
-**/\r
-EFI_STATUS\r
-PxeBcTftpReadDirectory (\r
- IN PXEBC_PRIVATE_DATA *Private,\r
- IN EFI_MTFTP4_CONFIG_DATA *Config,\r
- IN UINT8 *Filename,\r
- IN UINTN *BlockSize,\r
- IN UINT8 *BufferPtr,\r
- IN OUT UINT64 *BufferSize,\r
- IN BOOLEAN DontUseBuffer\r
- );\r
-\r
-#endif\r
-\r