diff --git a/pldmd.cpp b/pldmd.cpp
index eed1292..e02bb57 100644
--- a/pldmd.cpp
+++ b/pldmd.cpp
@@ -68,6 +68,8 @@
             }
             response.insert(response.end(), completion_code);
         }
+        response.insert(response.begin(), type);
+        response.insert(response.begin(), eid);
     }
     return response;
 }
@@ -93,15 +95,6 @@
     pldm::responder::base::registerHandlers();
     pldm::responder::bios::registerHandlers();
 
-    // Outgoing message.
-    struct iovec iov[2]{};
-
-    // This structure contains the parameter information for the response
-    // message.
-    struct msghdr msg
-    {
-    };
-
 #ifdef OEM_IBM
     pldm::responder::oem_ibm::registerHandlers();
 #endif
@@ -190,16 +183,8 @@
                         log<level::INFO>("Sending Msg ");
                         printBuffer(response);
 #endif
-                        iov[0].iov_base = &requestMsg;
-                        iov[0].iov_len =
-                            sizeof(requestMsg[0]) + sizeof(requestMsg[1]);
-                        iov[1].iov_base = response.data();
-                        iov[1].iov_len = response.size();
-
-                        msg.msg_iov = iov;
-                        msg.msg_iovlen = sizeof(iov) / sizeof(iov[0]);
-
-                        result = sendmsg(socketFd(), &msg, 0);
+                        result = sendto(socketFd(), response.data(),
+                                        response.size(), 0, nullptr, 0);
                         if (-1 == result)
                         {
                             returnCode = -errno;
