mirror of
				https://github.com/coredns/coredns.git
				synced 2025-10-30 17:53:21 -04:00 
			
		
		
		
	Use common TLS parsing routine for etcd (#476)
* Use common TLS parsing routine for etcd Change to use the new common routine, and update the docs to reflect the different options for passing TLS configuration. * Move middleware/tls to middleware/pkg/tls This was put in the wrong place originally.
This commit is contained in:
		
				
					committed by
					
						 Miek Gieben
						Miek Gieben
					
				
			
			
				
	
			
			
			
						parent
						
							94c59da577
						
					
				
				
					commit
					2e366459c5
				
			| @@ -1,81 +0,0 @@ | ||||
| package tls | ||||
|  | ||||
| import ( | ||||
|         "testing" | ||||
|         "path/filepath" | ||||
|  | ||||
| 	"github.com/miekg/coredns/middleware/test" | ||||
| ) | ||||
|  | ||||
| func getPEMFiles(t *testing.T) (rmFunc func(), cert, key, ca string) { | ||||
| 	tempDir, rmFunc, err := test.WritePEMFiles("") | ||||
| 	if err != nil { | ||||
| 		t.Fatalf("Could not write PEM files: %s", err) | ||||
| 	} | ||||
|  | ||||
| 	cert = filepath.Join(tempDir, "cert.pem") | ||||
| 	key = filepath.Join(tempDir, "key.pem") | ||||
| 	ca = filepath.Join(tempDir, "ca.pem") | ||||
|  | ||||
| 	return | ||||
| } | ||||
|  | ||||
| func TestNewTLSConfig(t *testing.T) { | ||||
| 	rmFunc, cert, key, ca := getPEMFiles(t) | ||||
| 	defer rmFunc() | ||||
|  | ||||
| 	_, err := NewTLSConfig(cert, key, ca) | ||||
| 	if err != nil { | ||||
| 		t.Errorf("Failed to create TLSConfig: %s", err) | ||||
| 	} | ||||
| } | ||||
|  | ||||
| func TestNewTLSClientConfig(t *testing.T) { | ||||
| 	rmFunc, _, _, ca := getPEMFiles(t) | ||||
| 	defer rmFunc() | ||||
|  | ||||
| 	_, err := NewTLSClientConfig(ca) | ||||
| 	if err != nil { | ||||
| 		t.Errorf("Failed to create TLSConfig: %s", err) | ||||
| 	} | ||||
| } | ||||
|  | ||||
| func TestNewTLSConfigFromArgs(t *testing.T) { | ||||
| 	rmFunc, cert, key, ca := getPEMFiles(t) | ||||
| 	defer rmFunc() | ||||
|  | ||||
| 	_, err := NewTLSConfigFromArgs() | ||||
| 	if err != nil { | ||||
| 		t.Errorf("Failed to create TLSConfig: %s", err) | ||||
| 	} | ||||
|  | ||||
| 	c, err := NewTLSConfigFromArgs(ca) | ||||
| 	if err != nil { | ||||
| 		t.Errorf("Failed to create TLSConfig: %s", err) | ||||
| 	} | ||||
| 	if c.RootCAs == nil { | ||||
| 		t.Error("RootCAs should not be nil when one arg passed") | ||||
| 	} | ||||
|  | ||||
| 	c, err = NewTLSConfigFromArgs(cert,key) | ||||
| 	if err != nil { | ||||
| 		t.Errorf("Failed to create TLSConfig: %s", err) | ||||
| 	} | ||||
| 	if c.RootCAs != nil { | ||||
| 		t.Error("RootCAs should be nil when two args passed") | ||||
| 	} | ||||
| 	if len(c.Certificates) != 1 { | ||||
| 		t.Error("Certificates should have a single entry when two args passed") | ||||
| 	} | ||||
| 	args := []string{cert,key,ca} | ||||
| 	c, err = NewTLSConfigFromArgs(args...) | ||||
| 	if err != nil { | ||||
| 		t.Errorf("Failed to create TLSConfig: %s", err) | ||||
| 	} | ||||
| 	if c.RootCAs == nil { | ||||
| 		t.Error("RootCAs should not be nil when three args passed") | ||||
| 	} | ||||
| 	if len(c.Certificates) != 1 { | ||||
| 		t.Error("Certificateis should have a single entry when three args passed") | ||||
| 	} | ||||
| } | ||||
		Reference in New Issue
	
	Block a user