mirror of
				https://github.com/caddyserver/caddy.git
				synced 2025-10-31 02:27:19 -04:00 
			
		
		
		
	Fix PrivateKeyBytes to error out and fail tests on error.
This commit is contained in:
		
							parent
							
								
									a682100c5e
								
							
						
					
					
						commit
						376e1090a3
					
				| @ -8,6 +8,7 @@ import ( | ||||
| 	"crypto/rand" | ||||
| 	"crypto/rsa" | ||||
| 	"crypto/x509" | ||||
| 	"errors" | ||||
| 	"os" | ||||
| 	"runtime" | ||||
| 	"testing" | ||||
| @ -95,22 +96,25 @@ func TestSaveAndLoadECCPrivateKey(t *testing.T) { | ||||
| 
 | ||||
| // PrivateKeysSame compares the bytes of a and b and returns true if they are the same. | ||||
| func PrivateKeysSame(a, b crypto.PrivateKey) bool { | ||||
| 	return bytes.Equal(PrivateKeyBytes(a), PrivateKeyBytes(b)) | ||||
| 	var abytes, bbytes []byte | ||||
| 	var err error | ||||
| 
 | ||||
| 	if abytes, err = PrivateKeyBytes(a); err != nil { | ||||
| 		return false | ||||
| 	} | ||||
| 	if bbytes, err = PrivateKeyBytes(b); err != nil { | ||||
| 		return false | ||||
| 	} | ||||
| 	return bytes.Equal(abytes, bbytes) | ||||
| } | ||||
| 
 | ||||
| // PrivateKeyBytes returns the bytes of DER-encoded key. | ||||
| func PrivateKeyBytes(key crypto.PrivateKey) []byte { | ||||
| 	var keyBytes []byte | ||||
| func PrivateKeyBytes(key crypto.PrivateKey) ([]byte, error) { | ||||
| 	switch key := key.(type) { | ||||
| 	case *rsa.PrivateKey: | ||||
| 		keyBytes = x509.MarshalPKCS1PrivateKey(key) | ||||
| 		return x509.MarshalPKCS1PrivateKey(key), nil | ||||
| 	case *ecdsa.PrivateKey: | ||||
| 		var err error | ||||
| 		var t *testing.T | ||||
| 		keyBytes, err = x509.MarshalECPrivateKey(key) | ||||
| 		if err != nil { | ||||
| 			t.Error(err) | ||||
| 		return x509.MarshalECPrivateKey(key) | ||||
| 	} | ||||
| 	} | ||||
| 	return keyBytes | ||||
| 	return nil, errors.New("Bad juju") | ||||
| } | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user