summaryrefslogtreecommitdiffstats
path: root/src/doc
diff options
context:
space:
mode:
authorMichael Brown2007-07-06 14:31:40 +0200
committerMichael Brown2007-07-06 14:31:40 +0200
commitbfc335faa8c20661d2a69e56436b51344936b475 (patch)
tree99254de8f09e29a13a1fea1b372136e13a710481 /src/doc
parentAdd strlen_user() (will be needed for PXE API extensions) (diff)
downloadipxe-bfc335faa8c20661d2a69e56436b51344936b475.tar.gz
ipxe-bfc335faa8c20661d2a69e56436b51344936b475.tar.xz
ipxe-bfc335faa8c20661d2a69e56436b51344936b475.zip
Added PXENV_GET_FILE_SIZE.
Documented non-blocking nature of PXENV_FILE_READ. Changed FileName field in PXENV_FILE_OPEN to be a SEGOFF16, to avoid a fixed 256-byte length limit on URLs.
Diffstat (limited to 'src/doc')
-rw-r--r--src/doc/pxe_extensions44
1 files changed, 43 insertions, 1 deletions
diff --git a/src/doc/pxe_extensions b/src/doc/pxe_extensions
index ae03b395..0d04fcdc 100644
--- a/src/doc/pxe_extensions
+++ b/src/doc/pxe_extensions
@@ -17,8 +17,8 @@ Description: Opens a file specified by a URL for reading. Multiple
typedef struct s_PXENV_FILE_OPEN {
PXENV_STATUS Status;
UINT16 FileHandle;
+ SEGOFF16 FileName;
UINT32 Reserved;
- UINT8 FileName[256];
} t_PXENV_FILE_OPEN;
@@ -122,6 +122,12 @@ Output: PXENV_EXIT_SUCCESS or PXENV_EXIT_FAILURE must be
structure must be set to one of the values represented
by the PXENV_STATUS_xxx constants.
+ This API function is non-blocking. PXENV_EXIT_SUCCESS
+ and PXENV_STATUS_SUCCESS is returned if a data block
+ has been transferred into the caller's buffer.
+ PXENV_EXIT_FAILURE and PXENV_STATUS_FAILURE is
+ returned if no data is available to transfer.
+
Description: Read from a previously opened file.
@@ -149,3 +155,39 @@ BufferSize: Number of bytes written to the data buffer. End of
file if this is zero.
Status: See PXENV_STATUS_xxx constants.
+
+
+
+
+GET FILE SIZE
+
+Op-Code: PXENV_GET_FILE_SIZE (00e4h)
+
+Input: Far pointer to a t_PXENV_GET_FILE_SIZE parameter
+ structure that has been initialised by the caller.
+
+Output: PXENV_EXIT_SUCCESS or PXENV_EXIT_FAILURE must be
+ returned in AX. The status field in the parameter
+ structure must be set to one of the values represented
+ by the PXENV_STATUS_xxx constants.
+
+Description: Determine size of a previously opened file.
+
+
+typedef struct s_PXENV_GET_FILE_SIZE {
+ PXENV_STATUS Status;
+ UINT16 FileHandle;
+ UINT32 FileSize;
+} t_PXENV_GET_FILE_SIZE;
+
+
+Set before calling API service:
+
+FileHandle: Handle obtained when file was opened.
+
+
+Returned from API service:
+
+FileSize: Size of the file in bytes.
+
+Status: See PXENV_STATUS_xxx constants.