mirror of
https://github.com/github/codeql.git
synced 2025-12-16 16:53:25 +01:00
Merge branch 'main' into criemen/upgrade-rules-rust
This commit is contained in:
@@ -14,7 +14,7 @@ local_path_override(
|
||||
# see https://registry.bazel.build/ for a list of available packages
|
||||
|
||||
bazel_dep(name = "platforms", version = "0.0.10")
|
||||
bazel_dep(name = "rules_go", version = "0.48.0")
|
||||
bazel_dep(name = "rules_go", version = "0.49.0")
|
||||
bazel_dep(name = "rules_pkg", version = "0.10.1")
|
||||
bazel_dep(name = "rules_nodejs", version = "6.2.0-codeql.1")
|
||||
bazel_dep(name = "rules_python", version = "0.32.2")
|
||||
@@ -23,7 +23,7 @@ bazel_dep(name = "abseil-cpp", version = "20240116.0", repo_name = "absl")
|
||||
bazel_dep(name = "nlohmann_json", version = "3.11.3", repo_name = "json")
|
||||
bazel_dep(name = "fmt", version = "10.0.0")
|
||||
bazel_dep(name = "rules_kotlin", version = "1.9.4-codeql.1")
|
||||
bazel_dep(name = "gazelle", version = "0.37.0")
|
||||
bazel_dep(name = "gazelle", version = "0.38.0")
|
||||
bazel_dep(name = "rules_dotnet", version = "0.15.1")
|
||||
bazel_dep(name = "googletest", version = "1.14.0.bcr.1")
|
||||
bazel_dep(name = "rules_rust", version = "0.49.1")
|
||||
|
||||
@@ -4179,6 +4179,40 @@ destructors_for_temps.cpp:
|
||||
# 103| Type = [IntType] int
|
||||
# 103| ValueCategory = prvalue
|
||||
# 104| getStmt(1): [ReturnStmt] return ...
|
||||
generic.c:
|
||||
# 1| [TopLevelFunction] void c11_generic_test(unsigned int, int)
|
||||
# 1| <params>:
|
||||
# 1| getParameter(0): [Parameter] x
|
||||
# 1| Type = [IntType] unsigned int
|
||||
# 1| getParameter(1): [Parameter] y
|
||||
# 1| Type = [IntType] int
|
||||
# 1| getEntryPoint(): [BlockStmt] { ... }
|
||||
# 2| getStmt(0): [DeclStmt] declaration
|
||||
# 2| getDeclarationEntry(0): [VariableDeclarationEntry] definition of r
|
||||
# 2| Type = [IntType] unsigned int
|
||||
# 3| getStmt(1): [ExprStmt] ExprStmt
|
||||
# 3| getExpr(): [AssignExpr] ... = ...
|
||||
# 3| Type = [IntType] unsigned int
|
||||
# 3| ValueCategory = prvalue
|
||||
# 3| getLValue(): [VariableAccess] r
|
||||
# 3| Type = [IntType] unsigned int
|
||||
# 3| ValueCategory = lvalue
|
||||
# 3| getRValue(): [AddExpr] ... + ...
|
||||
# 3| Type = [IntType] unsigned int
|
||||
# 3| ValueCategory = prvalue
|
||||
# 3| getLeftOperand(): [VariableAccess] x
|
||||
# 3| Type = [IntType] unsigned int
|
||||
# 3| ValueCategory = prvalue(load)
|
||||
# 3| getRightOperand(): [Literal] 1
|
||||
# 3| Type = [IntType] int
|
||||
# 3| Value = [Literal] 1
|
||||
# 3| ValueCategory = prvalue
|
||||
# 3| getRightOperand().getFullyConverted(): [CStyleCast] (unsigned int)...
|
||||
# 3| Conversion = [IntegralConversion] integral conversion
|
||||
# 3| Type = [IntType] unsigned int
|
||||
# 3| Value = [CStyleCast] 1
|
||||
# 3| ValueCategory = prvalue
|
||||
# 4| getStmt(2): [ReturnStmt] return ...
|
||||
ir.c:
|
||||
# 5| [TopLevelFunction] int getX(MyCoords*)
|
||||
# 5| <params>:
|
||||
|
||||
@@ -2958,6 +2958,30 @@ destructors_for_temps.cpp:
|
||||
# 102| v102_9(void) = AliasedUse : ~m103_26
|
||||
# 102| v102_10(void) = ExitFunction :
|
||||
|
||||
generic.c:
|
||||
# 1| void c11_generic_test(unsigned int, int)
|
||||
# 1| Block 0
|
||||
# 1| v1_1(void) = EnterFunction :
|
||||
# 1| m1_2(unknown) = AliasedDefinition :
|
||||
# 1| m1_3(unknown) = InitializeNonLocal :
|
||||
# 1| m1_4(unknown) = Chi : total:m1_2, partial:m1_3
|
||||
# 1| r1_5(glval<unsigned int>) = VariableAddress[x] :
|
||||
# 1| m1_6(unsigned int) = InitializeParameter[x] : &:r1_5
|
||||
# 1| r1_7(glval<int>) = VariableAddress[y] :
|
||||
# 1| m1_8(int) = InitializeParameter[y] : &:r1_7
|
||||
# 2| r2_1(glval<unsigned int>) = VariableAddress[r] :
|
||||
# 2| m2_2(unsigned int) = Uninitialized[r] : &:r2_1
|
||||
# 3| r3_1(glval<unsigned int>) = VariableAddress[x] :
|
||||
# 3| r3_2(unsigned int) = Load[x] : &:r3_1, m1_6
|
||||
# 3| r3_3(unsigned int) = Constant[1] :
|
||||
# 3| r3_4(unsigned int) = Add : r3_2, r3_3
|
||||
# 3| r3_5(glval<unsigned int>) = VariableAddress[r] :
|
||||
# 3| m3_6(unsigned int) = Store[r] : &:r3_5, r3_4
|
||||
# 4| v4_1(void) = NoOp :
|
||||
# 1| v1_9(void) = ReturnVoid :
|
||||
# 1| v1_10(void) = AliasedUse : m1_3
|
||||
# 1| v1_11(void) = ExitFunction :
|
||||
|
||||
ir.c:
|
||||
# 7| void MyCoordsTest(int)
|
||||
# 7| Block 0
|
||||
|
||||
6
cpp/ql/test/library-tests/ir/ir/generic.c
Normal file
6
cpp/ql/test/library-tests/ir/ir/generic.c
Normal file
@@ -0,0 +1,6 @@
|
||||
void c11_generic_test(unsigned int x, int y) {
|
||||
unsigned int r;
|
||||
r = _Generic(r, unsigned int: x, int: y) + 1;
|
||||
}
|
||||
|
||||
// // semmle-extractor-options: -std=c11
|
||||
@@ -2732,6 +2732,29 @@ destructors_for_temps.cpp:
|
||||
# 102| v102_7(void) = AliasedUse : ~m?
|
||||
# 102| v102_8(void) = ExitFunction :
|
||||
|
||||
generic.c:
|
||||
# 1| void c11_generic_test(unsigned int, int)
|
||||
# 1| Block 0
|
||||
# 1| v1_1(void) = EnterFunction :
|
||||
# 1| mu1_2(unknown) = AliasedDefinition :
|
||||
# 1| mu1_3(unknown) = InitializeNonLocal :
|
||||
# 1| r1_4(glval<unsigned int>) = VariableAddress[x] :
|
||||
# 1| mu1_5(unsigned int) = InitializeParameter[x] : &:r1_4
|
||||
# 1| r1_6(glval<int>) = VariableAddress[y] :
|
||||
# 1| mu1_7(int) = InitializeParameter[y] : &:r1_6
|
||||
# 2| r2_1(glval<unsigned int>) = VariableAddress[r] :
|
||||
# 2| mu2_2(unsigned int) = Uninitialized[r] : &:r2_1
|
||||
# 3| r3_1(glval<unsigned int>) = VariableAddress[x] :
|
||||
# 3| r3_2(unsigned int) = Load[x] : &:r3_1, ~m?
|
||||
# 3| r3_3(unsigned int) = Constant[1] :
|
||||
# 3| r3_4(unsigned int) = Add : r3_2, r3_3
|
||||
# 3| r3_5(glval<unsigned int>) = VariableAddress[r] :
|
||||
# 3| mu3_6(unsigned int) = Store[r] : &:r3_5, r3_4
|
||||
# 4| v4_1(void) = NoOp :
|
||||
# 1| v1_8(void) = ReturnVoid :
|
||||
# 1| v1_9(void) = AliasedUse : ~m?
|
||||
# 1| v1_10(void) = ExitFunction :
|
||||
|
||||
ir.c:
|
||||
# 7| void MyCoordsTest(int)
|
||||
# 7| Block 0
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
load("@bazel_skylib//rules:native_binary.bzl", "native_binary")
|
||||
load("@gazelle//:def.bzl", "gazelle")
|
||||
load("@rules_pkg//pkg:mappings.bzl", "pkg_files")
|
||||
load("//misc/bazel:pkg.bzl", "codeql_pack", "codeql_pkg_files")
|
||||
|
||||
native_binary(
|
||||
gazelle(
|
||||
name = "gazelle",
|
||||
src = "@gazelle//cmd/gazelle",
|
||||
out = "gazelle.exe",
|
||||
args = ["go/extractor"],
|
||||
)
|
||||
|
||||
|
||||
@@ -52,6 +52,7 @@ github.com/beego/beego/server/web/context,,15,1,,,,,,15,1,
|
||||
github.com/beego/beego/utils,,,13,,,,,,,13,
|
||||
github.com/couchbase/gocb,,,18,,,,,,,18,
|
||||
github.com/couchbaselabs/gocb,,,18,,,,,,,18,
|
||||
github.com/crankycoder/xmlpath,2,,,,,,,2,,,
|
||||
github.com/cristalhq/jwt,1,,,1,,,,,,,
|
||||
github.com/dgrijalva/jwt-go,3,,9,2,1,,,,,9,
|
||||
github.com/elazarl/goproxy,,2,2,,,,,,2,2,
|
||||
@@ -68,6 +69,7 @@ github.com/go-pg/pg/orm,,,6,,,,,,,6,
|
||||
github.com/go-xmlpath/xmlpath,2,,,,,,,2,,,
|
||||
github.com/gobwas/ws,,2,,,,,,,2,,
|
||||
github.com/gogf/gf-jwt,1,,,1,,,,,,,
|
||||
github.com/going/toolkit/xmlpath,2,,,,,,,2,,,
|
||||
github.com/golang-jwt/jwt,3,,11,2,1,,,,,11,
|
||||
github.com/golang/protobuf/proto,,,4,,,,,,,4,
|
||||
github.com/gorilla/mux,,1,,,,,,,1,,
|
||||
@@ -82,6 +84,9 @@ github.com/lestrrat-go/jwx,1,,,1,,,,,,,
|
||||
github.com/lestrrat-go/jwx/jwk,1,,,1,,,,,,,
|
||||
github.com/lestrrat-go/libxml2/parser,3,,,,,,,3,,,
|
||||
github.com/lestrrat/go-jwx/jwk,1,,,1,,,,,,,
|
||||
github.com/masterzen/xmlpath,2,,,,,,,2,,,
|
||||
github.com/moovweb/gokogiri/xml,4,,,,,,,4,,,
|
||||
github.com/moovweb/gokogiri/xpath,1,,,,,,,1,,,
|
||||
github.com/ory/fosite/token/jwt,2,,,2,,,,,,,
|
||||
github.com/revel/revel,,23,10,,,,,,23,10,
|
||||
github.com/robfig/revel,,23,10,,,,,,23,10,
|
||||
@@ -99,9 +104,13 @@ google.golang.org/protobuf/internal/impl,,,2,,,,,,,2,
|
||||
google.golang.org/protobuf/proto,,,8,,,,,,,8,
|
||||
google.golang.org/protobuf/reflect/protoreflect,,,1,,,,,,,1,
|
||||
gopkg.in/couchbase/gocb,,,18,,,,,,,18,
|
||||
gopkg.in/go-jose/go-jose,2,,,2,,,,,,,
|
||||
gopkg.in/go-jose/go-jose/jwt,1,,4,,1,,,,,4,
|
||||
gopkg.in/go-xmlpath/xmlpath,2,,,,,,,2,,,
|
||||
gopkg.in/macaron,,12,1,,,,,,12,1,
|
||||
gopkg.in/square/go-jose,2,,,2,,,,,,,
|
||||
gopkg.in/square/go-jose/jwt,1,,4,,1,,,,,4,
|
||||
gopkg.in/xmlpath,2,,,,,,,2,,,
|
||||
gopkg.in/yaml,,,9,,,,,,,9,
|
||||
html,,,2,,,,,,,2,
|
||||
html/template,,,6,,,,,,,6,
|
||||
@@ -110,6 +119,7 @@ io/fs,,,12,,,,,,,12,
|
||||
io/ioutil,,,2,,,,,,,2,
|
||||
k8s.io/api/core,,,10,,,,,,,10,
|
||||
k8s.io/apimachinery/pkg/runtime,,,47,,,,,,,47,
|
||||
launchpad.net/xmlpath,2,,,,,,,2,,,
|
||||
log,,,3,,,,,,,3,
|
||||
math/big,,,1,,,,,,,1,
|
||||
mime,,,5,,,,,,,5,
|
||||
|
||||
|
@@ -12,32 +12,46 @@ Go framework & library support
|
||||
`Echo <https://echo.labstack.com/>`_,``github.com/labstack/echo*``,12,2,
|
||||
`Fosite <https://github.com/ory/fosite>`_,``github.com/ory/fosite*``,,,2
|
||||
`Gin <https://github.com/gin-gonic/gin>`_,``github.com/gin-gonic/gin*``,46,2,
|
||||
`Go JOSE <https://github.com/go-jose/go-jose>`_,"``github.com/go-jose/go-jose*``, ``github.com/square/go-jose*``, ``gopkg.in/square/go-jose*``",,12,9
|
||||
`Go JOSE <https://github.com/go-jose/go-jose>`_,"``github.com/go-jose/go-jose*``, ``github.com/square/go-jose*``, ``gopkg.in/square/go-jose*``, ``gopkg.in/go-jose/go-jose*``",,16,12
|
||||
`Go kit <https://gokit.io/>`_,``github.com/go-kit/kit*``,,,1
|
||||
`Gokogiri <https://github.com/moovweb/gokogiri>`_,"``github.com/jbowtie/gokogiri*``, ``github.com/jbowtie/moovweb*``",,,5
|
||||
`Iris <https://www.iris-go.com/>`_,``github.com/kataras/iris*``,,,2
|
||||
`Kubernetes <https://kubernetes.io/>`_,"``k8s.io/api*``, ``k8s.io/apimachinery*``",,57,
|
||||
`Macaron <https://gopkg.in/macaron.v1>`_,``gopkg.in/macaron*``,12,1,
|
||||
`Revel <http://revel.github.io/>`_,"``github.com/revel/revel*``, ``github.com/robfig/revel*``",46,20,
|
||||
`SendGrid <https://github.com/sendgrid/sendgrid-go>`_,``github.com/sendgrid/sendgrid-go*``,,1,
|
||||
`Standard library <https://pkg.go.dev/std>`_,"````, ``archive/*``, ``bufio``, ``bytes``, ``cmp``, ``compress/*``, ``container/*``, ``context``, ``crypto``, ``crypto/*``, ``database/*``, ``debug/*``, ``embed``, ``encoding``, ``encoding/*``, ``errors``, ``expvar``, ``flag``, ``fmt``, ``go/*``, ``hash``, ``hash/*``, ``html``, ``html/*``, ``image``, ``image/*``, ``index/*``, ``io``, ``io/*``, ``log``, ``log/*``, ``maps``, ``math``, ``math/*``, ``mime``, ``mime/*``, ``net``, ``net/*``, ``os``, ``os/*``, ``path``, ``path/*``, ``plugin``, ``reflect``, ``reflect/*``, ``regexp``, ``regexp/*``, ``slices``, ``sort``, ``strconv``, ``strings``, ``sync``, ``sync/*``, ``syscall``, ``syscall/*``, ``testing``, ``testing/*``, ``text/*``, ``time``, ``time/*``, ``unicode``, ``unicode/*``, ``unsafe``",16,584,
|
||||
`XPath <https://github.com/antchfx/xpath>`_,``github.com/antchfx/xpath*``,,,4
|
||||
`appleboy/gin-jwt <https://github.com/appleboy/gin-jwt>`_,``github.com/appleboy/gin-jwt*``,,,1
|
||||
`beego <https://beego.me/>`_,"``github.com/astaxie/beego*``, ``github.com/beego/beego*``",63,63,
|
||||
`chi <https://go-chi.io/>`_,``github.com/go-chi/chi*``,3,,
|
||||
`cristalhq/jwt <https://github.com/cristalhq/jwt>`_,``github.com/cristalhq/jwt*``,,,1
|
||||
`fasthttp <https://github.com/valyala/fasthttp>`_,``github.com/valyala/fasthttp*``,50,5,25
|
||||
`gf-jwt <https://github.com/gogf/gf-jwt>`_,``github.com/gogf/gf-jwt*``,,,1
|
||||
`go-pg <https://pg.uptrace.dev/>`_,``github.com/go-pg/pg*``,,6,
|
||||
`go-restful <https://github.com/emicklei/go-restful>`_,``github.com/emicklei/go-restful*``,7,,
|
||||
`golang.org/x/net <https://pkg.go.dev/golang.org/x/net>`_,``golang.org/x/net*``,2,21,
|
||||
`goproxy <https://github.com/elazarl/goproxy>`_,``github.com/elazarl/goproxy*``,2,2,
|
||||
`gorilla/mux <https://github.com/gorilla/mux>`_,``github.com/gorilla/mux*``,1,,
|
||||
`gorilla/websocket <https://github.com/gorilla/websocket>`_,``github.com/gorilla/websocket*``,3,,
|
||||
`goxpath <https://github.com/ChrisTrenkamp/goxpath/wiki>`_,``github.com/ChrisTrenkamp/goxpath*``,,,3
|
||||
`htmlquery <https://github.com/antchfx/htmlquery>`_,``github.com/antchfx/htmlquery*``,,,4
|
||||
`json-iterator <https://github.com/json-iterator/go>`_,``github.com/json-iterator/go*``,,4,
|
||||
`jsonpatch <https://github.com/evanphx/json-patch>`_,``github.com/evanphx/json-patch*``,,12,
|
||||
`jsonquery <https://github.com/antchfx/jsonquery>`_,``github.com/antchfx/jsonquery*``,,,4
|
||||
`jwt-go <https://golang-jwt.github.io/jwt/>`_,"``github.com/golang-jwt/jwt*``, ``github.com/form3tech-oss/jwt-go*``, ``github.com/dgrijalva/jwt-go*``",,20,8
|
||||
`jwtauth <https://github.com/go-chi/jwtauth>`_,``github.com/go-chi/jwtauth*``,,,1
|
||||
`kataras/jwt <https://github.com/kataras/jwt>`_,``github.com/kataras/jwt*``,,,5
|
||||
`lestrrat-go/jwx <https://github.com/lestrrat-go/jwx>`_,"``github.com/lestrrat-go/jwx*``, ``github.com/lestrrat/go-jwx*``",,,3
|
||||
`lestrrat-go/libxml2 <https://github.com/lestrrat-go/libxml2>`_,``github.com/lestrrat-go/libxml2*``,,,3
|
||||
`nhooyr.io/websocket <https://nhooyr.io/websocket>`_,``nhooyr.io/websocket*``,2,,
|
||||
`protobuf <https://pkg.go.dev/google.golang.org/protobuf>`_,"``github.com/golang/protobuf*``, ``google.golang.org/protobuf*``",,16,
|
||||
`ws <https://github.com/gobwas/ws>`_,``github.com/gobwas/ws*``,2,,
|
||||
`xmlpath <https://gopkg.in/xmlpath.v2>`_,"``gopkg.in/xmlpath*``, ``github.com/go-xmlpath/xmlpath*``, ``github.com/crankycoder/xmlpath*``, ``launchpad.net/xmlpath*``, ``github.com/masterzen/xmlpath*``, ``github.com/going/toolkit/xmlpath*``, ``gopkg.in/go-xmlpath/xmlpath*``",,,14
|
||||
`xmlquery <https://github.com/antchfx/xmlquery>`_,``github.com/antchfx/xmlquery*``,,,8
|
||||
`xpathparser <https://github.com/santhosh-tekuri/xpathparser>`_,``github.com/santhosh-tekuri/xpathparser*``,,,2
|
||||
`yaml <https://gopkg.in/yaml.v3>`_,``gopkg.in/yaml*``,,9,
|
||||
`zap <https://go.uber.org/zap>`_,``go.uber.org/zap*``,,11,
|
||||
Others,"``github.com/ChrisTrenkamp/goxpath``, ``github.com/antchfx/htmlquery``, ``github.com/antchfx/jsonquery``, ``github.com/antchfx/xmlquery``, ``github.com/antchfx/xpath``, ``github.com/appleboy/gin-jwt``, ``github.com/go-xmlpath/xmlpath``, ``github.com/gobwas/ws``, ``github.com/gogf/gf-jwt``, ``github.com/gorilla/websocket``, ``github.com/jbowtie/gokogiri/xml``, ``github.com/jbowtie/gokogiri/xpath``, ``github.com/lestrrat-go/libxml2/parser``, ``github.com/santhosh-tekuri/xpathparser``, ``nhooyr.io/websocket``",7,,37
|
||||
Totals,,267,902,94
|
||||
Others,"``github.com/moovweb/gokogiri/xml``, ``github.com/moovweb/gokogiri/xpath``",,,5
|
||||
Totals,,267,906,114
|
||||
|
||||
|
||||
@@ -21,8 +21,8 @@ go_library(
|
||||
"//go/extractor/toolchain",
|
||||
"//go/extractor/trap",
|
||||
"//go/extractor/util",
|
||||
"@org_golang_x_mod//modfile:go_default_library",
|
||||
"@org_golang_x_tools//go/packages:go_default_library",
|
||||
"@org_golang_x_mod//modfile",
|
||||
"@org_golang_x_tools//go/packages",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
2
go/extractor/dbscheme/BUILD.bazel
generated
2
go/extractor/dbscheme/BUILD.bazel
generated
@@ -12,6 +12,6 @@ go_library(
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
"//go/extractor/trap",
|
||||
"@org_golang_x_tools//go/packages:go_default_library",
|
||||
"@org_golang_x_tools//go/packages",
|
||||
],
|
||||
)
|
||||
|
||||
@@ -7,7 +7,7 @@ go 1.22.0
|
||||
// when adding or removing dependencies, run
|
||||
// bazel mod tidy
|
||||
require (
|
||||
golang.org/x/mod v0.19.0
|
||||
golang.org/x/mod v0.20.0
|
||||
golang.org/x/tools v0.23.0
|
||||
)
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
golang.org/x/mod v0.19.0 h1:fEdghXQSo20giMthA7cd28ZC+jts4amQ3YMXiP5oMQ8=
|
||||
golang.org/x/mod v0.19.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
|
||||
golang.org/x/mod v0.20.0 h1:utOm6MM3R3dnawAiJgn0y+xvuYRsm1RKM/4giyfDgV0=
|
||||
golang.org/x/mod v0.20.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
|
||||
golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M=
|
||||
golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
|
||||
golang.org/x/tools v0.23.0 h1:SGsXPZ+2l4JsgaCKkx+FQ9YZ5XEtA1GZYuoDjenLjvg=
|
||||
|
||||
4
go/extractor/project/BUILD.bazel
generated
4
go/extractor/project/BUILD.bazel
generated
@@ -11,7 +11,7 @@ go_library(
|
||||
"//go/extractor/diagnostics",
|
||||
"//go/extractor/toolchain",
|
||||
"//go/extractor/util",
|
||||
"@org_golang_x_mod//modfile:go_default_library",
|
||||
"@org_golang_x_mod//modfile",
|
||||
],
|
||||
)
|
||||
|
||||
@@ -21,6 +21,6 @@ go_test(
|
||||
embed = [":project"],
|
||||
deps = [
|
||||
"//go/extractor/util",
|
||||
"@org_golang_x_mod//modfile:go_default_library",
|
||||
"@org_golang_x_mod//modfile",
|
||||
],
|
||||
)
|
||||
|
||||
2
go/extractor/trap/BUILD.bazel
generated
2
go/extractor/trap/BUILD.bazel
generated
@@ -14,7 +14,7 @@ go_library(
|
||||
deps = [
|
||||
"//go/extractor/srcarchive",
|
||||
"//go/extractor/util",
|
||||
"@org_golang_x_tools//go/packages:go_default_library",
|
||||
"@org_golang_x_tools//go/packages",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
4
go/extractor/util/BUILD.bazel
generated
4
go/extractor/util/BUILD.bazel
generated
@@ -10,7 +10,7 @@ go_library(
|
||||
],
|
||||
importpath = "github.com/github/codeql-go/extractor/util",
|
||||
visibility = ["//visibility:public"],
|
||||
deps = ["@org_golang_x_mod//semver:go_default_library"],
|
||||
deps = ["@org_golang_x_mod//semver"],
|
||||
)
|
||||
|
||||
go_test(
|
||||
@@ -20,5 +20,5 @@ go_test(
|
||||
"util_test.go",
|
||||
],
|
||||
embed = [":util"],
|
||||
deps = ["@org_golang_x_mod//semver:go_default_library"],
|
||||
deps = ["@org_golang_x_mod//semver"],
|
||||
)
|
||||
|
||||
@@ -24,7 +24,7 @@ def options():
|
||||
opts = options()
|
||||
|
||||
try:
|
||||
workspace_dir = pathlib.Path(os.environ.pop('BUILD_WORKSPACE_DIRECTORY'))
|
||||
workspace_dir = pathlib.Path(os.environ['BUILD_WORKSPACE_DIRECTORY'])
|
||||
except KeyError:
|
||||
print("this should be run with bazel run", file=sys.stderr)
|
||||
sys.exit(1)
|
||||
|
||||
@@ -1,13 +1,12 @@
|
||||
models
|
||||
| 1 | Source: github.com/nonexistent/sources; ; false; ExecuteQuery; ; ; ReturnValue; database; manual |
|
||||
| 1 | Summary: archive/tar; ; false; NewReader; ; ; Argument[0]; ReturnValue; taint; manual |
|
||||
| 2 | Source: net/http; Request; true; URL; ; ; ; remote; manual |
|
||||
| 3 | Summary: net/url; URL; true; Query; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 4 | Summary: net/url; Values; true; Get; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 1 | Source: net/http; Request; true; URL; ; ; ; remote; manual |
|
||||
| 2 | Summary: net/url; URL; true; Query; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 3 | Summary: net/url; Values; true; Get; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 4 | Source: github.com/nonexistent/sources; ; false; ExecuteQuery; ; ; ReturnValue; database; manual |
|
||||
edges
|
||||
| test.go:27:11:27:63 | call to ExecuteQuery | test.go:28:7:28:11 | query | provenance | Src:MaD:1 |
|
||||
| test.go:32:11:32:15 | selection of URL | test.go:32:11:32:23 | call to Query | provenance | Src:MaD:2 MaD:3 |
|
||||
| test.go:32:11:32:23 | call to Query | test.go:32:11:32:36 | call to Get | provenance | MaD:4 |
|
||||
| test.go:27:11:27:63 | call to ExecuteQuery | test.go:28:7:28:11 | query | provenance | Src:MaD:4 |
|
||||
| test.go:32:11:32:15 | selection of URL | test.go:32:11:32:23 | call to Query | provenance | Src:MaD:1 MaD:2 |
|
||||
| test.go:32:11:32:23 | call to Query | test.go:32:11:32:36 | call to Get | provenance | MaD:3 |
|
||||
| test.go:32:11:32:36 | call to Get | test.go:34:7:34:30 | ...+... | provenance | |
|
||||
nodes
|
||||
| test.go:27:11:27:63 | call to ExecuteQuery | semmle.label | call to ExecuteQuery |
|
||||
|
||||
@@ -1,19 +1,16 @@
|
||||
models
|
||||
| 1 | Source: github.com/nonexistent/sources; ; false; ExecuteQuery; ; ; ReturnValue; database; manual |
|
||||
| 1 | Summary: archive/tar; ; false; NewReader; ; ; Argument[0]; ReturnValue; taint; manual |
|
||||
| 2 | Source: github.com/nonexistent/sources; ; false; ReadEnvironment; ; ; ReturnValue; environment; manual |
|
||||
| 2 | Summary: archive/tar; Header; true; FileInfo; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 3 | Source: github.com/nonexistent/sources; ; false; GetCliArg; ; ; ReturnValue; commandargs; manual |
|
||||
| 3 | Summary: archive/tar; Writer; true; WriteHeader; ; ; Argument[0]; Argument[receiver]; taint; manual |
|
||||
| 4 | Source: net/http; Request; true; URL; ; ; ; remote; manual |
|
||||
| 5 | Summary: net/url; URL; true; Query; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 6 | Summary: net/url; Values; true; Get; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 1 | Source: net/http; Request; true; URL; ; ; ; remote; manual |
|
||||
| 2 | Summary: net/url; URL; true; Query; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 3 | Summary: net/url; Values; true; Get; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 4 | Source: github.com/nonexistent/sources; ; false; ExecuteQuery; ; ; ReturnValue; database; manual |
|
||||
| 5 | Source: github.com/nonexistent/sources; ; false; ReadEnvironment; ; ; ReturnValue; environment; manual |
|
||||
| 6 | Source: github.com/nonexistent/sources; ; false; GetCliArg; ; ; ReturnValue; commandargs; manual |
|
||||
edges
|
||||
| test.go:9:10:9:40 | call to ReadEnvironment | test.go:11:7:11:29 | ...+... | provenance | Src:MaD:2 |
|
||||
| test.go:15:9:15:32 | call to GetCliArg | test.go:17:7:17:28 | ...+... | provenance | Src:MaD:3 |
|
||||
| test.go:27:11:27:63 | call to ExecuteQuery | test.go:28:7:28:11 | query | provenance | Src:MaD:1 |
|
||||
| test.go:32:11:32:15 | selection of URL | test.go:32:11:32:23 | call to Query | provenance | Src:MaD:4 MaD:5 |
|
||||
| test.go:32:11:32:23 | call to Query | test.go:32:11:32:36 | call to Get | provenance | MaD:6 |
|
||||
| test.go:9:10:9:40 | call to ReadEnvironment | test.go:11:7:11:29 | ...+... | provenance | Src:MaD:5 |
|
||||
| test.go:15:9:15:32 | call to GetCliArg | test.go:17:7:17:28 | ...+... | provenance | Src:MaD:6 |
|
||||
| test.go:27:11:27:63 | call to ExecuteQuery | test.go:28:7:28:11 | query | provenance | Src:MaD:4 |
|
||||
| test.go:32:11:32:15 | selection of URL | test.go:32:11:32:23 | call to Query | provenance | Src:MaD:1 MaD:2 |
|
||||
| test.go:32:11:32:23 | call to Query | test.go:32:11:32:36 | call to Get | provenance | MaD:3 |
|
||||
| test.go:32:11:32:36 | call to Get | test.go:34:7:34:30 | ...+... | provenance | |
|
||||
nodes
|
||||
| test.go:9:10:9:40 | call to ReadEnvironment | semmle.label | call to ReadEnvironment |
|
||||
|
||||
@@ -1,22 +1,18 @@
|
||||
models
|
||||
| 1 | Source: github.com/nonexistent/sources; ; false; ExecuteQuery; ; ; ReturnValue; database; manual |
|
||||
| 1 | Summary: archive/tar; ; false; NewReader; ; ; Argument[0]; ReturnValue; taint; manual |
|
||||
| 2 | Source: github.com/nonexistent/sources; ; false; ReadEnvironment; ; ; ReturnValue; environment; manual |
|
||||
| 2 | Summary: archive/tar; Header; true; FileInfo; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 3 | Source: github.com/nonexistent/sources; ; false; GetCustom; ; ; ReturnValue; custom; manual |
|
||||
| 3 | Summary: archive/tar; Reader; true; Next; ; ; Argument[receiver]; ReturnValue[0]; taint; manual |
|
||||
| 4 | Source: github.com/nonexistent/sources; ; false; GetCliArg; ; ; ReturnValue; commandargs; manual |
|
||||
| 4 | Summary: archive/tar; Writer; true; WriteHeader; ; ; Argument[0]; Argument[receiver]; taint; manual |
|
||||
| 5 | Source: net/http; Request; true; URL; ; ; ; remote; manual |
|
||||
| 6 | Summary: net/url; URL; true; Query; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 7 | Summary: net/url; Values; true; Get; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 1 | Source: net/http; Request; true; URL; ; ; ; remote; manual |
|
||||
| 2 | Summary: net/url; URL; true; Query; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 3 | Summary: net/url; Values; true; Get; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 4 | Source: github.com/nonexistent/sources; ; false; ExecuteQuery; ; ; ReturnValue; database; manual |
|
||||
| 5 | Source: github.com/nonexistent/sources; ; false; ReadEnvironment; ; ; ReturnValue; environment; manual |
|
||||
| 6 | Source: github.com/nonexistent/sources; ; false; GetCustom; ; ; ReturnValue; custom; manual |
|
||||
| 7 | Source: github.com/nonexistent/sources; ; false; GetCliArg; ; ; ReturnValue; commandargs; manual |
|
||||
edges
|
||||
| test.go:9:10:9:40 | call to ReadEnvironment | test.go:11:7:11:29 | ...+... | provenance | Src:MaD:2 |
|
||||
| test.go:15:9:15:32 | call to GetCliArg | test.go:17:7:17:28 | ...+... | provenance | Src:MaD:4 |
|
||||
| test.go:21:11:21:36 | call to GetCustom | test.go:23:7:23:30 | ...+... | provenance | Src:MaD:3 |
|
||||
| test.go:27:11:27:63 | call to ExecuteQuery | test.go:28:7:28:11 | query | provenance | Src:MaD:1 |
|
||||
| test.go:32:11:32:15 | selection of URL | test.go:32:11:32:23 | call to Query | provenance | Src:MaD:5 MaD:6 |
|
||||
| test.go:32:11:32:23 | call to Query | test.go:32:11:32:36 | call to Get | provenance | MaD:7 |
|
||||
| test.go:9:10:9:40 | call to ReadEnvironment | test.go:11:7:11:29 | ...+... | provenance | Src:MaD:5 |
|
||||
| test.go:15:9:15:32 | call to GetCliArg | test.go:17:7:17:28 | ...+... | provenance | Src:MaD:7 |
|
||||
| test.go:21:11:21:36 | call to GetCustom | test.go:23:7:23:30 | ...+... | provenance | Src:MaD:6 |
|
||||
| test.go:27:11:27:63 | call to ExecuteQuery | test.go:28:7:28:11 | query | provenance | Src:MaD:4 |
|
||||
| test.go:32:11:32:15 | selection of URL | test.go:32:11:32:23 | call to Query | provenance | Src:MaD:1 MaD:2 |
|
||||
| test.go:32:11:32:23 | call to Query | test.go:32:11:32:36 | call to Get | provenance | MaD:3 |
|
||||
| test.go:32:11:32:36 | call to Get | test.go:34:7:34:30 | ...+... | provenance | |
|
||||
nodes
|
||||
| test.go:9:10:9:40 | call to ReadEnvironment | semmle.label | call to ReadEnvironment |
|
||||
|
||||
@@ -1,16 +1,14 @@
|
||||
models
|
||||
| 1 | Source: github.com/nonexistent/sources; ; false; ReadEnvironment; ; ; ReturnValue; environment; manual |
|
||||
| 1 | Summary: archive/tar; Reader; true; Next; ; ; Argument[receiver]; ReturnValue[0]; taint; manual |
|
||||
| 2 | Source: github.com/nonexistent/sources; ; false; GetCliArg; ; ; ReturnValue; commandargs; manual |
|
||||
| 2 | Summary: archive/zip; ; false; FileInfoHeader; ; ; Argument[0]; ReturnValue[0]; taint; manual |
|
||||
| 3 | Source: net/http; Request; true; URL; ; ; ; remote; manual |
|
||||
| 4 | Summary: net/url; URL; true; Query; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 5 | Summary: net/url; Values; true; Get; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 1 | Source: net/http; Request; true; URL; ; ; ; remote; manual |
|
||||
| 2 | Summary: net/url; URL; true; Query; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 3 | Summary: net/url; Values; true; Get; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 4 | Source: github.com/nonexistent/sources; ; false; ReadEnvironment; ; ; ReturnValue; environment; manual |
|
||||
| 5 | Source: github.com/nonexistent/sources; ; false; GetCliArg; ; ; ReturnValue; commandargs; manual |
|
||||
edges
|
||||
| test.go:9:10:9:40 | call to ReadEnvironment | test.go:11:7:11:29 | ...+... | provenance | Src:MaD:1 |
|
||||
| test.go:15:9:15:32 | call to GetCliArg | test.go:17:7:17:28 | ...+... | provenance | Src:MaD:2 |
|
||||
| test.go:32:11:32:15 | selection of URL | test.go:32:11:32:23 | call to Query | provenance | Src:MaD:3 MaD:4 |
|
||||
| test.go:32:11:32:23 | call to Query | test.go:32:11:32:36 | call to Get | provenance | MaD:5 |
|
||||
| test.go:9:10:9:40 | call to ReadEnvironment | test.go:11:7:11:29 | ...+... | provenance | Src:MaD:4 |
|
||||
| test.go:15:9:15:32 | call to GetCliArg | test.go:17:7:17:28 | ...+... | provenance | Src:MaD:5 |
|
||||
| test.go:32:11:32:15 | selection of URL | test.go:32:11:32:23 | call to Query | provenance | Src:MaD:1 MaD:2 |
|
||||
| test.go:32:11:32:23 | call to Query | test.go:32:11:32:36 | call to Get | provenance | MaD:3 |
|
||||
| test.go:32:11:32:36 | call to Get | test.go:34:7:34:30 | ...+... | provenance | |
|
||||
nodes
|
||||
| test.go:9:10:9:40 | call to ReadEnvironment | semmle.label | call to ReadEnvironment |
|
||||
|
||||
@@ -1,16 +1,14 @@
|
||||
models
|
||||
| 1 | Source: github.com/nonexistent/sources; ; false; ExecuteQuery; ; ; ReturnValue; database; manual |
|
||||
| 1 | Summary: archive/tar; Header; true; FileInfo; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 2 | Source: github.com/nonexistent/sources; ; false; GetCliArg; ; ; ReturnValue; commandargs; manual |
|
||||
| 2 | Summary: archive/zip; ; false; FileInfoHeader; ; ; Argument[0]; ReturnValue[0]; taint; manual |
|
||||
| 3 | Source: net/http; Request; true; URL; ; ; ; remote; manual |
|
||||
| 4 | Summary: net/url; URL; true; Query; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 5 | Summary: net/url; Values; true; Get; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 1 | Source: net/http; Request; true; URL; ; ; ; remote; manual |
|
||||
| 2 | Summary: net/url; URL; true; Query; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 3 | Summary: net/url; Values; true; Get; ; ; Argument[receiver]; ReturnValue; taint; manual |
|
||||
| 4 | Source: github.com/nonexistent/sources; ; false; ExecuteQuery; ; ; ReturnValue; database; manual |
|
||||
| 5 | Source: github.com/nonexistent/sources; ; false; GetCliArg; ; ; ReturnValue; commandargs; manual |
|
||||
edges
|
||||
| test.go:15:9:15:32 | call to GetCliArg | test.go:17:7:17:28 | ...+... | provenance | Src:MaD:2 |
|
||||
| test.go:27:11:27:63 | call to ExecuteQuery | test.go:28:7:28:11 | query | provenance | Src:MaD:1 |
|
||||
| test.go:32:11:32:15 | selection of URL | test.go:32:11:32:23 | call to Query | provenance | Src:MaD:3 MaD:4 |
|
||||
| test.go:32:11:32:23 | call to Query | test.go:32:11:32:36 | call to Get | provenance | MaD:5 |
|
||||
| test.go:15:9:15:32 | call to GetCliArg | test.go:17:7:17:28 | ...+... | provenance | Src:MaD:5 |
|
||||
| test.go:27:11:27:63 | call to ExecuteQuery | test.go:28:7:28:11 | query | provenance | Src:MaD:4 |
|
||||
| test.go:32:11:32:15 | selection of URL | test.go:32:11:32:23 | call to Query | provenance | Src:MaD:1 MaD:2 |
|
||||
| test.go:32:11:32:23 | call to Query | test.go:32:11:32:36 | call to Get | provenance | MaD:3 |
|
||||
| test.go:32:11:32:36 | call to Get | test.go:34:7:34:30 | ...+... | provenance | |
|
||||
nodes
|
||||
| test.go:15:9:15:32 | call to GetCliArg | semmle.label | call to GetCliArg |
|
||||
|
||||
@@ -197,7 +197,7 @@ org.apache.shiro.mgt,1,,,,,1,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
|
||||
org.apache.sshd.client.session,3,,,,,,1,2,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
|
||||
org.apache.struts.beanvalidation.validation.interceptor,,,4,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,4,
|
||||
org.apache.struts2,14,,3873,,,,,,,,,,,,,,,,,,,,,,,11,,,,,,,,,,,,,,3,,,,,,,,,,,3839,34
|
||||
org.apache.tools.ant,12,,,,1,,,,,,,,,,,,,,,,,,,,,,11,,,,,,,,,,,,,,,,,,,,,,,,,
|
||||
org.apache.tools.ant,14,,,,1,,,,,,,,,,,,,,,,,,,,,,13,,,,,,,,,,,,,,,,,,,,,,,,,
|
||||
org.apache.tools.zip,,,1,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,1,
|
||||
org.apache.velocity.app,4,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,4,,,,,,,,,,,,,
|
||||
org.apache.velocity.runtime,4,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,4,,,,,,,,,,,,,
|
||||
|
||||
|
@@ -22,6 +22,6 @@ Java framework & library support
|
||||
Java extensions,"``javax.*``, ``jakarta.*``",69,3257,90,10,4,2,1,1,4
|
||||
Kotlin Standard Library,``kotlin*``,,1849,16,14,,,,,2
|
||||
`Spring <https://spring.io/>`_,``org.springframework.*``,38,486,122,5,,28,14,,35
|
||||
Others,"``actions.osgi``, ``antlr``, ``ch.ethz.ssh2``, ``cn.hutool.core.codec``, ``com.alibaba.druid.sql``, ``com.alibaba.fastjson2``, ``com.amazonaws.auth``, ``com.auth0.jwt.algorithms``, ``com.azure.identity``, ``com.esotericsoftware.kryo.io``, ``com.esotericsoftware.kryo5.io``, ``com.fasterxml.jackson.core``, ``com.fasterxml.jackson.databind``, ``com.google.gson``, ``com.hubspot.jinjava``, ``com.jcraft.jsch``, ``com.microsoft.sqlserver.jdbc``, ``com.mitchellbosecke.pebble``, ``com.mongodb``, ``com.opensymphony.xwork2``, ``com.rabbitmq.client``, ``com.sshtools.j2ssh.authentication``, ``com.sun.crypto.provider``, ``com.sun.jndi.ldap``, ``com.sun.net.httpserver``, ``com.sun.net.ssl``, ``com.sun.rowset``, ``com.sun.security.auth.module``, ``com.sun.security.ntlm``, ``com.sun.security.sasl.digest``, ``com.thoughtworks.xstream``, ``com.trilead.ssh2``, ``com.unboundid.ldap.sdk``, ``com.zaxxer.hikari``, ``flexjson``, ``freemarker.cache``, ``freemarker.template``, ``groovy.lang``, ``groovy.text``, ``groovy.util``, ``hudson``, ``io.jsonwebtoken``, ``io.netty.bootstrap``, ``io.netty.buffer``, ``io.netty.channel``, ``io.netty.handler.codec``, ``io.netty.handler.ssl``, ``io.netty.handler.stream``, ``io.netty.resolver``, ``io.netty.util``, ``io.undertow.server.handlers.resource``, ``javafx.scene.web``, ``jenkins``, ``jodd.json``, ``liquibase.database.jvm``, ``liquibase.statement.core``, ``net.schmizz.sshj``, ``net.sf.json``, ``net.sf.saxon.s9api``, ``ognl``, ``okhttp3``, ``org.acegisecurity``, ``org.antlr.runtime``, ``org.apache.commons.codec``, ``org.apache.commons.compress.archivers.tar``, ``org.apache.commons.exec``, ``org.apache.commons.httpclient.util``, ``org.apache.commons.jelly``, ``org.apache.commons.jexl2``, ``org.apache.commons.jexl3``, ``org.apache.commons.lang``, ``org.apache.commons.logging``, ``org.apache.commons.net``, ``org.apache.commons.ognl``, ``org.apache.cxf.catalog``, ``org.apache.cxf.common.classloader``, ``org.apache.cxf.common.jaxb``, ``org.apache.cxf.common.logging``, ``org.apache.cxf.configuration.jsse``, ``org.apache.cxf.helpers``, ``org.apache.cxf.resource``, ``org.apache.cxf.staxutils``, ``org.apache.cxf.tools.corba.utils``, ``org.apache.cxf.tools.util``, ``org.apache.cxf.transform``, ``org.apache.directory.ldap.client.api``, ``org.apache.hadoop.fs``, ``org.apache.hadoop.hive.metastore``, ``org.apache.hadoop.hive.ql.exec``, ``org.apache.hadoop.hive.ql.metadata``, ``org.apache.hc.client5.http.async.methods``, ``org.apache.hc.client5.http.classic.methods``, ``org.apache.hc.client5.http.fluent``, ``org.apache.hive.hcatalog.templeton``, ``org.apache.ibatis.jdbc``, ``org.apache.ibatis.mapping``, ``org.apache.log4j``, ``org.apache.shiro.codec``, ``org.apache.shiro.jndi``, ``org.apache.shiro.mgt``, ``org.apache.sshd.client.session``, ``org.apache.struts.beanvalidation.validation.interceptor``, ``org.apache.struts2``, ``org.apache.tools.ant``, ``org.apache.tools.zip``, ``org.apache.velocity.app``, ``org.apache.velocity.runtime``, ``org.codehaus.cargo.container.installer``, ``org.codehaus.groovy.control``, ``org.dom4j``, ``org.eclipse.jetty.client``, ``org.fusesource.leveldbjni``, ``org.geogebra.web.full.main``, ``org.gradle.api.file``, ``org.hibernate``, ``org.influxdb``, ``org.jboss.vfs``, ``org.jdbi.v3.core``, ``org.jenkins.ui.icon``, ``org.jenkins.ui.symbol``, ``org.jooq``, ``org.keycloak.models.map.storage``, ``org.kohsuke.stapler``, ``org.lastaflute.web``, ``org.mvel2``, ``org.openjdk.jmh.runner.options``, ``org.owasp.esapi``, ``org.pac4j.jwt.config.encryption``, ``org.pac4j.jwt.config.signature``, ``org.scijava.log``, ``org.slf4j``, ``org.thymeleaf``, ``org.w3c.dom``, ``org.xml.sax``, ``org.xmlpull.v1``, ``org.yaml.snakeyaml``, ``play.libs.ws``, ``play.mvc``, ``ratpack.core.form``, ``ratpack.core.handling``, ``ratpack.core.http``, ``ratpack.exec``, ``ratpack.form``, ``ratpack.func``, ``ratpack.handling``, ``ratpack.http``, ``ratpack.util``, ``retrofit2``, ``sun.awt``, ``sun.jvmstat.perfdata.monitor.protocol.local``, ``sun.jvmstat.perfdata.monitor.protocol.rmi``, ``sun.management.spi``, ``sun.misc``, ``sun.net.ftp``, ``sun.net.www.protocol.http``, ``sun.nio.ch``, ``sun.security.acl``, ``sun.security.jgss.krb5``, ``sun.security.krb5``, ``sun.security.pkcs``, ``sun.security.pkcs11``, ``sun.security.provider``, ``sun.security.ssl``, ``sun.security.x509``, ``sun.tools.jconsole``, ``sun.util.logging.internal``",132,10603,896,128,6,22,18,,208
|
||||
Totals,,311,25147,2598,367,16,128,33,1,409
|
||||
Others,"``actions.osgi``, ``antlr``, ``ch.ethz.ssh2``, ``cn.hutool.core.codec``, ``com.alibaba.druid.sql``, ``com.alibaba.fastjson2``, ``com.amazonaws.auth``, ``com.auth0.jwt.algorithms``, ``com.azure.identity``, ``com.esotericsoftware.kryo.io``, ``com.esotericsoftware.kryo5.io``, ``com.fasterxml.jackson.core``, ``com.fasterxml.jackson.databind``, ``com.google.gson``, ``com.hubspot.jinjava``, ``com.jcraft.jsch``, ``com.microsoft.sqlserver.jdbc``, ``com.mitchellbosecke.pebble``, ``com.mongodb``, ``com.opensymphony.xwork2``, ``com.rabbitmq.client``, ``com.sshtools.j2ssh.authentication``, ``com.sun.crypto.provider``, ``com.sun.jndi.ldap``, ``com.sun.net.httpserver``, ``com.sun.net.ssl``, ``com.sun.rowset``, ``com.sun.security.auth.module``, ``com.sun.security.ntlm``, ``com.sun.security.sasl.digest``, ``com.thoughtworks.xstream``, ``com.trilead.ssh2``, ``com.unboundid.ldap.sdk``, ``com.zaxxer.hikari``, ``flexjson``, ``freemarker.cache``, ``freemarker.template``, ``groovy.lang``, ``groovy.text``, ``groovy.util``, ``hudson``, ``io.jsonwebtoken``, ``io.netty.bootstrap``, ``io.netty.buffer``, ``io.netty.channel``, ``io.netty.handler.codec``, ``io.netty.handler.ssl``, ``io.netty.handler.stream``, ``io.netty.resolver``, ``io.netty.util``, ``io.undertow.server.handlers.resource``, ``javafx.scene.web``, ``jenkins``, ``jodd.json``, ``liquibase.database.jvm``, ``liquibase.statement.core``, ``net.schmizz.sshj``, ``net.sf.json``, ``net.sf.saxon.s9api``, ``ognl``, ``okhttp3``, ``org.acegisecurity``, ``org.antlr.runtime``, ``org.apache.commons.codec``, ``org.apache.commons.compress.archivers.tar``, ``org.apache.commons.exec``, ``org.apache.commons.httpclient.util``, ``org.apache.commons.jelly``, ``org.apache.commons.jexl2``, ``org.apache.commons.jexl3``, ``org.apache.commons.lang``, ``org.apache.commons.logging``, ``org.apache.commons.net``, ``org.apache.commons.ognl``, ``org.apache.cxf.catalog``, ``org.apache.cxf.common.classloader``, ``org.apache.cxf.common.jaxb``, ``org.apache.cxf.common.logging``, ``org.apache.cxf.configuration.jsse``, ``org.apache.cxf.helpers``, ``org.apache.cxf.resource``, ``org.apache.cxf.staxutils``, ``org.apache.cxf.tools.corba.utils``, ``org.apache.cxf.tools.util``, ``org.apache.cxf.transform``, ``org.apache.directory.ldap.client.api``, ``org.apache.hadoop.fs``, ``org.apache.hadoop.hive.metastore``, ``org.apache.hadoop.hive.ql.exec``, ``org.apache.hadoop.hive.ql.metadata``, ``org.apache.hc.client5.http.async.methods``, ``org.apache.hc.client5.http.classic.methods``, ``org.apache.hc.client5.http.fluent``, ``org.apache.hive.hcatalog.templeton``, ``org.apache.ibatis.jdbc``, ``org.apache.ibatis.mapping``, ``org.apache.log4j``, ``org.apache.shiro.codec``, ``org.apache.shiro.jndi``, ``org.apache.shiro.mgt``, ``org.apache.sshd.client.session``, ``org.apache.struts.beanvalidation.validation.interceptor``, ``org.apache.struts2``, ``org.apache.tools.ant``, ``org.apache.tools.zip``, ``org.apache.velocity.app``, ``org.apache.velocity.runtime``, ``org.codehaus.cargo.container.installer``, ``org.codehaus.groovy.control``, ``org.dom4j``, ``org.eclipse.jetty.client``, ``org.fusesource.leveldbjni``, ``org.geogebra.web.full.main``, ``org.gradle.api.file``, ``org.hibernate``, ``org.influxdb``, ``org.jboss.vfs``, ``org.jdbi.v3.core``, ``org.jenkins.ui.icon``, ``org.jenkins.ui.symbol``, ``org.jooq``, ``org.keycloak.models.map.storage``, ``org.kohsuke.stapler``, ``org.lastaflute.web``, ``org.mvel2``, ``org.openjdk.jmh.runner.options``, ``org.owasp.esapi``, ``org.pac4j.jwt.config.encryption``, ``org.pac4j.jwt.config.signature``, ``org.scijava.log``, ``org.slf4j``, ``org.thymeleaf``, ``org.w3c.dom``, ``org.xml.sax``, ``org.xmlpull.v1``, ``org.yaml.snakeyaml``, ``play.libs.ws``, ``play.mvc``, ``ratpack.core.form``, ``ratpack.core.handling``, ``ratpack.core.http``, ``ratpack.exec``, ``ratpack.form``, ``ratpack.func``, ``ratpack.handling``, ``ratpack.http``, ``ratpack.util``, ``retrofit2``, ``sun.awt``, ``sun.jvmstat.perfdata.monitor.protocol.local``, ``sun.jvmstat.perfdata.monitor.protocol.rmi``, ``sun.management.spi``, ``sun.misc``, ``sun.net.ftp``, ``sun.net.www.protocol.http``, ``sun.nio.ch``, ``sun.security.acl``, ``sun.security.jgss.krb5``, ``sun.security.krb5``, ``sun.security.pkcs``, ``sun.security.pkcs11``, ``sun.security.provider``, ``sun.security.ssl``, ``sun.security.x509``, ``sun.tools.jconsole``, ``sun.util.logging.internal``",132,10603,898,130,6,22,18,,208
|
||||
Totals,,311,25147,2600,369,16,128,33,1,409
|
||||
|
||||
|
||||
8
java/ql/lib/ext/experimental/java.nio.model.yml
Normal file
8
java/ql/lib/ext/experimental/java.nio.model.yml
Normal file
@@ -0,0 +1,8 @@
|
||||
extensions:
|
||||
- addsTo:
|
||||
pack: codeql/java-all
|
||||
extensible: sinkModel
|
||||
data:
|
||||
- ["java.nio.file","FileSystems",true,"getFileSystem","(URI)","","Argument[0]","path-injection","manual"]
|
||||
- ["java.nio.channels","AsynchronousFileChannel",true,"open","(Path,OpenOption[])","","Argument[0]","path-injection","manual"]
|
||||
- ["java.nio.channels","AsynchronousFileChannel",true,"open","(Path,Set,ExecutorService,FileAttribute[])","","Argument[0]","path-injection","manual"]
|
||||
6
java/ql/lib/ext/experimental/java.util.zip.model.yml
Normal file
6
java/ql/lib/ext/experimental/java.util.zip.model.yml
Normal file
@@ -0,0 +1,6 @@
|
||||
extensions:
|
||||
- addsTo:
|
||||
pack: codeql/java-all
|
||||
extensible: sinkModel
|
||||
data:
|
||||
- ["java.util.zip","ZipFile",true,"ZipFile","(String)","","Argument[0]","path-injection","manual"]
|
||||
13
java/ql/lib/ext/experimental/s3-transfer-manager.model.yml
Normal file
13
java/ql/lib/ext/experimental/s3-transfer-manager.model.yml
Normal file
@@ -0,0 +1,13 @@
|
||||
extensions:
|
||||
- addsTo:
|
||||
pack: codeql/java-all
|
||||
extensible: sinkModel
|
||||
data:
|
||||
- ["software.amazon.awssdk.transfer.s3.model","ResumableFileUpload",true,"serializeToFile","(Path)","","Argument[0]","path-injection","manual"]
|
||||
- ["software.amazon.awssdk.transfer.s3.model","DownloadFileRequest$Builder",true,"destination","(Path)","","Argument[0]","path-injection","manual"]
|
||||
- ["software.amazon.awssdk.transfer.s3.model","UploadFileRequest$Builder",true,"source","(Path)","","Argument[0]","path-injection","manual"]
|
||||
- ["software.amazon.awssdk.transfer.s3.model","DownloadDirectoryRequest$Builder",true,"destination","(Path)","","Argument[0]","path-injection","manual"]
|
||||
- ["software.amazon.awssdk.transfer.s3.model","ResumableFileDownload",true,"fromFile","(Path)","","Argument[0]","path-injection","manual"]
|
||||
- ["software.amazon.awssdk.transfer.s3.model","ResumableFileDownload",true,"serializeToFile","(Path)","","Argument[0]","path-injection","manual"]
|
||||
- ["software.amazon.awssdk.transfer.s3.model","ResumableFileUpload",true,"fromFile","(Path)","","Argument[0]","path-injection","manual"]
|
||||
- ["software.amazon.awssdk.transfer.s3.model","UploadDirectoryRequest$Builder",true,"source","(Path)","","Argument[0]","path-injection","manual"]
|
||||
26
java/ql/lib/ext/experimental/spring-core.model.yml
Normal file
26
java/ql/lib/ext/experimental/spring-core.model.yml
Normal file
@@ -0,0 +1,26 @@
|
||||
extensions:
|
||||
- addsTo:
|
||||
pack: codeql/java-all
|
||||
extensible: sinkModel
|
||||
data:
|
||||
- ["org.springframework.core.io","FileSystemResource",true,"FileSystemResource","(FileSystem,String)","","Argument[1]","path-injection","manual"]
|
||||
- ["org.springframework.core.io","FileSystemResource",true,"FileSystemResource","(File)","","Argument[0]","path-injection","manual"]
|
||||
- ["org.springframework.core.io","FileSystemResource",true,"FileSystemResource","(Path)","","Argument[0]","path-injection","manual"]
|
||||
- ["org.springframework.core.io","FileSystemResource",true,"FileSystemResource","(String)","","Argument[0]","path-injection","manual"]
|
||||
- ["org.springframework.core.io","FileUrlResource",true,"FileUrlResource","(String)","","Argument[0]","path-injection","manual"]
|
||||
- ["org.springframework.core.io","FileUrlResource",true,"FileUrlResource","(URL)","","Argument[0]","path-injection","manual"]
|
||||
- ["org.springframework.core.io","PathResource",true,"PathResource","(Path)","","Argument[0]","path-injection","manual"]
|
||||
- ["org.springframework.core.io","PathResource",true,"PathResource","(String)","","Argument[0]","path-injection","manual"]
|
||||
- ["org.springframework.core.io","PathResource",true,"PathResource","(URI)","","Argument[0]","path-injection","manual"]
|
||||
- ["org.springframework.core.io","UrlResource",true,"UrlResource","(String,String,String)","","Argument[1]","path-injection","manual"]
|
||||
- ["org.springframework.core.io","UrlResource",true,"UrlResource","(String,String)","","Argument[1]","path-injection","manual"]
|
||||
- ["org.springframework.core.io","UrlResource",true,"UrlResource","(String)","","Argument[0]","path-injection","manual"]
|
||||
- ["org.springframework.core.io","UrlResource",true,"UrlResource","(URI)","","Argument[0]","path-injection","manual"]
|
||||
- ["org.springframework.core.io","UrlResource",true,"UrlResource","(URL)","","Argument[0]","path-injection","manual"]
|
||||
- ["org.springframework.util","FileSystemUtils",true,"copyRecursively","(Path,Path)","","Argument[0]","path-injection","manual"]
|
||||
- ["org.springframework.util","FileSystemUtils",true,"copyRecursively","(Path,Path)","","Argument[1]","path-injection","manual"]
|
||||
- ["org.springframework.util","FileSystemUtils",true,"deleteRecursively","(File)","","Argument[0]","path-injection","manual"]
|
||||
- ["org.springframework.util","FileSystemUtils",true,"deleteRecursively","(Path)","","Argument[0]","path-injection","manual"]
|
||||
- ["org.springframework.util","ResourceUtils",true,"getFile","(String)","","Argument[0]","path-injection","manual"]
|
||||
- ["org.springframework.util","FileCopyUtils",true,"copyToByteArray","(File)","","Argument[0]","path-injection","manual"]
|
||||
- ["org.springframework.util","FileSystemUtils",true,"copyRecursively","(File,File)","","Argument[0]","path-injection","manual"]
|
||||
7
java/ql/lib/ext/experimental/zip4j.model.yml
Normal file
7
java/ql/lib/ext/experimental/zip4j.model.yml
Normal file
@@ -0,0 +1,7 @@
|
||||
extensions:
|
||||
- addsTo:
|
||||
pack: codeql/java-all
|
||||
extensible: sinkModel
|
||||
data:
|
||||
- ["net.lingala.zip4j","ZipFile",true,"extractAll","(String)","","Argument[0]","path-injection","manual"]
|
||||
- ["net.lingala.zip4j","ZipFile",true,"ZipFile","(String)","","Argument[0]","path-injection","manual"]
|
||||
@@ -0,0 +1,131 @@
|
||||
import software.amazon.awssdk.transfer.s3.S3TransferManager;
|
||||
import software.amazon.awssdk.transfer.s3.model.UploadFileRequest;
|
||||
import software.amazon.awssdk.transfer.s3.model.FileUpload;
|
||||
import software.amazon.awssdk.transfer.s3.model.FileDownload;
|
||||
import software.amazon.awssdk.transfer.s3.model.DirectoryUpload;
|
||||
import software.amazon.awssdk.transfer.s3.model.CompletedDirectoryUpload;
|
||||
import software.amazon.awssdk.transfer.s3.model.DirectoryDownload;
|
||||
import software.amazon.awssdk.transfer.s3.model.CompletedDirectoryDownload;
|
||||
import software.amazon.awssdk.transfer.s3.model.DownloadDirectoryRequest;
|
||||
import software.amazon.awssdk.transfer.s3.model.DownloadFileRequest;
|
||||
import software.amazon.awssdk.transfer.s3.model.ResumableFileUpload;
|
||||
import software.amazon.awssdk.transfer.s3.model.UploadDirectoryRequest;
|
||||
import software.amazon.awssdk.transfer.s3.model.ResumableFileDownload;
|
||||
import software.amazon.awssdk.transfer.s3.model.CompletedFileUpload;
|
||||
import software.amazon.awssdk.transfer.s3.model.CompletedFileDownload;
|
||||
import software.amazon.awssdk.transfer.s3.progress.LoggingTransferListener;
|
||||
|
||||
import java.net.URI;
|
||||
import java.nio.file.Paths;
|
||||
|
||||
public class AmazonS3 {
|
||||
S3TransferManager transferManager = S3TransferManager.create();
|
||||
String bucketName = "bucketTest";
|
||||
String key = "keyTest";
|
||||
|
||||
public String uploadFile(URI filePathURI) {
|
||||
UploadFileRequest uploadFileRequest =
|
||||
UploadFileRequest.builder()
|
||||
.putObjectRequest(b -> b.bucket(this.bucketName).key(this.key))
|
||||
.addTransferListener(LoggingTransferListener.create())
|
||||
.source(Paths.get(filePathURI)) // $ hasTaintFlow="get(...)"
|
||||
.build();
|
||||
|
||||
FileUpload fileUpload = this.transferManager.uploadFile(uploadFileRequest);
|
||||
|
||||
CompletedFileUpload uploadResult = fileUpload.completionFuture().join();
|
||||
return uploadResult.response().eTag();
|
||||
}
|
||||
|
||||
public String uploadFileResumable(URI filePathURI) {
|
||||
UploadFileRequest uploadFileRequest =
|
||||
UploadFileRequest.builder()
|
||||
.putObjectRequest(b -> b.bucket(this.bucketName).key(this.key))
|
||||
.addTransferListener(LoggingTransferListener.create())
|
||||
.source(Paths.get(filePathURI)) // $ hasTaintFlow="get(...)"
|
||||
.build();
|
||||
|
||||
// Initiate the transfer
|
||||
FileUpload upload = this.transferManager.uploadFile(uploadFileRequest);
|
||||
// Pause the upload
|
||||
ResumableFileUpload resumableFileUpload = upload.pause();
|
||||
// Optionally, persist the resumableFileUpload
|
||||
resumableFileUpload.serializeToFile(Paths.get(filePathURI)); // $ hasTaintFlow="get(...)"
|
||||
// Retrieve the resumableFileUpload from the file
|
||||
ResumableFileUpload persistedResumableFileUpload =
|
||||
ResumableFileUpload.fromFile(Paths.get(filePathURI)); // $ hasTaintFlow="get(...)"
|
||||
// Resume the upload
|
||||
FileUpload resumedUpload = this.transferManager.resumeUploadFile(persistedResumableFileUpload);
|
||||
// Wait for the transfer to complete
|
||||
resumedUpload.completionFuture().join();
|
||||
FileUpload fileUpload = this.transferManager.uploadFile(uploadFileRequest);
|
||||
CompletedFileUpload uploadResult = fileUpload.completionFuture().join();
|
||||
return uploadResult.response().eTag();
|
||||
}
|
||||
|
||||
public String downloadFileResumable(URI downloadedFileWithPath) {
|
||||
DownloadFileRequest downloadFileRequest =
|
||||
DownloadFileRequest.builder()
|
||||
.getObjectRequest(b -> b.bucket(this.bucketName).key(this.key))
|
||||
.addTransferListener(LoggingTransferListener.create())
|
||||
.destination(Paths.get(downloadedFileWithPath)) // $ hasTaintFlow="get(...)"
|
||||
.build();
|
||||
|
||||
// Initiate the transfer
|
||||
FileDownload download = this.transferManager.downloadFile(downloadFileRequest);
|
||||
// Pause the download
|
||||
ResumableFileDownload resumableFileDownload = download.pause();
|
||||
// Optionally, persist the resumableFileDownload
|
||||
resumableFileDownload.serializeToFile(Paths.get(downloadedFileWithPath)); // $ hasTaintFlow="get(...)"
|
||||
// Retrieve the resumableFileDownload from the file
|
||||
ResumableFileDownload persistedResumableFileDownload =
|
||||
ResumableFileDownload.fromFile(Paths.get(downloadedFileWithPath)); // $ hasTaintFlow="get(...)"
|
||||
// Resume the download
|
||||
FileDownload resumedDownload =
|
||||
this.transferManager.resumeDownloadFile(persistedResumableFileDownload);
|
||||
// Wait for the transfer to complete
|
||||
resumedDownload.completionFuture().join();
|
||||
FileDownload filedownload = this.transferManager.downloadFile(downloadFileRequest);
|
||||
CompletedFileDownload downloadResult = filedownload.completionFuture().join();
|
||||
return downloadResult.response().eTag();
|
||||
}
|
||||
|
||||
public Integer uploadDirectory(URI sourceDirectory) {
|
||||
DirectoryUpload directoryUpload =
|
||||
this.transferManager.uploadDirectory(
|
||||
UploadDirectoryRequest.builder()
|
||||
.source(Paths.get(sourceDirectory)) // $ hasTaintFlow="get(...)"
|
||||
.bucket(this.bucketName)
|
||||
.build());
|
||||
|
||||
CompletedDirectoryUpload completedDirectoryUpload = directoryUpload.completionFuture().join();
|
||||
return completedDirectoryUpload.failedTransfers().size();
|
||||
}
|
||||
|
||||
public Long downloadFile(String downloadedFileWithPath) {
|
||||
DownloadFileRequest downloadFileRequest =
|
||||
DownloadFileRequest.builder()
|
||||
.getObjectRequest(b -> b.bucket(this.bucketName).key(this.key))
|
||||
.addTransferListener(LoggingTransferListener.create())
|
||||
.destination(Paths.get(downloadedFileWithPath)) // $ hasTaintFlow="get(...)"
|
||||
.build();
|
||||
|
||||
FileDownload downloadFile = this.transferManager.downloadFile(downloadFileRequest);
|
||||
|
||||
CompletedFileDownload downloadResult = downloadFile.completionFuture().join();
|
||||
return downloadResult.response().contentLength();
|
||||
}
|
||||
|
||||
public Integer downloadObjectsToDirectory(URI destinationPathURI) {
|
||||
DirectoryDownload directoryDownload =
|
||||
this.transferManager.downloadDirectory(
|
||||
DownloadDirectoryRequest.builder()
|
||||
.destination(Paths.get(destinationPathURI)) // $ hasTaintFlow="get(...)"
|
||||
.bucket(this.bucketName)
|
||||
.build());
|
||||
CompletedDirectoryDownload completedDirectoryDownload =
|
||||
directoryDownload.completionFuture().join();
|
||||
|
||||
return completedDirectoryDownload.failedTransfers().size();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
import java.io.IOException;
|
||||
import java.io.File;
|
||||
import java.nio.channels.AsynchronousFileChannel;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.LinkOption;
|
||||
import java.nio.file.FileSystems;
|
||||
import java.nio.file.attribute.FileAttribute;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.ExecutorService;
|
||||
import java.util.concurrent.Executors;
|
||||
|
||||
public class JavaNio {
|
||||
static class FileAttr implements FileAttribute<String> {
|
||||
public String name() {
|
||||
return "file";
|
||||
}
|
||||
|
||||
public String value() {
|
||||
return "value";
|
||||
}
|
||||
}
|
||||
|
||||
public void PathInjection(Path src, File srcF) throws IOException {
|
||||
AsynchronousFileChannel.open(src); // $ hasTaintFlow="src"
|
||||
AsynchronousFileChannel.open(src, LinkOption.NOFOLLOW_LINKS); // $ hasTaintFlow="src"
|
||||
AsynchronousFileChannel.open(
|
||||
src, LinkOption.NOFOLLOW_LINKS, LinkOption.NOFOLLOW_LINKS); // $ hasTaintFlow="src"
|
||||
ExecutorService executor = Executors.newFixedThreadPool(10);
|
||||
AsynchronousFileChannel.open(
|
||||
src, Set.of(LinkOption.NOFOLLOW_LINKS), executor); // $ hasTaintFlow="src"
|
||||
AsynchronousFileChannel.open(
|
||||
src, // $ hasTaintFlow="src"
|
||||
Set.of(LinkOption.NOFOLLOW_LINKS),
|
||||
executor,
|
||||
new FileAttr());
|
||||
|
||||
FileSystems.getFileSystem(srcF.toURI()); // $ hasTaintFlow="toURI(...)"
|
||||
}
|
||||
}
|
||||
35
java/ql/test/experimental/query-tests/security/CWE-022/Main.java
Executable file
35
java/ql/test/experimental/query-tests/security/CWE-022/Main.java
Executable file
@@ -0,0 +1,35 @@
|
||||
import java.io.BufferedReader;
|
||||
import java.io.InputStreamReader;
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.nio.file.Path;
|
||||
import java.net.Socket;
|
||||
|
||||
public class Main {
|
||||
public void sendUserFileGood(Socket sock) throws IOException {
|
||||
BufferedReader filenameReader =
|
||||
new BufferedReader(new InputStreamReader(sock.getInputStream(), StandardCharsets.UTF_8));
|
||||
String path = filenameReader.readLine();
|
||||
Path src = Path.of(path);
|
||||
File srcF = new File(path);
|
||||
|
||||
new JavaNio().PathInjection(src, srcF);
|
||||
|
||||
new SpringIo().PathInjection(path);
|
||||
|
||||
AmazonS3 s3PathInjection = new AmazonS3();
|
||||
s3PathInjection.downloadFileResumable(src.toUri());
|
||||
s3PathInjection.downloadFile(path);
|
||||
s3PathInjection.downloadObjectsToDirectory(src.toUri());
|
||||
s3PathInjection.uploadFileResumable(src.toUri());
|
||||
s3PathInjection.uploadDirectory(src.toUri());
|
||||
s3PathInjection.uploadFile(src.toUri());
|
||||
|
||||
Zip4j zip4jfile = new Zip4j();
|
||||
zip4jfile.PathInjection(path);
|
||||
|
||||
ZipFile zipfile = new ZipFile();
|
||||
zipfile.PathInjection(path);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module version="4">
|
||||
<component name="AdditionalModuleElements">
|
||||
<content url="file://$MODULE_DIR$" dumb="true">
|
||||
<sourceFolder url="file://$MODULE_DIR$" isTestSource="false" />
|
||||
</content>
|
||||
</component>
|
||||
</module>
|
||||
46
java/ql/test/experimental/query-tests/security/CWE-022/SpringIo.java
Executable file
46
java/ql/test/experimental/query-tests/security/CWE-022/SpringIo.java
Executable file
@@ -0,0 +1,46 @@
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.net.URI;
|
||||
import java.nio.file.FileSystems;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
import org.springframework.core.io.FileUrlResource;
|
||||
import org.springframework.core.io.FileSystemResource;
|
||||
import org.springframework.core.io.PathResource;
|
||||
import org.springframework.core.io.UrlResource;
|
||||
import org.springframework.util.FileCopyUtils;
|
||||
import org.springframework.util.FileSystemUtils;
|
||||
|
||||
public class SpringIo {
|
||||
public void PathInjection(String path) throws IOException {
|
||||
Path fileStorageLocation = Paths.get(path).toAbsolutePath().normalize();
|
||||
Path filePath = fileStorageLocation.resolve(path).normalize();
|
||||
File pathFile = new File(path);
|
||||
|
||||
new UrlResource(filePath.toUri()); // $ hasTaintFlow="toUri(...)"
|
||||
new UrlResource(filePath.toUri().toURL()); // $ hasTaintFlow="toURL(...)"
|
||||
new UrlResource("file", path); // $ hasTaintFlow="path"
|
||||
new UrlResource("file", path, "#"); // $ hasTaintFlow="path"
|
||||
new UrlResource(path); // $ hasTaintFlow="path"
|
||||
|
||||
new PathResource(path); // $ hasTaintFlow="path"
|
||||
new PathResource(filePath); // $ hasTaintFlow="filePath"
|
||||
new PathResource(filePath.toUri()); // $ hasTaintFlow="toUri(...)"
|
||||
|
||||
new FileUrlResource(filePath.toUri().toURL()); // $ hasTaintFlow="toURL(...)"
|
||||
new FileUrlResource(path); // $ hasTaintFlow="path"
|
||||
|
||||
new FileSystemResource(pathFile); // $ hasTaintFlow="pathFile"
|
||||
new FileSystemResource(path); // $ hasTaintFlow="path"
|
||||
new FileSystemResource(filePath); // $ hasTaintFlow="filePath"
|
||||
new FileSystemResource(
|
||||
FileSystems.getFileSystem(URI.create("file:///")), path); // $ hasTaintFlow="path"
|
||||
|
||||
FileSystemUtils.copyRecursively(filePath, filePath.resolve("/newPath")); // $ hasTaintFlow="filePath" hasTaintFlow="resolve(...)"
|
||||
FileSystemUtils.copyRecursively(pathFile, pathFile); // $ hasTaintFlow="pathFile"
|
||||
FileSystemUtils.deleteRecursively(pathFile); // $ hasTaintFlow="pathFile"
|
||||
FileSystemUtils.deleteRecursively(filePath); // $ hasTaintFlow="filePath"
|
||||
FileCopyUtils.copy(pathFile, pathFile); // $ hasTaintFlow="pathFile"
|
||||
FileCopyUtils.copyToByteArray(pathFile); // $ hasTaintFlow="pathFile"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
import java
|
||||
import TestUtilities.InlineFlowTest
|
||||
import semmle.code.java.security.TaintedPathQuery
|
||||
import TaintFlowTestArgString<TaintedPathConfig, getArgString/2>
|
||||
|
||||
string getArgString(DataFlow::Node src, DataFlow::Node sink) {
|
||||
exists(src) and
|
||||
result = "\"" + sink.toString() + "\""
|
||||
}
|
||||
9
java/ql/test/experimental/query-tests/security/CWE-022/Zip4j.java
Executable file
9
java/ql/test/experimental/query-tests/security/CWE-022/Zip4j.java
Executable file
@@ -0,0 +1,9 @@
|
||||
import java.io.IOException;
|
||||
import net.lingala.zip4j.ZipFile;
|
||||
|
||||
public class Zip4j {
|
||||
public void PathInjection(String path) throws IOException {
|
||||
ZipFile zipfile = new ZipFile(path); // $ hasTaintFlow="path"
|
||||
zipfile.extractAll(path); // $ hasTaintFlow="path"
|
||||
}
|
||||
}
|
||||
7
java/ql/test/experimental/query-tests/security/CWE-022/ZipFile.java
Executable file
7
java/ql/test/experimental/query-tests/security/CWE-022/ZipFile.java
Executable file
@@ -0,0 +1,7 @@
|
||||
import java.io.IOException;
|
||||
|
||||
public class ZipFile {
|
||||
public void PathInjection(String path) throws IOException {
|
||||
new java.util.zip.ZipFile(path); // $ hasTaintFlow="path"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
//semmle-extractor-options: --javac-args -cp ${testdir}/../../../stubs/lingala-zip4j-2.11.5:${testdir}/../../../stubs/software-amazon-awssdk-crt-0.20.3:${testdir}/../../../../stubs/springframework-5.3.8:${testdir}/../../../stubs/reactivestreams-1.0.4:${testdir}/../../../../stubs/slf4j-2.0.0
|
||||
78
java/ql/test/experimental/stubs/lingala-zip4j-2.11.5/net/lingala/zip4j/ZipFile.java
generated
Normal file
78
java/ql/test/experimental/stubs/lingala-zip4j-2.11.5/net/lingala/zip4j/ZipFile.java
generated
Normal file
@@ -0,0 +1,78 @@
|
||||
// Generated automatically from net.lingala.zip4j.ZipFile for testing purposes
|
||||
|
||||
package net.lingala.zip4j;
|
||||
|
||||
import java.io.Closeable;
|
||||
import java.io.File;
|
||||
import java.io.InputStream;
|
||||
import java.nio.charset.Charset;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.ExecutorService;
|
||||
import java.util.concurrent.ThreadFactory;
|
||||
import net.lingala.zip4j.io.inputstream.ZipInputStream;
|
||||
import net.lingala.zip4j.model.FileHeader;
|
||||
import net.lingala.zip4j.model.UnzipParameters;
|
||||
import net.lingala.zip4j.model.ZipParameters;
|
||||
import net.lingala.zip4j.progress.ProgressMonitor;
|
||||
|
||||
public class ZipFile implements Closeable
|
||||
{
|
||||
protected ZipFile() {}
|
||||
public Charset getCharset(){ return null; }
|
||||
public ExecutorService getExecutorService(){ return null; }
|
||||
public File getFile(){ return null; }
|
||||
public FileHeader getFileHeader(String p0){ return null; }
|
||||
public List<File> getSplitZipFiles(){ return null; }
|
||||
public List<FileHeader> getFileHeaders(){ return null; }
|
||||
public ProgressMonitor getProgressMonitor(){ return null; }
|
||||
public String getComment(){ return null; }
|
||||
public String toString(){ return null; }
|
||||
public ZipFile(File p0){}
|
||||
public ZipFile(File p0, char[] p1){}
|
||||
public ZipFile(String p0){}
|
||||
public ZipFile(String p0, char[] p1){}
|
||||
public ZipInputStream getInputStream(FileHeader p0){ return null; }
|
||||
public boolean isEncrypted(){ return false; }
|
||||
public boolean isRunInThread(){ return false; }
|
||||
public boolean isSplitArchive(){ return false; }
|
||||
public boolean isUseUtf8CharsetForPasswords(){ return false; }
|
||||
public boolean isValidZipFile(){ return false; }
|
||||
public int getBufferSize(){ return 0; }
|
||||
public void addFile(File p0){}
|
||||
public void addFile(File p0, ZipParameters p1){}
|
||||
public void addFile(String p0){}
|
||||
public void addFile(String p0, ZipParameters p1){}
|
||||
public void addFiles(List<File> p0){}
|
||||
public void addFiles(List<File> p0, ZipParameters p1){}
|
||||
public void addFolder(File p0){}
|
||||
public void addFolder(File p0, ZipParameters p1){}
|
||||
public void addStream(InputStream p0, ZipParameters p1){}
|
||||
public void close(){}
|
||||
public void createSplitZipFile(List<File> p0, ZipParameters p1, boolean p2, long p3){}
|
||||
public void createSplitZipFileFromFolder(File p0, ZipParameters p1, boolean p2, long p3){}
|
||||
public void extractAll(String p0){}
|
||||
public void extractAll(String p0, UnzipParameters p1){}
|
||||
public void extractFile(FileHeader p0, String p1){}
|
||||
public void extractFile(FileHeader p0, String p1, String p2){}
|
||||
public void extractFile(FileHeader p0, String p1, String p2, UnzipParameters p3){}
|
||||
public void extractFile(FileHeader p0, String p1, UnzipParameters p2){}
|
||||
public void extractFile(String p0, String p1){}
|
||||
public void extractFile(String p0, String p1, String p2){}
|
||||
public void extractFile(String p0, String p1, String p2, UnzipParameters p3){}
|
||||
public void extractFile(String p0, String p1, UnzipParameters p2){}
|
||||
public void mergeSplitFiles(File p0){}
|
||||
public void removeFile(FileHeader p0){}
|
||||
public void removeFile(String p0){}
|
||||
public void removeFiles(List<String> p0){}
|
||||
public void renameFile(FileHeader p0, String p1){}
|
||||
public void renameFile(String p0, String p1){}
|
||||
public void renameFiles(Map<String, String> p0){}
|
||||
public void setBufferSize(int p0){}
|
||||
public void setCharset(Charset p0){}
|
||||
public void setComment(String p0){}
|
||||
public void setPassword(char[] p0){}
|
||||
public void setRunInThread(boolean p0){}
|
||||
public void setThreadFactory(ThreadFactory p0){}
|
||||
public void setUseUtf8CharsetForPasswords(boolean p0){}
|
||||
}
|
||||
10
java/ql/test/experimental/stubs/lingala-zip4j-2.11.5/net/lingala/zip4j/model/ExcludeFileFilter.java
generated
Normal file
10
java/ql/test/experimental/stubs/lingala-zip4j-2.11.5/net/lingala/zip4j/model/ExcludeFileFilter.java
generated
Normal file
@@ -0,0 +1,10 @@
|
||||
// Generated automatically from net.lingala.zip4j.model.ExcludeFileFilter for testing purposes
|
||||
|
||||
package net.lingala.zip4j.model;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
public interface ExcludeFileFilter
|
||||
{
|
||||
boolean isExcluded(File p0);
|
||||
}
|
||||
11
java/ql/test/experimental/stubs/lingala-zip4j-2.11.5/net/lingala/zip4j/model/UnzipParameters.java
generated
Normal file
11
java/ql/test/experimental/stubs/lingala-zip4j-2.11.5/net/lingala/zip4j/model/UnzipParameters.java
generated
Normal file
@@ -0,0 +1,11 @@
|
||||
// Generated automatically from net.lingala.zip4j.model.UnzipParameters for testing purposes
|
||||
|
||||
package net.lingala.zip4j.model;
|
||||
|
||||
|
||||
public class UnzipParameters
|
||||
{
|
||||
public UnzipParameters(){}
|
||||
public boolean isExtractSymbolicLinks(){ return false; }
|
||||
public void setExtractSymbolicLinks(boolean p0){}
|
||||
}
|
||||
63
java/ql/test/experimental/stubs/lingala-zip4j-2.11.5/net/lingala/zip4j/model/ZipParameters.java
generated
Normal file
63
java/ql/test/experimental/stubs/lingala-zip4j-2.11.5/net/lingala/zip4j/model/ZipParameters.java
generated
Normal file
@@ -0,0 +1,63 @@
|
||||
// Generated automatically from net.lingala.zip4j.model.ZipParameters for testing purposes
|
||||
|
||||
package net.lingala.zip4j.model;
|
||||
|
||||
import net.lingala.zip4j.model.ExcludeFileFilter;
|
||||
import net.lingala.zip4j.model.enums.AesKeyStrength;
|
||||
import net.lingala.zip4j.model.enums.AesVersion;
|
||||
import net.lingala.zip4j.model.enums.CompressionLevel;
|
||||
import net.lingala.zip4j.model.enums.CompressionMethod;
|
||||
import net.lingala.zip4j.model.enums.EncryptionMethod;
|
||||
|
||||
public class ZipParameters
|
||||
{
|
||||
public AesKeyStrength getAesKeyStrength(){ return null; }
|
||||
public AesVersion getAesVersion(){ return null; }
|
||||
public CompressionLevel getCompressionLevel(){ return null; }
|
||||
public CompressionMethod getCompressionMethod(){ return null; }
|
||||
public EncryptionMethod getEncryptionMethod(){ return null; }
|
||||
public ExcludeFileFilter getExcludeFileFilter(){ return null; }
|
||||
public String getDefaultFolderPath(){ return null; }
|
||||
public String getFileComment(){ return null; }
|
||||
public String getFileNameInZip(){ return null; }
|
||||
public String getRootFolderNameInZip(){ return null; }
|
||||
public ZipParameters(){}
|
||||
public ZipParameters(ZipParameters p0){}
|
||||
public ZipParameters.SymbolicLinkAction getSymbolicLinkAction(){ return null; }
|
||||
public boolean isEncryptFiles(){ return false; }
|
||||
public boolean isIncludeRootFolder(){ return false; }
|
||||
public boolean isOverrideExistingFilesInZip(){ return false; }
|
||||
public boolean isReadHiddenFiles(){ return false; }
|
||||
public boolean isReadHiddenFolders(){ return false; }
|
||||
public boolean isUnixMode(){ return false; }
|
||||
public boolean isWriteExtendedLocalFileHeader(){ return false; }
|
||||
public long getEntryCRC(){ return 0; }
|
||||
public long getEntrySize(){ return 0; }
|
||||
public long getLastModifiedFileTime(){ return 0; }
|
||||
public void setAesKeyStrength(AesKeyStrength p0){}
|
||||
public void setAesVersion(AesVersion p0){}
|
||||
public void setCompressionLevel(CompressionLevel p0){}
|
||||
public void setCompressionMethod(CompressionMethod p0){}
|
||||
public void setDefaultFolderPath(String p0){}
|
||||
public void setEncryptFiles(boolean p0){}
|
||||
public void setEncryptionMethod(EncryptionMethod p0){}
|
||||
public void setEntryCRC(long p0){}
|
||||
public void setEntrySize(long p0){}
|
||||
public void setExcludeFileFilter(ExcludeFileFilter p0){}
|
||||
public void setFileComment(String p0){}
|
||||
public void setFileNameInZip(String p0){}
|
||||
public void setIncludeRootFolder(boolean p0){}
|
||||
public void setLastModifiedFileTime(long p0){}
|
||||
public void setOverrideExistingFilesInZip(boolean p0){}
|
||||
public void setReadHiddenFiles(boolean p0){}
|
||||
public void setReadHiddenFolders(boolean p0){}
|
||||
public void setRootFolderNameInZip(String p0){}
|
||||
public void setSymbolicLinkAction(ZipParameters.SymbolicLinkAction p0){}
|
||||
public void setUnixMode(boolean p0){}
|
||||
public void setWriteExtendedLocalFileHeader(boolean p0){}
|
||||
static public enum SymbolicLinkAction
|
||||
{
|
||||
INCLUDE_LINKED_FILE_ONLY, INCLUDE_LINK_AND_LINKED_FILE, INCLUDE_LINK_ONLY;
|
||||
private SymbolicLinkAction() {}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
// Generated automatically from net.lingala.zip4j.model.enums.CompressionLevel for testing purposes
|
||||
|
||||
package net.lingala.zip4j.model.enums;
|
||||
|
||||
|
||||
public enum CompressionLevel
|
||||
{
|
||||
FAST, FASTER, FASTEST, HIGHER, MAXIMUM, MEDIUM_FAST, NORMAL, NO_COMPRESSION, PRE_ULTRA, ULTRA;
|
||||
private CompressionLevel() {}
|
||||
public int getLevel(){ return 0; }
|
||||
}
|
||||
47
java/ql/test/experimental/stubs/lingala-zip4j-2.11.5/net/lingala/zip4j/progress/ProgressMonitor.java
generated
Normal file
47
java/ql/test/experimental/stubs/lingala-zip4j-2.11.5/net/lingala/zip4j/progress/ProgressMonitor.java
generated
Normal file
@@ -0,0 +1,47 @@
|
||||
// Generated automatically from net.lingala.zip4j.progress.ProgressMonitor for testing purposes
|
||||
|
||||
package net.lingala.zip4j.progress;
|
||||
|
||||
|
||||
public class ProgressMonitor
|
||||
{
|
||||
public Exception getException(){ return null; }
|
||||
public ProgressMonitor(){}
|
||||
public ProgressMonitor.Result getResult(){ return null; }
|
||||
public ProgressMonitor.State getState(){ return null; }
|
||||
public ProgressMonitor.Task getCurrentTask(){ return null; }
|
||||
public String getFileName(){ return null; }
|
||||
public boolean isCancelAllTasks(){ return false; }
|
||||
public boolean isPause(){ return false; }
|
||||
public int getPercentDone(){ return 0; }
|
||||
public long getTotalWork(){ return 0; }
|
||||
public long getWorkCompleted(){ return 0; }
|
||||
public void endProgressMonitor(){}
|
||||
public void endProgressMonitor(Exception p0){}
|
||||
public void fullReset(){}
|
||||
public void setCancelAllTasks(boolean p0){}
|
||||
public void setCurrentTask(ProgressMonitor.Task p0){}
|
||||
public void setException(Exception p0){}
|
||||
public void setFileName(String p0){}
|
||||
public void setPause(boolean p0){}
|
||||
public void setPercentDone(int p0){}
|
||||
public void setResult(ProgressMonitor.Result p0){}
|
||||
public void setState(ProgressMonitor.State p0){}
|
||||
public void setTotalWork(long p0){}
|
||||
public void updateWorkCompleted(long p0){}
|
||||
static public enum Result
|
||||
{
|
||||
CANCELLED, ERROR, SUCCESS, WORK_IN_PROGRESS;
|
||||
private Result() {}
|
||||
}
|
||||
static public enum State
|
||||
{
|
||||
BUSY, READY;
|
||||
private State() {}
|
||||
}
|
||||
static public enum Task
|
||||
{
|
||||
ADD_ENTRY, CALCULATE_CRC, EXTRACT_ENTRY, MERGE_ZIP_FILES, NONE, REMOVE_ENTRY, RENAME_FILE, SET_COMMENT;
|
||||
private Task() {}
|
||||
}
|
||||
}
|
||||
10
java/ql/test/experimental/stubs/reactivestreams-1.0.4/org/reactivestreams/Publisher.java
generated
Normal file
10
java/ql/test/experimental/stubs/reactivestreams-1.0.4/org/reactivestreams/Publisher.java
generated
Normal file
@@ -0,0 +1,10 @@
|
||||
// Generated automatically from org.reactivestreams.Publisher for testing purposes
|
||||
|
||||
package org.reactivestreams;
|
||||
|
||||
import org.reactivestreams.Subscriber;
|
||||
|
||||
public interface Publisher<T>
|
||||
{
|
||||
void subscribe(org.reactivestreams.Subscriber<? super T> p0);
|
||||
}
|
||||
13
java/ql/test/experimental/stubs/reactivestreams-1.0.4/org/reactivestreams/Subscriber.java
generated
Normal file
13
java/ql/test/experimental/stubs/reactivestreams-1.0.4/org/reactivestreams/Subscriber.java
generated
Normal file
@@ -0,0 +1,13 @@
|
||||
// Generated automatically from org.reactivestreams.Subscriber for testing purposes
|
||||
|
||||
package org.reactivestreams;
|
||||
|
||||
import org.reactivestreams.Subscription;
|
||||
|
||||
public interface Subscriber<T>
|
||||
{
|
||||
void onComplete();
|
||||
void onError(Throwable p0);
|
||||
void onNext(T p0);
|
||||
void onSubscribe(Subscription p0);
|
||||
}
|
||||
10
java/ql/test/experimental/stubs/reactivestreams-1.0.4/org/reactivestreams/Subscription.java
generated
Normal file
10
java/ql/test/experimental/stubs/reactivestreams-1.0.4/org/reactivestreams/Subscription.java
generated
Normal file
@@ -0,0 +1,10 @@
|
||||
// Generated automatically from org.reactivestreams.Subscription for testing purposes
|
||||
|
||||
package org.reactivestreams;
|
||||
|
||||
|
||||
public interface Subscription
|
||||
{
|
||||
void cancel();
|
||||
void request(long p0);
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
// Generated automatically from software.amazon.awssdk.auth.credentials.AwsCredentials for testing purposes
|
||||
|
||||
package software.amazon.awssdk.auth.credentials;
|
||||
|
||||
|
||||
public interface AwsCredentials
|
||||
{
|
||||
String accessKeyId();
|
||||
String secretAccessKey();
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
// Generated automatically from software.amazon.awssdk.auth.credentials.AwsCredentialsProvider for testing purposes
|
||||
|
||||
package software.amazon.awssdk.auth.credentials;
|
||||
|
||||
import software.amazon.awssdk.auth.credentials.AwsCredentials;
|
||||
|
||||
public interface AwsCredentialsProvider
|
||||
{
|
||||
AwsCredentials resolveCredentials();
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
// Generated automatically from software.amazon.awssdk.awscore.AwsRequest for testing purposes
|
||||
|
||||
package software.amazon.awssdk.awscore;
|
||||
|
||||
import java.util.Optional;
|
||||
import java.util.function.Consumer;
|
||||
import software.amazon.awssdk.awscore.AwsRequestOverrideConfiguration;
|
||||
import software.amazon.awssdk.core.SdkRequest;
|
||||
|
||||
abstract public class AwsRequest extends SdkRequest
|
||||
{
|
||||
protected AwsRequest() {}
|
||||
protected AwsRequest(AwsRequest.Builder p0){}
|
||||
public abstract AwsRequest.Builder toBuilder();
|
||||
public boolean equals(Object p0){ return false; }
|
||||
public final Optional<AwsRequestOverrideConfiguration> overrideConfiguration(){ return null; }
|
||||
public int hashCode(){ return 0; }
|
||||
static public interface Builder extends SdkRequest.Builder
|
||||
{
|
||||
AwsRequest build();
|
||||
AwsRequest.Builder overrideConfiguration(AwsRequestOverrideConfiguration p0);
|
||||
AwsRequest.Builder overrideConfiguration(java.util.function.Consumer<AwsRequestOverrideConfiguration.Builder> p0);
|
||||
AwsRequestOverrideConfiguration overrideConfiguration();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
// Generated automatically from software.amazon.awssdk.awscore.AwsRequestOverrideConfiguration for testing purposes
|
||||
|
||||
package software.amazon.awssdk.awscore;
|
||||
|
||||
import java.util.Optional;
|
||||
import software.amazon.awssdk.auth.credentials.AwsCredentialsProvider;
|
||||
import software.amazon.awssdk.core.RequestOverrideConfiguration;
|
||||
import software.amazon.awssdk.utils.builder.SdkBuilder;
|
||||
|
||||
public class AwsRequestOverrideConfiguration extends RequestOverrideConfiguration
|
||||
{
|
||||
protected AwsRequestOverrideConfiguration() {}
|
||||
public AwsRequestOverrideConfiguration.Builder toBuilder(){ return null; }
|
||||
public Optional<AwsCredentialsProvider> credentialsProvider(){ return null; }
|
||||
public boolean equals(Object p0){ return false; }
|
||||
public int hashCode(){ return 0; }
|
||||
public static AwsRequestOverrideConfiguration from(RequestOverrideConfiguration p0){ return null; }
|
||||
public static AwsRequestOverrideConfiguration.Builder builder(){ return null; }
|
||||
static public interface Builder extends RequestOverrideConfiguration.Builder<AwsRequestOverrideConfiguration.Builder>, SdkBuilder<AwsRequestOverrideConfiguration.Builder, AwsRequestOverrideConfiguration>
|
||||
{
|
||||
AwsCredentialsProvider credentialsProvider();
|
||||
AwsRequestOverrideConfiguration build();
|
||||
AwsRequestOverrideConfiguration.Builder credentialsProvider(AwsCredentialsProvider p0);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
// Generated automatically from software.amazon.awssdk.awscore.AwsResponse for testing purposes
|
||||
|
||||
package software.amazon.awssdk.awscore;
|
||||
|
||||
import software.amazon.awssdk.awscore.AwsResponseMetadata;
|
||||
import software.amazon.awssdk.core.SdkResponse;
|
||||
|
||||
abstract public class AwsResponse extends SdkResponse
|
||||
{
|
||||
protected AwsResponse() {}
|
||||
protected AwsResponse(AwsResponse.Builder p0){}
|
||||
public AwsResponseMetadata responseMetadata(){ return null; }
|
||||
public abstract AwsResponse.Builder toBuilder();
|
||||
public boolean equals(Object p0){ return false; }
|
||||
public int hashCode(){ return 0; }
|
||||
static public interface Builder extends SdkResponse.Builder
|
||||
{
|
||||
AwsResponse build();
|
||||
AwsResponse.Builder responseMetadata(AwsResponseMetadata p0);
|
||||
AwsResponseMetadata responseMetadata();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
// Generated automatically from software.amazon.awssdk.awscore.AwsResponseMetadata for testing purposes
|
||||
|
||||
package software.amazon.awssdk.awscore;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
abstract public class AwsResponseMetadata
|
||||
{
|
||||
protected AwsResponseMetadata() {}
|
||||
protected AwsResponseMetadata(AwsResponseMetadata p0){}
|
||||
protected AwsResponseMetadata(Map<String, String> p0){}
|
||||
protected final String getValue(String p0){ return null; }
|
||||
public String requestId(){ return null; }
|
||||
public boolean equals(Object p0){ return false; }
|
||||
public final String toString(){ return null; }
|
||||
public int hashCode(){ return 0; }
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
// Generated automatically from software.amazon.awssdk.awscore.client.builder.AwsAsyncClientBuilder for testing purposes
|
||||
|
||||
package software.amazon.awssdk.awscore.client.builder;
|
||||
|
||||
import software.amazon.awssdk.core.client.builder.SdkAsyncClientBuilder;
|
||||
|
||||
public interface AwsAsyncClientBuilder<B extends AwsAsyncClientBuilder<B, C>, C> extends SdkAsyncClientBuilder<B, C>
|
||||
{
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
// Generated automatically from software.amazon.awssdk.awscore.client.builder.AwsClientBuilder for testing purposes
|
||||
|
||||
package software.amazon.awssdk.awscore.client.builder;
|
||||
|
||||
import software.amazon.awssdk.auth.credentials.AwsCredentialsProvider;
|
||||
import software.amazon.awssdk.awscore.defaultsmode.DefaultsMode;
|
||||
import software.amazon.awssdk.core.client.builder.SdkClientBuilder;
|
||||
import software.amazon.awssdk.regions.Region;
|
||||
|
||||
public interface AwsClientBuilder<BuilderT extends AwsClientBuilder<BuilderT, ClientT>, ClientT> extends SdkClientBuilder<BuilderT, ClientT>
|
||||
{
|
||||
BuilderT credentialsProvider(AwsCredentialsProvider p0);
|
||||
BuilderT dualstackEnabled(Boolean p0);
|
||||
BuilderT fipsEnabled(Boolean p0);
|
||||
BuilderT region(Region p0);
|
||||
default BuilderT defaultsMode(DefaultsMode p0){ return null; }
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
// Generated automatically from software.amazon.awssdk.awscore.defaultsmode.DefaultsMode for testing purposes
|
||||
|
||||
package software.amazon.awssdk.awscore.defaultsmode;
|
||||
|
||||
|
||||
public enum DefaultsMode
|
||||
{
|
||||
AUTO, CROSS_REGION, IN_REGION, LEGACY, MOBILE, STANDARD;
|
||||
private DefaultsMode() {}
|
||||
public String toString(){ return null; }
|
||||
public static DefaultsMode fromValue(String p0){ return null; }
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
// Generated automatically from software.amazon.awssdk.awscore.eventstream.EventStreamResponseHandler for testing purposes
|
||||
|
||||
package software.amazon.awssdk.awscore.eventstream;
|
||||
|
||||
import java.util.function.Consumer;
|
||||
import java.util.function.Function;
|
||||
import java.util.function.Supplier;
|
||||
import org.reactivestreams.Subscriber;
|
||||
import software.amazon.awssdk.core.async.SdkPublisher;
|
||||
|
||||
public interface EventStreamResponseHandler<ResponseT, EventT>
|
||||
{
|
||||
static public interface Builder<ResponseT, EventT, SubBuilderT>
|
||||
{
|
||||
SubBuilderT onComplete(Runnable p0);
|
||||
SubBuilderT onError(Consumer<Throwable> p0);
|
||||
SubBuilderT onEventStream(Consumer<software.amazon.awssdk.core.async.SdkPublisher<EventT>> p0);
|
||||
SubBuilderT onResponse(Consumer<ResponseT> p0);
|
||||
SubBuilderT publisherTransformer(Function<software.amazon.awssdk.core.async.SdkPublisher<EventT>, software.amazon.awssdk.core.async.SdkPublisher<EventT>> p0);
|
||||
SubBuilderT subscriber(Consumer<EventT> p0);
|
||||
SubBuilderT subscriber(Supplier<Subscriber<EventT>> p0);
|
||||
}
|
||||
void complete();
|
||||
void exceptionOccurred(Throwable p0);
|
||||
void onEventStream(software.amazon.awssdk.core.async.SdkPublisher<EventT> p0);
|
||||
void responseReceived(ResponseT p0);
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.ApiName for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core;
|
||||
|
||||
|
||||
public class ApiName
|
||||
{
|
||||
protected ApiName() {}
|
||||
public String name(){ return null; }
|
||||
public String version(){ return null; }
|
||||
public static ApiName.Builder builder(){ return null; }
|
||||
static public interface Builder
|
||||
{
|
||||
ApiName build();
|
||||
ApiName.Builder name(String p0);
|
||||
ApiName.Builder version(String p0);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.BytesWrapper for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core;
|
||||
|
||||
import java.io.InputStream;
|
||||
import java.nio.ByteBuffer;
|
||||
import java.nio.charset.Charset;
|
||||
import software.amazon.awssdk.http.ContentStreamProvider;
|
||||
|
||||
abstract public class BytesWrapper
|
||||
{
|
||||
public boolean equals(Object p0){ return false; }
|
||||
public final ByteBuffer asByteBuffer(){ return null; }
|
||||
public final ContentStreamProvider asContentStreamProvider(){ return null; }
|
||||
public final InputStream asInputStream(){ return null; }
|
||||
public final String asString(Charset p0){ return null; }
|
||||
public final String asUtf8String(){ return null; }
|
||||
public final byte[] asByteArray(){ return null; }
|
||||
public final byte[] asByteArrayUnsafe(){ return null; }
|
||||
public int hashCode(){ return 0; }
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.CredentialType for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core;
|
||||
|
||||
|
||||
public class CredentialType
|
||||
{
|
||||
protected CredentialType() {}
|
||||
public String toString(){ return null; }
|
||||
public boolean equals(Object p0){ return false; }
|
||||
public int hashCode(){ return 0; }
|
||||
public static CredentialType TOKEN = null;
|
||||
public static CredentialType of(String p0){ return null; }
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.FileTransformerConfiguration for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core;
|
||||
|
||||
import software.amazon.awssdk.utils.builder.CopyableBuilder;
|
||||
import software.amazon.awssdk.utils.builder.ToCopyableBuilder;
|
||||
|
||||
public class FileTransformerConfiguration implements ToCopyableBuilder<FileTransformerConfiguration.Builder, FileTransformerConfiguration>
|
||||
{
|
||||
protected FileTransformerConfiguration() {}
|
||||
public FileTransformerConfiguration.Builder toBuilder(){ return null; }
|
||||
public FileTransformerConfiguration.FailureBehavior failureBehavior(){ return null; }
|
||||
public FileTransformerConfiguration.FileWriteOption fileWriteOption(){ return null; }
|
||||
public boolean equals(Object p0){ return false; }
|
||||
public int hashCode(){ return 0; }
|
||||
public static FileTransformerConfiguration defaultCreateNew(){ return null; }
|
||||
public static FileTransformerConfiguration defaultCreateOrAppend(){ return null; }
|
||||
public static FileTransformerConfiguration defaultCreateOrReplaceExisting(){ return null; }
|
||||
public static FileTransformerConfiguration.Builder builder(){ return null; }
|
||||
static public enum FailureBehavior
|
||||
{
|
||||
DELETE, LEAVE;
|
||||
private FailureBehavior() {}
|
||||
}
|
||||
static public enum FileWriteOption
|
||||
{
|
||||
CREATE_NEW, CREATE_OR_APPEND_TO_EXISTING, CREATE_OR_REPLACE_EXISTING;
|
||||
private FileWriteOption() {}
|
||||
}
|
||||
static public interface Builder extends CopyableBuilder<FileTransformerConfiguration.Builder, FileTransformerConfiguration>
|
||||
{
|
||||
FileTransformerConfiguration.Builder failureBehavior(FileTransformerConfiguration.FailureBehavior p0);
|
||||
FileTransformerConfiguration.Builder fileWriteOption(FileTransformerConfiguration.FileWriteOption p0);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.RequestOverrideConfiguration for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core;
|
||||
|
||||
import java.time.Duration;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Optional;
|
||||
import java.util.function.Consumer;
|
||||
import software.amazon.awssdk.core.ApiName;
|
||||
import software.amazon.awssdk.core.interceptor.ExecutionAttribute;
|
||||
import software.amazon.awssdk.core.interceptor.ExecutionAttributes;
|
||||
import software.amazon.awssdk.core.signer.Signer;
|
||||
import software.amazon.awssdk.metrics.MetricPublisher;
|
||||
|
||||
abstract public class RequestOverrideConfiguration
|
||||
{
|
||||
protected RequestOverrideConfiguration() {}
|
||||
protected RequestOverrideConfiguration(RequestOverrideConfiguration.Builder<? extends Object> p0){}
|
||||
public ExecutionAttributes executionAttributes(){ return null; }
|
||||
public List<ApiName> apiNames(){ return null; }
|
||||
public List<MetricPublisher> metricPublishers(){ return null; }
|
||||
public Map<String, List<String>> headers(){ return null; }
|
||||
public Map<String, List<String>> rawQueryParameters(){ return null; }
|
||||
public Optional<Duration> apiCallAttemptTimeout(){ return null; }
|
||||
public Optional<Duration> apiCallTimeout(){ return null; }
|
||||
public Optional<Signer> signer(){ return null; }
|
||||
public abstract RequestOverrideConfiguration.Builder<? extends RequestOverrideConfiguration.Builder> toBuilder();
|
||||
public boolean equals(Object p0){ return false; }
|
||||
public int hashCode(){ return 0; }
|
||||
static public interface Builder<B extends RequestOverrideConfiguration.Builder>
|
||||
{
|
||||
<T> B putExecutionAttribute(software.amazon.awssdk.core.interceptor.ExecutionAttribute<T> p0, T p1);
|
||||
B addApiName(ApiName p0);
|
||||
B addApiName(java.util.function.Consumer<ApiName.Builder> p0);
|
||||
B addMetricPublisher(MetricPublisher p0);
|
||||
B apiCallAttemptTimeout(Duration p0);
|
||||
B apiCallTimeout(Duration p0);
|
||||
B executionAttributes(ExecutionAttributes p0);
|
||||
B headers(Map<String, List<String>> p0);
|
||||
B metricPublishers(List<MetricPublisher> p0);
|
||||
B putHeader(String p0, List<String> p1);
|
||||
B putRawQueryParameter(String p0, List<String> p1);
|
||||
B rawQueryParameters(Map<String, List<String>> p0);
|
||||
B signer(Signer p0);
|
||||
Duration apiCallAttemptTimeout();
|
||||
Duration apiCallTimeout();
|
||||
ExecutionAttributes executionAttributes();
|
||||
List<ApiName> apiNames();
|
||||
List<MetricPublisher> metricPublishers();
|
||||
Map<String, List<String>> headers();
|
||||
Map<String, List<String>> rawQueryParameters();
|
||||
RequestOverrideConfiguration build();
|
||||
Signer signer();
|
||||
default B putHeader(String p0, String p1){ return null; }
|
||||
default B putRawQueryParameter(String p0, String p1){ return null; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.ResponseBytes for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core;
|
||||
|
||||
import java.io.InputStream;
|
||||
import software.amazon.awssdk.core.BytesWrapper;
|
||||
|
||||
public class ResponseBytes<ResponseT> extends BytesWrapper
|
||||
{
|
||||
protected ResponseBytes() {}
|
||||
public ResponseT response(){ return null; }
|
||||
public String toString(){ return null; }
|
||||
public boolean equals(Object p0){ return false; }
|
||||
public int hashCode(){ return 0; }
|
||||
public static <ResponseT> software.amazon.awssdk.core.ResponseBytes<ResponseT> fromByteArray(ResponseT p0, byte[] p1){ return null; }
|
||||
public static <ResponseT> software.amazon.awssdk.core.ResponseBytes<ResponseT> fromByteArrayUnsafe(ResponseT p0, byte[] p1){ return null; }
|
||||
public static <ResponseT> software.amazon.awssdk.core.ResponseBytes<ResponseT> fromInputStream(ResponseT p0, InputStream p1){ return null; }
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.ResponseInputStream for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core;
|
||||
|
||||
import java.io.InputStream;
|
||||
import software.amazon.awssdk.core.io.SdkFilterInputStream;
|
||||
import software.amazon.awssdk.http.Abortable;
|
||||
import software.amazon.awssdk.http.AbortableInputStream;
|
||||
|
||||
public class ResponseInputStream<ResponseT> extends SdkFilterInputStream implements Abortable
|
||||
{
|
||||
protected ResponseInputStream() {}
|
||||
public ResponseInputStream(ResponseT p0, AbortableInputStream p1){}
|
||||
public ResponseInputStream(ResponseT p0, InputStream p1){}
|
||||
public ResponseT response(){ return null; }
|
||||
public void abort(){}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.SdkBytes for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core;
|
||||
|
||||
import java.io.InputStream;
|
||||
import java.io.Serializable;
|
||||
import java.nio.ByteBuffer;
|
||||
import java.nio.charset.Charset;
|
||||
import software.amazon.awssdk.core.BytesWrapper;
|
||||
|
||||
public class SdkBytes extends BytesWrapper implements Serializable
|
||||
{
|
||||
protected SdkBytes() {}
|
||||
public String toString(){ return null; }
|
||||
public static SdkBytes fromByteArray(byte[] p0){ return null; }
|
||||
public static SdkBytes fromByteArrayUnsafe(byte[] p0){ return null; }
|
||||
public static SdkBytes fromByteBuffer(ByteBuffer p0){ return null; }
|
||||
public static SdkBytes fromInputStream(InputStream p0){ return null; }
|
||||
public static SdkBytes fromString(String p0, Charset p1){ return null; }
|
||||
public static SdkBytes fromUtf8String(String p0){ return null; }
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.SdkClient for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core;
|
||||
|
||||
import software.amazon.awssdk.utils.SdkAutoCloseable;
|
||||
|
||||
public interface SdkClient extends SdkAutoCloseable
|
||||
{
|
||||
String serviceName();
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.SdkField for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core;
|
||||
|
||||
import java.util.Optional;
|
||||
import java.util.function.BiConsumer;
|
||||
import java.util.function.Function;
|
||||
import java.util.function.Supplier;
|
||||
import software.amazon.awssdk.core.SdkPojo;
|
||||
import software.amazon.awssdk.core.protocol.MarshallLocation;
|
||||
import software.amazon.awssdk.core.protocol.MarshallingType;
|
||||
import software.amazon.awssdk.core.traits.Trait;
|
||||
|
||||
public class SdkField<TypeT>
|
||||
{
|
||||
protected SdkField() {}
|
||||
public <T extends Trait> T getRequiredTrait(java.lang.Class<T> p0){ return null; }
|
||||
public <T extends Trait> T getTrait(java.lang.Class<T> p0){ return null; }
|
||||
public <T extends Trait> java.util.Optional<T> getOptionalTrait(java.lang.Class<T> p0){ return null; }
|
||||
public MarshallLocation location(){ return null; }
|
||||
public String locationName(){ return null; }
|
||||
public String memberName(){ return null; }
|
||||
public String unmarshallLocationName(){ return null; }
|
||||
public Supplier<SdkPojo> constructor(){ return null; }
|
||||
public TypeT getValueOrDefault(Object p0){ return null; }
|
||||
public boolean containsTrait(Class<? extends Trait> p0){ return false; }
|
||||
public software.amazon.awssdk.core.protocol.MarshallingType<? super TypeT> marshallingType(){ return null; }
|
||||
public static <TypeT> SdkField.Builder<TypeT> builder(software.amazon.awssdk.core.protocol.MarshallingType<? super TypeT> p0){ return null; }
|
||||
public void set(Object p0, Object p1){}
|
||||
static public class Builder<TypeT>
|
||||
{
|
||||
protected Builder() {}
|
||||
public SdkField.Builder<TypeT> constructor(Supplier<SdkPojo> p0){ return null; }
|
||||
public SdkField.Builder<TypeT> getter(Function<Object, TypeT> p0){ return null; }
|
||||
public SdkField.Builder<TypeT> memberName(String p0){ return null; }
|
||||
public SdkField.Builder<TypeT> setter(BiConsumer<Object, TypeT> p0){ return null; }
|
||||
public SdkField.Builder<TypeT> traits(Trait... p0){ return null; }
|
||||
public SdkField<TypeT> build(){ return null; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.SdkNumber for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.math.BigInteger;
|
||||
|
||||
public class SdkNumber extends Number implements Serializable
|
||||
{
|
||||
protected SdkNumber() {}
|
||||
public BigDecimal bigDecimalValue(){ return null; }
|
||||
public String stringValue(){ return null; }
|
||||
public String toString(){ return null; }
|
||||
public boolean equals(Object p0){ return false; }
|
||||
public double doubleValue(){ return 0; }
|
||||
public float floatValue(){ return 0; }
|
||||
public int hashCode(){ return 0; }
|
||||
public int intValue(){ return 0; }
|
||||
public long longValue(){ return 0; }
|
||||
public static SdkNumber fromBigDecimal(BigDecimal p0){ return null; }
|
||||
public static SdkNumber fromBigInteger(BigInteger p0){ return null; }
|
||||
public static SdkNumber fromDouble(double p0){ return null; }
|
||||
public static SdkNumber fromFloat(float p0){ return null; }
|
||||
public static SdkNumber fromInteger(int p0){ return null; }
|
||||
public static SdkNumber fromLong(long p0){ return null; }
|
||||
public static SdkNumber fromShort(short p0){ return null; }
|
||||
public static SdkNumber fromString(String p0){ return null; }
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.SdkPojo for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core;
|
||||
|
||||
import java.util.List;
|
||||
import software.amazon.awssdk.core.SdkField;
|
||||
|
||||
public interface SdkPojo
|
||||
{
|
||||
List<SdkField<? extends Object>> sdkFields();
|
||||
default boolean equalsBySdkFields(Object p0){ return false; }
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.SdkRequest for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core;
|
||||
|
||||
import java.util.Optional;
|
||||
import software.amazon.awssdk.core.RequestOverrideConfiguration;
|
||||
import software.amazon.awssdk.core.SdkPojo;
|
||||
|
||||
abstract public class SdkRequest implements SdkPojo
|
||||
{
|
||||
public <T> java.util.Optional<T> getValueForField(String p0, java.lang.Class<T> p1){ return null; }
|
||||
public SdkRequest(){}
|
||||
public abstract Optional<? extends RequestOverrideConfiguration> overrideConfiguration();
|
||||
public abstract SdkRequest.Builder toBuilder();
|
||||
static public interface Builder
|
||||
{
|
||||
RequestOverrideConfiguration overrideConfiguration();
|
||||
SdkRequest build();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.SdkResponse for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core;
|
||||
|
||||
import java.util.Optional;
|
||||
import software.amazon.awssdk.core.SdkPojo;
|
||||
import software.amazon.awssdk.http.SdkHttpResponse;
|
||||
|
||||
abstract public class SdkResponse implements SdkPojo
|
||||
{
|
||||
protected SdkResponse() {}
|
||||
protected SdkResponse(SdkResponse.Builder p0){}
|
||||
public <T> java.util.Optional<T> getValueForField(String p0, java.lang.Class<T> p1){ return null; }
|
||||
public SdkHttpResponse sdkHttpResponse(){ return null; }
|
||||
public abstract SdkResponse.Builder toBuilder();
|
||||
public boolean equals(Object p0){ return false; }
|
||||
public int hashCode(){ return 0; }
|
||||
static public interface Builder
|
||||
{
|
||||
SdkHttpResponse sdkHttpResponse();
|
||||
SdkResponse build();
|
||||
SdkResponse.Builder sdkHttpResponse(SdkHttpResponse p0);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.ServiceConfiguration for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core;
|
||||
|
||||
|
||||
public interface ServiceConfiguration
|
||||
{
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.async.AsyncRequestBody for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.async;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.InputStream;
|
||||
import java.nio.ByteBuffer;
|
||||
import java.nio.charset.Charset;
|
||||
import java.nio.file.Path;
|
||||
import java.util.Optional;
|
||||
import java.util.concurrent.ExecutorService;
|
||||
import org.reactivestreams.Publisher;
|
||||
import software.amazon.awssdk.core.async.BlockingInputStreamAsyncRequestBody;
|
||||
import software.amazon.awssdk.core.async.BlockingOutputStreamAsyncRequestBody;
|
||||
import software.amazon.awssdk.core.async.SdkPublisher;
|
||||
|
||||
public interface AsyncRequestBody extends SdkPublisher<ByteBuffer>
|
||||
{
|
||||
Optional<Long> contentLength();
|
||||
default String contentType(){ return null; }
|
||||
static AsyncRequestBody empty(){ return null; }
|
||||
static AsyncRequestBody fromByteBuffer(ByteBuffer p0){ return null; }
|
||||
static AsyncRequestBody fromBytes(byte[] p0){ return null; }
|
||||
static AsyncRequestBody fromFile(File p0){ return null; }
|
||||
static AsyncRequestBody fromFile(Path p0){ return null; }
|
||||
static AsyncRequestBody fromInputStream(InputStream p0, Long p1, ExecutorService p2){ return null; }
|
||||
static AsyncRequestBody fromPublisher(Publisher<ByteBuffer> p0){ return null; }
|
||||
static AsyncRequestBody fromString(String p0){ return null; }
|
||||
static AsyncRequestBody fromString(String p0, Charset p1){ return null; }
|
||||
static BlockingInputStreamAsyncRequestBody forBlockingInputStream(Long p0){ return null; }
|
||||
static BlockingOutputStreamAsyncRequestBody forBlockingOutputStream(Long p0){ return null; }
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.async.AsyncResponseTransformer for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.async;
|
||||
|
||||
import java.io.File;
|
||||
import java.nio.ByteBuffer;
|
||||
import java.nio.file.Path;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.function.Consumer;
|
||||
import software.amazon.awssdk.core.FileTransformerConfiguration;
|
||||
import software.amazon.awssdk.core.ResponseBytes;
|
||||
import software.amazon.awssdk.core.ResponseInputStream;
|
||||
import software.amazon.awssdk.core.SdkResponse;
|
||||
import software.amazon.awssdk.core.async.ResponsePublisher;
|
||||
import software.amazon.awssdk.core.async.SdkPublisher;
|
||||
|
||||
public interface AsyncResponseTransformer<ResponseT, ResultT>
|
||||
{
|
||||
CompletableFuture<ResultT> prepare();
|
||||
static <ResponseT extends SdkResponse> AsyncResponseTransformer<ResponseT, ResponseInputStream<ResponseT>> toBlockingInputStream(){ return null; }
|
||||
static <ResponseT extends SdkResponse> AsyncResponseTransformer<ResponseT, ResponsePublisher<ResponseT>> toPublisher(){ return null; }
|
||||
static <ResponseT> AsyncResponseTransformer<ResponseT, software.amazon.awssdk.core.ResponseBytes<ResponseT>> toBytes(){ return null; }
|
||||
static <ResponseT> software.amazon.awssdk.core.async.AsyncResponseTransformer<ResponseT, ResponseT> toFile(File p0){ return null; }
|
||||
static <ResponseT> software.amazon.awssdk.core.async.AsyncResponseTransformer<ResponseT, ResponseT> toFile(File p0, FileTransformerConfiguration p1){ return null; }
|
||||
static <ResponseT> software.amazon.awssdk.core.async.AsyncResponseTransformer<ResponseT, ResponseT> toFile(File p0, java.util.function.Consumer<FileTransformerConfiguration.Builder> p1){ return null; }
|
||||
static <ResponseT> software.amazon.awssdk.core.async.AsyncResponseTransformer<ResponseT, ResponseT> toFile(Path p0){ return null; }
|
||||
static <ResponseT> software.amazon.awssdk.core.async.AsyncResponseTransformer<ResponseT, ResponseT> toFile(Path p0, FileTransformerConfiguration p1){ return null; }
|
||||
static <ResponseT> software.amazon.awssdk.core.async.AsyncResponseTransformer<ResponseT, ResponseT> toFile(Path p0, java.util.function.Consumer<FileTransformerConfiguration.Builder> p1){ return null; }
|
||||
void exceptionOccurred(Throwable p0);
|
||||
void onResponse(ResponseT p0);
|
||||
void onStream(SdkPublisher<ByteBuffer> p0);
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.async.BlockingInputStreamAsyncRequestBody for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.async;
|
||||
|
||||
import java.io.InputStream;
|
||||
import java.nio.ByteBuffer;
|
||||
import java.util.Optional;
|
||||
import org.reactivestreams.Subscriber;
|
||||
import software.amazon.awssdk.core.async.AsyncRequestBody;
|
||||
|
||||
public class BlockingInputStreamAsyncRequestBody implements AsyncRequestBody
|
||||
{
|
||||
protected BlockingInputStreamAsyncRequestBody() {}
|
||||
public Optional<Long> contentLength(){ return null; }
|
||||
public long writeInputStream(InputStream p0){ return 0; }
|
||||
public void cancel(){}
|
||||
public void subscribe(Subscriber<? super ByteBuffer> p0){}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.async.BlockingOutputStreamAsyncRequestBody for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.async;
|
||||
|
||||
import java.nio.ByteBuffer;
|
||||
import java.util.Optional;
|
||||
import org.reactivestreams.Subscriber;
|
||||
import software.amazon.awssdk.core.async.AsyncRequestBody;
|
||||
import software.amazon.awssdk.utils.CancellableOutputStream;
|
||||
|
||||
public class BlockingOutputStreamAsyncRequestBody implements AsyncRequestBody
|
||||
{
|
||||
protected BlockingOutputStreamAsyncRequestBody() {}
|
||||
public CancellableOutputStream outputStream(){ return null; }
|
||||
public Optional<Long> contentLength(){ return null; }
|
||||
public void subscribe(Subscriber<? super ByteBuffer> p0){}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.async.ResponsePublisher for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.async;
|
||||
|
||||
import java.nio.ByteBuffer;
|
||||
import org.reactivestreams.Subscriber;
|
||||
import software.amazon.awssdk.core.SdkResponse;
|
||||
import software.amazon.awssdk.core.async.SdkPublisher;
|
||||
|
||||
public class ResponsePublisher<ResponseT extends SdkResponse> implements SdkPublisher<ByteBuffer>
|
||||
{
|
||||
protected ResponsePublisher() {}
|
||||
public ResponsePublisher(ResponseT p0, SdkPublisher<ByteBuffer> p1){}
|
||||
public ResponseT response(){ return null; }
|
||||
public String toString(){ return null; }
|
||||
public boolean equals(Object p0){ return false; }
|
||||
public int hashCode(){ return 0; }
|
||||
public void subscribe(Subscriber<? super ByteBuffer> p0){}
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.async.SdkPublisher for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.async;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.function.Consumer;
|
||||
import java.util.function.Function;
|
||||
import java.util.function.Predicate;
|
||||
import org.reactivestreams.Publisher;
|
||||
|
||||
public interface SdkPublisher<T> extends org.reactivestreams.Publisher<T>
|
||||
{
|
||||
default <U extends T> software.amazon.awssdk.core.async.SdkPublisher<U> filter(java.lang.Class<U> p0){ return null; }
|
||||
default <U> software.amazon.awssdk.core.async.SdkPublisher<U> flatMapIterable(Function<T, Iterable<U>> p0){ return null; }
|
||||
default <U> software.amazon.awssdk.core.async.SdkPublisher<U> map(Function<T, U> p0){ return null; }
|
||||
default CompletableFuture<Void> subscribe(java.util.function.Consumer<T> p0){ return null; }
|
||||
default SdkPublisher<T> doAfterOnCancel(Runnable p0){ return null; }
|
||||
default SdkPublisher<T> doAfterOnComplete(Runnable p0){ return null; }
|
||||
default SdkPublisher<T> doAfterOnError(Consumer<Throwable> p0){ return null; }
|
||||
default SdkPublisher<T> filter(java.util.function.Predicate<T> p0){ return null; }
|
||||
default SdkPublisher<T> limit(int p0){ return null; }
|
||||
default SdkPublisher<java.util.List<T>> buffer(int p0){ return null; }
|
||||
static <T> SdkPublisher<T> adapt(org.reactivestreams.Publisher<T> p0){ return null; }
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.client.builder.SdkAsyncClientBuilder for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.client.builder;
|
||||
|
||||
import java.util.function.Consumer;
|
||||
import software.amazon.awssdk.core.client.config.ClientAsyncConfiguration;
|
||||
import software.amazon.awssdk.http.async.SdkAsyncHttpClient;
|
||||
|
||||
public interface SdkAsyncClientBuilder<B extends SdkAsyncClientBuilder<B, C>, C>
|
||||
{
|
||||
B asyncConfiguration(ClientAsyncConfiguration p0);
|
||||
B httpClient(SdkAsyncHttpClient p0);
|
||||
B httpClientBuilder(SdkAsyncHttpClient.Builder p0);
|
||||
default B asyncConfiguration(java.util.function.Consumer<ClientAsyncConfiguration.Builder> p0){ return null; }
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.client.builder.SdkClientBuilder for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.client.builder;
|
||||
|
||||
import java.net.URI;
|
||||
import java.util.function.Consumer;
|
||||
import software.amazon.awssdk.core.client.config.ClientOverrideConfiguration;
|
||||
import software.amazon.awssdk.utils.builder.SdkBuilder;
|
||||
|
||||
public interface SdkClientBuilder<B extends SdkClientBuilder<B, C>, C> extends software.amazon.awssdk.utils.builder.SdkBuilder<B, C>
|
||||
{
|
||||
B endpointOverride(URI p0);
|
||||
B overrideConfiguration(ClientOverrideConfiguration p0);
|
||||
ClientOverrideConfiguration overrideConfiguration();
|
||||
default B overrideConfiguration(java.util.function.Consumer<ClientOverrideConfiguration.Builder> p0){ return null; }
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.client.config.ClientAsyncConfiguration for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.client.config;
|
||||
|
||||
import java.util.Map;
|
||||
import software.amazon.awssdk.core.client.config.SdkAdvancedAsyncClientOption;
|
||||
import software.amazon.awssdk.utils.builder.CopyableBuilder;
|
||||
import software.amazon.awssdk.utils.builder.ToCopyableBuilder;
|
||||
|
||||
public class ClientAsyncConfiguration implements ToCopyableBuilder<ClientAsyncConfiguration.Builder, ClientAsyncConfiguration>
|
||||
{
|
||||
protected ClientAsyncConfiguration() {}
|
||||
public <T> T advancedOption(software.amazon.awssdk.core.client.config.SdkAdvancedAsyncClientOption<T> p0){ return null; }
|
||||
public ClientAsyncConfiguration.Builder toBuilder(){ return null; }
|
||||
public static ClientAsyncConfiguration.Builder builder(){ return null; }
|
||||
static public interface Builder extends CopyableBuilder<ClientAsyncConfiguration.Builder, ClientAsyncConfiguration>
|
||||
{
|
||||
<T> ClientAsyncConfiguration.Builder advancedOption(software.amazon.awssdk.core.client.config.SdkAdvancedAsyncClientOption<T> p0, T p1);
|
||||
ClientAsyncConfiguration.Builder advancedOptions(Map<SdkAdvancedAsyncClientOption<? extends Object>, ? extends Object> p0);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.client.config.ClientOption for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.client.config;
|
||||
|
||||
import software.amazon.awssdk.utils.AttributeMap;
|
||||
|
||||
abstract public class ClientOption<T> extends AttributeMap.Key<T>
|
||||
{
|
||||
protected ClientOption() {}
|
||||
protected ClientOption(AttributeMap.Key.UnsafeValueType p0){}
|
||||
protected ClientOption(java.lang.Class<T> p0){}
|
||||
}
|
||||
@@ -0,0 +1,69 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.client.config.ClientOverrideConfiguration for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.client.config;
|
||||
|
||||
import java.time.Duration;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Optional;
|
||||
import java.util.function.Consumer;
|
||||
import software.amazon.awssdk.core.client.config.SdkAdvancedClientOption;
|
||||
import software.amazon.awssdk.core.interceptor.ExecutionAttribute;
|
||||
import software.amazon.awssdk.core.interceptor.ExecutionAttributes;
|
||||
import software.amazon.awssdk.core.interceptor.ExecutionInterceptor;
|
||||
import software.amazon.awssdk.core.retry.RetryMode;
|
||||
import software.amazon.awssdk.core.retry.RetryPolicy;
|
||||
import software.amazon.awssdk.metrics.MetricPublisher;
|
||||
import software.amazon.awssdk.profiles.ProfileFile;
|
||||
import software.amazon.awssdk.utils.AttributeMap;
|
||||
import software.amazon.awssdk.utils.builder.CopyableBuilder;
|
||||
import software.amazon.awssdk.utils.builder.ToCopyableBuilder;
|
||||
|
||||
public class ClientOverrideConfiguration implements ToCopyableBuilder<ClientOverrideConfiguration.Builder, ClientOverrideConfiguration>
|
||||
{
|
||||
protected ClientOverrideConfiguration() {}
|
||||
public <T> java.util.Optional<T> advancedOption(software.amazon.awssdk.core.client.config.SdkAdvancedClientOption<T> p0){ return null; }
|
||||
public ClientOverrideConfiguration.Builder toBuilder(){ return null; }
|
||||
public ExecutionAttributes executionAttributes(){ return null; }
|
||||
public List<ExecutionInterceptor> executionInterceptors(){ return null; }
|
||||
public List<MetricPublisher> metricPublishers(){ return null; }
|
||||
public Map<String, List<String>> headers(){ return null; }
|
||||
public Optional<Duration> apiCallAttemptTimeout(){ return null; }
|
||||
public Optional<Duration> apiCallTimeout(){ return null; }
|
||||
public Optional<ProfileFile> defaultProfileFile(){ return null; }
|
||||
public Optional<RetryPolicy> retryPolicy(){ return null; }
|
||||
public Optional<String> defaultProfileName(){ return null; }
|
||||
public String toString(){ return null; }
|
||||
public static ClientOverrideConfiguration.Builder builder(){ return null; }
|
||||
static public interface Builder extends CopyableBuilder<ClientOverrideConfiguration.Builder, ClientOverrideConfiguration>
|
||||
{
|
||||
<T> ClientOverrideConfiguration.Builder putAdvancedOption(software.amazon.awssdk.core.client.config.SdkAdvancedClientOption<T> p0, T p1);
|
||||
<T> ClientOverrideConfiguration.Builder putExecutionAttribute(software.amazon.awssdk.core.interceptor.ExecutionAttribute<T> p0, T p1);
|
||||
AttributeMap advancedOptions();
|
||||
ClientOverrideConfiguration.Builder addExecutionInterceptor(ExecutionInterceptor p0);
|
||||
ClientOverrideConfiguration.Builder addMetricPublisher(MetricPublisher p0);
|
||||
ClientOverrideConfiguration.Builder advancedOptions(Map<SdkAdvancedClientOption<? extends Object>, ? extends Object> p0);
|
||||
ClientOverrideConfiguration.Builder apiCallAttemptTimeout(Duration p0);
|
||||
ClientOverrideConfiguration.Builder apiCallTimeout(Duration p0);
|
||||
ClientOverrideConfiguration.Builder defaultProfileFile(ProfileFile p0);
|
||||
ClientOverrideConfiguration.Builder defaultProfileName(String p0);
|
||||
ClientOverrideConfiguration.Builder executionAttributes(ExecutionAttributes p0);
|
||||
ClientOverrideConfiguration.Builder executionInterceptors(List<ExecutionInterceptor> p0);
|
||||
ClientOverrideConfiguration.Builder headers(Map<String, List<String>> p0);
|
||||
ClientOverrideConfiguration.Builder metricPublishers(List<MetricPublisher> p0);
|
||||
ClientOverrideConfiguration.Builder putHeader(String p0, List<String> p1);
|
||||
ClientOverrideConfiguration.Builder retryPolicy(RetryPolicy p0);
|
||||
Duration apiCallAttemptTimeout();
|
||||
Duration apiCallTimeout();
|
||||
ExecutionAttributes executionAttributes();
|
||||
List<ExecutionInterceptor> executionInterceptors();
|
||||
List<MetricPublisher> metricPublishers();
|
||||
Map<String, List<String>> headers();
|
||||
ProfileFile defaultProfileFile();
|
||||
RetryPolicy retryPolicy();
|
||||
String defaultProfileName();
|
||||
default ClientOverrideConfiguration.Builder putHeader(String p0, String p1){ return null; }
|
||||
default ClientOverrideConfiguration.Builder retryPolicy(RetryMode p0){ return null; }
|
||||
default ClientOverrideConfiguration.Builder retryPolicy(java.util.function.Consumer<RetryPolicy.Builder> p0){ return null; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.client.config.SdkAdvancedAsyncClientOption for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.client.config;
|
||||
|
||||
import java.util.concurrent.Executor;
|
||||
import software.amazon.awssdk.core.client.config.ClientOption;
|
||||
|
||||
public class SdkAdvancedAsyncClientOption<T> extends software.amazon.awssdk.core.client.config.ClientOption<T>
|
||||
{
|
||||
protected SdkAdvancedAsyncClientOption() {}
|
||||
public static SdkAdvancedAsyncClientOption<Executor> FUTURE_COMPLETION_EXECUTOR = null;
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.client.config.SdkAdvancedClientOption for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.client.config;
|
||||
|
||||
import software.amazon.awssdk.core.client.config.ClientOption;
|
||||
import software.amazon.awssdk.core.signer.Signer;
|
||||
|
||||
public class SdkAdvancedClientOption<T> extends software.amazon.awssdk.core.client.config.ClientOption<T>
|
||||
{
|
||||
protected SdkAdvancedClientOption() {}
|
||||
protected SdkAdvancedClientOption(java.lang.Class<T> p0){}
|
||||
public static SdkAdvancedClientOption<Boolean> DISABLE_HOST_PREFIX_INJECTION = null;
|
||||
public static SdkAdvancedClientOption<Signer> SIGNER = null;
|
||||
public static SdkAdvancedClientOption<Signer> TOKEN_SIGNER = null;
|
||||
public static SdkAdvancedClientOption<String> USER_AGENT_PREFIX = null;
|
||||
public static SdkAdvancedClientOption<String> USER_AGENT_SUFFIX = null;
|
||||
}
|
||||
@@ -0,0 +1,83 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.document.Document for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.document;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.math.BigInteger;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.function.Consumer;
|
||||
import software.amazon.awssdk.core.SdkNumber;
|
||||
import software.amazon.awssdk.core.document.DocumentVisitor;
|
||||
import software.amazon.awssdk.core.document.VoidDocumentVisitor;
|
||||
|
||||
public interface Document extends Serializable
|
||||
{
|
||||
<R> R accept(DocumentVisitor<? extends R> p0);
|
||||
List<Document> asList();
|
||||
Map<String, Document> asMap();
|
||||
Object unwrap();
|
||||
SdkNumber asNumber();
|
||||
String asString();
|
||||
boolean asBoolean();
|
||||
default boolean isBoolean(){ return false; }
|
||||
default boolean isList(){ return false; }
|
||||
default boolean isMap(){ return false; }
|
||||
default boolean isNull(){ return false; }
|
||||
default boolean isNumber(){ return false; }
|
||||
default boolean isString(){ return false; }
|
||||
static Document fromBoolean(boolean p0){ return null; }
|
||||
static Document fromList(List<Document> p0){ return null; }
|
||||
static Document fromMap(Map<String, Document> p0){ return null; }
|
||||
static Document fromNull(){ return null; }
|
||||
static Document fromNumber(BigDecimal p0){ return null; }
|
||||
static Document fromNumber(BigInteger p0){ return null; }
|
||||
static Document fromNumber(SdkNumber p0){ return null; }
|
||||
static Document fromNumber(String p0){ return null; }
|
||||
static Document fromNumber(double p0){ return null; }
|
||||
static Document fromNumber(float p0){ return null; }
|
||||
static Document fromNumber(int p0){ return null; }
|
||||
static Document fromNumber(long p0){ return null; }
|
||||
static Document fromString(String p0){ return null; }
|
||||
static Document.ListBuilder listBuilder(){ return null; }
|
||||
static Document.MapBuilder mapBuilder(){ return null; }
|
||||
static public interface ListBuilder
|
||||
{
|
||||
Document build();
|
||||
Document.ListBuilder addBoolean(boolean p0);
|
||||
Document.ListBuilder addDocument(Document p0);
|
||||
Document.ListBuilder addMap(Consumer<Document.MapBuilder> p0);
|
||||
Document.ListBuilder addNull();
|
||||
Document.ListBuilder addNumber(BigDecimal p0);
|
||||
Document.ListBuilder addNumber(BigInteger p0);
|
||||
Document.ListBuilder addNumber(SdkNumber p0);
|
||||
Document.ListBuilder addNumber(String p0);
|
||||
Document.ListBuilder addNumber(double p0);
|
||||
Document.ListBuilder addNumber(float p0);
|
||||
Document.ListBuilder addNumber(int p0);
|
||||
Document.ListBuilder addNumber(long p0);
|
||||
Document.ListBuilder addString(String p0);
|
||||
}
|
||||
static public interface MapBuilder
|
||||
{
|
||||
Document build();
|
||||
Document.MapBuilder putBoolean(String p0, boolean p1);
|
||||
Document.MapBuilder putDocument(String p0, Document p1);
|
||||
Document.MapBuilder putList(String p0, Consumer<Document.ListBuilder> p1);
|
||||
Document.MapBuilder putList(String p0, List<Document> p1);
|
||||
Document.MapBuilder putMap(String p0, Consumer<Document.MapBuilder> p1);
|
||||
Document.MapBuilder putMap(String p0, Map<String, Document> p1);
|
||||
Document.MapBuilder putNull(String p0);
|
||||
Document.MapBuilder putNumber(String p0, BigDecimal p1);
|
||||
Document.MapBuilder putNumber(String p0, BigInteger p1);
|
||||
Document.MapBuilder putNumber(String p0, SdkNumber p1);
|
||||
Document.MapBuilder putNumber(String p0, String p1);
|
||||
Document.MapBuilder putNumber(String p0, double p1);
|
||||
Document.MapBuilder putNumber(String p0, float p1);
|
||||
Document.MapBuilder putNumber(String p0, int p1);
|
||||
Document.MapBuilder putNumber(String p0, long p1);
|
||||
Document.MapBuilder putString(String p0, String p1);
|
||||
}
|
||||
void accept(VoidDocumentVisitor p0);
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.document.DocumentVisitor for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.document;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import software.amazon.awssdk.core.SdkNumber;
|
||||
import software.amazon.awssdk.core.document.Document;
|
||||
|
||||
public interface DocumentVisitor<R>
|
||||
{
|
||||
R visitBoolean(Boolean p0);
|
||||
R visitList(List<Document> p0);
|
||||
R visitMap(Map<String, Document> p0);
|
||||
R visitNull();
|
||||
R visitNumber(SdkNumber p0);
|
||||
R visitString(String p0);
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.document.VoidDocumentVisitor for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.document;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import software.amazon.awssdk.core.SdkNumber;
|
||||
import software.amazon.awssdk.core.document.Document;
|
||||
|
||||
public interface VoidDocumentVisitor
|
||||
{
|
||||
default void visitBoolean(Boolean p0){}
|
||||
default void visitList(List<Document> p0){}
|
||||
default void visitMap(Map<String, Document> p0){}
|
||||
default void visitNull(){}
|
||||
default void visitNumber(SdkNumber p0){}
|
||||
default void visitString(String p0){}
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.exception.SdkException for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.exception;
|
||||
|
||||
import software.amazon.awssdk.utils.builder.Buildable;
|
||||
|
||||
public class SdkException extends RuntimeException
|
||||
{
|
||||
protected SdkException() {}
|
||||
protected SdkException(SdkException.Builder p0){}
|
||||
public SdkException.Builder toBuilder(){ return null; }
|
||||
public boolean retryable(){ return false; }
|
||||
public static SdkException create(String p0, Throwable p1){ return null; }
|
||||
public static SdkException.Builder builder(){ return null; }
|
||||
static public interface Builder extends Buildable
|
||||
{
|
||||
Boolean writableStackTrace();
|
||||
SdkException build();
|
||||
SdkException.Builder cause(Throwable p0);
|
||||
SdkException.Builder message(String p0);
|
||||
SdkException.Builder writableStackTrace(Boolean p0);
|
||||
String message();
|
||||
Throwable cause();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.interceptor.Context for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.interceptor;
|
||||
|
||||
import java.io.InputStream;
|
||||
import java.nio.ByteBuffer;
|
||||
import java.util.Optional;
|
||||
import org.reactivestreams.Publisher;
|
||||
import software.amazon.awssdk.core.SdkRequest;
|
||||
import software.amazon.awssdk.core.SdkResponse;
|
||||
import software.amazon.awssdk.core.async.AsyncRequestBody;
|
||||
import software.amazon.awssdk.core.sync.RequestBody;
|
||||
import software.amazon.awssdk.http.SdkHttpRequest;
|
||||
import software.amazon.awssdk.http.SdkHttpResponse;
|
||||
|
||||
public class Context
|
||||
{
|
||||
protected Context() {}
|
||||
static public interface AfterExecution extends Context.ModifyResponse
|
||||
{
|
||||
}
|
||||
static public interface AfterMarshalling extends Context.BeforeMarshalling
|
||||
{
|
||||
Optional<AsyncRequestBody> asyncRequestBody();
|
||||
Optional<RequestBody> requestBody();
|
||||
SdkHttpRequest httpRequest();
|
||||
}
|
||||
static public interface AfterTransmission extends Context.BeforeTransmission
|
||||
{
|
||||
Optional<InputStream> responseBody();
|
||||
Optional<Publisher<ByteBuffer>> responsePublisher();
|
||||
SdkHttpResponse httpResponse();
|
||||
}
|
||||
static public interface AfterUnmarshalling extends Context.BeforeUnmarshalling
|
||||
{
|
||||
SdkResponse response();
|
||||
}
|
||||
static public interface BeforeExecution
|
||||
{
|
||||
SdkRequest request();
|
||||
}
|
||||
static public interface BeforeMarshalling extends Context.ModifyRequest
|
||||
{
|
||||
}
|
||||
static public interface BeforeTransmission extends Context.ModifyHttpRequest
|
||||
{
|
||||
}
|
||||
static public interface BeforeUnmarshalling extends Context.ModifyHttpResponse
|
||||
{
|
||||
}
|
||||
static public interface FailedExecution
|
||||
{
|
||||
Optional<SdkHttpRequest> httpRequest();
|
||||
Optional<SdkHttpResponse> httpResponse();
|
||||
Optional<SdkResponse> response();
|
||||
SdkRequest request();
|
||||
Throwable exception();
|
||||
}
|
||||
static public interface ModifyHttpRequest extends Context.AfterMarshalling
|
||||
{
|
||||
}
|
||||
static public interface ModifyHttpResponse extends Context.AfterTransmission
|
||||
{
|
||||
}
|
||||
static public interface ModifyRequest extends Context.BeforeExecution
|
||||
{
|
||||
}
|
||||
static public interface ModifyResponse extends Context.AfterUnmarshalling
|
||||
{
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.interceptor.ExecutionAttribute for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.interceptor;
|
||||
|
||||
|
||||
public class ExecutionAttribute<T>
|
||||
{
|
||||
protected ExecutionAttribute() {}
|
||||
public ExecutionAttribute(String p0){}
|
||||
public String toString(){ return null; }
|
||||
public boolean equals(Object p0){ return false; }
|
||||
public int hashCode(){ return 0; }
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.interceptor.ExecutionAttributes for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.interceptor;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.Optional;
|
||||
import software.amazon.awssdk.core.interceptor.ExecutionAttribute;
|
||||
import software.amazon.awssdk.utils.builder.CopyableBuilder;
|
||||
import software.amazon.awssdk.utils.builder.ToCopyableBuilder;
|
||||
|
||||
public class ExecutionAttributes implements ToCopyableBuilder<ExecutionAttributes.Builder, ExecutionAttributes>
|
||||
{
|
||||
protected ExecutionAttributes(Map<? extends ExecutionAttribute<? extends Object>, ? extends Object> p0){}
|
||||
public <U> ExecutionAttributes putAttribute(software.amazon.awssdk.core.interceptor.ExecutionAttribute<U> p0, U p1){ return null; }
|
||||
public <U> ExecutionAttributes putAttributeIfAbsent(software.amazon.awssdk.core.interceptor.ExecutionAttribute<U> p0, U p1){ return null; }
|
||||
public <U> U getAttribute(software.amazon.awssdk.core.interceptor.ExecutionAttribute<U> p0){ return null; }
|
||||
public <U> java.util.Optional<U> getOptionalAttribute(software.amazon.awssdk.core.interceptor.ExecutionAttribute<U> p0){ return null; }
|
||||
public ExecutionAttributes copy(){ return null; }
|
||||
public ExecutionAttributes merge(ExecutionAttributes p0){ return null; }
|
||||
public ExecutionAttributes(){}
|
||||
public ExecutionAttributes.Builder toBuilder(){ return null; }
|
||||
public Map<ExecutionAttribute<? extends Object>, Object> getAttributes(){ return null; }
|
||||
public String toString(){ return null; }
|
||||
public boolean equals(Object p0){ return false; }
|
||||
public int hashCode(){ return 0; }
|
||||
public static ExecutionAttributes unmodifiableExecutionAttributes(ExecutionAttributes p0){ return null; }
|
||||
public static ExecutionAttributes.Builder builder(){ return null; }
|
||||
public void putAbsentAttributes(ExecutionAttributes p0){}
|
||||
static public class Builder implements CopyableBuilder<ExecutionAttributes.Builder, ExecutionAttributes>
|
||||
{
|
||||
protected Builder() {}
|
||||
public <T> ExecutionAttributes.Builder put(software.amazon.awssdk.core.interceptor.ExecutionAttribute<T> p0, T p1){ return null; }
|
||||
public ExecutionAttributes build(){ return null; }
|
||||
public ExecutionAttributes.Builder putAll(Map<? extends ExecutionAttribute<? extends Object>, ? extends Object> p0){ return null; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.interceptor.ExecutionInterceptor for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.interceptor;
|
||||
|
||||
import java.io.InputStream;
|
||||
import java.nio.ByteBuffer;
|
||||
import java.util.Optional;
|
||||
import org.reactivestreams.Publisher;
|
||||
import software.amazon.awssdk.core.SdkRequest;
|
||||
import software.amazon.awssdk.core.SdkResponse;
|
||||
import software.amazon.awssdk.core.async.AsyncRequestBody;
|
||||
import software.amazon.awssdk.core.interceptor.Context;
|
||||
import software.amazon.awssdk.core.interceptor.ExecutionAttributes;
|
||||
import software.amazon.awssdk.core.sync.RequestBody;
|
||||
import software.amazon.awssdk.http.SdkHttpRequest;
|
||||
import software.amazon.awssdk.http.SdkHttpResponse;
|
||||
|
||||
public interface ExecutionInterceptor
|
||||
{
|
||||
default Optional<AsyncRequestBody> modifyAsyncHttpContent(Context.ModifyHttpRequest p0, ExecutionAttributes p1){ return null; }
|
||||
default Optional<InputStream> modifyHttpResponseContent(Context.ModifyHttpResponse p0, ExecutionAttributes p1){ return null; }
|
||||
default Optional<Publisher<ByteBuffer>> modifyAsyncHttpResponseContent(Context.ModifyHttpResponse p0, ExecutionAttributes p1){ return null; }
|
||||
default Optional<RequestBody> modifyHttpContent(Context.ModifyHttpRequest p0, ExecutionAttributes p1){ return null; }
|
||||
default SdkHttpRequest modifyHttpRequest(Context.ModifyHttpRequest p0, ExecutionAttributes p1){ return null; }
|
||||
default SdkHttpResponse modifyHttpResponse(Context.ModifyHttpResponse p0, ExecutionAttributes p1){ return null; }
|
||||
default SdkRequest modifyRequest(Context.ModifyRequest p0, ExecutionAttributes p1){ return null; }
|
||||
default SdkResponse modifyResponse(Context.ModifyResponse p0, ExecutionAttributes p1){ return null; }
|
||||
default Throwable modifyException(Context.FailedExecution p0, ExecutionAttributes p1){ return null; }
|
||||
default void afterExecution(Context.AfterExecution p0, ExecutionAttributes p1){}
|
||||
default void afterMarshalling(Context.AfterMarshalling p0, ExecutionAttributes p1){}
|
||||
default void afterTransmission(Context.AfterTransmission p0, ExecutionAttributes p1){}
|
||||
default void afterUnmarshalling(Context.AfterUnmarshalling p0, ExecutionAttributes p1){}
|
||||
default void beforeExecution(Context.BeforeExecution p0, ExecutionAttributes p1){}
|
||||
default void beforeMarshalling(Context.BeforeMarshalling p0, ExecutionAttributes p1){}
|
||||
default void beforeTransmission(Context.BeforeTransmission p0, ExecutionAttributes p1){}
|
||||
default void beforeUnmarshalling(Context.BeforeUnmarshalling p0, ExecutionAttributes p1){}
|
||||
default void onExecutionFailure(Context.FailedExecution p0, ExecutionAttributes p1){}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.internal.io.Releasable for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.internal.io;
|
||||
|
||||
import java.io.Closeable;
|
||||
import org.slf4j.Logger;
|
||||
|
||||
public interface Releasable
|
||||
{
|
||||
static void release(Closeable p0, Logger p1){}
|
||||
void release();
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.internal.waiters.ResponseOrException for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.internal.waiters;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
public class ResponseOrException<R>
|
||||
{
|
||||
protected ResponseOrException() {}
|
||||
public Optional<R> response(){ return null; }
|
||||
public Optional<Throwable> exception(){ return null; }
|
||||
public boolean equals(Object p0){ return false; }
|
||||
public int hashCode(){ return 0; }
|
||||
public static <R> software.amazon.awssdk.core.internal.waiters.ResponseOrException<R> exception(Throwable p0){ return null; }
|
||||
public static <R> software.amazon.awssdk.core.internal.waiters.ResponseOrException<R> response(R p0){ return null; }
|
||||
}
|
||||
@@ -0,0 +1,51 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.io.SdkFilterInputStream for testing
|
||||
// purposes
|
||||
|
||||
package software.amazon.awssdk.core.io;
|
||||
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.FilterInputStream;
|
||||
import java.io.InputStream;
|
||||
import software.amazon.awssdk.core.internal.io.Releasable;
|
||||
|
||||
public class SdkFilterInputStream extends FilterInputStream implements Releasable {
|
||||
protected SdkFilterInputStream() {
|
||||
super(new ByteArrayInputStream("UTF-8".getBytes()));
|
||||
}
|
||||
|
||||
protected SdkFilterInputStream(InputStream p0) {
|
||||
super(new ByteArrayInputStream("UTF-8".getBytes()));
|
||||
}
|
||||
|
||||
protected final void abortIfNeeded() {}
|
||||
|
||||
protected void abort() {}
|
||||
|
||||
public boolean markSupported() {
|
||||
return false;
|
||||
}
|
||||
|
||||
public int available() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
public int read() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
public int read(byte[] p0, int p1, int p2) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
public long skip(long p0) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
public void close() {}
|
||||
|
||||
public void mark(int p0) {}
|
||||
|
||||
public void release() {}
|
||||
|
||||
public void reset() {}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.protocol.MarshallLocation for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.protocol;
|
||||
|
||||
|
||||
public enum MarshallLocation
|
||||
{
|
||||
GREEDY_PATH, HEADER, PATH, PAYLOAD, QUERY_PARAM, STATUS_CODE;
|
||||
private MarshallLocation() {}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.protocol.MarshallingType for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.protocol;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.Instant;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import software.amazon.awssdk.core.SdkBytes;
|
||||
import software.amazon.awssdk.core.SdkPojo;
|
||||
import software.amazon.awssdk.core.document.Document;
|
||||
|
||||
public interface MarshallingType<T>
|
||||
{
|
||||
java.lang.Class<? super T> getTargetClass();
|
||||
static <T> MarshallingType<T> newType(java.lang.Class<? super T> p0){ return null; }
|
||||
static MarshallingType<BigDecimal> BIG_DECIMAL = null;
|
||||
static MarshallingType<Boolean> BOOLEAN = null;
|
||||
static MarshallingType<Document> DOCUMENT = null;
|
||||
static MarshallingType<Double> DOUBLE = null;
|
||||
static MarshallingType<Float> FLOAT = null;
|
||||
static MarshallingType<Instant> INSTANT = null;
|
||||
static MarshallingType<Integer> INTEGER = null;
|
||||
static MarshallingType<List<? extends Object>> LIST = null;
|
||||
static MarshallingType<Long> LONG = null;
|
||||
static MarshallingType<Map<String, ? extends Object>> MAP = null;
|
||||
static MarshallingType<SdkBytes> SDK_BYTES = null;
|
||||
static MarshallingType<SdkPojo> SDK_POJO = null;
|
||||
static MarshallingType<Short> SHORT = null;
|
||||
static MarshallingType<String> STRING = null;
|
||||
static MarshallingType<Void> NULL = null;
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.retry.RetryMode for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.retry;
|
||||
|
||||
import java.util.function.Supplier;
|
||||
import software.amazon.awssdk.profiles.ProfileFile;
|
||||
|
||||
public enum RetryMode
|
||||
{
|
||||
ADAPTIVE, LEGACY, STANDARD;
|
||||
private RetryMode() {}
|
||||
public static RetryMode defaultRetryMode(){ return null; }
|
||||
public static RetryMode.Resolver resolver(){ return null; }
|
||||
static public class Resolver
|
||||
{
|
||||
protected Resolver() {}
|
||||
public RetryMode resolve(){ return null; }
|
||||
public RetryMode.Resolver defaultRetryMode(RetryMode p0){ return null; }
|
||||
public RetryMode.Resolver profileFile(Supplier<ProfileFile> p0){ return null; }
|
||||
public RetryMode.Resolver profileName(String p0){ return null; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
// Generated automatically from software.amazon.awssdk.core.retry.RetryPolicy for testing purposes
|
||||
|
||||
package software.amazon.awssdk.core.retry;
|
||||
|
||||
import software.amazon.awssdk.core.retry.RetryMode;
|
||||
import software.amazon.awssdk.core.retry.backoff.BackoffStrategy;
|
||||
import software.amazon.awssdk.core.retry.conditions.RetryCondition;
|
||||
import software.amazon.awssdk.utils.builder.CopyableBuilder;
|
||||
import software.amazon.awssdk.utils.builder.ToCopyableBuilder;
|
||||
|
||||
public class RetryPolicy implements ToCopyableBuilder<RetryPolicy.Builder, RetryPolicy>
|
||||
{
|
||||
protected RetryPolicy() {}
|
||||
public BackoffStrategy backoffStrategy(){ return null; }
|
||||
public BackoffStrategy throttlingBackoffStrategy(){ return null; }
|
||||
public Boolean isFastFailRateLimiting(){ return null; }
|
||||
public Integer numRetries(){ return null; }
|
||||
public RetryCondition aggregateRetryCondition(){ return null; }
|
||||
public RetryCondition retryCondition(){ return null; }
|
||||
public RetryMode retryMode(){ return null; }
|
||||
public RetryPolicy.Builder toBuilder(){ return null; }
|
||||
public String toString(){ return null; }
|
||||
public boolean additionalRetryConditionsAllowed(){ return false; }
|
||||
public boolean equals(Object p0){ return false; }
|
||||
public int hashCode(){ return 0; }
|
||||
public static RetryPolicy defaultRetryPolicy(){ return null; }
|
||||
public static RetryPolicy forRetryMode(RetryMode p0){ return null; }
|
||||
public static RetryPolicy none(){ return null; }
|
||||
public static RetryPolicy.Builder builder(){ return null; }
|
||||
public static RetryPolicy.Builder builder(RetryMode p0){ return null; }
|
||||
static public interface Builder extends CopyableBuilder<RetryPolicy.Builder, RetryPolicy>
|
||||
{
|
||||
BackoffStrategy backoffStrategy();
|
||||
BackoffStrategy throttlingBackoffStrategy();
|
||||
Boolean isFastFailRateLimiting();
|
||||
Integer numRetries();
|
||||
RetryCondition retryCapacityCondition();
|
||||
RetryCondition retryCondition();
|
||||
RetryPolicy build();
|
||||
RetryPolicy.Builder additionalRetryConditionsAllowed(boolean p0);
|
||||
RetryPolicy.Builder backoffStrategy(BackoffStrategy p0);
|
||||
RetryPolicy.Builder fastFailRateLimiting(Boolean p0);
|
||||
RetryPolicy.Builder numRetries(Integer p0);
|
||||
RetryPolicy.Builder retryCapacityCondition(RetryCondition p0);
|
||||
RetryPolicy.Builder retryCondition(RetryCondition p0);
|
||||
RetryPolicy.Builder throttlingBackoffStrategy(BackoffStrategy p0);
|
||||
boolean additionalRetryConditionsAllowed();
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user