quic: copy options.certs buffer instead of detaching · nodejs/node@45c1ebd
@@ -28,16 +28,24 @@ assert.strictEqual(endpoint.address, undefined);
2828await assert.rejects(listen(123, { keys, certs, endpoint }), {
2929code: 'ERR_INVALID_ARG_TYPE',
3030});
31+// Buffer is not detached.
32+assert.strictEqual(certs.buffer.detached, false);
31333234await assert.rejects(listen(() => {}, 123), {
3335code: 'ERR_INVALID_ARG_TYPE',
3436});
35373638await listen(() => {}, { keys, certs, endpoint });
39+// Buffer is not detached.
40+assert.strictEqual(certs.buffer.detached, false);
41+3742await assert.rejects(listen(() => {}, { keys, certs, endpoint }), {
3843code: 'ERR_INVALID_STATE',
3944});
404546+// Buffer is not detached.
47+assert.strictEqual(certs.buffer.detached, false);
48+4149assert.ok(endpoint[kState].isBound);
4250assert.ok(endpoint[kState].isReceiving);
4351assert.ok(endpoint[kState].isListening);
@@ -59,6 +67,9 @@ assert.ok(endpoint.destroyed);
5967await assert.rejects(listen(() => {}, { keys, certs, endpoint }), {
6068code: 'ERR_INVALID_STATE',
6169});
70+// Buffer is not detached.
71+assert.strictEqual(certs.buffer.detached, false);
72+6273assert.throws(() => { endpoint.busy = true; }, {
6374code: 'ERR_INVALID_STATE',
6475});