mirror of https://github.com/minio/minio.git
custom user-agent transport wrapper (#21483)
This commit is contained in:
parent
b44b2a090c
commit
02ba581ecf
|
@ -355,7 +355,9 @@ func validateSubSysConfig(ctx context.Context, s config.Config, subSys string, o
|
||||||
}
|
}
|
||||||
case config.IdentityOpenIDSubSys:
|
case config.IdentityOpenIDSubSys:
|
||||||
if _, err := openid.LookupConfig(s,
|
if _, err := openid.LookupConfig(s,
|
||||||
NewHTTPTransport(), xhttp.DrainBody, globalSite.Region()); err != nil {
|
xhttp.WithUserAgent(NewHTTPTransport(), func() string {
|
||||||
|
return getUserAgent(getMinioMode())
|
||||||
|
}), xhttp.DrainBody, globalSite.Region()); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
case config.IdentityLDAPSubSys:
|
case config.IdentityLDAPSubSys:
|
||||||
|
|
|
@ -277,7 +277,9 @@ func (sys *IAMSys) Init(ctx context.Context, objAPI ObjectLayer, etcdClient *etc
|
||||||
for {
|
for {
|
||||||
if !openidInit {
|
if !openidInit {
|
||||||
openidConfig, err := openid.LookupConfig(s,
|
openidConfig, err := openid.LookupConfig(s,
|
||||||
NewHTTPTransport(), xhttp.DrainBody, globalSite.Region())
|
xhttp.WithUserAgent(NewHTTPTransport(), func() string {
|
||||||
|
return getUserAgent(getMinioMode())
|
||||||
|
}), xhttp.DrainBody, globalSite.Region())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
iamLogIf(ctx, fmt.Errorf("Unable to initialize OpenID: %w", err), logger.WarningKind)
|
iamLogIf(ctx, fmt.Errorf("Unable to initialize OpenID: %w", err), logger.WarningKind)
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -183,3 +183,23 @@ func (s ConnSettings) NewRemoteTargetHTTPTransport(insecure bool) func() *http.T
|
||||||
return tr
|
return tr
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// uaTransport - User-Agent transport
|
||||||
|
type uaTransport struct {
|
||||||
|
ua string
|
||||||
|
rt http.RoundTripper
|
||||||
|
}
|
||||||
|
|
||||||
|
func (u *uaTransport) RoundTrip(req *http.Request) (*http.Response, error) {
|
||||||
|
req2 := req.Clone(req.Context())
|
||||||
|
req2.Header.Set("User-Agent", u.ua)
|
||||||
|
return u.rt.RoundTrip(req2)
|
||||||
|
}
|
||||||
|
|
||||||
|
// WithUserAgent wraps an existing transport with custom User-Agent
|
||||||
|
func WithUserAgent(rt http.RoundTripper, getUA func() string) http.RoundTripper {
|
||||||
|
return &uaTransport{
|
||||||
|
ua: getUA(),
|
||||||
|
rt: rt,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue