Skip to content

Commit 43cfbb2

Browse files
Add additional tests for http stuff + corresponding stubs
1 parent f88780c commit 43cfbb2

27 files changed

+901
-2
lines changed

java/ql/test/library-tests/frameworks/netty/manual/Test.java

Lines changed: 47 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
import io.netty.channel.*;
22
import io.netty.buffer.ByteBuf;
3-
// import io.netty.handler.codec.*;
4-
// import io.netty.handler.codec.http.*;
3+
import io.netty.handler.codec.*;
4+
import io.netty.handler.codec.http.*;
5+
import io.netty.handler.codec.http2.*;
6+
7+
import java.util.List;
58

69
class Test {
710
static <T> T source() { return null; }
@@ -28,4 +31,46 @@ void test(ByteBuf bb, byte[] x) {
2831
sink(bb); // $ hasTaintFlow
2932
sink(x);
3033
}
34+
35+
class C extends ByteToMessageDecoder {
36+
public void callDecode(ChannelHandlerContext ctx, ByteBuf msg, List<Object> out) {
37+
sink(msg); // $ hasTaintFlow
38+
}
39+
40+
public void decode(ChannelHandlerContext ctx, ByteBuf msg, List<Object> out) {
41+
sink(msg); // $ hasTaintFlow
42+
}
43+
44+
public void decodeLast(ChannelHandlerContext ctx, ByteBuf msg, List<Object> out) {
45+
sink(msg); // $ hasTaintFlow
46+
}
47+
}
48+
49+
class D extends SimpleChannelInboundHandler<FullHttpRequest> {
50+
public void channelRead0(ChannelHandlerContext ctx, FullHttpRequest msg) {
51+
sink(msg.uri()); // $ hasTaintFlow
52+
sink(msg.headers().get("X-blah")); // $ hasTaintFlow
53+
sink(msg.content()); // $ hasTaintFlow
54+
}
55+
}
56+
57+
class E extends Http2FrameAdapter {
58+
public int onDataRead(ChannelHandlerContext ctx, int streamId, ByteBuf data, int padding, boolean endOfStream) {
59+
sink(data); // $ hasTaintFlow
60+
return 0;
61+
}
62+
63+
public void onHeadersRead(ChannelHandlerContext ctx, int streamId, Http2Headers headers, int padding, boolean endStream) {
64+
sink(headers.get("X-blah")); // $ hasTaintFlow
65+
sink(headers.path()); // $ hasTaintFlow
66+
}
67+
68+
public void onPushPromiseRead(ChannelHandlerContext ctx, int streamId, int promisedStreamId, Http2Headers headers, int padding) {
69+
sink(headers); // $ hasTaintFlow
70+
}
71+
72+
public void onUnknownFrame(ChannelHandlerContext ctx, byte frameType, int streamId, Http2Flags flags, ByteBuf payload) {
73+
sink(payload); // $ hasTaintFlow
74+
}
75+
}
3176
}

java/ql/test/stubs/netty-4.1.x/io/netty/buffer/ByteBufHolder.java

Lines changed: 19 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

java/ql/test/stubs/netty-4.1.x/io/netty/channel/SimpleChannelInboundHandler.java

Lines changed: 17 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

java/ql/test/stubs/netty-4.1.x/io/netty/handler/codec/ByteToMessageDecoder.java

Lines changed: 36 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

java/ql/test/stubs/netty-4.1.x/io/netty/handler/codec/DecoderResult.java

Lines changed: 21 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

java/ql/test/stubs/netty-4.1.x/io/netty/handler/codec/DecoderResultProvider.java

Lines changed: 11 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

java/ql/test/stubs/netty-4.1.x/io/netty/handler/codec/Headers.java

Lines changed: 105 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

java/ql/test/stubs/netty-4.1.x/io/netty/handler/codec/http/FullHttpMessage.java

Lines changed: 19 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

java/ql/test/stubs/netty-4.1.x/io/netty/handler/codec/http/FullHttpRequest.java

Lines changed: 24 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

java/ql/test/stubs/netty-4.1.x/io/netty/handler/codec/http/HttpContent.java

Lines changed: 19 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)