Consumes remaining unread data from socket buffer. 42/318442/2
authorDongsun Lee <ds73.lee@samsung.com>
Fri, 17 Jan 2025 03:02:10 +0000 (12:02 +0900)
committerDongsun Lee <ds73.lee@samsung.com>
Fri, 17 Jan 2025 03:08:23 +0000 (12:08 +0900)
- In case that an error returns before deserialization is done
  from socket buffer, the server calls processOne() repeatedly.
- To block this situation, we have to clear up all unread data
  from socket buffer.

Change-Id: Ic73b07836d83af05719d41349bab78ce625ee821

src/server/service/password.cpp

index 47aed680c045b6e30cdc77ec24c94953970c0b38..339136b8528900e1008c811f693effc3fe298d96 100644 (file)
@@ -346,6 +346,9 @@ bool PasswordService::processOne(const ConnectionID &conn, MessageBuffer &buffer
                        retCode = AUTH_PASSWD_API_ERROR_SERVER_ERROR;
                }
 
+               // Consumes remaining unread data from buffer
+               buffer.Pop();
+
                //everything is OK, send return code and extra data
                Serialization::Serialize(sendBuffer, retCode);