Commit Graph

39 Commits

Author SHA1 Message Date
Trustin Lee
92f010d688 Use int instead of long for maxFramePayloadLength 2012-05-30 17:21:51 -07:00
Trustin Lee
67ee22e23a Add max frame length for web socket to limit chance of DOS attack (#283)
- Contributed by @veebs
2012-05-30 17:13:00 -07:00
Trustin Lee
ec43aa121f Case-insensitive matching for Upgrade and Connection header (#278) 2012-05-30 16:43:04 -07:00
Trustin Lee
42abb6df3a QueueFactory cleanup
- Really attempt to create a queue to determine LTQ can be initialized
  in runtime, and cache the result
- Remove unnecessary Class<T> parameter in createQueue()
- Remove unused createQueue(Collection)
2012-05-30 16:19:22 -07:00
Trustin Lee
c7004ed142 Use Sec-WebSocket-Origin instead of Origin (#264)
- Contributed by @normanmaurer
2012-05-30 16:04:34 -07:00
Trustin Lee
367895f660 Add port to Origin if the port is non default (80/443). (#262) 2012-05-30 16:00:40 -07:00
Trustin Lee
7e94632d41 Add port to 'Origin' if the port is non default (80/443) (#262)
- Contributed by @normanmaurer
2012-05-30 15:57:39 -07:00
Trustin Lee
5e896cf0b3 Add a note that explain the behavior of CookieEncoder (#94)
- Contributed by @normanmaurer
2012-05-30 15:53:20 -07:00
Trustin Lee
922cec1f9b Add an option to tell a user if there was a missing response (#256)
- Contributed by @normanmaurer
2012-05-30 15:37:01 -07:00
Trustin Lee
b10cf29393 Add isDecodable/isEncodable() to codecs to support stacked codecs 2012-05-29 13:34:01 -07:00
Trustin Lee
c883b61503 Ported codec-http to the new API
- Added ChannelBufferHolders.catchAllBuffer()
- Relaxed UnsupportedMessageTypeException constructor signature
- EmbeddedChannel now uses the catchAllBuffer
- ChanelInboundMessageHandlerAdapter.messageReceive() throws Exception
- Added ChannelInboundStreamHandlerAdapter
2012-05-23 11:42:10 -07:00
Trustin Lee
af37ec4f23 Ported the HTTP snoop example to the new API
- Replaced pipeline factories with initializers
- Ported essential parts related with HTTP to the new API
- Replaced ChannelHandlerAdapter.combine() with CombinedChannelHandler
- Fixed a bug where ReplayingDecoder does not notify the next handler
- Fixed a bug where ReplayingDecoder calls wrong callDecode() method
- Added a destination buffer as an argument to AbstractChannel.doRead()
  for easier implementation
- Fixed a bug where NioSocketChannel did not try to increase the inbound
  buffer size (moved the logic to AbstractChannel)
2012-05-20 14:19:11 +09:00
Trustin Lee
251a18160c Move VoidEnum to util 2012-05-18 14:34:42 +09:00
Trustin Lee
1bf0dfe64a Retrofit ReplayingDecoder with the new API
- Moved up to 'codec' from 'codec.replay'
- Test passes with Redis client codec
2012-05-17 12:37:37 +09:00
Trustin Lee
92a688e5b2 Retrofit the codec framework with the new API (in progress)
- Replaced FrameDecoder and OneToOne(Encoder|Decoder) with:
  - (Stream|Message)To(String|Message)(Encoder|Decoder)
- Moved the classes in 'codec.frame' up to 'codec'
- Fixed some bugs found while running unit tests
2012-05-16 23:02:06 +09:00
Trustin Lee
368156f5d0 Another round of the new API design
- Channel now creates a ChannelPipeline by itself

  I find no reason to allow a user to use one's own pipeline
  implementation since I saw nobody does except for the cases where a
  user wants to add a user attribute to a channel, which is now covered
  by AttributeMap.

- Removed ChannelEvent and its subtypes because they are replaced by
  direct method invocation.
- Replaced ChannelSink with Channel.unsafe()
- Various getter renaming (e.g. Channel.getId() -> Channel.id())
- Added ChannelHandlerInvoker interface
- Implemented AbstractChannel and AbstractServerChannel
- Some other changes I don't remember
2012-05-01 17:19:41 +09:00
vibul
91dc8efd4b Issue #250. Implement web socket close frame status code and reason text. 2012-04-10 08:15:24 +02:00
Norman Maurer
32ff810b64 Correctly handle Hixie 76 websocket handshake response. See #222 2012-03-21 19:00:32 +01:00
norman
e8ddc3cf00 remove unnecessary check. See #222 2012-03-20 15:44:59 +01:00
norman
8d9f78c84d Correctly handle responses with return code of 1xx. See #222 2012-03-20 15:40:34 +01:00
Norman Maurer
cb931bfb92 Correctly handle HTTP Patch. See #227 2012-03-11 11:54:54 +01:00
Trustin Lee
279d859c7e Issue #220 - Treat content as non-empty on 101 Web Socket upgrade response 2012-03-09 11:07:26 +09:00
norman
09b41b28ea Correctly handle earlier versions of websockets. See #222 2012-03-08 08:08:36 +01:00
Dennis Boldt
b3cc305578 Organized imports. 2012-02-21 03:06:26 +01:00
Jestan Nirojan
7dbb8d2b8f fixed checkstyle build failures 2012-02-19 12:38:39 +05:30
norman
c46b083c1f Correctly decode URI in QueryStringDecoder. See #189 2012-02-15 08:30:22 +01:00
Trustin Lee
dd27cd510a Use getHeader() instead of getHeaders() 2012-02-07 18:13:13 +09:00
Trustin Lee
3b31daf8a3 Fix missing copyright headers 2012-02-07 17:26:55 +09:00
Carl Byström
f7a4a646f8 Don't require HttpChunkAggregator to be present in pipeline for Web Sockets. 2012-02-04 16:59:04 +01:00
Norman Maurer
6689063eef HttpMessageEncoder should add Header "Transfer-Encoding: chunked"
if HttpMessage.isChunked(). See #171
2012-02-02 15:24:30 +01:00
Trustin Lee
1f6e96ed15 Forward-port the pull request #172 to fix #164 2012-02-02 16:10:28 +09:00
Trustin Lee
cd69bd4e2c Backport the pull request #174 to fix #163 2012-02-02 15:52:06 +09:00
Trustin Lee
c1aa8b4c7b Clean up the new WebSocket package 2012-01-19 13:12:45 +09:00
Trustin Lee
b9b2366361 Fix checkstyle violations / Renaming RXTX -> Rxtx 2012-01-15 01:08:00 +09:00
Trustin Lee
303c1b5f79 Overall cleanup / Add lost old jzlib headers 2012-01-13 17:41:18 +09:00
Trustin Lee
ebfc4513e0 Apply checkstyle to the build
Please note that the build will fail at the moment due to various checkstyle
violations which should be fixed soon
2012-01-11 20:16:14 +09:00
Norman Maurer
999343e8cf Fix possible JavaDoc error in QueryStringEncoder. Type mismatch. See
#139
2012-01-08 21:54:31 +01:00
Trustin Lee
521bf83d0f Issue #141: hashdos security vulnerability in QueryStringDecoder and possibly other components
* Limited maximum number of parameters to 1024 by default and made the
limitation configurable
* QueryStringDecoder is now able to handle an HTTP POST content
2011-12-30 17:58:51 +09:00
Trustin Lee
8663716d38 Issue #60: Make the project multi-module
Split the project into the following modules:
* common
* buffer
* codec
* codec-http
* transport
* transport-*
* handler
* example
* testsuite (integration tests that involve 2+ modules)
* all (does nothing yet, but will make it generate netty.jar)

This commit also fixes the compilation errors with transport-sctp on
non-Linux systems.  It will at least compile without complaints.
2011-12-28 19:44:04 +09:00