diff options
author | 2023-05-09 19:19:48 +0200 | |
---|---|---|
committer | 2023-05-09 18:19:48 +0100 | |
commit | 6392e00653d3b81062ef60d8ae2fa2621873533f (patch) | |
tree | 761d0ff445c2c6a85020cecdc58f92ae1cf78513 /vendor/google.golang.org/grpc/internal/credentials/util.go | |
parent | [bugfix] Don't try to get user when serializing local instance account (#1757) (diff) | |
download | gotosocial-6392e00653d3b81062ef60d8ae2fa2621873533f.tar.xz |
feat: initial tracing support (#1623)
Diffstat (limited to 'vendor/google.golang.org/grpc/internal/credentials/util.go')
-rw-r--r-- | vendor/google.golang.org/grpc/internal/credentials/util.go | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/vendor/google.golang.org/grpc/internal/credentials/util.go b/vendor/google.golang.org/grpc/internal/credentials/util.go new file mode 100644 index 000000000..f792fd22c --- /dev/null +++ b/vendor/google.golang.org/grpc/internal/credentials/util.go @@ -0,0 +1,52 @@ +/* + * + * Copyright 2020 gRPC authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +package credentials + +import ( + "crypto/tls" +) + +const alpnProtoStrH2 = "h2" + +// AppendH2ToNextProtos appends h2 to next protos. +func AppendH2ToNextProtos(ps []string) []string { + for _, p := range ps { + if p == alpnProtoStrH2 { + return ps + } + } + ret := make([]string, 0, len(ps)+1) + ret = append(ret, ps...) + return append(ret, alpnProtoStrH2) +} + +// CloneTLSConfig returns a shallow clone of the exported +// fields of cfg, ignoring the unexported sync.Once, which +// contains a mutex and must not be copied. +// +// If cfg is nil, a new zero tls.Config is returned. +// +// TODO: inline this function if possible. +func CloneTLSConfig(cfg *tls.Config) *tls.Config { + if cfg == nil { + return &tls.Config{} + } + + return cfg.Clone() +} |