]> Cypherpunks.ru repositories - nncp.git/blobdiff - src/magic.go
Streamed NNCPE format
[nncp.git] / src / magic.go
index 2f0835ce81d8ea9da5e139098d52f28485ab622c..f0fdb58410316531b848b75ed6027c5543cf2567 100644 (file)
@@ -17,7 +17,10 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 package nncp
 
-import "fmt"
+import (
+       "errors"
+       "fmt"
+)
 
 type Magic struct {
        B    [8]byte
@@ -26,6 +29,10 @@ type Magic struct {
 }
 
 var (
+       MagicNNCPAv1 = Magic{
+               B:    [8]byte{'N', 'N', 'C', 'P', 'A', 0, 0, 1},
+               Name: "NNCPAv1 (area packet v1)", Till: "now",
+       }
        MagicNNCPBv1 = Magic{
                B:    [8]byte{'N', 'N', 'C', 'P', 'B', 0, 0, 1},
                Name: "NNCPBv1 (EBlob v1)", Till: "1.0",
@@ -60,7 +67,11 @@ var (
        }
        MagicNNCPEv5 = Magic{
                B:    [8]byte{'N', 'N', 'C', 'P', 'E', 0, 0, 5},
-               Name: "NNCPEv5 (encrypted packet v5)", Till: "now",
+               Name: "NNCPEv5 (encrypted packet v5)", Till: "7.7.0",
+       }
+       MagicNNCPEv6 = Magic{
+               B:    [8]byte{'N', 'N', 'C', 'P', 'E', 0, 0, 6},
+               Name: "NNCPEv6 (encrypted packet v6)", Till: "now",
        }
        MagicNNCPSv1 = Magic{
                B:    [8]byte{'N', 'N', 'C', 'P', 'S', 0, 0, 1},
@@ -86,6 +97,8 @@ var (
                B:    [8]byte{'N', 'N', 'C', 'P', 'P', 0, 0, 3},
                Name: "NNCPPv3 (plain packet v3)", Till: "now",
        }
+
+       BadMagic error = errors.New("Unknown magic number")
 )
 
 func (m *Magic) TooOld() error {