fix sugnature expiration

This commit is contained in:
Stéphane Depierrepont aka Toorop
2015-05-06 15:23:36 +02:00
parent 519243836c
commit 6b2f38361d
3 changed files with 8 additions and 8 deletions

View File

@@ -16,7 +16,7 @@ import (
"io/ioutil" "io/ioutil"
"regexp" "regexp"
"strings" "strings"
"time" //"time"
) )
const ( const (
@@ -66,7 +66,7 @@ type sigOptions struct {
AddSignatureTimestamp bool AddSignatureTimestamp bool
// Time validity of the signature (0=never) // Time validity of the signature (0=never)
SignatureExpireIn time.Duration SignatureExpireIn uint64
// CopiedHeaderFileds // CopiedHeaderFileds
CopiedHeaderFileds []string CopiedHeaderFileds []string
@@ -82,7 +82,7 @@ func NewSigOptions() sigOptions {
BodyLength: 0, BodyLength: 0,
QueryMethods: []string{"dns/txt"}, QueryMethods: []string{"dns/txt"},
AddSignatureTimestamp: false, AddSignatureTimestamp: false,
SignatureExpireIn: 0 * time.Second, SignatureExpireIn: 0,
} }
} }

View File

@@ -198,8 +198,9 @@ func NewDkimHeaderBySigOptions(options sigOptions) *DkimHeader {
if options.AddSignatureTimestamp { if options.AddSignatureTimestamp {
h.SignatureTimestamp = time.Now() h.SignatureTimestamp = time.Now()
} }
if options.SignatureExpireIn.Seconds() > 0 { if options.SignatureExpireIn > 0 {
h.SignatureExpiration = time.Now().Add(options.SignatureExpireIn) fmt.Println(options.SignatureExpireIn)
h.SignatureExpiration = time.Now().Add(time.Duration(options.SignatureExpireIn) * time.Second)
} }
h.CopiedHeaderFileds = options.CopiedHeaderFileds h.CopiedHeaderFileds = options.CopiedHeaderFileds
return h return h
@@ -250,7 +251,6 @@ func (d *DkimHeader) GetHeaderBase(bodyHash string) string {
subh = "" subh = ""
} }
subh += " x=" + fmt.Sprintf("%d", ts) + ";" subh += " x=" + fmt.Sprintf("%d", ts) + ";"
} }
// Headers // Headers

View File

@@ -172,8 +172,8 @@ func Test_Sign(t *testing.T) {
options.Canonicalization = "relaxed/relaxed" options.Canonicalization = "relaxed/relaxed"
options.Domain = domain options.Domain = domain
options.Selector = selector options.Selector = selector
//options.AddSignatureTimestamp = true options.AddSignatureTimestamp = true
//options.SignatureExpireIn = 3600 options.SignatureExpireIn = 3600
options.Headers = []string{"from"} options.Headers = []string{"from"}
emailReader, err := Sign(emailReader, options) emailReader, err := Sign(emailReader, options)
assert.NoError(t, err) assert.NoError(t, err)