[xfer] Make consistent assumptions that xfer metadata can never be NULL

The documentation in xfer.h and xfer.c does not say that the metadata
parameter is optional in calls such as xfer_deliver_iob_meta() and the
deliver_iob() method.  However, some code in net/ is prepared to
accept a NULL pointer, and xfer_deliver_as_iob() passes a NULL pointer
directly to the deliver_iob() method.

Fix this mess of conflicting assumptions by making everything assume
that the metadata parameter is mandatory, and fixing
xfer_deliver_as_iob() to pass in a dummy metadata structure (as is
already done in xfer_deliver_iob()).
This commit is contained in:
Michael Brown
2009-02-15 08:41:46 +00:00
parent 46da51703a
commit 8ae1cac050
7 changed files with 18 additions and 32 deletions

View File

@@ -380,7 +380,7 @@ static void ftp_data_closed ( struct xfer_interface *data, int rc ) {
*
* @v xfer FTP data channel interface
* @v iobuf I/O buffer
* @v meta Data transfer metadata, or NULL
* @v meta Data transfer metadata
* @ret rc Return status code
*/
static int ftp_data_deliver_iob ( struct xfer_interface *data,

View File

@@ -321,7 +321,7 @@ static int http_rx_data ( struct http_request *http,
*
* @v socket Transport layer interface
* @v iobuf I/O buffer
* @v meta Data transfer metadata, or NULL
* @v meta Data transfer metadata
* @ret rc Return status code
*/
static int http_socket_deliver_iob ( struct xfer_interface *socket,