feat: add missing SOCKS5 features

Goal of this commit is to add some missing features when the
Kubernetes API is accessed through a SOCKS5 proxy. That's for
example the case when port-forwarding is used (`kubectl port-forward`)
or when exec'ing inside a container (`kubectl exec`), with this
commit it'll now be possible to use both.

Signed-off-by: Romain Aviolat <romain.aviolat@kudelskisecurity.com>
Signed-off-by: Romain Jufer <romain.jufer@kudelskisecurity.com>

Kubernetes-commit: 0a98875e9572d998fbdf3bcdaef4961715b8bc06
This commit is contained in:
Romain Aviolat 2022-01-17 15:28:44 +01:00 committed by Kubernetes Publisher
parent 62d236cfd6
commit 759642b904
2 changed files with 20 additions and 30 deletions

31
go.mod
View File

@ -31,15 +31,15 @@ require (
github.com/stretchr/testify v1.7.0
golang.org/x/sys v0.0.0-20220114195835-da31bd327af9
gopkg.in/yaml.v2 v2.4.0
k8s.io/api v0.0.0-20220121011925-35d41aaac2bf
k8s.io/apimachinery v0.0.0-20220121011720-73cb56485259
k8s.io/cli-runtime v0.0.0-20220121014245-b3af7edc548d
k8s.io/client-go v0.0.0-20220121012216-b70ee0aa9aa1
k8s.io/component-base v0.0.0-20220121012730-519780c968a8
k8s.io/component-helpers v0.0.0-20220121012834-3aa0f60e9aa0
k8s.io/api v0.0.0
k8s.io/apimachinery v0.0.0
k8s.io/cli-runtime v0.0.0
k8s.io/client-go v0.0.0
k8s.io/component-base v0.0.0
k8s.io/component-helpers v0.0.0
k8s.io/klog/v2 v2.40.1
k8s.io/kube-openapi v0.0.0-20211115234752-e816edb12b65
k8s.io/metrics v0.0.0-20220121014130-78bb79f50ff1
k8s.io/metrics v0.0.0
k8s.io/utils v0.0.0-20211208161948-7d6a63dca704
sigs.k8s.io/kustomize/kustomize/v4 v4.4.1
sigs.k8s.io/kustomize/kyaml v0.13.0
@ -47,12 +47,13 @@ require (
)
replace (
k8s.io/api => k8s.io/api v0.0.0-20220121011925-35d41aaac2bf
k8s.io/apimachinery => k8s.io/apimachinery v0.0.0-20220121011720-73cb56485259
k8s.io/cli-runtime => k8s.io/cli-runtime v0.0.0-20220121014245-b3af7edc548d
k8s.io/client-go => k8s.io/client-go v0.0.0-20220121012216-b70ee0aa9aa1
k8s.io/code-generator => k8s.io/code-generator v0.0.0-20220121011527-e4455d948cd9
k8s.io/component-base => k8s.io/component-base v0.0.0-20220121012730-519780c968a8
k8s.io/component-helpers => k8s.io/component-helpers v0.0.0-20220121012834-3aa0f60e9aa0
k8s.io/metrics => k8s.io/metrics v0.0.0-20220121014130-78bb79f50ff1
k8s.io/api => ../api
k8s.io/apimachinery => ../apimachinery
k8s.io/cli-runtime => ../cli-runtime
k8s.io/client-go => ../client-go
k8s.io/code-generator => ../code-generator
k8s.io/component-base => ../component-base
k8s.io/component-helpers => ../component-helpers
k8s.io/kubectl => ../kubectl
k8s.io/metrics => ../metrics
)

19
go.sum
View File

@ -64,8 +64,12 @@ github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk5
github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY=
github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hCbHZ8TKRvWD2dDTCfh9M9ya+I9JpbB7O8o=
github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8=
github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8=
github.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da/go.mod h1:Q73ZrmVTwzkszR9V5SSuryQ31EELlFMUz1kKyl939pY=
github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8=
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio=
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs=
github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY=
github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY=
github.com/benbjohnson/clock v1.0.3/go.mod h1:bGMdMPoPVvcYyt1gHDf4J2KE153Yf9BuiUKYMaxlTDM=
github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA=
@ -913,19 +917,6 @@ honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWh
honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg=
honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k=
honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k=
k8s.io/api v0.0.0-20220121011925-35d41aaac2bf h1:YfvP4cnW6dKo6VJI9j770wf9HFNstlL1lTZSv8Po3P0=
k8s.io/api v0.0.0-20220121011925-35d41aaac2bf/go.mod h1:6NbRkVCqMWJ9t2zDss/u/CQNhbj5JfBsIGC6hW1VsgM=
k8s.io/apimachinery v0.0.0-20220121011720-73cb56485259 h1:Ju5fq+ZSlfEETrJWX8Wa0QMAqvUmkQ1QFgivCxdowmo=
k8s.io/apimachinery v0.0.0-20220121011720-73cb56485259/go.mod h1:y1fv8sTaVIr58F1alwS9QI0fqvgejZBb/1QmzsmqptU=
k8s.io/cli-runtime v0.0.0-20220121014245-b3af7edc548d h1:B+YBfp+IREqXtIYxsv/fPJVAanZjSuSDnxk6nyhgJi8=
k8s.io/cli-runtime v0.0.0-20220121014245-b3af7edc548d/go.mod h1:iOqegKJlFrIBg8XCifUUcLppbtcuZm8qjZWlIH5f3BQ=
k8s.io/client-go v0.0.0-20220121012216-b70ee0aa9aa1 h1:RcL9CpBVqahhM6EWwp4V1D59uM2mrseos2we/TlUNmY=
k8s.io/client-go v0.0.0-20220121012216-b70ee0aa9aa1/go.mod h1:SYEtwHGkq1L/OC6Dp/Q5KyrV+vgWFniN3cKFn8lk/sA=
k8s.io/code-generator v0.0.0-20220121011527-e4455d948cd9/go.mod h1:RGBk0F4ZD2LgSn/a0UQWbmrfdaz0dYeEGJ1d8FZhkuU=
k8s.io/component-base v0.0.0-20220121012730-519780c968a8 h1:B4ug5LozurehlF8QTLTUvfxYMT7SEl9XHJT79bYg4Cs=
k8s.io/component-base v0.0.0-20220121012730-519780c968a8/go.mod h1:zCpcdr+xVM5Xyqve0vBPrgRSqRXAOezBH0702Dpw2f4=
k8s.io/component-helpers v0.0.0-20220121012834-3aa0f60e9aa0 h1:9v+z4cVR0205Q6lka27Sz6JXI/aDhPOzZZBa6ieNkbg=
k8s.io/component-helpers v0.0.0-20220121012834-3aa0f60e9aa0/go.mod h1:3l28b7qOTXUNLBko4AytmyaZyGB7FcZSKhEP0FU24iA=
k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0=
k8s.io/gengo v0.0.0-20210813121822-485abfe95c7c/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E=
k8s.io/gengo v0.0.0-20211129171323-c02415ce4185/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E=
@ -936,8 +927,6 @@ k8s.io/klog/v2 v2.40.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0=
k8s.io/kube-openapi v0.0.0-20210421082810-95288971da7e/go.mod h1:vHXdDvt9+2spS2Rx9ql3I8tycm3H9FDfdUoIuKCefvw=
k8s.io/kube-openapi v0.0.0-20211115234752-e816edb12b65 h1:E3J9oCLlaobFUqsjG9DfKbP2BmgwBL2p7pn0A3dG9W4=
k8s.io/kube-openapi v0.0.0-20211115234752-e816edb12b65/go.mod h1:sX9MT8g7NVZM5lVL/j8QyCCJe8YSMW30QvGZWaCIDIk=
k8s.io/metrics v0.0.0-20220121014130-78bb79f50ff1 h1:yVpyv+PdZXS/S85Zu9bje5PbHzyYcxQEbWOp0MS7+Xk=
k8s.io/metrics v0.0.0-20220121014130-78bb79f50ff1/go.mod h1:xRqb3ZyH0ALtz48EwEiyiolaORDkM9T+biKWOLkYrZ4=
k8s.io/utils v0.0.0-20210802155522-efc7438f0176/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
k8s.io/utils v0.0.0-20211208161948-7d6a63dca704 h1:ZKMMxTvduyf5WUtREOqg5LiXaN1KO/+0oOQPRFrClpo=
k8s.io/utils v0.0.0-20211208161948-7d6a63dca704/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=