コード例 #1
0
 public WebSocketFrame(
     WebSocketFin fin,
     WebSocketRsv rsv1,
     WebSocketRsv rsv2,
     WebSocketRsv rsv3,
     WebSocketOpcode opcode,
     WebSocketMask mask,
     byte[] maskingKey,
     Stream payload
     )
     : this(fin, rsv1, rsv2, rsv3, opcode, mask, maskingKey, 0, new byte[0], payload)
 {
     if (payload != null)
     {
         var len = payload.Length;
         if (len < 126)
         {
             _payloadLength    = (byte)len;
             _extPayloadLength = new byte[0];
         }
         else if (len < 0x010000)
         {
             _payloadLength    = (byte)126;
             _extPayloadLength = WebSocketUtils.GetBigEndianBytes((ushort)len);
         }
         else
         {
             _payloadLength    = (byte)127;
             _extPayloadLength = WebSocketUtils.GetBigEndianBytes((ulong)len);
         }
     }
 }
コード例 #2
0
 public WebSocketFrame(
     WebSocketFin fin,
     WebSocketOpcode opcode,
     WebSocketMask mask,
     Stream payload
     )
     : this(fin, WebSocketRsv.Off, WebSocketRsv.Off, WebSocketRsv.Off, opcode, mask, mask == WebSocketMask.Mask ? WebSocketUtils.CreateMaskingKey() : new byte[0], payload)
 {
 }