]> git.ipfire.org Git - thirdparty/ipxe.git/commitdiff
[downloader] Provide direct access to the underlying data transfer buffer
authorMichael Brown <mcb30@ipxe.org>
Mon, 20 Jul 2015 11:17:13 +0000 (12:17 +0100)
committerMichael Brown <mcb30@ipxe.org>
Wed, 22 Jul 2015 20:17:47 +0000 (21:17 +0100)
Signed-off-by: Michael Brown <mcb30@ipxe.org>
src/core/downloader.c

index 82cb4b1ed02fc1fabe8348734955a820719e12e7..d745f36170b37d54e33f4884cd7a751e5445bf14 100644 (file)
@@ -153,9 +153,23 @@ static int downloader_xfer_deliver ( struct downloader *downloader,
        return rc;
 }
 
+/**
+ * Get underlying data transfer buffer
+ *
+ * @v downloader       Downloader
+ * @ret xferbuf                Data transfer buffer, or NULL on error
+ */
+static struct xfer_buffer *
+downloader_xfer_buffer ( struct downloader *downloader ) {
+
+       /* Provide direct access to underlying data transfer buffer */
+       return &downloader->buffer;
+}
+
 /** Downloader data transfer interface operations */
 static struct interface_operation downloader_xfer_operations[] = {
        INTF_OP ( xfer_deliver, struct downloader *, downloader_xfer_deliver ),
+       INTF_OP ( xfer_buffer, struct downloader *, downloader_xfer_buffer ),
        INTF_OP ( intf_close, struct downloader *, downloader_finished ),
 };