diff --git a/CHANGELOG.md b/CHANGELOG.md
index 87626ac..068c8a1 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -62,6 +62,7 @@
 
 1. requester: Fix response buffer cast in pldm_send_recv()
 2. pdr: Hoist record handle overflow test to avoid memory leak
+3. transport: Correct comparison in while loop condition
 
 ## [0.4.0] - 2023-07-14
 
diff --git a/src/transport/transport.c b/src/transport/transport.c
index 919cc61..1eeffb6 100644
--- a/src/transport/transport.c
+++ b/src/transport/transport.c
@@ -209,7 +209,7 @@
 		if (ret < 0) {
 			return PLDM_REQUESTER_POLL_FAIL;
 		}
-	} while (!timercmp(&now, &end, <));
+	} while (timercmp(&now, &end, <));
 
 	return PLDM_REQUESTER_RECV_FAIL;
 }
diff --git a/tests/transport.cpp b/tests/transport.cpp
index 79b09e8..9f00986 100644
--- a/tests/transport.cpp
+++ b/tests/transport.cpp
@@ -161,3 +161,58 @@
     pldm_transport_test_destroy(test);
 }
 #endif
+
+#ifdef LIBPLDM_API_TESTING
+TEST(Transport, send_recv_unwanted)
+{
+    uint8_t req[] = {0x81, 0x00, 0x01, 0x01};
+    uint8_t resp[] = {0x02, 0x00, 0x01, 0x00};
+    const struct pldm_transport_test_descriptor seq[] = {
+        {
+            .type = PLDM_TRANSPORT_TEST_ELEMENT_MSG_SEND,
+            .send_msg =
+                {
+                    .dst = 1,
+                    .msg = req,
+                    .len = sizeof(req),
+                },
+        },
+        {
+            .type = PLDM_TRANSPORT_TEST_ELEMENT_LATENCY,
+            .latency =
+                {
+                    .it_interval = {0, 0},
+                    .it_value = {1, 0},
+                },
+        },
+        {
+            .type = PLDM_TRANSPORT_TEST_ELEMENT_MSG_RECV,
+            .recv_msg =
+                {
+                    .src = 2,
+                    .msg = resp,
+                    .len = sizeof(resp),
+                },
+        },
+        {
+            .type = PLDM_TRANSPORT_TEST_ELEMENT_LATENCY,
+            .latency =
+                {
+                    .it_interval = {0, 0},
+                    .it_value = {4, 0},
+                },
+        },
+    };
+    struct pldm_transport_test* test = NULL;
+    struct pldm_transport* ctx;
+    size_t len;
+    void* msg;
+    int rc;
+
+    EXPECT_EQ(pldm_transport_test_init(&test, seq, ARRAY_SIZE(seq)), 0);
+    ctx = pldm_transport_test_core(test);
+    rc = pldm_transport_send_recv_msg(ctx, 1, req, sizeof(req), &msg, &len);
+    EXPECT_EQ(rc, PLDM_REQUESTER_RECV_FAIL);
+    pldm_transport_test_destroy(test);
+}
+#endif
