summaryrefslogtreecommitdiffstats
path: root/src/include
diff options
context:
space:
mode:
authorMichael Brown2007-05-19 22:14:18 +0200
committerMichael Brown2007-05-19 22:14:18 +0200
commit5e25a89e7473827f81703038c650c0bb6fce7186 (patch)
tree78bd526d30b835745f33998a849de581b6c67809 /src/include
parentRename pkbpad.c to iobpad.c (diff)
downloadipxe-5e25a89e7473827f81703038c650c0bb6fce7186.tar.gz
ipxe-5e25a89e7473827f81703038c650c0bb6fce7186.tar.xz
ipxe-5e25a89e7473827f81703038c650c0bb6fce7186.zip
Add local address to socket openers.
Diffstat (limited to 'src/include')
-rw-r--r--src/include/gpxe/open.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/include/gpxe/open.h b/src/include/gpxe/open.h
index caa96f7e2..229d2d78c 100644
--- a/src/include/gpxe/open.h
+++ b/src/include/gpxe/open.h
@@ -63,10 +63,12 @@ struct socket_opener {
/** Open socket
*
* @v xfer Data transfer interface
- * @v sa Socket address
+ * @v peer Peer socket address
+ * @v local Local socket address, or NULL
* @ret rc Return status code
*/
- int ( * open ) ( struct xfer_interface *xfer, struct sockaddr *sa );
+ int ( * open ) ( struct xfer_interface *xfer, struct sockaddr *peer,
+ struct sockaddr *local );
};
/** Register a socket opener */
@@ -75,7 +77,8 @@ struct socket_opener {
extern int xfer_open_uri ( struct xfer_interface *xfer,
const char *uri_string );
extern int xfer_open_socket ( struct xfer_interface *xfer,
- int domain, int type, struct sockaddr *sa );
+ int domain, int type, struct sockaddr *peer,
+ struct sockaddr *local );
extern int xfer_vopen ( struct xfer_interface *xfer, int type, va_list args );
extern int xfer_open ( struct xfer_interface *xfer, int type, ... );