Merge "camlistored: use osutil for default TLS cert/key"

This commit is contained in:
Brad Fitzpatrick 2013-12-10 16:57:02 +00:00 committed by Gerrit Code Review
commit d0e36512f7
3 changed files with 23 additions and 15 deletions

View File

@ -134,6 +134,20 @@ func KeyBlobsDir() string {
return filepath.Join(CamliConfigDir(), "keyblobs") return filepath.Join(CamliConfigDir(), "keyblobs")
} }
// DefaultTLSCert returns the path to the default TLS certificate
// file that is used (creating if necessary) when TLS is specified
// without the cert file.
func DefaultTLSCert() string {
return filepath.Join(CamliConfigDir(), "selfgen_pem.crt")
}
// DefaultTLSKey returns the path to the default TLS key
// file that is used (creating if necessary) when TLS is specified
// without the key file.
func DefaultTLSKey() string {
return filepath.Join(CamliConfigDir(), "selfgen_pem.key")
}
// Find the correct absolute path corresponding to a relative path, // Find the correct absolute path corresponding to a relative path,
// searching the following sequence of directories: // searching the following sequence of directories:
// 1. Working Directory // 1. Working Directory

View File

@ -30,11 +30,6 @@ import (
"camlistore.org/pkg/osutil" "camlistore.org/pkg/osutil"
) )
const (
DefaultTLSCert = "config/selfgen_pem.crt"
DefaultTLSKey = "config/selfgen_pem.key"
)
// various parameters derived from the high-level user config // various parameters derived from the high-level user config
// and needed to set up the low-level config. // and needed to set up the low-level config.
type configPrefixesParams struct { type configPrefixesParams struct {
@ -585,8 +580,8 @@ func genLowLevelConfig(conf *Config) (lowLevelConf *Config, err error) {
obj["TLSCertFile"] = tlsCert obj["TLSCertFile"] = tlsCert
obj["TLSKeyFile"] = tlsKey obj["TLSKeyFile"] = tlsKey
} else { } else {
obj["TLSCertFile"] = DefaultTLSCert obj["TLSCertFile"] = osutil.DefaultTLSCert()
obj["TLSKeyFile"] = DefaultTLSKey obj["TLSKeyFile"] = osutil.DefaultTLSKey()
} }
} }

View File

@ -76,11 +76,6 @@ import (
_ "camlistore.org/pkg/importer/flickr" _ "camlistore.org/pkg/importer/flickr"
) )
const (
defCert = serverconfig.DefaultTLSCert
defKey = serverconfig.DefaultTLSKey
)
var ( var (
flagVersion = flag.Bool("version", false, "show version") flagVersion = flag.Bool("version", false, "show version")
flagConfigFile = flag.String("configfile", "", flagConfigFile = flag.String("configfile", "",
@ -160,6 +155,8 @@ func genSelfTLS(listen string) error {
return fmt.Errorf("Failed to create certificate: %s", err) return fmt.Errorf("Failed to create certificate: %s", err)
} }
defCert := osutil.DefaultTLSCert()
defKey := osutil.DefaultTLSKey()
certOut, err := os.Create(defCert) certOut, err := os.Create(defCert)
if err != nil { if err != nil {
return fmt.Errorf("failed to open %s for writing: %s", defCert, err) return fmt.Errorf("failed to open %s for writing: %s", defCert, err)
@ -319,6 +316,8 @@ func setupTLS(ws *webserver.Server, config *serverconfig.Config, listen string)
exitf("TLSCertFile and TLSKeyFile must both be either present or absent") exitf("TLSCertFile and TLSKeyFile must both be either present or absent")
} }
defCert := osutil.DefaultTLSCert()
defKey := osutil.DefaultTLSKey()
if cert == defCert && key == defKey { if cert == defCert && key == defKey {
_, err1 := os.Stat(cert) _, err1 := os.Stat(cert)
_, err2 := os.Stat(key) _, err2 := os.Stat(key)