Skip to content

Commit 518fd8f

Browse files
lundibunditargos
authored andcommitted
test: update and harden http2-reset-flood
* use new maxSessionInvalidFrames to lower the needed frames * slow down requests to generate less redundant after-session-close requests PR-URL: #30534Fixes: #30505 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: David Carlier <devnexen@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
1 parent 3bed1fa commit 518fd8f

1 file changed

Lines changed: 7 additions & 3 deletions

File tree

‎test/parallel/test-http2-reset-flood.js‎

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ const { Worker, parentPort } = require('worker_threads');
1313
// the two event loops intermixing, as we are writing in a busy loop here.
1414

1515
if(process.env.HAS_STARTED_WORKER){
16-
constserver=http2.createServer();
16+
constserver=http2.createServer({maxSessionInvalidFrames: 100});
1717
server.on('stream',(stream)=>{
1818
stream.respond({
1919
'content-type': 'text/plain',
@@ -59,16 +59,20 @@ const worker = new Worker(__filename).on('message', common.mustCall((port) => {
5959
});
6060

6161
letgotError=false;
62+
letstreamId=1;
6263

6364
functionwriteRequests(){
64-
for(leti=1;!gotError;i+=2){
65+
for(leti=1;i<10&&!gotError;i++){
6566
h2header[3]=1;// HEADERS
6667
h2header[4]=0x5;// END_HEADERS|END_STREAM
6768
h2header.writeIntBE(1,0,3);// Length: 1
68-
h2header.writeIntBE(i,5,4);// Stream ID
69+
h2header.writeIntBE(streamId,5,4);// Stream ID
70+
streamId+=2;
6971
// 0x88 = :status: 200
7072
conn.write(Buffer.concat([h2header,Buffer.from([0x88])]));
7173
}
74+
if(!gotError)
75+
setImmediate(writeRequests);
7276
}
7377

7478
conn.once('error',common.mustCall(()=>{

0 commit comments

Comments
 (0)