Add a test for the problem fixed by the previous commit
Make sure the server can write normal data after earlier writing early data.
@@ -1544,7 +1544,8 @@ static int test_set_sigalgs(int idx)
#define MSG3 "This"
#define MSG4 "is"
#define MSG5 "a"
-#define MSG6 "test."
+#define MSG6 "test"
+#define MSG7 "message."
/*
* Helper method to setup objects for early data test. Caller frees objects on
@@ -1775,6 +1776,19 @@ static int test_early_data_read_write(int idx)
goto end;
}
+ /* Server should be able to write normal data */
+ if (!SSL_write_ex(serverssl, MSG7, strlen(MSG7), &written)
+ || written != strlen(MSG7)) {
+ printf("Failed writing normal data message 7\n");
+ goto end;
+ }
+ if (!SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes)
+ || readbytes != strlen(MSG7)
+ || memcmp(MSG7, buf, strlen(MSG7))) {
+ printf("Failed reading message 7\n");
+ goto end;
+ }
+
SSL_SESSION_free(sess);
sess = SSL_get1_session(clientssl);
