Create PEMFileProvider(s) watching the content changes of temporary files.
(tmpFiles *tmpCredsFiles)
| 497 | // Create PEMFileProvider(s) watching the content changes of temporary |
| 498 | // files. |
| 499 | func createProviders(tmpFiles *tmpCredsFiles) (certprovider.Provider, certprovider.Provider, certprovider.Provider, certprovider.Provider, error) { |
| 500 | clientIdentityOptions := pemfile.Options{ |
| 501 | CertFile: tmpFiles.clientCertTmp.Name(), |
| 502 | KeyFile: tmpFiles.clientKeyTmp.Name(), |
| 503 | RefreshDuration: credRefreshingInterval, |
| 504 | } |
| 505 | clientIdentityProvider, err := pemfile.NewProvider(clientIdentityOptions) |
| 506 | if err != nil { |
| 507 | return nil, nil, nil, nil, err |
| 508 | } |
| 509 | clientRootOptions := pemfile.Options{ |
| 510 | RootFile: tmpFiles.clientTrustTmp.Name(), |
| 511 | RefreshDuration: credRefreshingInterval, |
| 512 | } |
| 513 | clientRootProvider, err := pemfile.NewProvider(clientRootOptions) |
| 514 | if err != nil { |
| 515 | return nil, nil, nil, nil, err |
| 516 | } |
| 517 | serverIdentityOptions := pemfile.Options{ |
| 518 | CertFile: tmpFiles.serverCertTmp.Name(), |
| 519 | KeyFile: tmpFiles.serverKeyTmp.Name(), |
| 520 | RefreshDuration: credRefreshingInterval, |
| 521 | } |
| 522 | serverIdentityProvider, err := pemfile.NewProvider(serverIdentityOptions) |
| 523 | if err != nil { |
| 524 | return nil, nil, nil, nil, err |
| 525 | } |
| 526 | serverRootOptions := pemfile.Options{ |
| 527 | RootFile: tmpFiles.serverTrustTmp.Name(), |
| 528 | RefreshDuration: credRefreshingInterval, |
| 529 | } |
| 530 | serverRootProvider, err := pemfile.NewProvider(serverRootOptions) |
| 531 | if err != nil { |
| 532 | return nil, nil, nil, nil, err |
| 533 | } |
| 534 | return clientIdentityProvider, clientRootProvider, serverIdentityProvider, serverRootProvider, nil |
| 535 | } |
| 536 | |
| 537 | // In order to test advanced TLS provider features, we used temporary files to |
| 538 | // hold credential data, and copy the contents under testdata/ to these tmp |
no test coverage detected