Prevent hang in ReadSecret when buffer is too small
This commit is contained in:
		| @@ -1108,14 +1108,13 @@ int32_t ipc_ReadSecret | ||||
|                 n = dataLen;  | ||||
|                 while(n) | ||||
|                 { | ||||
|                     int bytes = IPC_READ(ssHandle->platHandle, gpReplyBuf, MIN_REPLY_BUF_LEN); | ||||
|                     if( bytes > 0) | ||||
|                         n -= MIN_REPLY_BUF_LEN; | ||||
|                     int bytesRead = IPC_READ(ssHandle->platHandle, gpReplyBuf, n); | ||||
|                     if( bytesRead > 0) | ||||
|                         n -= bytesRead; | ||||
|                     else | ||||
|                         break; | ||||
|                 } | ||||
|                 // Read the sscs return code also. | ||||
|                 IPC_READ(ssHandle->platHandle, (Byte *) &sockReturn, MSG_DWORD_LEN); | ||||
|  | ||||
|                 retCode = NSSCS_E_ENUM_BUFF_TOO_SHORT; | ||||
|                 break; | ||||
|             } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user