| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 | package systemimport (	"os"	"github.com/0xJacky/Nginx-UI/internal/helper"	"github.com/0xJacky/Nginx-UI/internal/nginx"	"github.com/uozi-tech/cosy")// ValidateSSLCertificates checks if SSL certificate and key files exist and are under Nginx config directory// Returns nil if valid, or a CosyError if invalidfunc ValidateSSLCertificates(sslCert, sslKey string) error {	// Check if both paths are provided	if sslCert == "" {		return ErrSSLCertRequired	}	if sslKey == "" {		return ErrSSLKeyRequired	}	// Get Nginx configuration directory	nginxConfPath := nginx.GetConfPath()	// Check if certificate file exists and is under Nginx config directory	if !helper.IsUnderDirectory(sslCert, nginxConfPath) {		return cosy.WrapErrorWithParams(ErrSSLCertNotUnderConf, nginxConfPath)	}	// Check if certificate file exists	if _, err := os.Stat(sslCert); os.IsNotExist(err) {		return ErrSSLCertNotFound	}	// Check if key file is under Nginx config directory	if !helper.IsUnderDirectory(sslKey, nginxConfPath) {		return cosy.WrapErrorWithParams(ErrSSLKeyNotUnderConf, nginxConfPath)	}	// Check if key file exists	if _, err := os.Stat(sslKey); os.IsNotExist(err) {		return ErrSSLKeyNotFound	}	return nil}
 |