crypto: Correct s2k type constants. They are 0,1,3 according to both the RFC: http://tools.ietf.org/html/rfc4880#section-3.7
And according to the gpg implementation: http://git.gnupg.org/cgi-bin/gitweb.cgi?p=gnupg.git&a=search&h=refs%2Fheads%2FSTABLE-BRANCH-2-0&st=grep&s=s2kmode
R=agl
CC=evn, golang-dev
https://golang.org/cl/11355046
diff --git a/openpgp/s2k/s2k.go b/openpgp/s2k/s2k.go
index c8b9bbd..c466a8d 100644
--- a/openpgp/s2k/s2k.go
+++ b/openpgp/s2k/s2k.go
@@ -97,12 +97,12 @@
}
switch buf[0] {
- case 1:
+ case 0:
f := func(out, in []byte) {
Simple(out, h, in)
}
return f, nil
- case 2:
+ case 1:
_, err = io.ReadFull(r, buf[:8])
if err != nil {
return
diff --git a/openpgp/s2k/s2k_test.go b/openpgp/s2k/s2k_test.go
index 3a094a1..4898828 100644
--- a/openpgp/s2k/s2k_test.go
+++ b/openpgp/s2k/s2k_test.go
@@ -66,9 +66,9 @@
spec, in, out string
}{
/* Simple with SHA1 */
- {"0102", "hello", "aaf4c61d"},
+ {"0002", "hello", "aaf4c61d"},
/* Salted with SHA1 */
- {"02020102030405060708", "hello", "f4f7d67e"},
+ {"01020102030405060708", "hello", "f4f7d67e"},
/* Iterated with SHA1 */
{"03020102030405060708f1", "hello", "f2a57b7c"},
}