2022-12-03 14:14:15 +08:00
|
|
|
package net
|
|
|
|
|
|
|
|
import (
|
|
|
|
"crypto/tls"
|
|
|
|
"fmt"
|
|
|
|
)
|
2022-12-04 23:05:13 +08:00
|
|
|
|
|
|
|
func ParseCert(certificate, privateKey string) (tls.Certificate, error) {
|
2022-12-03 14:14:15 +08:00
|
|
|
cert, painTextErr := tls.X509KeyPair([]byte(certificate), []byte(privateKey))
|
|
|
|
if painTextErr == nil {
|
|
|
|
return cert, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
cert, loadErr := tls.LoadX509KeyPair(certificate, privateKey)
|
|
|
|
if loadErr != nil {
|
2022-12-04 23:05:13 +08:00
|
|
|
return tls.Certificate{}, fmt.Errorf("parse certificate failed, maybe format error:%s, or path error: %s", painTextErr.Error(), loadErr.Error())
|
2022-12-03 14:14:15 +08:00
|
|
|
}
|
|
|
|
return cert, nil
|
2022-12-04 23:05:13 +08:00
|
|
|
}
|