#region License /* * CloseStatusCode.cs * * The MIT License * * Copyright (c) 2012-2015 sta.blockhead * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN * THE SOFTWARE. */ #endregion using System; namespace WebSocketSharp { /// /// Contains the values of the status code for the WebSocket connection close. /// /// /// /// The values of the status code are defined in /// Section 7.4 of RFC 6455. /// /// /// "Reserved value" must not be set as a status code in a close control frame by /// an endpoint. It's designated for use in applications expecting a status code to /// indicate that the connection was closed due to the system grounds. /// /// public enum CloseStatusCode : ushort { /// /// Equivalent to close status 1000. /// Indicates a normal close. /// Normal = 1000, /// /// Equivalent to close status 1001. /// Indicates that an endpoint is going away. /// Away = 1001, /// /// Equivalent to close status 1002. /// Indicates that an endpoint is terminating the connection due to a protocol error. /// ProtocolError = 1002, /// /// Equivalent to close status 1003. /// Indicates that an endpoint is terminating the connection because it has received /// a type of data that it cannot accept. /// UnsupportedData = 1003, /// /// Equivalent to close status 1004. /// Still undefined. A Reserved value. /// Undefined = 1004, /// /// Equivalent to close status 1005. /// Indicates that no status code was actually present. A Reserved value. /// NoStatus = 1005, /// /// Equivalent to close status 1006. /// Indicates that the connection was closed abnormally. A Reserved value. /// Abnormal = 1006, /// /// Equivalent to close status 1007. /// Indicates that an endpoint is terminating the connection because it has received /// a message that contains data that isn't consistent with the type of the message. /// InvalidData = 1007, /// /// Equivalent to close status 1008. /// Indicates that an endpoint is terminating the connection because it has received /// a message that violates its policy. /// PolicyViolation = 1008, /// /// Equivalent to close status 1009. /// Indicates that an endpoint is terminating the connection because it has received /// a message that is too big to process. /// TooBig = 1009, /// /// Equivalent to close status 1010. /// Indicates that a client is terminating the connection because it has expected /// the server to negotiate one or more extension, but the server didn't return /// them in the handshake response. /// MandatoryExtension = 1010, /// /// Equivalent to close status 1011. /// Indicates that a server is terminating the connection because it has encountered /// an unexpected condition that prevented it from fulfilling the request. /// ServerError = 1011, /// /// Equivalent to close status 1015. /// Indicates that the connection was closed due to a failure to perform a TLS handshake. /// A Reserved value. /// TlsHandshakeFailure = 1015 } }