summaryrefslogtreecommitdiffstats
path: root/src/include/gpxe/aoe.h
diff options
context:
space:
mode:
authorMichael Brown2007-01-15 09:49:10 +0100
committerMichael Brown2007-01-15 09:49:10 +0100
commit4e20d73bb52326261f8cf49c20d6de2edea309ee (patch)
tree3d24466a78c4c8f53294384b76e62e871eb96def /src/include/gpxe/aoe.h
parentAdd missing include (diff)
downloadipxe-4e20d73bb52326261f8cf49c20d6de2edea309ee.tar.gz
ipxe-4e20d73bb52326261f8cf49c20d6de2edea309ee.tar.xz
ipxe-4e20d73bb52326261f8cf49c20d6de2edea309ee.zip
Gave asynchronous operations approximate POSIX signal semantics. This
will enable us to cascade async operations, which is necessary in order to properly support DNS. (For example, an HTTP request may have to redirect to a new location and will have to perform a new DNS lookup, so we can't just rely on doing the name lookup at the time of parsing the initial URL). Anything other than HTTP is probably broken right now; I'll fix the others up asap.
Diffstat (limited to 'src/include/gpxe/aoe.h')
-rw-r--r--src/include/gpxe/aoe.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/include/gpxe/aoe.h b/src/include/gpxe/aoe.h
index 8b3e0ca48..3c54b6bb1 100644
--- a/src/include/gpxe/aoe.h
+++ b/src/include/gpxe/aoe.h
@@ -107,7 +107,7 @@ struct aoe_session {
/** Byte offset within command's data buffer */
unsigned int command_offset;
/** Asynchronous operation for this command */
- struct async_operation aop;
+ struct async async;
/** Retransmission timer */
struct retry_timer timer;
@@ -121,8 +121,9 @@ struct aoe_session {
extern void aoe_open ( struct aoe_session *aoe );
extern void aoe_close ( struct aoe_session *aoe );
-extern struct async_operation * aoe_issue ( struct aoe_session *aoe,
- struct ata_command *command );
+extern int aoe_issue ( struct aoe_session *aoe,
+ struct ata_command *command,
+ struct async *parent );
/** An AoE device */
struct aoe_device {