X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=linux_module%2Fiface-keyed-stream-user.h;h=85ab0e619faea4030b3c67a9aecf2c5e1f8600f5;hb=f4b69a7f12e47d146be4cecf1d46dfd37f87d89a;hp=84fd8446e4f5393ac90487140d99105b5a388c6d;hpb=c6376e3af2c48a2ec22e8521a3f96fa7923bf264;p=palacios.git diff --git a/linux_module/iface-keyed-stream-user.h b/linux_module/iface-keyed-stream-user.h index 84fd844..85ab0e6 100644 --- a/linux_module/iface-keyed-stream-user.h +++ b/linux_module/iface-keyed-stream-user.h @@ -35,6 +35,10 @@ struct palacios_user_keyed_stream_url { // This structure is used for both requests (kernel->user) // and responses (user->kernel) // +// for a readkey request, the buf contains the tag +// for a readkey response, the buf contains the data +// for a writekey request, the buf contains the data + key +// for a writekey request, the buf contains nothing struct palacios_user_keyed_stream_op { uint64_t len; // total structure length (all) @@ -48,13 +52,17 @@ struct palacios_user_keyed_stream_op { #define PALACIOS_KSTREAM_READ_KEY 6 sint64_t xfer; // total bytes read or written (request/response) + // void *user_key; // user tag for an open key (response) uint64_t buf_len; // buffer len - char buf[0]; // expanded as needed (key or valye) + uint64_t data_off; // offset of data within the buffer + // 0..buffer_len-1 is tag + // rest is data + char buf[0]; // expanded as needed (key or value) - // The buffer contains the key or the value + // The buffer contains the key or the value };