Esempio n. 1
0
        private void write(byte[] buffer, ref int offset, int length)
        {
            if (_state == InputChunkState.End)
            {
                throwProtocolViolation("The chunks were ended.");
            }

            if (_state == InputChunkState.None)
            {
                _state = setChunkSize(buffer, ref offset, length);
                if (_state == InputChunkState.None)
                {
                    return;
                }

                _saved.Length = 0;
                _sawCr        = false;
                _gotIt        = false;
            }

            if (_state == InputChunkState.Data && offset < length)
            {
                _state = writeData(buffer, ref offset, length);
                if (_state == InputChunkState.Data)
                {
                    return;
                }
            }

            if (_state == InputChunkState.DataEnded && offset < length)
            {
                _state = seekCrLf(buffer, ref offset, length);
                if (_state == InputChunkState.DataEnded)
                {
                    return;
                }

                _sawCr = false;
            }

            if (_state == InputChunkState.Trailer && offset < length)
            {
                _state = setTrailer(buffer, ref offset, length);
                if (_state == InputChunkState.Trailer)
                {
                    return;
                }

                _saved.Length = 0;
            }

            if (offset < length)
            {
                write(buffer, ref offset, length);
            }
        }
Esempio n. 2
0
        private void write(byte [] buffer, ref int offset, int size)
        {
            if (_state == InputChunkState.None)
            {
                _state = setChunkSize(buffer, ref offset, size);
                if (_state == InputChunkState.None)
                {
                    return;
                }

                _saved.Length = 0;
                _sawCR        = false;
                _gotit        = false;
            }

            if (_state == InputChunkState.Body && offset < size)
            {
                _state = writeBody(buffer, ref offset, size);
                if (_state == InputChunkState.Body)
                {
                    return;
                }
            }

            if (_state == InputChunkState.BodyFinished && offset < size)
            {
                _state = readCRLF(buffer, ref offset, size);
                if (_state == InputChunkState.BodyFinished)
                {
                    return;
                }

                _sawCR = false;
            }

            if (_state == InputChunkState.Trailer && offset < size)
            {
                _state = readTrailer(buffer, ref offset, size);
                if (_state == InputChunkState.Trailer)
                {
                    return;
                }

                _saved.Length = 0;
                _sawCR        = false;
                _gotit        = false;
            }

            if (offset < size)
            {
                write(buffer, ref offset, size);
            }
        }
Esempio n. 3
0
        private void write(byte[] buffer, ref int offset, int length)
        {
            if (_state == InputChunkState.None)
            {
                _state = setChunkSize(buffer, ref offset, length);
                if (_state == InputChunkState.None)
                {
                    return;
                }

                _saved.Length = 0;
                _sawCr        = false;
                _gotIt        = false;
            }

            if (_state == InputChunkState.Body && offset < length)
            {
                _state = writeBody(buffer, ref offset, length);
                if (_state == InputChunkState.Body)
                {
                    return;
                }
            }

            if (_state == InputChunkState.BodyFinished && offset < length)
            {
                _state = seekCrLf(buffer, ref offset, length);
                if (_state == InputChunkState.BodyFinished)
                {
                    return;
                }

                _sawCr = false;
            }

            if (_state == InputChunkState.Trailer && offset < length)
            {
                _state = setHeaders(buffer, ref offset, length);
                if (_state == InputChunkState.Trailer)
                {
                    return;
                }

                _saved.Length = 0;
                _sawCr        = false;
                _gotIt        = false;
            }

            if (offset < length)
            {
                write(buffer, ref offset, length);
            }
        }
Esempio n. 4
0
 private void write(byte[] buffer, ref int offset, int length)
 {
     if (this._state == InputChunkState.End)
     {
         ChunkStream.throwProtocolViolation("The chunks were ended.");
     }
     if (this._state == InputChunkState.None)
     {
         this._state = this.setChunkSize(buffer, ref offset, length);
         if (this._state == InputChunkState.None)
         {
             return;
         }
         this._saved.Length = 0;
         this._sawCr        = false;
         this._gotIt        = false;
     }
     if ((this._state != InputChunkState.Data ? false : offset < length))
     {
         this._state = this.writeData(buffer, ref offset, length);
         if (this._state == InputChunkState.Data)
         {
             return;
         }
     }
     if ((this._state != InputChunkState.DataEnded ? false : offset < length))
     {
         this._state = this.seekCrLf(buffer, ref offset, length);
         if (this._state == InputChunkState.DataEnded)
         {
             return;
         }
         this._sawCr = false;
     }
     if ((this._state != InputChunkState.Trailer ? false : offset < length))
     {
         this._state = this.setTrailer(buffer, ref offset, length);
         if (this._state == InputChunkState.Trailer)
         {
             return;
         }
         this._saved.Length = 0;
     }
     if (offset < length)
     {
         this.write(buffer, ref offset, length);
     }
 }
Esempio n. 5
0
        private void write(byte[] buffer, ref int offset, int length)
        {
            if (_state == InputChunkState.End)
            throwProtocolViolation ("The chunks were ended.");

              if (_state == InputChunkState.None) {
            _state = setChunkSize (buffer, ref offset, length);
            if (_state == InputChunkState.None)
              return;

            _saved.Length = 0;
            _sawCr = false;
            _gotIt = false;
              }

              if (_state == InputChunkState.Data && offset < length) {
            _state = writeData (buffer, ref offset, length);
            if (_state == InputChunkState.Data)
              return;
              }

              if (_state == InputChunkState.DataEnded && offset < length) {
            _state = seekCrLf (buffer, ref offset, length);
            if (_state == InputChunkState.DataEnded)
              return;

            _sawCr = false;
              }

              if (_state == InputChunkState.Trailer && offset < length) {
            _state = setTrailer (buffer, ref offset, length);
            if (_state == InputChunkState.Trailer)
              return;

            _saved.Length = 0;
              }

              if (offset < length)
            write (buffer, ref offset, length);
        }
Esempio n. 6
0
    private void write (byte [] buffer, ref int offset, int size)
    {
      if (_state == InputChunkState.None) {
        _state = setChunkSize (buffer, ref offset, size);
        if (_state == InputChunkState.None)
          return;

        _saved.Length = 0;
        _sawCR = false;
        _gotit = false;
      }

      if (_state == InputChunkState.Body && offset < size) {
        _state = writeBody (buffer, ref offset, size);
        if (_state == InputChunkState.Body)
          return;
      }

      if (_state == InputChunkState.BodyFinished && offset < size) {
        _state = readCRLF (buffer, ref offset, size);
        if (_state == InputChunkState.BodyFinished)
          return;

        _sawCR = false;
      }
      
      if (_state == InputChunkState.Trailer && offset < size) {
        _state = readTrailer (buffer, ref offset, size);
        if (_state == InputChunkState.Trailer)
          return;

        _saved.Length = 0;
        _sawCR = false;
        _gotit = false;
      }

      if (offset < size)
        write (buffer, ref offset, size);
    }
Esempio n. 7
0
    private void write (byte[] buffer, ref int offset, int length)
    {
      if (_state == InputChunkState.None) {
        _state = setChunkSize (buffer, ref offset, length);
        if (_state == InputChunkState.None)
          return;

        _saved.Length = 0;
        _sawCr = false;
        _gotIt = false;
      }

      if (_state == InputChunkState.Body && offset < length) {
        _state = writeBody (buffer, ref offset, length);
        if (_state == InputChunkState.Body)
          return;
      }

      if (_state == InputChunkState.BodyFinished && offset < length) {
        _state = seekCrLf (buffer, ref offset, length);
        if (_state == InputChunkState.BodyFinished)
          return;

        _sawCr = false;
      }

      if (_state == InputChunkState.Trailer && offset < length) {
        _state = setHeaders (buffer, ref offset, length);
        if (_state == InputChunkState.Trailer)
          return;

        _saved.Length = 0;
      }

      if (offset < length)
        write (buffer, ref offset, length);
    }