aboutsummaryrefslogtreecommitdiff
path: root/sign.go
diff options
context:
space:
mode:
Diffstat (limited to 'sign.go')
-rw-r--r--sign.go24
1 files changed, 19 insertions, 5 deletions
diff --git a/sign.go b/sign.go
index ccdd643..0c56b69 100644
--- a/sign.go
+++ b/sign.go
@@ -4,7 +4,6 @@ import (
"flag"
"io/ioutil"
"log"
- "os"
"dim13.org/signify/ask"
"dim13.org/signify/b64file"
@@ -63,7 +62,12 @@ func signPlain(secFile, msgFile, sigFile string) error {
}
sig := sec.Sign(msg)
comment := VerifyWith(secFile)
- return b64file.EncodeFile(sigFile, ModeSig, sig, comment, nil)
+ fd, err := Create(sigFile, ModeSig)
+ if err != nil {
+ return err
+ }
+ defer fd.Close()
+ return b64file.Encode(fd, sig, comment, nil)
}
func signEmbedded(secFile, msgFile, sigFile string) error {
@@ -77,12 +81,17 @@ func signEmbedded(secFile, msgFile, sigFile string) error {
}
sig := sec.Sign(msg)
comment := VerifyWith(secFile)
- return b64file.EncodeFile(sigFile, ModeSig, sig, comment, msg)
+ fd, err := Create(sigFile, ModeSig)
+ if err != nil {
+ return err
+ }
+ fd.Close()
+ return b64file.Encode(fd, sig, comment, msg)
}
// TODO
func signGzip(secFile, msgFile, sigFile string) error {
- fd, err := os.Open(msgFile)
+ fd, err := Open(msgFile)
if err != nil {
return err
}
@@ -107,7 +116,12 @@ func signGzip(secFile, msgFile, sigFile string) error {
func openSec(fname string) (*key.Sec, error) {
sec := new(key.Sec)
- if _, _, err := b64file.DecodeFile(fname, sec); err != nil {
+ fd, err := Open(fname)
+ if err != nil {
+ return nil, err
+ }
+ defer fd.Close()
+ if _, _, err := b64file.Decode(fd, sec); err != nil {
return nil, err
}
if err := sec.Crypt(ask.Passphrase{}); err != nil {