Files
gluetun/internal/openvpn/config/config.go
Quentin McGaw (desktop) d9fbecaa01 Maint: minor changes to openvpn/config package
- Constructor returns concrete struct instead of interface
- Rename conf to openvpnConf in openvpn loop
2021-08-18 20:28:42 +00:00

31 lines
498 B
Go

package config
import (
"os"
"strings"
)
type Writer interface {
WriteConfig(lines []string) error
}
func (c *Configurator) WriteConfig(lines []string) error {
file, err := os.OpenFile(c.configPath, os.O_CREATE|os.O_TRUNC|os.O_WRONLY, 0644)
if err != nil {
return err
}
_, err = file.WriteString(strings.Join(lines, "\n"))
if err != nil {
_ = file.Close()
return err
}
err = file.Chown(c.puid, c.pgid)
if err != nil {
_ = file.Close()
return err
}
return file.Close()
}