[fidl2] Recompile io.fidl2

The C FIDL2 parser has changed in the past month;
this patch adjusts the Zircon codebase to deal
with those changes.

Regenerated using:
./build-x64/tools/fidl2 \
--c-header system/ulib/fdio/include/fdio/io.fidl2.h \
--files system/ulib/fdio/include/fdio/io.fidl2

Change-Id: Ia7671f201dbd89b44149ce744d5c247f206da89b
diff --git a/system/core/devmgr/devhost-rpc-server.c b/system/core/devmgr/devhost-rpc-server.c
index 796681a..0e1eaba 100644
--- a/system/core/devmgr/devhost-rpc-server.c
+++ b/system/core/devmgr/devhost-rpc-server.c
@@ -281,7 +281,7 @@
     case ZXFIDL_OPEN:
     case ZXRIO_OPEN: {
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        DirectoryOpenMsg* request = (DirectoryOpenMsg*) msg;
+        DirectoryOpenRequest* request = (DirectoryOpenRequest*) msg;
         zx_handle_t h;
         char* name;
         uint32_t flags;
@@ -311,7 +311,7 @@
     case ZXFIDL_CLONE:
     case ZXRIO_CLONE: {
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        ObjectCloneMsg* request = (ObjectCloneMsg*) msg;
+        ObjectCloneRequest* request = (ObjectCloneRequest*) msg;
         zx_handle_t h;
         uint32_t flags;
 
@@ -333,11 +333,11 @@
             return ZX_ERR_ACCESS_DENIED;
         }
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        FileReadMsg* request = (FileReadMsg*) msg;
-        FileReadRsp* response = (FileReadRsp*) msg;
+        FileReadRequest* request = (FileReadRequest*) msg;
+        FileReadResponse* response = (FileReadResponse*) msg;
         void* data;
         if (fidl) {
-            data = (void*)((uintptr_t)(response) + FIDL_ALIGN(sizeof(FileReadRsp)));
+            data = (void*)((uintptr_t)(response) + FIDL_ALIGN(sizeof(FileReadResponse)));
             len = request->count;
         } else {
             data = msg->data;
@@ -362,12 +362,12 @@
             return ZX_ERR_ACCESS_DENIED;
         }
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        FileReadAtMsg* request = (FileReadAtMsg*) msg;
-        FileReadAtRsp* response = (FileReadAtRsp*) msg;
+        FileReadAtRequest* request = (FileReadAtRequest*) msg;
+        FileReadAtResponse* response = (FileReadAtResponse*) msg;
         void* data;
         uint64_t offset;
         if (fidl) {
-            data = (void*)((uintptr_t)(response) + FIDL_ALIGN(sizeof(FileReadAtRsp)));
+            data = (void*)((uintptr_t)(response) + FIDL_ALIGN(sizeof(FileReadAtResponse)));
             len = request->count;
             offset = request->offset;
         } else {
@@ -391,8 +391,8 @@
             return ZX_ERR_ACCESS_DENIED;
         }
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        FileWriteMsg* request = (FileWriteMsg*) msg;
-        FileWriteRsp* response = (FileWriteRsp*) msg;
+        FileWriteRequest* request = (FileWriteRequest*) msg;
+        FileWriteResponse* response = (FileWriteResponse*) msg;
         void* data;
         if (fidl) {
             data = request->data.data;
@@ -417,8 +417,8 @@
             return ZX_ERR_ACCESS_DENIED;
         }
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        FileWriteAtMsg* request = (FileWriteAtMsg*) msg;
-        FileWriteAtRsp* response = (FileWriteAtRsp*) msg;
+        FileWriteAtRequest* request = (FileWriteAtRequest*) msg;
+        FileWriteAtResponse* response = (FileWriteAtResponse*) msg;
         void* data;
         uint64_t offset;
         if (fidl) {
@@ -442,8 +442,8 @@
     case ZXFIDL_SEEK:
     case ZXRIO_SEEK: {
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        FileSeekMsg* request = (FileSeekMsg*) msg;
-        FileSeekRsp* response = (FileSeekRsp*) msg;
+        FileSeekRequest* request = (FileSeekRequest*) msg;
+        FileSeekResponse* response = (FileSeekResponse*) msg;
 
         static_assert(SEEK_SET == SeekOrigin_Start, "");
         static_assert(SEEK_CUR == SeekOrigin_Current, "");
@@ -519,7 +519,7 @@
     case ZXFIDL_STAT:
     case ZXRIO_STAT: {
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        NodeGetAttrRsp* response = (NodeGetAttrRsp*) msg;
+        NodeGetAttrResponse* response = (NodeGetAttrResponse*) msg;
         if (fidl) {
             memset(&response->attributes, 0, sizeof(response->attributes));
             response->attributes.mode = V_TYPE_CDEV | V_IRUSR | V_IWUSR;
@@ -541,8 +541,8 @@
         return do_ioctl(dev, IOCTL_DEVICE_SYNC, NULL, 0, NULL, 0);
     }
     case ZXFIDL_IOCTL: {
-        NodeIoctlMsg* request = (NodeIoctlMsg*) msg;
-        NodeIoctlRsp* response = (NodeIoctlRsp*) msg;
+        NodeIoctlRequest* request = (NodeIoctlRequest*) msg;
+        NodeIoctlResponse* response = (NodeIoctlResponse*) msg;
 
         char in_buf[FDIO_IOCTL_MAX_INPUT];
         size_t hsize = request->handles.count * sizeof(zx_handle_t);
@@ -554,7 +554,7 @@
         memcpy(in_buf, request->handles.data, hsize);
 
         uint32_t op = request->opcode;
-        void* secondary = (void*)((uintptr_t)(msg) + FIDL_ALIGN(sizeof(NodeIoctlRsp)));
+        void* secondary = (void*)((uintptr_t)(msg) + FIDL_ALIGN(sizeof(NodeIoctlResponse)));
         zx_status_t r = do_ioctl(dev, op, in_buf, request->in.count,
                                  secondary, request->max_out);
         if (r >= 0) {
diff --git a/system/core/devmgr/devhost.c b/system/core/devmgr/devhost.c
index a6305a4..7c70875 100644
--- a/system/core/devmgr/devhost.c
+++ b/system/core/devmgr/devhost.c
@@ -248,13 +248,13 @@
             goto fail;
         }
 
-        DirectoryOpenMsg* request = (DirectoryOpenMsg*) &msg;
+        DirectoryOpenRequest* request = (DirectoryOpenRequest*) &msg;
         zxrio_msg_t* rmsg = (zxrio_msg_t*) &msg;
 
         if (msg.op == ZXFIDL_OPEN) {
             // Decode open request (FIDL2)
-            if ((msize < sizeof(DirectoryOpenMsg)) ||
-                (FIDL_ALIGN(sizeof(DirectoryOpenMsg)) + FIDL_ALIGN(request->path.size) != msize) ||
+            if ((msize < sizeof(DirectoryOpenRequest)) ||
+                (FIDL_ALIGN(sizeof(DirectoryOpenRequest)) + FIDL_ALIGN(request->path.size) != msize) ||
                 (request->object != FIDL_HANDLE_PRESENT) ||
                 (request->path.data != (char*) FIDL_ALLOC_PRESENT)) {
                 log(ERROR, "devhost: Malformed open request (bad message)\n");
@@ -263,7 +263,7 @@
             }
             request->object = hin[0];
             request->path.data = (void*)((uintptr_t)(&msg) +
-                                         FIDL_ALIGN(sizeof(DirectoryOpenMsg)));
+                                         FIDL_ALIGN(sizeof(DirectoryOpenRequest)));
         } else {
             // Decode open request (RIO)
             rmsg->hcount = 1;
diff --git a/system/core/devmgr/devmgr-devfs.c b/system/core/devmgr/devmgr-devfs.c
index bab250b..805f99c 100644
--- a/system/core/devmgr/devmgr-devfs.c
+++ b/system/core/devmgr/devmgr-devfs.c
@@ -548,17 +548,17 @@
     zxrio_msg_t msg;
     uint32_t msize;
 #ifdef ZXRIO_FIDL
-    DirectoryOpenMsg* request = (DirectoryOpenMsg*) &msg;
-    memset(request, 0, sizeof(DirectoryOpenMsg));
+    DirectoryOpenRequest* request = (DirectoryOpenRequest*) &msg;
+    memset(request, 0, sizeof(DirectoryOpenRequest));
     request->hdr.ordinal = ZXFIDL_OPEN;
     request->path.size = strlen(path);
     request->path.data = (char*) FIDL_ALLOC_PRESENT;
     request->flags = flags;
     request->object = FIDL_HANDLE_PRESENT;
     void* secondary = (void*)((uintptr_t)(request) +
-                              FIDL_ALIGN(sizeof(DirectoryOpenMsg)));
+                              FIDL_ALIGN(sizeof(DirectoryOpenRequest)));
     memcpy(secondary, path, request->path.size);
-    msize = FIDL_ALIGN(sizeof(DirectoryOpenMsg)) + FIDL_ALIGN(request->path.size);
+    msize = FIDL_ALIGN(sizeof(DirectoryOpenRequest)) + FIDL_ALIGN(request->path.size);
 #else
     memset(&msg, 0, ZXRIO_HDR_SZ);
     msg.op = ZXRIO_OPEN;
@@ -654,7 +654,7 @@
     switch (ZXRIO_OP(msg->op)) {
     case ZXFIDL_CLONE:
     case ZXRIO_CLONE: {
-        ObjectCloneMsg* request = (ObjectCloneMsg*) msg;
+        ObjectCloneRequest* request = (ObjectCloneRequest*) msg;
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
         zx_handle_t h;
         uint32_t flags;
@@ -672,7 +672,7 @@
     }
     case ZXFIDL_OPEN:
     case ZXRIO_OPEN: {
-        DirectoryOpenMsg* request = (DirectoryOpenMsg*) msg;
+        DirectoryOpenRequest* request = (DirectoryOpenRequest*) msg;
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
         zx_handle_t h;
         char* path;
@@ -698,7 +698,7 @@
     case ZXFIDL_STAT:
     case ZXRIO_STAT: {
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        NodeGetAttrRsp* response = (NodeGetAttrRsp*) msg;
+        NodeGetAttrResponse* response = (NodeGetAttrResponse*) msg;
 
         uint32_t mode;
         if (devnode_is_dir(dn)) {
@@ -732,13 +732,13 @@
     case ZXFIDL_READDIR:
     case ZXRIO_READDIR: {
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        DirectoryReadDirentsMsg* request = (DirectoryReadDirentsMsg*) msg;
-        DirectoryReadDirentsRsp* response = (DirectoryReadDirentsRsp*) msg;
+        DirectoryReadDirentsRequest* request = (DirectoryReadDirentsRequest*) msg;
+        DirectoryReadDirentsResponse* response = (DirectoryReadDirentsResponse*) msg;
         uint32_t max_out;
         void* data;
 
         if (fidl) {
-            data = (void*)((uintptr_t)(response) + FIDL_ALIGN(sizeof(DirectoryReadDirentsRsp)));
+            data = (void*)((uintptr_t)(response) + FIDL_ALIGN(sizeof(DirectoryReadDirentsResponse)));
             max_out = request->max_out;
         } else {
             max_out = arg;
@@ -766,9 +766,9 @@
     case ZXRIO_IOCTL:
     case ZXRIO_IOCTL_1H: {
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        NodeIoctlMsg* request = (NodeIoctlMsg*) msg;
-        NodeIoctlRsp* response = (NodeIoctlRsp*) msg;
-        void* secondary = (void*)((uintptr_t)(msg) + FIDL_ALIGN(sizeof(NodeIoctlRsp)));
+        NodeIoctlRequest* request = (NodeIoctlRequest*) msg;
+        NodeIoctlResponse* response = (NodeIoctlResponse*) msg;
+        void* secondary = (void*)((uintptr_t)(msg) + FIDL_ALIGN(sizeof(NodeIoctlResponse)));
 
         uint32_t op;
         void* in_data;
diff --git a/system/ulib/fdio/fidl.cpp b/system/ulib/fdio/fidl.cpp
index 8ae989a..8014942 100644
--- a/system/ulib/fdio/fidl.cpp
+++ b/system/ulib/fdio/fidl.cpp
@@ -127,7 +127,7 @@
     // FIDL objects which require additional secondary object validation
     switch (op) {
     case ZXFIDL_CLONE: {
-        ObjectCloneMsg* request = to_primary<ObjectCloneMsg>(msg);
+        ObjectCloneRequest* request = to_primary<ObjectCloneRequest>(msg);
         if (request == nullptr) {
             return ZX_ERR_IO;
         } else if (hcount != 1 || request->object != FIDL_HANDLE_PRESENT) {
@@ -139,14 +139,14 @@
         return ZX_OK;
     }
     case ZXFIDL_OPEN: {
-        DirectoryOpenMsg* request = to_primary<DirectoryOpenMsg>(msg);
+        DirectoryOpenRequest* request = to_primary<DirectoryOpenRequest>(msg);
         if (request == nullptr) {
             return ZX_ERR_IO;
         } else if (hcount != 1 || request->object != FIDL_HANDLE_PRESENT) {
             fprintf(stderr, "ZXFIDL_OPEN failed: Missing handle\n");
             return ZX_ERR_IO;
         } else if (FIDL_ALIGN(request->path.size) +
-                   FIDL_ALIGN(sizeof(DirectoryOpenMsg)) != dsz) {
+                   FIDL_ALIGN(sizeof(DirectoryOpenRequest)) != dsz) {
             fprintf(stderr, "ZXFIDL_OPEN failed: Bad secondary size\n");
             return ZX_ERR_IO;
         } else if ((request->path.data != (void*) FIDL_ALLOC_PRESENT)) {
@@ -160,11 +160,11 @@
         return ZX_OK;
     }
     case ZXFIDL_WRITE: {
-        FileWriteMsg* request = to_primary<FileWriteMsg>(msg);
+        FileWriteRequest* request = to_primary<FileWriteRequest>(msg);
         if (request == nullptr) {
             return ZX_ERR_IO;
         } else if (FIDL_ALIGN(request->data.count) +
-                   FIDL_ALIGN(sizeof(FileWriteMsg)) != dsz) {
+                   FIDL_ALIGN(sizeof(FileWriteRequest)) != dsz) {
             fprintf(stderr, "ZXFIDL_WRITE failed: bad secondary\n");
             return ZX_ERR_IO;
         } else if (request->data.data != (void*) FIDL_ALLOC_PRESENT) {
@@ -175,7 +175,7 @@
         return ZX_OK;
     }
     case ZXFIDL_IOCTL: {
-        NodeIoctlMsg* request = to_primary<NodeIoctlMsg>(msg);
+        NodeIoctlRequest* request = to_primary<NodeIoctlRequest>(msg);
         if (request == nullptr) {
             fprintf(stderr, "ZXFIDL_IOCTL failed: missing response space\n");
             return ZX_ERR_IO;
@@ -222,7 +222,7 @@
 
         size_t secondary_size = FIDL_ALIGN(request->handles.count * sizeof(zx_handle_t)) +
                                 FIDL_ALIGN(request->in.count);
-        if (FIDL_ALIGN(sizeof(NodeIoctlMsg)) + secondary_size != dsz) {
+        if (FIDL_ALIGN(sizeof(NodeIoctlRequest)) + secondary_size != dsz) {
             fprintf(stderr, "ZXFIDL_IOCTL failed: bad secondary size\n");
             return ZX_ERR_IO;
         }
@@ -234,11 +234,11 @@
         return ZX_OK;
     }
     case ZXFIDL_UNLINK: {
-        DirectoryUnlinkMsg* request = to_primary<DirectoryUnlinkMsg>(msg);
+        DirectoryUnlinkRequest* request = to_primary<DirectoryUnlinkRequest>(msg);
         if (request == nullptr) {
             return ZX_ERR_IO;
         } else if (FIDL_ALIGN(request->path.size) +
-                   FIDL_ALIGN(sizeof(DirectoryUnlinkMsg)) != dsz) {
+                   FIDL_ALIGN(sizeof(DirectoryUnlinkRequest)) != dsz) {
             fprintf(stderr, "ZXFIDL_UNLINK failed: bad secondary\n");
             return ZX_ERR_IO;
         } else if (request->path.data != (void*) FIDL_ALLOC_PRESENT) {
@@ -249,11 +249,11 @@
         return ZX_OK;
     }
     case ZXFIDL_WRITE_AT: {
-        FileWriteAtMsg* request = to_primary<FileWriteAtMsg>(msg);
+        FileWriteAtRequest* request = to_primary<FileWriteAtRequest>(msg);
         if (request == nullptr) {
             return ZX_ERR_IO;
         } else if (FIDL_ALIGN(request->data.count) +
-                   FIDL_ALIGN(sizeof(FileWriteAtMsg)) != dsz) {
+                   FIDL_ALIGN(sizeof(FileWriteAtRequest)) != dsz) {
             fprintf(stderr, "ZXFIDL_WRITE_AT failed: bad secondary\n");
             return ZX_ERR_IO;
         } else if (request->data.data != (void*) FIDL_ALLOC_PRESENT) {
@@ -264,10 +264,10 @@
         return ZX_OK;
     }
     case ZXFIDL_RENAME: {
-        DirectoryRenameMsg* request = to_primary<DirectoryRenameMsg>(msg);
+        DirectoryRenameRequest* request = to_primary<DirectoryRenameRequest>(msg);
         if (request == nullptr) {
             return ZX_ERR_IO;
-        } else if (FIDL_ALIGN(sizeof(DirectoryRenameMsg)) +
+        } else if (FIDL_ALIGN(sizeof(DirectoryRenameRequest)) +
                    FIDL_ALIGN(request->src.size) + FIDL_ALIGN(request->dst.size)
                    != dsz) {
             fprintf(stderr, "ZXFIDL_RENAME failed: Bad secondary\n");
@@ -287,10 +287,10 @@
         return ZX_OK;
     }
     case ZXFIDL_LINK: {
-        DirectoryLinkMsg* request = to_primary<DirectoryLinkMsg>(msg);
+        DirectoryLinkRequest* request = to_primary<DirectoryLinkRequest>(msg);
         if (request == nullptr) {
             return ZX_ERR_IO;
-        } else if (FIDL_ALIGN(sizeof(DirectoryLinkMsg)) +
+        } else if (FIDL_ALIGN(sizeof(DirectoryLinkRequest)) +
                    FIDL_ALIGN(request->src.size) + FIDL_ALIGN(request->dst.size)
                    != dsz) {
             fprintf(stderr, "ZXFIDL_LINK failed: Bad secondary\n");
@@ -330,11 +330,11 @@
     *hcount = 0;
     switch (msg->op) {
     case ZXFIDL_CLOSE: {
-        encode_response_status<ObjectCloseRsp>(msg, status, sz);
+        encode_response_status<ObjectCloseResponse>(msg, status, sz);
         break;
     }
     case ZXFIDL_READ: {
-        auto response = encode_response_status<FileReadRsp>(msg, status, sz);
+        auto response = encode_response_status<FileReadResponse>(msg, status, sz);
         response->data.data = (void*) FIDL_ALLOC_PRESENT;
         if (response->s != ZX_OK) {
             response->data.count = 0;
@@ -343,26 +343,26 @@
         break;
     }
     case ZXFIDL_WRITE: {
-        auto response = encode_response_status<FileWriteRsp>(msg, status, sz);
+        auto response = encode_response_status<FileWriteResponse>(msg, status, sz);
         if (response->s != ZX_OK) {
             response->actual = 0;
         }
         break;
     }
     case ZXFIDL_SEEK: {
-        encode_response_status<FileSeekRsp>(msg, status, sz);
+        encode_response_status<FileSeekResponse>(msg, status, sz);
         break;
     }
     case ZXFIDL_STAT: {
-        encode_response_status<NodeGetAttrRsp>(msg, status, sz);
+        encode_response_status<NodeGetAttrResponse>(msg, status, sz);
         break;
     }
     case ZXFIDL_SETATTR: {
-        encode_response_status<NodeSetAttrRsp>(msg, status, sz);
+        encode_response_status<NodeSetAttrResponse>(msg, status, sz);
         break;
     }
     case ZXFIDL_READDIR: {
-        auto response = encode_response_status<DirectoryReadDirentsRsp>(msg, status, sz);
+        auto response = encode_response_status<DirectoryReadDirentsResponse>(msg, status, sz);
         response->dirents.data = (void*) FIDL_ALLOC_PRESENT;
         if (response->s != ZX_OK) {
             response->dirents.count = 0;
@@ -371,7 +371,7 @@
         break;
     }
     case ZXFIDL_IOCTL: {
-        auto response = encode_response_status<NodeIoctlRsp>(msg, status, sz);
+        auto response = encode_response_status<NodeIoctlResponse>(msg, status, sz);
         if (response->s != ZX_OK) {
             response->handles.count = 0;
             response->out.count = 0;
@@ -390,11 +390,11 @@
         break;
     }
     case ZXFIDL_UNLINK: {
-        encode_response_status<DirectoryUnlinkRsp>(msg, status, sz);
+        encode_response_status<DirectoryUnlinkResponse>(msg, status, sz);
         break;
     }
     case ZXFIDL_READ_AT: {
-        auto response = encode_response_status<FileReadAtRsp>(msg, status, sz);
+        auto response = encode_response_status<FileReadAtResponse>(msg, status, sz);
         response->data.data = (void*) FIDL_ALLOC_PRESENT;
         if (response->s != ZX_OK) {
             response->data.count = 0;
@@ -403,49 +403,49 @@
         break;
     }
     case ZXFIDL_WRITE_AT: {
-        auto response = encode_response_status<FileWriteAtRsp>(msg, status, sz);
+        auto response = encode_response_status<FileWriteAtResponse>(msg, status, sz);
         if (response->s != ZX_OK) {
             response->actual = 0;
         }
         break;
     }
     case ZXFIDL_TRUNCATE: {
-        encode_response_status<FileTruncateRsp>(msg, status, sz);
+        encode_response_status<FileTruncateResponse>(msg, status, sz);
         break;
     }
     case ZXFIDL_RENAME: {
-        encode_response_status<DirectoryRenameRsp>(msg, status, sz);
+        encode_response_status<DirectoryRenameResponse>(msg, status, sz);
         break;
     }
     case ZXFIDL_SYNC: {
-        encode_response_status<NodeSyncRsp>(msg, status, sz);
+        encode_response_status<NodeSyncResponse>(msg, status, sz);
         break;
     }
     case ZXFIDL_LINK: {
-        encode_response_status<DirectoryLinkRsp>(msg, status, sz);
+        encode_response_status<DirectoryLinkResponse>(msg, status, sz);
         break;
     }
     case ZXFIDL_REWIND: {
-        encode_response_status<DirectoryRewindRsp>(msg, status, sz);
+        encode_response_status<DirectoryRewindResponse>(msg, status, sz);
         break;
     }
     case ZXFIDL_GET_VMO: {
-        auto response = encode_response_status<FileGetVmoRsp>(msg, status, sz);
+        auto response = encode_response_status<FileGetVmoResponse>(msg, status, sz);
         if (response->s != ZX_OK) {
-            response->v = FIDL_HANDLE_ABSENT;
+            response->vmo = FIDL_HANDLE_ABSENT;
         } else {
-            handles[0] = response->v;
+            handles[0] = response->vmo;
             *hcount = 1;
-            response->v = FIDL_HANDLE_PRESENT;
+            response->vmo = FIDL_HANDLE_PRESENT;
         }
         break;
     }
     case ZXFIDL_GET_FLAGS: {
-        encode_response_status<FileGetFlagsRsp>(msg, status, sz);
+        encode_response_status<FileGetFlagsResponse>(msg, status, sz);
         break;
     }
     case ZXFIDL_SET_FLAGS: {
-        encode_response_status<FileSetFlagsRsp>(msg, status, sz);
+        encode_response_status<FileSetFlagsResponse>(msg, status, sz);
         break;
     }
     default:
@@ -532,7 +532,7 @@
     fidl::HandlePart handles(&cnxn, 1, 1);
 
     // Setup the request message header
-    ObjectCloneMsg* request = builder.New<ObjectCloneMsg>();
+    ObjectCloneRequest* request = builder.New<ObjectCloneRequest>();
     request->hdr.ordinal = ZXFIDL_CLONE;
     request->flags = flags;
     request->object = FIDL_HANDLE_PRESENT;
@@ -549,7 +549,7 @@
     fidl::HandlePart handles(&cnxn, 1, 1);
 
     // Setup the request message header
-    DirectoryOpenMsg* request = builder.New<DirectoryOpenMsg>();
+    DirectoryOpenRequest* request = builder.New<DirectoryOpenRequest>();
     request->hdr.ordinal = ZXFIDL_OPEN;
 
     // Setup the request message primary
@@ -573,7 +573,7 @@
     fidl::Builder builder(byte_buffer, sizeof(byte_buffer));
 
     // Setup the request message header
-    new_request<ObjectCloseMsg, ZXFIDL_CLOSE>(rio, &builder);
+    new_request<ObjectCloseRequest, ZXFIDL_CLOSE>(rio, &builder);
 
     fidl::Message message(builder.Finalize(), fidl::HandlePart());
     zx_status_t r = fidl_call(zxrio_handle(rio), &message);
@@ -582,7 +582,7 @@
     }
 
     // Validate primary size
-    auto response = to_primary<ObjectCloseRsp>(&message);
+    auto response = to_primary<ObjectCloseResponse>(&message);
     if (response == nullptr) {
         return ZX_ERR_IO;
     }
@@ -597,7 +597,7 @@
     fidl::Builder builder(byte_buffer, sizeof(byte_buffer));
 
     // Setup the request message header
-    auto request = new_request<FileWriteMsg, ZXFIDL_WRITE>(rio, &builder);
+    auto request = new_request<FileWriteRequest, ZXFIDL_WRITE>(rio, &builder);
 
     // Setup the request message primary
     request->data.count = length;
@@ -614,7 +614,7 @@
     }
 
     // Validate primary size
-    auto response = to_primary<FileWriteRsp>(&message);
+    auto response = to_primary<FileWriteResponse>(&message);
     if (response == nullptr) {
         return ZX_ERR_IO;
     }
@@ -633,7 +633,7 @@
     fidl::Builder builder(byte_buffer, sizeof(byte_buffer));
 
     // Setup the request message header
-    auto request = new_request<FileWriteAtMsg, ZXFIDL_WRITE_AT>(rio, &builder);
+    auto request = new_request<FileWriteAtRequest, ZXFIDL_WRITE_AT>(rio, &builder);
 
     // Setup the request message primary
     request->data.count = length;
@@ -651,7 +651,7 @@
     }
 
     // Validate primary size
-    auto response = to_primary<FileWriteAtRsp>(&message);
+    auto response = to_primary<FileWriteAtResponse>(&message);
     if (response == nullptr) {
         return ZX_ERR_IO;
     }
@@ -669,7 +669,7 @@
     fidl::Builder builder(byte_buffer, sizeof(byte_buffer));
 
     // Setup the request message header
-    auto request = new_request<FileReadMsg, ZXFIDL_READ>(rio, &builder);
+    auto request = new_request<FileReadRequest, ZXFIDL_READ>(rio, &builder);
 
     // Setup the request message primary
     request->count = length;
@@ -685,12 +685,12 @@
     }
 
     // Validate primary size
-    auto response = to_primary<FileReadRsp>(&message);
+    auto response = to_primary<FileReadResponse>(&message);
     if (response == nullptr) {
         return ZX_ERR_IO;
     }
     if ((response->data.data != (void*) FIDL_ALLOC_PRESENT) ||
-        (message.bytes().actual() != FIDL_ALIGN(sizeof(FileReadRsp)) +
+        (message.bytes().actual() != FIDL_ALIGN(sizeof(FileReadResponse)) +
          FIDL_ALIGN(response->data.count))) {
         return ZX_ERR_IO;
     }
@@ -713,7 +713,7 @@
     fidl::Builder builder(byte_buffer, sizeof(byte_buffer));
 
     // Setup the request message header
-    auto request = new_request<FileReadAtMsg, ZXFIDL_READ_AT>(rio, &builder);
+    auto request = new_request<FileReadAtRequest, ZXFIDL_READ_AT>(rio, &builder);
 
     // Setup the request message primary
     request->count = length;
@@ -730,12 +730,12 @@
     }
 
     // Validate primary size
-    auto response = to_primary<FileReadAtRsp>(&message);
+    auto response = to_primary<FileReadAtResponse>(&message);
     if (response == nullptr) {
         return ZX_ERR_IO;
     }
     if ((response->data.data != (void*) FIDL_ALLOC_PRESENT) ||
-        (message.bytes().actual() != FIDL_ALIGN(sizeof(FileReadAtRsp)) +
+        (message.bytes().actual() != FIDL_ALIGN(sizeof(FileReadAtResponse)) +
          FIDL_ALIGN(response->data.count))) {
         return ZX_ERR_IO;
     }
@@ -760,7 +760,7 @@
     fidl::Builder builder(byte_buffer, sizeof(byte_buffer));
 
     // Setup the request message header
-    auto request = new_request<FileSeekMsg, ZXFIDL_SEEK>(rio, &builder);
+    auto request = new_request<FileSeekRequest, ZXFIDL_SEEK>(rio, &builder);
 
     // Setup the request message primary
     request->offset = offset;
@@ -773,7 +773,7 @@
     }
 
     // Validate primary size
-    auto response = to_primary<FileSeekRsp>(&message);
+    auto response = to_primary<FileSeekResponse>(&message);
     if (response == nullptr) {
         return ZX_ERR_IO;
     } else if (response->s != ZX_OK) {
@@ -791,7 +791,7 @@
     fidl::Builder builder(byte_buffer, sizeof(byte_buffer));
 
     // Setup the request message header
-    new_request<NodeGetAttrMsg, ZXFIDL_STAT>(rio, &builder);
+    new_request<NodeGetAttrRequest, ZXFIDL_STAT>(rio, &builder);
 
     fidl::Message message(builder.Finalize(), fidl::HandlePart());
     zx_status_t r = fidl_call(zxrio_handle(rio), &message);
@@ -800,7 +800,7 @@
     }
 
     // Validate primary size
-    auto response = to_primary<NodeGetAttrRsp>(&message);
+    auto response = to_primary<NodeGetAttrResponse>(&message);
     if (response == nullptr) {
         return ZX_ERR_IO;
     } else if (response->s != ZX_OK) {
@@ -827,7 +827,7 @@
     fidl::Builder builder(byte_buffer, sizeof(byte_buffer));
 
     // Setup the request message header
-    auto request = new_request<NodeSetAttrMsg, ZXFIDL_SETATTR>(rio, &builder);
+    auto request = new_request<NodeSetAttrRequest, ZXFIDL_SETATTR>(rio, &builder);
 
     // Setup the request message primary
     // TODO(smklein): Replace with autogenerated constants
@@ -846,7 +846,7 @@
     }
 
     // Validate primary size
-    auto response = to_primary<NodeSetAttrRsp>(&message);
+    auto response = to_primary<NodeSetAttrResponse>(&message);
     if (response == nullptr) {
         return ZX_ERR_IO;
     }
@@ -859,7 +859,7 @@
     fidl::Builder builder(byte_buffer, sizeof(byte_buffer));
 
     // Setup the request message header
-    new_request<NodeSyncMsg, ZXFIDL_SYNC>(rio, &builder);
+    new_request<NodeSyncRequest, ZXFIDL_SYNC>(rio, &builder);
 
     fidl::Message message(builder.Finalize(), fidl::HandlePart());
     zx_status_t r = fidl_call(zxrio_handle(rio), &message);
@@ -868,7 +868,7 @@
     }
 
     // Validate primary size
-    auto response = to_primary<NodeSyncRsp>(&message);
+    auto response = to_primary<NodeSyncResponse>(&message);
     if (response == nullptr) {
         return ZX_ERR_IO;
     }
@@ -882,7 +882,7 @@
     fidl::Builder builder(byte_buffer, sizeof(byte_buffer));
 
     // Setup the request message header
-    auto request = new_request<DirectoryReadDirentsMsg, ZXFIDL_READDIR>(rio, &builder);
+    auto request = new_request<DirectoryReadDirentsRequest, ZXFIDL_READDIR>(rio, &builder);
 
     // Setup the request message primary
     request->max_out = length;
@@ -894,12 +894,12 @@
     }
 
     // Validate primary size
-    auto response = to_primary<DirectoryReadDirentsRsp>(&message);
+    auto response = to_primary<DirectoryReadDirentsResponse>(&message);
     if (response == nullptr) {
         return ZX_ERR_IO;
     }
     if ((response->dirents.data != (void*) FIDL_ALLOC_PRESENT) ||
-        (message.bytes().actual() != FIDL_ALIGN(sizeof(DirectoryReadDirentsRsp)) +
+        (message.bytes().actual() != FIDL_ALIGN(sizeof(DirectoryReadDirentsResponse)) +
          FIDL_ALIGN(response->dirents.count))) {
         fprintf(stderr, "fidl_readdirents failed to decode response\n");
         return ZX_ERR_IO;
@@ -921,7 +921,7 @@
     fidl::Builder builder(byte_buffer, sizeof(byte_buffer));
 
     // Setup the request message header
-    new_request<DirectoryRewindMsg, ZXFIDL_REWIND>(rio, &builder);
+    new_request<DirectoryRewindRequest, ZXFIDL_REWIND>(rio, &builder);
     fidl::Message message(builder.Finalize(), fidl::HandlePart());
     zx_status_t r = fidl_call(zxrio_handle(rio), &message);
     if (r != ZX_OK) {
@@ -929,7 +929,7 @@
     }
 
     // Validate primary size
-    auto response = to_primary<DirectoryRewindRsp>(&message);
+    auto response = to_primary<DirectoryRewindResponse>(&message);
     if (response == nullptr) {
         return ZX_ERR_IO;
     }
@@ -942,8 +942,8 @@
     fidl::Builder builder(byte_buffer, sizeof(byte_buffer));
 
     // Setup the request message header
-    DirectoryUnlinkMsg* request =
-            new_request<DirectoryUnlinkMsg, ZXFIDL_UNLINK>(rio, &builder);
+    DirectoryUnlinkRequest* request =
+            new_request<DirectoryUnlinkRequest, ZXFIDL_UNLINK>(rio, &builder);
 
     // Setup the request message primary
     request->path.size = namelen;
@@ -961,7 +961,7 @@
     }
 
     // Validate primary size
-    auto response = to_primary<DirectoryUnlinkRsp>(&message);
+    auto response = to_primary<DirectoryUnlinkResponse>(&message);
     if (response == nullptr) {
         return ZX_ERR_IO;
     }
@@ -975,7 +975,7 @@
     fidl::Builder builder(byte_buffer, sizeof(byte_buffer));
 
     // Setup the request message header
-    auto request = new_request<FileTruncateMsg, ZXFIDL_TRUNCATE>(rio, &builder);
+    auto request = new_request<FileTruncateRequest, ZXFIDL_TRUNCATE>(rio, &builder);
 
     // Setup the request message primary
     request->length = length;
@@ -987,7 +987,7 @@
     }
 
     // Validate primary size
-    auto response = to_primary<FileTruncateRsp>(&message);
+    auto response = to_primary<FileTruncateResponse>(&message);
     if (response == nullptr) {
         return ZX_ERR_IO;
     }
@@ -1003,7 +1003,7 @@
     fidl::HandlePart handles(&dst_token, 1, 1);
 
     // Setup the request message header
-    auto request = new_request<DirectoryRenameMsg, ZXFIDL_RENAME>(rio, &builder);
+    auto request = new_request<DirectoryRenameRequest, ZXFIDL_RENAME>(rio, &builder);
 
     // Setup the request message primary
     request->src.size = srclen;
@@ -1025,7 +1025,7 @@
     }
 
     // Validate primary size
-    auto response = to_primary<DirectoryRenameRsp>(&message);
+    auto response = to_primary<DirectoryRenameResponse>(&message);
     if (response == nullptr) {
         return ZX_ERR_IO;
     }
@@ -1041,7 +1041,7 @@
     fidl::HandlePart handles(&dst_token, 1, 1);
 
     // Setup the request message header
-    auto request = new_request<DirectoryLinkMsg, ZXFIDL_LINK>(rio, &builder);
+    auto request = new_request<DirectoryLinkRequest, ZXFIDL_LINK>(rio, &builder);
 
     // Setup the request message primary
     request->src.size = srclen;
@@ -1063,7 +1063,7 @@
     }
 
     // Validate primary size
-    auto response = to_primary<DirectoryLinkRsp>(&message);
+    auto response = to_primary<DirectoryLinkResponse>(&message);
     if (response == nullptr) {
         return ZX_ERR_IO;
     }
@@ -1082,7 +1082,7 @@
     fidl::HandlePart handles(handle_buffer, FDIO_MAX_HANDLES);
 
     // Setup the request message header
-    auto request = new_request<NodeIoctlMsg, ZXFIDL_IOCTL>(rio, &builder);
+    auto request = new_request<NodeIoctlRequest, ZXFIDL_IOCTL>(rio, &builder);
 
     // Setup the request message primary
     request->opcode = op;
@@ -1145,7 +1145,7 @@
     }
 
     // Validate primary size
-    auto response = to_primary<NodeIoctlRsp>(&message);
+    auto response = to_primary<NodeIoctlResponse>(&message);
     if (response == nullptr) {
         fprintf(stderr, "failed to get ioctl primary\n");
         return ZX_ERR_IO;
@@ -1168,7 +1168,7 @@
     size_t expected_handles_len = FIDL_ALIGN(sizeof(zx_handle_t) *
                                              response->handles.count);
     size_t expected_data_len = FIDL_ALIGN(response->out.count);
-    if (message.bytes().actual() != FIDL_ALIGN(sizeof(NodeIoctlRsp)) +
+    if (message.bytes().actual() != FIDL_ALIGN(sizeof(NodeIoctlResponse)) +
         expected_handles_len + expected_data_len) {
         fprintf(stderr, "Ioctl: Decoding bad output size\n");
         return ZX_ERR_IO;
@@ -1226,7 +1226,7 @@
     fidl::HandlePart handles(out, 1);
 
     // Setup the request message header
-    auto request = new_request<FileGetVmoMsg, ZXFIDL_GET_VMO>(rio, &builder);
+    auto request = new_request<FileGetVmoRequest, ZXFIDL_GET_VMO>(rio, &builder);
 
     // Setup the request message primary
     request->flags = flags;
@@ -1238,7 +1238,7 @@
     }
 
     // Validate primary size
-    auto response = to_primary<FileGetVmoRsp>(&message);
+    auto response = to_primary<FileGetVmoResponse>(&message);
     if (response == nullptr) {
         fprintf(stderr, "fidl_getvmo couldn't convert to primary\n");
         return ZX_ERR_IO;
@@ -1250,7 +1250,7 @@
     }
 
     // Already reading directly into |out|.
-    if (response->v != FIDL_HANDLE_PRESENT) {
+    if (response->vmo != FIDL_HANDLE_PRESENT) {
         fprintf(stderr, "fidl_getvmo: Missing response VMO\n");
         return ZX_ERR_IO;
     }
@@ -1264,7 +1264,7 @@
     fidl::Builder builder(byte_buffer, sizeof(byte_buffer));
 
     // Setup the request message header
-    new_request<FileGetFlagsMsg, ZXFIDL_GET_FLAGS>(rio, &builder);
+    new_request<FileGetFlagsRequest, ZXFIDL_GET_FLAGS>(rio, &builder);
 
     fidl::Message message(builder.Finalize(), fidl::HandlePart());
     zx_status_t r = fidl_call(zxrio_handle(rio), &message);
@@ -1273,7 +1273,7 @@
     }
 
     // Validate primary size
-    auto response = to_primary<FileGetFlagsRsp>(&message);
+    auto response = to_primary<FileGetFlagsResponse>(&message);
     if (response == nullptr) {
         return ZX_ERR_IO;
     }
@@ -1288,7 +1288,7 @@
     fidl::Builder builder(byte_buffer, sizeof(byte_buffer));
 
     // Setup the request message header
-    auto request = new_request<FileSetFlagsMsg, ZXFIDL_SET_FLAGS>(rio, &builder);
+    auto request = new_request<FileSetFlagsRequest, ZXFIDL_SET_FLAGS>(rio, &builder);
 
     // Setup the request message primary
     request->flags = flags;
@@ -1300,7 +1300,7 @@
     }
 
     // Validate primary size
-    auto response = to_primary<FileSetFlagsRsp>(&message);
+    auto response = to_primary<FileSetFlagsResponse>(&message);
     if (response == nullptr) {
         return ZX_ERR_IO;
     }
diff --git a/system/ulib/fdio/include/fdio/io.fidl2 b/system/ulib/fdio/include/fdio/io.fidl2
index ddf3d89..cb4b4de 100644
--- a/system/ulib/fdio/include/fdio/io.fidl2
+++ b/system/ulib/fdio/include/fdio/io.fidl2
@@ -4,17 +4,24 @@
 // returned when calling Open or Describe:
 
 // The default protocol, interface information must be acquired via ListInterfaces.
-struct Service {};
+struct Service {
+  uint8 reserved;
+};
+
 // The object may be cast to interface 'File'.
-struct File {
+struct FileObject {
   handle<event>? event;
 };
 // The object may be cast to interface 'Directory'.
-struct Directory {};
+struct DirectoryObject {
+  uint8 reserved;
+};
+
 // The object is accompanied by a pipe.
 struct Pipe {
   handle<socket> socket;
 };
+
 // The object is accompanied by a VMO.
 struct Vmofile {
   handle<vmo> vmo;
@@ -30,8 +37,8 @@
 // how to interpret the optional handle.
 union ObjectInfo {
   Service service;
-  File file;
-  Directory directory;
+  FileObject file;
+  DirectoryObject directory;
   Pipe pipe;
   Vmofile vmofile;
   Device device;
diff --git a/system/ulib/fdio/include/fdio/io.fidl2.h b/system/ulib/fdio/include/fdio/io.fidl2.h
index 6d2fd2c..aab6bca 100644
--- a/system/ulib/fdio/include/fdio/io.fidl2.h
+++ b/system/ulib/fdio/include/fdio/io.fidl2.h
@@ -1,4 +1,3 @@
-// header file
 #pragma once
 
 #include <stdbool.h>
@@ -15,151 +14,345 @@
 
 // Forward declarations
 
+typedef struct Service Service;
+typedef struct DirectoryOpenRequest DirectoryOpenRequest;
+typedef struct DirectoryUnlinkRequest DirectoryUnlinkRequest;
+typedef struct DirectoryUnlinkResponse DirectoryUnlinkResponse;
+typedef struct DirectoryReadDirentsRequest DirectoryReadDirentsRequest;
+typedef struct DirectoryReadDirentsResponse DirectoryReadDirentsResponse;
+typedef struct DirectoryRewindRequest DirectoryRewindRequest;
+typedef struct DirectoryRewindResponse DirectoryRewindResponse;
+typedef struct DirectoryGetTokenRequest DirectoryGetTokenRequest;
+typedef struct DirectoryGetTokenResponse DirectoryGetTokenResponse;
+typedef struct DirectoryRenameRequest DirectoryRenameRequest;
+typedef struct DirectoryRenameResponse DirectoryRenameResponse;
+typedef struct DirectoryLinkRequest DirectoryLinkRequest;
+typedef struct DirectoryLinkResponse DirectoryLinkResponse;
 typedef uint32_t SeekOrigin;
 #define SeekOrigin_Start UINT32_C(0)
 #define SeekOrigin_Current UINT32_C(1)
 #define SeekOrigin_End UINT32_C(2)
 
-typedef struct ObjectCloneMsg ObjectCloneMsg;
-typedef struct ObjectCloseMsg ObjectCloseMsg;
-typedef struct ObjectCloseRsp ObjectCloseRsp;
-typedef struct ObjectListInterfacesMsg ObjectListInterfacesMsg;
-typedef struct ObjectListInterfacesRsp ObjectListInterfacesRsp;
-typedef struct ObjectBindMsg ObjectBindMsg;
-typedef struct ObjectDescribeMsg ObjectDescribeMsg;
-typedef struct ObjectDescribeRsp ObjectDescribeRsp;
-typedef struct ObjectOnOpenEvt ObjectOnOpenEvt;
-typedef struct NodeSyncMsg NodeSyncMsg;
-typedef struct NodeSyncRsp NodeSyncRsp;
-typedef struct NodeGetAttrMsg NodeGetAttrMsg;
-typedef struct NodeGetAttrRsp NodeGetAttrRsp;
-typedef struct NodeSetAttrMsg NodeSetAttrMsg;
-typedef struct NodeSetAttrRsp NodeSetAttrRsp;
-typedef struct NodeIoctlMsg NodeIoctlMsg;
-typedef struct NodeIoctlRsp NodeIoctlRsp;
-typedef struct FileReadMsg FileReadMsg;
-typedef struct FileReadRsp FileReadRsp;
-typedef struct FileReadAtMsg FileReadAtMsg;
-typedef struct FileReadAtRsp FileReadAtRsp;
-typedef struct FileWriteMsg FileWriteMsg;
-typedef struct FileWriteRsp FileWriteRsp;
-typedef struct FileWriteAtMsg FileWriteAtMsg;
-typedef struct FileWriteAtRsp FileWriteAtRsp;
-typedef struct FileSeekMsg FileSeekMsg;
-typedef struct FileSeekRsp FileSeekRsp;
-typedef struct FileTruncateMsg FileTruncateMsg;
-typedef struct FileTruncateRsp FileTruncateRsp;
-typedef struct FileGetFlagsMsg FileGetFlagsMsg;
-typedef struct FileGetFlagsRsp FileGetFlagsRsp;
-typedef struct FileSetFlagsMsg FileSetFlagsMsg;
-typedef struct FileSetFlagsRsp FileSetFlagsRsp;
-typedef struct FileGetVmoMsg FileGetVmoMsg;
-typedef struct FileGetVmoRsp FileGetVmoRsp;
-typedef struct FileGetVmoAtMsg FileGetVmoAtMsg;
-typedef struct FileGetVmoAtRsp FileGetVmoAtRsp;
-typedef struct DirectoryOpenMsg DirectoryOpenMsg;
-typedef struct DirectoryUnlinkMsg DirectoryUnlinkMsg;
-typedef struct DirectoryUnlinkRsp DirectoryUnlinkRsp;
-typedef struct DirectoryReadDirentsMsg DirectoryReadDirentsMsg;
-typedef struct DirectoryReadDirentsRsp DirectoryReadDirentsRsp;
-typedef struct DirectoryRewindMsg DirectoryRewindMsg;
-typedef struct DirectoryRewindRsp DirectoryRewindRsp;
-typedef struct DirectoryGetTokenMsg DirectoryGetTokenMsg;
-typedef struct DirectoryGetTokenRsp DirectoryGetTokenRsp;
-typedef struct DirectoryRenameMsg DirectoryRenameMsg;
-typedef struct DirectoryRenameRsp DirectoryRenameRsp;
-typedef struct DirectoryLinkMsg DirectoryLinkMsg;
-typedef struct DirectoryLinkRsp DirectoryLinkRsp;
-typedef struct Service Service;
-typedef struct File File;
-typedef struct Directory Directory;
-typedef struct Pipe Pipe;
-typedef struct Vmofile Vmofile;
-typedef struct Device Device;
+typedef struct FileReadRequest FileReadRequest;
+typedef struct FileReadResponse FileReadResponse;
+typedef struct FileReadAtRequest FileReadAtRequest;
+typedef struct FileReadAtResponse FileReadAtResponse;
+typedef struct FileWriteRequest FileWriteRequest;
+typedef struct FileWriteResponse FileWriteResponse;
+typedef struct FileWriteAtRequest FileWriteAtRequest;
+typedef struct FileWriteAtResponse FileWriteAtResponse;
+typedef struct FileSeekRequest FileSeekRequest;
+typedef struct FileSeekResponse FileSeekResponse;
+typedef struct FileTruncateRequest FileTruncateRequest;
+typedef struct FileTruncateResponse FileTruncateResponse;
+typedef struct FileGetFlagsRequest FileGetFlagsRequest;
+typedef struct FileGetFlagsResponse FileGetFlagsResponse;
+typedef struct FileSetFlagsRequest FileSetFlagsRequest;
+typedef struct FileSetFlagsResponse FileSetFlagsResponse;
+typedef struct FileGetVmoRequest FileGetVmoRequest;
+typedef struct FileGetVmoResponse FileGetVmoResponse;
+typedef struct FileGetVmoAtRequest FileGetVmoAtRequest;
+typedef struct FileGetVmoAtResponse FileGetVmoAtResponse;
 typedef struct NodeAttributes NodeAttributes;
+typedef struct NodeSyncRequest NodeSyncRequest;
+typedef struct NodeSyncResponse NodeSyncResponse;
+typedef struct NodeGetAttrRequest NodeGetAttrRequest;
+typedef struct NodeGetAttrResponse NodeGetAttrResponse;
+typedef struct NodeSetAttrRequest NodeSetAttrRequest;
+typedef struct NodeSetAttrResponse NodeSetAttrResponse;
+typedef struct NodeIoctlRequest NodeIoctlRequest;
+typedef struct NodeIoctlResponse NodeIoctlResponse;
+typedef struct Device Device;
+typedef struct Vmofile Vmofile;
+typedef struct Pipe Pipe;
+typedef struct DirectoryObject DirectoryObject;
+typedef struct FileObject FileObject;
 typedef struct ObjectInfo ObjectInfo;
+typedef struct ObjectCloneRequest ObjectCloneRequest;
+typedef struct ObjectCloseRequest ObjectCloseRequest;
+typedef struct ObjectCloseResponse ObjectCloseResponse;
+typedef struct ObjectListInterfacesRequest ObjectListInterfacesRequest;
+typedef struct ObjectListInterfacesResponse ObjectListInterfacesResponse;
+typedef struct ObjectBindRequest ObjectBindRequest;
+typedef struct ObjectDescribeRequest ObjectDescribeRequest;
+typedef struct ObjectDescribeResponse ObjectDescribeResponse;
+typedef struct ObjectOnOpenEvent ObjectOnOpenEvent;
 
 // Extern declarations
 
-extern const fidl_type_t ObjectCloneReqCoded;
-extern const fidl_type_t ObjectCloseReqCoded;
-extern const fidl_type_t ObjectCloseRspCoded;
-extern const fidl_type_t ObjectListInterfacesReqCoded;
-extern const fidl_type_t ObjectListInterfacesRspCoded;
-extern const fidl_type_t ObjectBindReqCoded;
-extern const fidl_type_t ObjectDescribeReqCoded;
-extern const fidl_type_t ObjectDescribeRspCoded;
-extern const fidl_type_t ObjectOnOpenEvtCoded;
-extern const fidl_type_t NodeSyncReqCoded;
-extern const fidl_type_t NodeSyncRspCoded;
-extern const fidl_type_t NodeGetAttrReqCoded;
-extern const fidl_type_t NodeGetAttrRspCoded;
-extern const fidl_type_t NodeSetAttrReqCoded;
-extern const fidl_type_t NodeSetAttrRspCoded;
-extern const fidl_type_t NodeIoctlReqCoded;
-extern const fidl_type_t NodeIoctlRspCoded;
-extern const fidl_type_t FileReadReqCoded;
-extern const fidl_type_t FileReadRspCoded;
-extern const fidl_type_t FileReadAtReqCoded;
-extern const fidl_type_t FileReadAtRspCoded;
-extern const fidl_type_t FileWriteReqCoded;
-extern const fidl_type_t FileWriteRspCoded;
-extern const fidl_type_t FileWriteAtReqCoded;
-extern const fidl_type_t FileWriteAtRspCoded;
-extern const fidl_type_t FileSeekReqCoded;
-extern const fidl_type_t FileSeekRspCoded;
-extern const fidl_type_t FileTruncateReqCoded;
-extern const fidl_type_t FileTruncateRspCoded;
-extern const fidl_type_t FileGetFlagsReqCoded;
-extern const fidl_type_t FileGetFlagsRspCoded;
-extern const fidl_type_t FileSetFlagsReqCoded;
-extern const fidl_type_t FileSetFlagsRspCoded;
-extern const fidl_type_t FileGetVmoReqCoded;
-extern const fidl_type_t FileGetVmoRspCoded;
-extern const fidl_type_t FileGetVmoAtReqCoded;
-extern const fidl_type_t FileGetVmoAtRspCoded;
-extern const fidl_type_t DirectoryOpenReqCoded;
-extern const fidl_type_t DirectoryUnlinkReqCoded;
-extern const fidl_type_t DirectoryUnlinkRspCoded;
-extern const fidl_type_t DirectoryReadDirentsReqCoded;
-extern const fidl_type_t DirectoryReadDirentsRspCoded;
-extern const fidl_type_t DirectoryRewindReqCoded;
-extern const fidl_type_t DirectoryRewindRspCoded;
-extern const fidl_type_t DirectoryGetTokenReqCoded;
-extern const fidl_type_t DirectoryGetTokenRspCoded;
-extern const fidl_type_t DirectoryRenameReqCoded;
-extern const fidl_type_t DirectoryRenameRspCoded;
-extern const fidl_type_t DirectoryLinkReqCoded;
-extern const fidl_type_t DirectoryLinkRspCoded;
+extern const fidl_type_t DirectoryOpenRequestTable;
+extern const fidl_type_t DirectoryUnlinkRequestTable;
+extern const fidl_type_t DirectoryUnlinkResponseTable;
+extern const fidl_type_t DirectoryReadDirentsRequestTable;
+extern const fidl_type_t DirectoryReadDirentsResponseTable;
+extern const fidl_type_t DirectoryRewindRequestTable;
+extern const fidl_type_t DirectoryRewindResponseTable;
+extern const fidl_type_t DirectoryGetTokenRequestTable;
+extern const fidl_type_t DirectoryGetTokenResponseTable;
+extern const fidl_type_t DirectoryRenameRequestTable;
+extern const fidl_type_t DirectoryRenameResponseTable;
+extern const fidl_type_t DirectoryLinkRequestTable;
+extern const fidl_type_t DirectoryLinkResponseTable;
+extern const fidl_type_t FileReadRequestTable;
+extern const fidl_type_t FileReadResponseTable;
+extern const fidl_type_t FileReadAtRequestTable;
+extern const fidl_type_t FileReadAtResponseTable;
+extern const fidl_type_t FileWriteRequestTable;
+extern const fidl_type_t FileWriteResponseTable;
+extern const fidl_type_t FileWriteAtRequestTable;
+extern const fidl_type_t FileWriteAtResponseTable;
+extern const fidl_type_t FileSeekRequestTable;
+extern const fidl_type_t FileSeekResponseTable;
+extern const fidl_type_t FileTruncateRequestTable;
+extern const fidl_type_t FileTruncateResponseTable;
+extern const fidl_type_t FileGetFlagsRequestTable;
+extern const fidl_type_t FileGetFlagsResponseTable;
+extern const fidl_type_t FileSetFlagsRequestTable;
+extern const fidl_type_t FileSetFlagsResponseTable;
+extern const fidl_type_t FileGetVmoRequestTable;
+extern const fidl_type_t FileGetVmoResponseTable;
+extern const fidl_type_t FileGetVmoAtRequestTable;
+extern const fidl_type_t FileGetVmoAtResponseTable;
+extern const fidl_type_t NodeSyncRequestTable;
+extern const fidl_type_t NodeSyncResponseTable;
+extern const fidl_type_t NodeGetAttrRequestTable;
+extern const fidl_type_t NodeGetAttrResponseTable;
+extern const fidl_type_t NodeSetAttrRequestTable;
+extern const fidl_type_t NodeSetAttrResponseTable;
+extern const fidl_type_t NodeIoctlRequestTable;
+extern const fidl_type_t NodeIoctlResponseTable;
+extern const fidl_type_t ObjectCloneRequestTable;
+extern const fidl_type_t ObjectCloseRequestTable;
+extern const fidl_type_t ObjectCloseResponseTable;
+extern const fidl_type_t ObjectListInterfacesRequestTable;
+extern const fidl_type_t ObjectListInterfacesResponseTable;
+extern const fidl_type_t ObjectBindRequestTable;
+extern const fidl_type_t ObjectDescribeRequestTable;
+extern const fidl_type_t ObjectDescribeResponseTable;
+extern const fidl_type_t ObjectOnOpenEventTable;
 
 // Declarations
 
+
+
+
+
+
+
 struct Service {
-    uint8_t reserved; // Manually inserted to cope with zero-size struct issues
+    uint8_t reserved;
 };
 
-struct File {
-    zx_handle_t e;
+struct DirectoryOpenRequest {
+    fidl_message_header_t hdr;
+    uint32_t flags;
+    uint32_t mode;
+    fidl_string_t path;
+    zx_handle_t object;
 };
 
-struct Directory {
-    uint8_t reserved; // Manually inserted to cope with zero-size struct issues
+struct DirectoryUnlinkRequest {
+    fidl_message_header_t hdr;
+    fidl_string_t path;
 };
 
-struct Pipe {
-    zx_handle_t s;
+struct DirectoryUnlinkResponse {
+    fidl_message_header_t hdr;
+    zx_status_t s;
 };
 
-struct Vmofile {
-    zx_handle_t v;
+struct DirectoryReadDirentsRequest {
+    fidl_message_header_t hdr;
+    uint64_t max_out;
+};
+
+struct DirectoryReadDirentsResponse {
+    fidl_message_header_t hdr;
+    zx_status_t s;
+    fidl_vector_t dirents;
+};
+
+struct DirectoryRewindRequest {
+    fidl_message_header_t hdr;
+};
+
+struct DirectoryRewindResponse {
+    fidl_message_header_t hdr;
+    zx_status_t s;
+};
+
+struct DirectoryGetTokenRequest {
+    fidl_message_header_t hdr;
+};
+
+struct DirectoryGetTokenResponse {
+    fidl_message_header_t hdr;
+    zx_status_t s;
+    zx_handle_t token;
+};
+
+struct DirectoryRenameRequest {
+    fidl_message_header_t hdr;
+    fidl_string_t src;
+    zx_handle_t dst_parent_token;
+    fidl_string_t dst;
+};
+
+struct DirectoryRenameResponse {
+    fidl_message_header_t hdr;
+    zx_status_t s;
+};
+
+struct DirectoryLinkRequest {
+    fidl_message_header_t hdr;
+    fidl_string_t src;
+    zx_handle_t dst_parent_token;
+    fidl_string_t dst;
+};
+
+struct DirectoryLinkResponse {
+    fidl_message_header_t hdr;
+    zx_status_t s;
+};
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+struct FileReadRequest {
+    fidl_message_header_t hdr;
+    uint64_t count;
+};
+
+struct FileReadResponse {
+    fidl_message_header_t hdr;
+    zx_status_t s;
+    fidl_vector_t data;
+};
+
+struct FileReadAtRequest {
+    fidl_message_header_t hdr;
+    uint64_t count;
+    uint64_t offset;
+};
+
+struct FileReadAtResponse {
+    fidl_message_header_t hdr;
+    zx_status_t s;
+    fidl_vector_t data;
+};
+
+struct FileWriteRequest {
+    fidl_message_header_t hdr;
+    fidl_vector_t data;
+};
+
+struct FileWriteResponse {
+    fidl_message_header_t hdr;
+    zx_status_t s;
+    uint64_t actual;
+};
+
+struct FileWriteAtRequest {
+    fidl_message_header_t hdr;
+    fidl_vector_t data;
+    uint64_t offset;
+};
+
+struct FileWriteAtResponse {
+    fidl_message_header_t hdr;
+    zx_status_t s;
+    uint64_t actual;
+};
+
+struct FileSeekRequest {
+    fidl_message_header_t hdr;
+    int64_t offset;
+    SeekOrigin start;
+};
+
+struct FileSeekResponse {
+    fidl_message_header_t hdr;
+    zx_status_t s;
+    uint64_t offset;
+};
+
+struct FileTruncateRequest {
+    fidl_message_header_t hdr;
+    uint64_t length;
+};
+
+struct FileTruncateResponse {
+    fidl_message_header_t hdr;
+    zx_status_t s;
+};
+
+struct FileGetFlagsRequest {
+    fidl_message_header_t hdr;
+};
+
+struct FileGetFlagsResponse {
+    fidl_message_header_t hdr;
+    zx_status_t s;
+    uint32_t flags;
+};
+
+struct FileSetFlagsRequest {
+    fidl_message_header_t hdr;
+    uint32_t flags;
+};
+
+struct FileSetFlagsResponse {
+    fidl_message_header_t hdr;
+    zx_status_t s;
+};
+
+struct FileGetVmoRequest {
+    fidl_message_header_t hdr;
+    uint32_t flags;
+};
+
+struct FileGetVmoResponse {
+    fidl_message_header_t hdr;
+    zx_status_t s;
+    zx_handle_t vmo;
+};
+
+struct FileGetVmoAtRequest {
+    fidl_message_header_t hdr;
+    uint32_t flags;
     uint64_t offset;
     uint64_t length;
 };
 
-struct Device {
-    zx_handle_t e;
+struct FileGetVmoAtResponse {
+    fidl_message_header_t hdr;
+    zx_status_t s;
+    zx_handle_t vmo;
 };
 
+
+
+
+
 struct NodeAttributes {
     uint32_t mode;
     uint64_t id;
@@ -170,125 +363,37 @@
     uint64_t modification_time;
 };
 
-struct ObjectInfo {
-    fidl_union_tag_t tag;
-    union {
-        Service service;
-        File file;
-        Directory directory;
-        Pipe pipe;
-        Vmofile vmofile;
-        Device device;
-    };
-};
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-struct ObjectCloneMsg {
-    fidl_message_header_t hdr;
-    uint32_t flags;
-    zx_handle_t object;
-};
-
-struct ObjectCloseMsg {
+struct NodeSyncRequest {
     fidl_message_header_t hdr;
 };
 
-struct ObjectCloseRsp {
+struct NodeSyncResponse {
     fidl_message_header_t hdr;
     zx_status_t s;
 };
 
-struct ObjectListInterfacesMsg {
+struct NodeGetAttrRequest {
     fidl_message_header_t hdr;
 };
 
-struct ObjectListInterfacesRsp {
-    fidl_message_header_t hdr;
-    fidl_vector_t interfaces;
-};
-
-struct ObjectBindMsg {
-    fidl_message_header_t hdr;
-    fidl_string_t iface;
-};
-
-struct ObjectDescribeMsg {
-    fidl_message_header_t hdr;
-};
-
-struct ObjectDescribeRsp {
-    fidl_message_header_t hdr;
-    ObjectInfo info;
-};
-
-struct ObjectOnOpenEvt {
-    fidl_message_header_t hdr;
-    zx_status_t s;
-    ObjectInfo* info;
-};
-
-struct NodeSyncMsg {
-    fidl_message_header_t hdr;
-};
-
-struct NodeSyncRsp {
-    fidl_message_header_t hdr;
-    zx_status_t s;
-};
-
-struct NodeGetAttrMsg {
-    fidl_message_header_t hdr;
-};
-
-struct NodeGetAttrRsp {
+struct NodeGetAttrResponse {
     fidl_message_header_t hdr;
     zx_status_t s;
     NodeAttributes attributes;
 };
 
-struct NodeSetAttrMsg {
+struct NodeSetAttrRequest {
     fidl_message_header_t hdr;
     uint32_t flags;
     NodeAttributes attributes;
 };
 
-struct NodeSetAttrRsp {
+struct NodeSetAttrResponse {
     fidl_message_header_t hdr;
     zx_status_t s;
 };
 
-struct NodeIoctlMsg {
+struct NodeIoctlRequest {
     fidl_message_header_t hdr;
     uint32_t opcode;
     uint64_t max_out;
@@ -296,204 +401,98 @@
     fidl_vector_t in;
 };
 
-struct NodeIoctlRsp {
+struct NodeIoctlResponse {
     fidl_message_header_t hdr;
     zx_status_t s;
     fidl_vector_t handles;
     fidl_vector_t out;
 };
 
-struct FileReadMsg {
-    fidl_message_header_t hdr;
-    uint64_t count;
+struct Device {
+    zx_handle_t event;
 };
 
-struct FileReadRsp {
-    fidl_message_header_t hdr;
-    zx_status_t s;
-    fidl_vector_t data;
-};
-
-struct FileReadAtMsg {
-    fidl_message_header_t hdr;
-    uint64_t count;
-    uint64_t offset;
-};
-
-struct FileReadAtRsp {
-    fidl_message_header_t hdr;
-    zx_status_t s;
-    fidl_vector_t data;
-};
-
-struct FileWriteMsg {
-    fidl_message_header_t hdr;
-    fidl_vector_t data;
-};
-
-struct FileWriteRsp {
-    fidl_message_header_t hdr;
-    zx_status_t s;
-    uint64_t actual;
-};
-
-struct FileWriteAtMsg {
-    fidl_message_header_t hdr;
-    fidl_vector_t data;
-    uint64_t offset;
-};
-
-struct FileWriteAtRsp {
-    fidl_message_header_t hdr;
-    zx_status_t s;
-    uint64_t actual;
-};
-
-struct FileSeekMsg {
-    fidl_message_header_t hdr;
-    int64_t offset;
-    SeekOrigin start;
-};
-
-struct FileSeekRsp {
-    fidl_message_header_t hdr;
-    zx_status_t s;
-    uint64_t offset;
-};
-
-struct FileTruncateMsg {
-    fidl_message_header_t hdr;
-    uint64_t length;
-};
-
-struct FileTruncateRsp {
-    fidl_message_header_t hdr;
-    zx_status_t s;
-};
-
-struct FileGetFlagsMsg {
-    fidl_message_header_t hdr;
-};
-
-struct FileGetFlagsRsp {
-    fidl_message_header_t hdr;
-    zx_status_t s;
-    uint32_t flags;
-};
-
-struct FileSetFlagsMsg {
-    fidl_message_header_t hdr;
-    uint32_t flags;
-};
-
-struct FileSetFlagsRsp {
-    fidl_message_header_t hdr;
-    zx_status_t s;
-};
-
-struct FileGetVmoMsg {
-    fidl_message_header_t hdr;
-    uint32_t flags;
-};
-
-struct FileGetVmoRsp {
-    fidl_message_header_t hdr;
-    zx_status_t s;
-    zx_handle_t v;
-};
-
-struct FileGetVmoAtMsg {
-    fidl_message_header_t hdr;
-    uint32_t flags;
+struct Vmofile {
+    zx_handle_t vmo;
     uint64_t offset;
     uint64_t length;
 };
 
-struct FileGetVmoAtRsp {
-    fidl_message_header_t hdr;
-    zx_status_t s;
-    zx_handle_t v;
+
+struct Pipe {
+    zx_handle_t socket;
 };
 
-struct DirectoryOpenMsg {
+struct DirectoryObject {
+    uint8_t reserved;
+};
+
+struct FileObject {
+    zx_handle_t event;
+};
+
+struct ObjectInfo {
+    fidl_union_tag_t tag;
+    union {
+        Service service;
+        FileObject file;
+        DirectoryObject directory;
+        Pipe pipe;
+        Vmofile vmofile;
+        Device device;
+    };
+};
+#define ObjectInfoTagservice UINT32_C(0)
+#define ObjectInfoTagfile UINT32_C(1)
+#define ObjectInfoTagdirectory UINT32_C(2)
+#define ObjectInfoTagpipe UINT32_C(3)
+#define ObjectInfoTagvmofile UINT32_C(4)
+#define ObjectInfoTagdevice UINT32_C(5)
+
+struct ObjectCloneRequest {
     fidl_message_header_t hdr;
     uint32_t flags;
-    uint32_t mode;
-    fidl_string_t path;
     zx_handle_t object;
 };
 
-struct DirectoryUnlinkMsg {
+struct ObjectCloseRequest {
     fidl_message_header_t hdr;
-    fidl_string_t path;
 };
 
-struct DirectoryUnlinkRsp {
+struct ObjectCloseResponse {
     fidl_message_header_t hdr;
     zx_status_t s;
 };
 
-struct DirectoryReadDirentsMsg {
+struct ObjectListInterfacesRequest {
     fidl_message_header_t hdr;
-    uint64_t max_out;
 };
 
-struct DirectoryReadDirentsRsp {
+struct ObjectListInterfacesResponse {
+    fidl_message_header_t hdr;
+    fidl_vector_t interfaces;
+};
+
+struct ObjectBindRequest {
+    fidl_message_header_t hdr;
+    fidl_string_t iface;
+};
+
+struct ObjectDescribeRequest {
+    fidl_message_header_t hdr;
+};
+
+struct ObjectDescribeResponse {
+    fidl_message_header_t hdr;
+    ObjectInfo info;
+};
+
+struct ObjectOnOpenEvent {
     fidl_message_header_t hdr;
     zx_status_t s;
-    fidl_vector_t dirents;
+    ObjectInfo* info;
 };
 
-struct DirectoryRewindMsg {
-    fidl_message_header_t hdr;
-};
-
-struct DirectoryRewindRsp {
-    fidl_message_header_t hdr;
-    zx_status_t s;
-};
-
-struct DirectoryGetTokenMsg {
-    fidl_message_header_t hdr;
-};
-
-struct DirectoryGetTokenRsp {
-    fidl_message_header_t hdr;
-    zx_status_t s;
-    zx_handle_t token;
-};
-
-struct DirectoryRenameMsg {
-    fidl_message_header_t hdr;
-    fidl_string_t src;
-    zx_handle_t dst_parent_token;
-    fidl_string_t dst;
-};
-
-struct DirectoryRenameRsp {
-    fidl_message_header_t hdr;
-    zx_status_t s;
-};
-
-struct DirectoryLinkMsg {
-    fidl_message_header_t hdr;
-    fidl_string_t src;
-    zx_handle_t dst_parent_token;
-    fidl_string_t dst;
-};
-
-struct DirectoryLinkRsp {
-    fidl_message_header_t hdr;
-    zx_status_t s;
-};
-
-#define ObjectInfo_tag_service UINT32_C(0)
-#define ObjectInfo_tag_file UINT32_C(1)
-#define ObjectInfo_tag_directory UINT32_C(2)
-#define ObjectInfo_tag_pipe UINT32_C(3)
-#define ObjectInfo_tag_vmofile UINT32_C(4)
-#define ObjectInfo_tag_device UINT32_C(5)
-
 #if defined(__cplusplus)
 }
 #endif
diff --git a/system/ulib/fdio/private-fidl.h b/system/ulib/fdio/private-fidl.h
index e2db28e..8780e78 100644
--- a/system/ulib/fdio/private-fidl.h
+++ b/system/ulib/fdio/private-fidl.h
@@ -25,7 +25,7 @@
 zx_status_t zxrio_read_request(zx_handle_t h, zxrio_msg_t* msg);
 
 typedef struct fidl_open_response {
-    alignas(FIDL_ALIGNMENT) ObjectOnOpenEvt response;
+    alignas(FIDL_ALIGNMENT) ObjectOnOpenEvent response;
     alignas(FIDL_ALIGNMENT) ObjectInfo info;
 } fidl_open_response_t;
 
diff --git a/system/ulib/fdio/remoteio.c b/system/ulib/fdio/remoteio.c
index 10da9f5..1234980 100644
--- a/system/ulib/fdio/remoteio.c
+++ b/system/ulib/fdio/remoteio.c
@@ -99,8 +99,8 @@
 
     // remote side was closed;
 #ifdef ZXRIO_FIDL
-    ObjectCloseMsg* request = (ObjectCloseMsg*) &msg;
-    memset(request, 0, sizeof(ObjectCloseMsg));
+    ObjectCloseRequest* request = (ObjectCloseRequest*) &msg;
+    memset(request, 0, sizeof(ObjectCloseRequest));
     request->hdr.ordinal = ZXFIDL_CLOSE;
 #else
     msg.op = ZXRIO_CLOSE;
@@ -126,15 +126,15 @@
     uint32_t dsize;
     switch (msg->op) {
     case ZXFIDL_OPEN: {
-        DirectoryOpenMsg* request = (DirectoryOpenMsg*) msg;
+        DirectoryOpenRequest* request = (DirectoryOpenRequest*) msg;
         request->object = FIDL_HANDLE_PRESENT;
-        dsize = FIDL_ALIGN(sizeof(DirectoryOpenMsg)) + FIDL_ALIGN(request->path.size);
+        dsize = FIDL_ALIGN(sizeof(DirectoryOpenRequest)) + FIDL_ALIGN(request->path.size);
         break;
     }
     case ZXFIDL_CLONE: {
-        ObjectCloneMsg* request = (ObjectCloneMsg*) msg;
+        ObjectCloneRequest* request = (ObjectCloneRequest*) msg;
         request->object = FIDL_HANDLE_PRESENT;
-        dsize = sizeof(ObjectCloneMsg);
+        dsize = sizeof(ObjectCloneRequest);
         break;
     }
     default:
@@ -813,25 +813,25 @@
         return r;
     }
 
-    // Confirm that the objects "zxrio_describe_t" and "ObjectOnOpenEvt"
+    // Confirm that the objects "zxrio_describe_t" and "ObjectOnOpenEvent"
     // are aligned enough to be compatible.
     //
-    // This is somewhat complicated by the fact that the "ObjectOnOpenEvt"
+    // This is somewhat complicated by the fact that the "ObjectOnOpenEvent"
     // object has an optional "ObjectInfo" secondary which exists immediately
     // following the struct.
     static_assert(__builtin_offsetof(zxrio_describe_t, extra) ==
-                  FIDL_ALIGN(sizeof(ObjectOnOpenEvt)),
+                  FIDL_ALIGN(sizeof(ObjectOnOpenEvent)),
                   "RIO Description message doesn't align with FIDL response secondary");
     static_assert(sizeof(zxrio_object_info_t) == sizeof(ObjectInfo),
                   "RIO Object Info doesn't align with FIDL object info");
     static_assert(__builtin_offsetof(zxrio_object_info_t, file.e) ==
-                  __builtin_offsetof(ObjectInfo, file.e), "Unaligned File");
+                  __builtin_offsetof(ObjectInfo, file.event), "Unaligned File");
     static_assert(__builtin_offsetof(zxrio_object_info_t, pipe.s) ==
-                  __builtin_offsetof(ObjectInfo, pipe.s), "Unaligned Pipe");
+                  __builtin_offsetof(ObjectInfo, pipe.socket), "Unaligned Pipe");
     static_assert(__builtin_offsetof(zxrio_object_info_t, vmofile.v) ==
-                  __builtin_offsetof(ObjectInfo, vmofile.v), "Unaligned Vmofile");
+                  __builtin_offsetof(ObjectInfo, vmofile.vmo), "Unaligned Vmofile");
     static_assert(__builtin_offsetof(zxrio_object_info_t, device.e) ==
-                  __builtin_offsetof(ObjectInfo, device.e), "Unaligned Device");
+                  __builtin_offsetof(ObjectInfo, device.event), "Unaligned Device");
 
     switch (info->extra.tag) {
     // Case: No extra handles expected
diff --git a/system/ulib/fs/connection.cpp b/system/ulib/fs/connection.cpp
index 246006c..ea79d3d 100644
--- a/system/ulib/fs/connection.cpp
+++ b/system/ulib/fs/connection.cpp
@@ -70,8 +70,8 @@
         // Remote handoff to a remote filesystem node.
         zxrio_msg_t msg;
 #ifdef ZXRIO_FIDL
-        DirectoryOpenMsg* request = reinterpret_cast<DirectoryOpenMsg*>(&msg);
-        memset(request, 0, sizeof(DirectoryOpenMsg));
+        DirectoryOpenRequest* request = reinterpret_cast<DirectoryOpenRequest*>(&msg);
+        memset(request, 0, sizeof(DirectoryOpenRequest));
         request->hdr.ordinal = ZXFIDL_OPEN;
         request->flags = flags;
         request->mode = mode;
@@ -80,7 +80,7 @@
         request->object = FIDL_HANDLE_PRESENT;
         void* secondary =
                 reinterpret_cast<void*>(reinterpret_cast<uintptr_t>(request) +
-                                        FIDL_ALIGN(sizeof(DirectoryOpenMsg)));
+                                        FIDL_ALIGN(sizeof(DirectoryOpenRequest)));
         memcpy(secondary, path.begin(), path.length());
 #else
         memset(&msg, 0, ZXRIO_HDR_SZ);
@@ -214,7 +214,7 @@
     case ZXRIO_OPEN: {
         TRACE_DURATION("vfs", "ZXRIO_OPEN");
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        auto request = reinterpret_cast<DirectoryOpenMsg*>(msg);
+        auto request = reinterpret_cast<DirectoryOpenRequest*>(msg);
 
         uint32_t flags;
         uint32_t mode;
@@ -261,7 +261,7 @@
     case ZXRIO_CLONE: {
         TRACE_DURATION("vfs", "ZXRIO_CLONE");
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        auto request = reinterpret_cast<ObjectCloneMsg*>(msg);
+        auto request = reinterpret_cast<ObjectCloneRequest*>(msg);
 
         zx::channel channel;
         uint32_t flags;
@@ -299,11 +299,11 @@
             return ZX_ERR_BAD_HANDLE;
         }
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        auto request = reinterpret_cast<FileReadMsg*>(msg);
-        auto response = reinterpret_cast<FileReadRsp*>(msg);
+        auto request = reinterpret_cast<FileReadRequest*>(msg);
+        auto response = reinterpret_cast<FileReadResponse*>(msg);
         void* data;
         if (fidl) {
-            data = (void*)((uintptr_t)response + FIDL_ALIGN(sizeof(FileReadRsp)));
+            data = (void*)((uintptr_t)response + FIDL_ALIGN(sizeof(FileReadResponse)));
             len = static_cast<uint32_t>(request->count);
         } else {
             data = msg->data;
@@ -330,12 +330,12 @@
             return ZX_ERR_BAD_HANDLE;
         }
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        auto request = reinterpret_cast<FileReadAtMsg*>(msg);
-        auto response = reinterpret_cast<FileReadAtRsp*>(msg);
+        auto request = reinterpret_cast<FileReadAtRequest*>(msg);
+        auto response = reinterpret_cast<FileReadAtResponse*>(msg);
         void* data;
         uint64_t offset;
         if (fidl) {
-            data = (void*)((uintptr_t)response + FIDL_ALIGN(sizeof(FileReadAtRsp)));
+            data = (void*)((uintptr_t)response + FIDL_ALIGN(sizeof(FileReadAtResponse)));
             len = static_cast<uint32_t>(request->count);
             offset = request->offset;
         } else {
@@ -361,8 +361,8 @@
     case ZXRIO_WRITE: {
         TRACE_DURATION("vfs", "ZXRIO_WRITE");
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        FileWriteMsg* request = reinterpret_cast<FileWriteMsg*>(msg);
-        FileWriteRsp* response = reinterpret_cast<FileWriteRsp*>(msg);
+        FileWriteRequest* request = reinterpret_cast<FileWriteRequest*>(msg);
+        FileWriteResponse* response = reinterpret_cast<FileWriteResponse*>(msg);
         void* data;
         if (fidl) {
             data = request->data.data;
@@ -401,8 +401,8 @@
     case ZXRIO_WRITE_AT: {
         TRACE_DURATION("vfs", "ZXRIO_WRITE_AT");
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        FileWriteAtMsg* request = reinterpret_cast<FileWriteAtMsg*>(msg);
-        FileWriteAtRsp* response = reinterpret_cast<FileWriteAtRsp*>(msg);
+        FileWriteAtRequest* request = reinterpret_cast<FileWriteAtRequest*>(msg);
+        FileWriteAtResponse* response = reinterpret_cast<FileWriteAtResponse*>(msg);
         void* data;
         uint64_t offset;
         if (fidl) {
@@ -430,8 +430,8 @@
     case ZXRIO_SEEK: {
         TRACE_DURATION("vfs", "ZXRIO_SEEK");
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        FileSeekMsg* request = reinterpret_cast<FileSeekMsg*>(msg);
-        FileSeekRsp* response = reinterpret_cast<FileSeekRsp*>(msg);
+        FileSeekRequest* request = reinterpret_cast<FileSeekRequest*>(msg);
+        FileSeekResponse* response = reinterpret_cast<FileSeekResponse*>(msg);
 
         static_assert(SEEK_SET == SeekOrigin_Start, "");
         static_assert(SEEK_CUR == SeekOrigin_Current, "");
@@ -508,7 +508,7 @@
     case ZXRIO_STAT: {
         TRACE_DURATION("vfs", "ZXRIO_STAT");
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        auto response = reinterpret_cast<NodeGetAttrRsp*>(msg);
+        auto response = reinterpret_cast<NodeGetAttrResponse*>(msg);
 
         // TODO(smklein): Consider using "NodeAttributes" within
         // ulib/fs, rather than vnattr_t.
@@ -537,7 +537,7 @@
     case ZXRIO_SETATTR: {
         TRACE_DURATION("vfs", "ZXRIO_SETATTR");
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        auto request = reinterpret_cast<NodeSetAttrMsg*>(msg);
+        auto request = reinterpret_cast<NodeSetAttrRequest*>(msg);
 
         // TODO(smklein): Prevent read-only files from setting attributes,
         // but allow attribute-setting on mutable directories.
@@ -559,13 +559,13 @@
     }
     case ZXFIDL_GET_FLAGS: {
         TRACE_DURATION("vfs", "ZXFIDL_GET_FLAGS");
-        FileGetFlagsRsp* response = reinterpret_cast<FileGetFlagsRsp*>(msg);
+        FileGetFlagsResponse* response = reinterpret_cast<FileGetFlagsResponse*>(msg);
         response->flags = flags_ & (kStatusFlags | ZX_FS_RIGHTS | ZX_FS_FLAG_VNODE_REF_ONLY);
         return ZX_OK;
     }
     case ZXFIDL_SET_FLAGS: {
         TRACE_DURATION("vfs", "ZXFIDL_SET_FLAGS");
-        FileSetFlagsMsg* request = reinterpret_cast<FileSetFlagsMsg*>(msg);
+        FileSetFlagsRequest* request = reinterpret_cast<FileSetFlagsRequest*>(msg);
         flags_ = (flags_ & ~kStatusFlags) | (request->flags & kStatusFlags);
         return ZX_OK;
     }
@@ -599,12 +599,12 @@
         }
 
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        auto request = reinterpret_cast<DirectoryReadDirentsMsg*>(msg);
-        auto response = reinterpret_cast<DirectoryReadDirentsRsp*>(msg);
+        auto request = reinterpret_cast<DirectoryReadDirentsRequest*>(msg);
+        auto response = reinterpret_cast<DirectoryReadDirentsResponse*>(msg);
         uint32_t max_out;
         void* data;
         if (fidl) {
-            data = (void*)((uintptr_t)response + FIDL_ALIGN(sizeof(DirectoryReadDirentsRsp)));
+            data = (void*)((uintptr_t)response + FIDL_ALIGN(sizeof(DirectoryReadDirentsResponse)));
             max_out = static_cast<uint32_t>(request->max_out);
         } else {
             max_out = arg;
@@ -632,8 +632,8 @@
     case ZXFIDL_IOCTL:
     case ZXRIO_IOCTL:
     case ZXRIO_IOCTL_1H: {
-        auto request = reinterpret_cast<NodeIoctlMsg*>(msg);
-        auto response = reinterpret_cast<NodeIoctlRsp*>(msg);
+        auto request = reinterpret_cast<NodeIoctlRequest*>(msg);
+        auto response = reinterpret_cast<NodeIoctlResponse*>(msg);
 
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
         uint32_t op;
@@ -643,7 +643,7 @@
         size_t inlen;
         void* out;
         size_t outlen;
-        void* secondary = (void*)((uintptr_t)(msg) + FIDL_ALIGN(sizeof(NodeIoctlRsp)));
+        void* secondary = (void*)((uintptr_t)(msg) + FIDL_ALIGN(sizeof(NodeIoctlResponse)));
         if (fidl) {
             op = request->opcode;
             handles = static_cast<zx_handle_t*>(request->handles.data);
@@ -779,7 +779,7 @@
         }
 
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        auto request = reinterpret_cast<FileTruncateMsg*>(msg);
+        auto request = reinterpret_cast<FileTruncateRequest*>(msg);
         uint64_t length;
         if (fidl) {
             length = request->length;
@@ -797,15 +797,15 @@
                                "ZXRIO_RENAME" : "ZXRIO_LINK"));
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
 
-        // These static assertions must all validate before DirectoryRenameMsg
-        // and DirectoryLinkMsg can be used interchangeably
-        static_assert(sizeof(DirectoryRenameMsg) == sizeof(DirectoryLinkMsg), "");
-        static_assert(sizeof(DirectoryRenameRsp) == sizeof(DirectoryLinkRsp), "");
-        static_assert(offsetof(DirectoryRenameMsg, src) == offsetof(DirectoryLinkMsg, src), "");
-        static_assert(offsetof(DirectoryRenameMsg, dst_parent_token) ==
-                      offsetof(DirectoryLinkMsg, dst_parent_token), "");
-        static_assert(offsetof(DirectoryRenameMsg, dst) == offsetof(DirectoryLinkMsg, dst), "");
-        auto request = reinterpret_cast<DirectoryRenameMsg*>(msg);
+        // These static assertions must all validate before DirectoryRenameRequest
+        // and DirectoryLinkRequest can be used interchangeably
+        static_assert(sizeof(DirectoryRenameRequest) == sizeof(DirectoryLinkRequest), "");
+        static_assert(sizeof(DirectoryRenameResponse) == sizeof(DirectoryLinkResponse), "");
+        static_assert(offsetof(DirectoryRenameRequest, src) == offsetof(DirectoryLinkRequest, src), "");
+        static_assert(offsetof(DirectoryRenameRequest, dst_parent_token) ==
+                      offsetof(DirectoryLinkRequest, dst_parent_token), "");
+        static_assert(offsetof(DirectoryRenameRequest, dst) == offsetof(DirectoryLinkRequest, dst), "");
+        auto request = reinterpret_cast<DirectoryRenameRequest*>(msg);
 
         // Regardless of success or failure, we'll close the client-provided
         // vnode token handle.
@@ -862,10 +862,10 @@
         zx_handle_t* handle;
 
         if (fidl) {
-            auto request = reinterpret_cast<FileGetVmoMsg*>(msg);
-            auto response = reinterpret_cast<FileGetVmoRsp*>(msg);
+            auto request = reinterpret_cast<FileGetVmoRequest*>(msg);
+            auto response = reinterpret_cast<FileGetVmoResponse*>(msg);
             flags = request->flags;
-            handle = &response->v;
+            handle = &response->vmo;
         } else {
             if (len != sizeof(zxrio_mmap_data_t)) {
                 return ZX_ERR_INVALID_ARGS;
@@ -915,7 +915,7 @@
     case ZXRIO_UNLINK: {
         TRACE_DURATION("vfs", "ZXRIO_UNLINK");
         bool fidl = ZXRIO_FIDL_MSG(msg->op);
-        DirectoryUnlinkMsg* request = reinterpret_cast<DirectoryUnlinkMsg*>(msg);
+        DirectoryUnlinkRequest* request = reinterpret_cast<DirectoryUnlinkRequest*>(msg);
         char* data;
         uint32_t datalen;
         if (fidl) {
diff --git a/system/ulib/fs/unmount.cpp b/system/ulib/fs/unmount.cpp
index d0f53df..ea28a98 100644
--- a/system/ulib/fs/unmount.cpp
+++ b/system/ulib/fs/unmount.cpp
@@ -17,9 +17,9 @@
 zx_status_t vfs_unmount_handle(zx_handle_t srv, zx_time_t deadline) {
     // TODO(smklein): use shared ioctl impl?
 #ifdef ZXRIO_FIDL
-    uint8_t msg[FIDL_ALIGN(sizeof(NodeIoctlMsg)) + FDIO_CHUNK_SIZE];
-    NodeIoctlMsg* request = (NodeIoctlMsg*) msg;
-    NodeIoctlRsp* response = (NodeIoctlRsp*) msg;
+    uint8_t msg[FIDL_ALIGN(sizeof(NodeIoctlRequest)) + FDIO_CHUNK_SIZE];
+    NodeIoctlRequest* request = (NodeIoctlRequest*) msg;
+    NodeIoctlResponse* response = (NodeIoctlResponse*) msg;
 
     // the only other messages we ever send are no-reply OPEN or CLONE with
     // txid of 0.
@@ -37,9 +37,9 @@
     args.wr_handles = NULL;
     args.rd_bytes = response;
     args.rd_handles = NULL;
-    args.wr_num_bytes = FIDL_ALIGN(sizeof(NodeIoctlMsg));
+    args.wr_num_bytes = FIDL_ALIGN(sizeof(NodeIoctlRequest));
     args.wr_num_handles = 0;
-    args.rd_num_bytes = FIDL_ALIGN(sizeof(NodeIoctlRsp));
+    args.rd_num_bytes = FIDL_ALIGN(sizeof(NodeIoctlResponse));
     args.rd_num_handles = 0;
 
     uint32_t dsize;
@@ -57,7 +57,7 @@
     } else if (status == ZX_OK) {
         // Read phase succeeded. If the target filesystem returned an error, we
         // should parse it.
-        if (dsize < FIDL_ALIGN(sizeof(NodeIoctlRsp))) {
+        if (dsize < FIDL_ALIGN(sizeof(NodeIoctlResponse))) {
             status = ZX_ERR_IO;
         } else {
             status = response->s;