174 references to ConnectionOptions
Microsoft.AspNetCore.Server.Kestrel.Core (19)
Internal\Http\Http1MessageBody.cs (4)
135var connectionOptions = HttpHeaders.ParseConnection(headers); 137upgrade = (connectionOptions & ConnectionOptions.Upgrade) != 0; 138keepAlive = keepAlive || (connectionOptions & ConnectionOptions.KeepAlive) != 0; 139keepAlive = keepAlive && (connectionOptions & ConnectionOptions.Close) == 0;
Internal\Http\HttpHeaders.cs (14)
318public static ConnectionOptions ParseConnection(HttpHeaders headers) 335return ConnectionOptions.None; 338var connectionOptions = ConnectionOptions.None; 348return ConnectionOptions.KeepAlive; 384var potentialConnectionOptions = ConnectionOptions.None; 401potentialConnectionOptions = ConnectionOptions.KeepAlive; 416potentialConnectionOptions = ConnectionOptions.Upgrade; 425potentialConnectionOptions = ConnectionOptions.Close; 450potentialConnectionOptions = ConnectionOptions.None; 482if (connectionOptions == ConnectionOptions.Upgrade) 486else if (connectionOptions == ConnectionOptions.KeepAlive) 490else if (connectionOptions == ConnectionOptions.Close)
Internal\Http\HttpProtocol.cs (1)
1153(HttpHeaders.ParseConnection(responseHeaders) & ConnectionOptions.KeepAlive) == 0)
Microsoft.AspNetCore.Server.Kestrel.Core.Tests (155)
HttpHeadersTests.cs (155)
17[InlineData("", (int)(ConnectionOptions.None))] 18[InlineData(",", (int)(ConnectionOptions.None))] 19[InlineData(" ,", (int)(ConnectionOptions.None))] 20[InlineData(" , ", (int)(ConnectionOptions.None))] 21[InlineData(",,", (int)(ConnectionOptions.None))] 22[InlineData(" ,,", (int)(ConnectionOptions.None))] 23[InlineData(",, ", (int)(ConnectionOptions.None))] 24[InlineData(" , ,", (int)(ConnectionOptions.None))] 25[InlineData(" , , ", (int)(ConnectionOptions.None))] 26[InlineData("KEEP-ALIVE", (int)(ConnectionOptions.KeepAlive))] 27[InlineData("keep-alive", (int)(ConnectionOptions.KeepAlive))] 28[InlineData("keep-alive, upgrade", (int)(ConnectionOptions.KeepAlive | ConnectionOptions.Upgrade))] 29[InlineData("keep-alive,upgrade", (int)(ConnectionOptions.KeepAlive | ConnectionOptions.Upgrade))] 30[InlineData("upgrade, keep-alive", (int)(ConnectionOptions.KeepAlive | ConnectionOptions.Upgrade))] 31[InlineData("upgrade,keep-alive", (int)(ConnectionOptions.KeepAlive | ConnectionOptions.Upgrade))] 32[InlineData("upgrade,,keep-alive", (int)(ConnectionOptions.KeepAlive | ConnectionOptions.Upgrade))] 33[InlineData("keep-alive,", (int)(ConnectionOptions.KeepAlive))] 34[InlineData("keep-alive,,", (int)(ConnectionOptions.KeepAlive))] 35[InlineData("keep-alive, ", (int)(ConnectionOptions.KeepAlive))] 36[InlineData("keep-alive, ,", (int)(ConnectionOptions.KeepAlive))] 37[InlineData("keep-alive, , ", (int)(ConnectionOptions.KeepAlive))] 38[InlineData("keep-alive ,", (int)(ConnectionOptions.KeepAlive))] 39[InlineData(",keep-alive", (int)(ConnectionOptions.KeepAlive))] 40[InlineData(", keep-alive", (int)(ConnectionOptions.KeepAlive))] 41[InlineData(",,keep-alive", (int)(ConnectionOptions.KeepAlive))] 42[InlineData(", ,keep-alive", (int)(ConnectionOptions.KeepAlive))] 43[InlineData(",, keep-alive", (int)(ConnectionOptions.KeepAlive))] 44[InlineData(", , keep-alive", (int)(ConnectionOptions.KeepAlive))] 45[InlineData("UPGRADE", (int)(ConnectionOptions.Upgrade))] 46[InlineData("upgrade", (int)(ConnectionOptions.Upgrade))] 47[InlineData("upgrade,", (int)(ConnectionOptions.Upgrade))] 48[InlineData("upgrade,,", (int)(ConnectionOptions.Upgrade))] 49[InlineData("upgrade, ", (int)(ConnectionOptions.Upgrade))] 50[InlineData("upgrade, ,", (int)(ConnectionOptions.Upgrade))] 51[InlineData("upgrade, , ", (int)(ConnectionOptions.Upgrade))] 52[InlineData("upgrade ,", (int)(ConnectionOptions.Upgrade))] 53[InlineData(",upgrade", (int)(ConnectionOptions.Upgrade))] 54[InlineData(", upgrade", (int)(ConnectionOptions.Upgrade))] 55[InlineData(",,upgrade", (int)(ConnectionOptions.Upgrade))] 56[InlineData(", ,upgrade", (int)(ConnectionOptions.Upgrade))] 57[InlineData(",, upgrade", (int)(ConnectionOptions.Upgrade))] 58[InlineData(", , upgrade", (int)(ConnectionOptions.Upgrade))] 59[InlineData("close,", (int)(ConnectionOptions.Close))] 60[InlineData("close,,", (int)(ConnectionOptions.Close))] 61[InlineData("close, ", (int)(ConnectionOptions.Close))] 62[InlineData("close, ,", (int)(ConnectionOptions.Close))] 63[InlineData("close, , ", (int)(ConnectionOptions.Close))] 64[InlineData("close ,", (int)(ConnectionOptions.Close))] 65[InlineData(",close", (int)(ConnectionOptions.Close))] 66[InlineData(", close", (int)(ConnectionOptions.Close))] 67[InlineData(",,close", (int)(ConnectionOptions.Close))] 68[InlineData(", ,close", (int)(ConnectionOptions.Close))] 69[InlineData(",, close", (int)(ConnectionOptions.Close))] 70[InlineData(", , close", (int)(ConnectionOptions.Close))] 71[InlineData("kupgrade", (int)(ConnectionOptions.None))] 72[InlineData("keupgrade", (int)(ConnectionOptions.None))] 73[InlineData("ukeep-alive", (int)(ConnectionOptions.None))] 74[InlineData("upkeep-alive", (int)(ConnectionOptions.None))] 75[InlineData("k,upgrade", (int)(ConnectionOptions.Upgrade))] 76[InlineData("u,keep-alive", (int)(ConnectionOptions.KeepAlive))] 77[InlineData("ke,upgrade", (int)(ConnectionOptions.Upgrade))] 78[InlineData("up,keep-alive", (int)(ConnectionOptions.KeepAlive))] 79[InlineData("CLOSE", (int)(ConnectionOptions.Close))] 80[InlineData("close", (int)(ConnectionOptions.Close))] 81[InlineData("upgrade,close", (int)(ConnectionOptions.Close | ConnectionOptions.Upgrade))] 82[InlineData("close,upgrade", (int)(ConnectionOptions.Close | ConnectionOptions.Upgrade))] 83[InlineData("keep-alive2", (int)(ConnectionOptions.None))] 84[InlineData("keep-alive2 ", (int)(ConnectionOptions.None))] 85[InlineData("keep-alive2 ,", (int)(ConnectionOptions.None))] 86[InlineData("keep-alive2,", (int)(ConnectionOptions.None))] 87[InlineData("upgrade2", (int)(ConnectionOptions.None))] 88[InlineData("upgrade2 ", (int)(ConnectionOptions.None))] 89[InlineData("upgrade2 ,", (int)(ConnectionOptions.None))] 90[InlineData("upgrade2,", (int)(ConnectionOptions.None))] 91[InlineData("close2", (int)(ConnectionOptions.None))] 92[InlineData("close2 ", (int)(ConnectionOptions.None))] 93[InlineData("close2 ,", (int)(ConnectionOptions.None))] 94[InlineData("close2,", (int)(ConnectionOptions.None))] 95[InlineData("close close", (int)(ConnectionOptions.None))] 96[InlineData("close dclose", (int)(ConnectionOptions.None))] 97[InlineData("keep-alivekeep-alive", (int)(ConnectionOptions.None))] 98[InlineData("keep-aliveupgrade", (int)(ConnectionOptions.None))] 99[InlineData("upgradeupgrade", (int)(ConnectionOptions.None))] 100[InlineData("upgradekeep-alive", (int)(ConnectionOptions.None))] 101[InlineData("closeclose", (int)(ConnectionOptions.None))] 102[InlineData("closeupgrade", (int)(ConnectionOptions.None))] 103[InlineData("upgradeclose", (int)(ConnectionOptions.None))] 104[InlineData("keep-alive 2", (int)(ConnectionOptions.None))] 105[InlineData("upgrade 2", (int)(ConnectionOptions.None))] 106[InlineData("keep-alive 2, close", (int)(ConnectionOptions.Close))] 107[InlineData("upgrade 2, close", (int)(ConnectionOptions.Close))] 108[InlineData("close, keep-alive 2", (int)(ConnectionOptions.Close))] 109[InlineData("close, upgrade 2", (int)(ConnectionOptions.Close))] 110[InlineData("close 2, upgrade", (int)(ConnectionOptions.Upgrade))] 111[InlineData("upgrade, close 2", (int)(ConnectionOptions.Upgrade))] 112[InlineData("k2ep-alive", (int)(ConnectionOptions.None))] 113[InlineData("ke2p-alive", (int)(ConnectionOptions.None))] 114[InlineData("u2grade", (int)(ConnectionOptions.None))] 115[InlineData("up2rade", (int)(ConnectionOptions.None))] 116[InlineData("c2ose", (int)(ConnectionOptions.None))] 117[InlineData("cl2se", (int)(ConnectionOptions.None))] 118[InlineData("k2ep-alive,", (int)(ConnectionOptions.None))] 119[InlineData("ke2p-alive,", (int)(ConnectionOptions.None))] 120[InlineData("u2grade,", (int)(ConnectionOptions.None))] 121[InlineData("up2rade,", (int)(ConnectionOptions.None))] 122[InlineData("c2ose,", (int)(ConnectionOptions.None))] 123[InlineData("cl2se,", (int)(ConnectionOptions.None))] 124[InlineData("k2ep-alive ", (int)(ConnectionOptions.None))] 125[InlineData("ke2p-alive ", (int)(ConnectionOptions.None))] 126[InlineData("u2grade ", (int)(ConnectionOptions.None))] 127[InlineData("up2rade ", (int)(ConnectionOptions.None))] 128[InlineData("c2ose ", (int)(ConnectionOptions.None))] 129[InlineData("cl2se ", (int)(ConnectionOptions.None))] 130[InlineData("k2ep-alive ,", (int)(ConnectionOptions.None))] 131[InlineData("ke2p-alive ,", (int)(ConnectionOptions.None))] 132[InlineData("u2grade ,", (int)(ConnectionOptions.None))] 133[InlineData("up2rade ,", (int)(ConnectionOptions.None))] 134[InlineData("c2ose ,", (int)(ConnectionOptions.None))] 135[InlineData("cl2se ,", (int)(ConnectionOptions.None))] 138var expectedConnectionOptions = (ConnectionOptions)intExpectedConnectionOptions; 141var connectionOptions = HttpHeaders.ParseConnection(requestHeaders); 146[InlineData("keep-alive", "upgrade", (int)(ConnectionOptions.KeepAlive | ConnectionOptions.Upgrade))] 147[InlineData("upgrade", "keep-alive", (int)(ConnectionOptions.KeepAlive | ConnectionOptions.Upgrade))] 148[InlineData("keep-alive", "", (int)(ConnectionOptions.KeepAlive))] 149[InlineData("", "keep-alive", (int)(ConnectionOptions.KeepAlive))] 150[InlineData("upgrade", "", (int)(ConnectionOptions.Upgrade))] 151[InlineData("", "upgrade", (int)(ConnectionOptions.Upgrade))] 152[InlineData("keep-alive, upgrade", "", (int)(ConnectionOptions.KeepAlive | ConnectionOptions.Upgrade))] 153[InlineData("upgrade, keep-alive", "", (int)(ConnectionOptions.KeepAlive | ConnectionOptions.Upgrade))] 154[InlineData("", "keep-alive, upgrade", (int)(ConnectionOptions.KeepAlive | ConnectionOptions.Upgrade))] 155[InlineData("", "upgrade, keep-alive", (int)(ConnectionOptions.KeepAlive | ConnectionOptions.Upgrade))] 156[InlineData("", "", (int)(ConnectionOptions.None))] 157[InlineData("close", "", (int)(ConnectionOptions.Close))] 158[InlineData("", "close", (int)(ConnectionOptions.Close))] 159[InlineData("close", "upgrade", (int)(ConnectionOptions.Close | ConnectionOptions.Upgrade))] 160[InlineData("upgrade", "close", (int)(ConnectionOptions.Close | ConnectionOptions.Upgrade))] 163var expectedConnectionOptions = (ConnectionOptions)intExpectedConnectionOptions; 167var connectionOptions = HttpHeaders.ParseConnection(requestHeaders);