diff options
Diffstat (limited to 'vendor/google.golang.org/grpc/credentials/credentials_util_pre_go17.go')
-rw-r--r-- | vendor/google.golang.org/grpc/credentials/credentials_util_pre_go17.go | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/vendor/google.golang.org/grpc/credentials/credentials_util_pre_go17.go b/vendor/google.golang.org/grpc/credentials/credentials_util_pre_go17.go new file mode 100644 index 0000000..d6bbcc9 --- /dev/null +++ b/vendor/google.golang.org/grpc/credentials/credentials_util_pre_go17.go | |||
@@ -0,0 +1,57 @@ | |||
1 | // +build !go1.7 | ||
2 | |||
3 | /* | ||
4 | * | ||
5 | * Copyright 2016 gRPC authors. | ||
6 | * | ||
7 | * Licensed under the Apache License, Version 2.0 (the "License"); | ||
8 | * you may not use this file except in compliance with the License. | ||
9 | * You may obtain a copy of the License at | ||
10 | * | ||
11 | * http://www.apache.org/licenses/LICENSE-2.0 | ||
12 | * | ||
13 | * Unless required by applicable law or agreed to in writing, software | ||
14 | * distributed under the License is distributed on an "AS IS" BASIS, | ||
15 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
16 | * See the License for the specific language governing permissions and | ||
17 | * limitations under the License. | ||
18 | * | ||
19 | */ | ||
20 | |||
21 | package credentials | ||
22 | |||
23 | import ( | ||
24 | "crypto/tls" | ||
25 | ) | ||
26 | |||
27 | // cloneTLSConfig returns a shallow clone of the exported | ||
28 | // fields of cfg, ignoring the unexported sync.Once, which | ||
29 | // contains a mutex and must not be copied. | ||
30 | // | ||
31 | // If cfg is nil, a new zero tls.Config is returned. | ||
32 | func cloneTLSConfig(cfg *tls.Config) *tls.Config { | ||
33 | if cfg == nil { | ||
34 | return &tls.Config{} | ||
35 | } | ||
36 | return &tls.Config{ | ||
37 | Rand: cfg.Rand, | ||
38 | Time: cfg.Time, | ||
39 | Certificates: cfg.Certificates, | ||
40 | NameToCertificate: cfg.NameToCertificate, | ||
41 | GetCertificate: cfg.GetCertificate, | ||
42 | RootCAs: cfg.RootCAs, | ||
43 | NextProtos: cfg.NextProtos, | ||
44 | ServerName: cfg.ServerName, | ||
45 | ClientAuth: cfg.ClientAuth, | ||
46 | ClientCAs: cfg.ClientCAs, | ||
47 | InsecureSkipVerify: cfg.InsecureSkipVerify, | ||
48 | CipherSuites: cfg.CipherSuites, | ||
49 | PreferServerCipherSuites: cfg.PreferServerCipherSuites, | ||
50 | SessionTicketsDisabled: cfg.SessionTicketsDisabled, | ||
51 | SessionTicketKey: cfg.SessionTicketKey, | ||
52 | ClientSessionCache: cfg.ClientSessionCache, | ||
53 | MinVersion: cfg.MinVersion, | ||
54 | MaxVersion: cfg.MaxVersion, | ||
55 | CurvePreferences: cfg.CurvePreferences, | ||
56 | } | ||
57 | } | ||