aboutsummaryrefslogtreecommitdiff
path: root/cmd/acme/fs.go
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2016-03-06 02:53:28 +0100
committerDimitri Sokolyuk <demon@dim13.org>2016-03-06 02:53:28 +0100
commit003029f331433a158a2334909196d9dd4e9e4078 (patch)
tree6a11c194261df445206bb97801de56cf3386cf71 /cmd/acme/fs.go
parent42fd7f9f078aede87980781345d391256b184a32 (diff)
Rename
Diffstat (limited to 'cmd/acme/fs.go')
-rw-r--r--cmd/acme/fs.go64
1 files changed, 0 insertions, 64 deletions
diff --git a/cmd/acme/fs.go b/cmd/acme/fs.go
deleted file mode 100644
index 4f8c479..0000000
--- a/cmd/acme/fs.go
+++ /dev/null
@@ -1,64 +0,0 @@
-package main
-
-import (
- "crypto"
- "crypto/tls"
- "io"
- "os"
- "syscall"
-
- "dim13.org/acme"
-)
-
-func NewFile(fname string, mode os.FileMode) (io.WriteCloser, error) {
- err := os.Rename(fname, fname+".bak")
- if nerr, ok := err.(*os.LinkError); ok && nerr.Err != syscall.ENOENT {
- return nil, err
- }
- flags := os.O_WRONLY | os.O_CREATE | os.O_TRUNC
- return os.OpenFile(fname, flags, mode)
-}
-
-func (d domain) Save(cert tls.Certificate) error {
- // save key
- fd, err := NewFile(d.KeyFile, 0600)
- if err != nil {
- return err
- }
- defer fd.Close()
- err = acme.SaveKey(fd, cert.PrivateKey)
- if err != nil {
- return err
- }
-
- // save certs
- fd, err = NewFile(d.CrtFile, 0644)
- if err != nil {
- return err
- }
- defer fd.Close()
- for _, crt := range cert.Certificate {
- if err := acme.SaveCert(fd, crt); err != nil {
- return err
- }
- }
- return nil
-}
-
-func (a account) Save(key crypto.PrivateKey) error {
- fd, err := NewFile(a.KeyFile, 0600)
- if err != nil {
- return err
- }
- defer fd.Close()
- return acme.SaveKey(fd, key)
-}
-
-func (a account) Load() (crypto.PrivateKey, error) {
- fd, err := os.Open(a.KeyFile)
- if err != nil {
- return nil, err
- }
- defer fd.Close()
- return acme.LoadKey(fd)
-}