aboutsummaryrefslogtreecommitdiff
path: root/server/store/store.go
diff options
context:
space:
mode:
Diffstat (limited to 'server/store/store.go')
-rw-r--r--server/store/store.go14
1 files changed, 10 insertions, 4 deletions
diff --git a/server/store/store.go b/server/store/store.go
index ad4922a..f6ac66e 100644
--- a/server/store/store.go
+++ b/server/store/store.go
@@ -1,6 +1,8 @@
package store
import (
+ "time"
+
"golang.org/x/crypto/ssh"
"github.com/nsheridan/cashier/server/certutil"
@@ -22,18 +24,22 @@ type CertStorer interface {
type CertRecord struct {
KeyID string
Principals []string
- CreatedAt uint64
- Expires uint64
+ CreatedAt time.Time
+ Expires time.Time
Revoked bool
Raw string
}
+func parseTime(t uint64) time.Time {
+ return time.Unix(int64(t), 0)
+}
+
func parseCertificate(cert *ssh.Certificate) *CertRecord {
return &CertRecord{
KeyID: cert.KeyId,
Principals: cert.ValidPrincipals,
- CreatedAt: cert.ValidAfter,
- Expires: cert.ValidBefore,
+ CreatedAt: parseTime(cert.ValidAfter),
+ Expires: parseTime(cert.ValidBefore),
Raw: certutil.GetPublicKey(cert),
}
}