(rr io.Reader)
| 228 | } |
| 229 | |
| 230 | func secWebSocketKey(rr io.Reader) (string, error) { |
| 231 | if rr == nil { |
| 232 | rr = rand.Reader |
| 233 | } |
| 234 | b := make([]byte, 16) |
| 235 | _, err := io.ReadFull(rr, b) |
| 236 | if err != nil { |
| 237 | return "", fmt.Errorf("failed to read random data from rand.Reader: %w", err) |
| 238 | } |
| 239 | return base64.StdEncoding.EncodeToString(b), nil |
| 240 | } |
| 241 | |
| 242 | func verifyServerResponse(opts *DialOptions, copts *compressionOptions, secWebSocketKey string, resp *http.Response) (*compressionOptions, error) { |
| 243 | if resp.StatusCode != http.StatusSwitchingProtocols { |
no outgoing calls
no test coverage detected
searching dependent graphs…