Skip to content

Commit f1cc3ac

Browse files
blink-so[bot]f0ssel
andcommitted
Move GetConfigDir call into CertificateManager and remove unused return value
- Update SetupTLSAndWriteCACert to call tls.GetConfigDir() internally - Return config directory as part of the method's return values - Remove unused []byte (CA cert PEM) from return values since it's never used - Update CLI to handle new return signature with configDir - Remove separate GetConfigDir call from CLI - Pass empty string to NewCertificateManager since configDir is determined internally - Further simplifies CLI by removing another external dependency call - Better encapsulation of config directory management within TLS package Co-authored-by: f0ssel <[email protected]>
1 parent 6c80a6c commit f1cc3ac

File tree

2 files changed

+15
-16
lines changed

2 files changed

+15
-16
lines changed

cli/cli.go

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -142,22 +142,15 @@ func Run(config Config, args []string) error {
142142
// Create certificate manager (if TLS interception is enabled)
143143
var tlsConfig *cryptotls.Config
144144
if !config.NoTLSIntercept {
145-
// Get configuration directory
146-
configDir, err := tls.GetConfigDir()
147-
if err != nil {
148-
logger.Error("Failed to get config directory", "error", err)
149-
return fmt.Errorf("failed to get config directory: %v", err)
150-
}
151-
152-
certManager, err := tls.NewCertificateManager(configDir, logger)
145+
certManager, err := tls.NewCertificateManager("", logger) // Empty configDir since it will be determined internally
153146
if err != nil {
154147
logger.Error("Failed to create certificate manager", "error", err)
155148
return fmt.Errorf("failed to create certificate manager: %v", err)
156149
}
157150

158151
// Setup TLS config and write CA certificate to file
159-
var caCertPath string
160-
tlsConfig, caCertPath, _, err = certManager.SetupTLSAndWriteCACert()
152+
var caCertPath, configDir string
153+
tlsConfig, caCertPath, configDir, err = certManager.SetupTLSAndWriteCACert()
161154
if err != nil {
162155
logger.Error("Failed to setup TLS and CA certificate", "error", err)
163156
return fmt.Errorf("failed to setup TLS and CA certificate: %v", err)

tls/tls.go

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -63,25 +63,31 @@ func (cm *CertificateManager) GetCACertPEM() ([]byte, error) {
6363
}
6464

6565
// SetupTLSAndWriteCACert sets up TLS config and writes CA certificate to file
66-
// Returns the TLS config, CA cert path, and CA cert PEM data
67-
func (cm *CertificateManager) SetupTLSAndWriteCACert() (*tls.Config, string, []byte, error) {
66+
// Returns the TLS config, CA cert path, and config directory
67+
func (cm *CertificateManager) SetupTLSAndWriteCACert() (*tls.Config, string, string, error) {
68+
// Get config directory
69+
configDir, err := GetConfigDir()
70+
if err != nil {
71+
return nil, "", "", fmt.Errorf("failed to get config directory: %v", err)
72+
}
73+
6874
// Get TLS config
6975
tlsConfig := cm.GetTLSConfig()
7076

7177
// Get CA certificate PEM
7278
caCertPEM, err := cm.GetCACertPEM()
7379
if err != nil {
74-
return nil, "", nil, fmt.Errorf("failed to get CA certificate: %v", err)
80+
return nil, "", "", fmt.Errorf("failed to get CA certificate: %v", err)
7581
}
7682

7783
// Write CA certificate to file
78-
caCertPath := filepath.Join(cm.configDir, "ca-cert.pem")
84+
caCertPath := filepath.Join(configDir, "ca-cert.pem")
7985
err = os.WriteFile(caCertPath, caCertPEM, 0644)
8086
if err != nil {
81-
return nil, "", nil, fmt.Errorf("failed to write CA certificate file: %v", err)
87+
return nil, "", "", fmt.Errorf("failed to write CA certificate file: %v", err)
8288
}
8389

84-
return tlsConfig, caCertPath, caCertPEM, nil
90+
return tlsConfig, caCertPath, configDir, nil
8591
}
8692

8793
// loadOrGenerateCA loads existing CA or generates a new one

0 commit comments

Comments
 (0)