X-Git-Url: http://www.git.cypherpunks.ru/?a=blobdiff_plain;f=src%2Fmagic.go;h=60af73eb1ffad5c2b2a6210ffdd737f08d454f82;hb=2cad23b498bbb9fc1e929b4900b40e520017c614;hp=2f0835ce81d8ea9da5e139098d52f28485ab622c;hpb=09afcade2662992be6a24f465668c5ea499ac8bb;p=nncp.git diff --git a/src/magic.go b/src/magic.go index 2f0835c..60af73e 100644 --- a/src/magic.go +++ b/src/magic.go @@ -1,6 +1,6 @@ /* NNCP -- Node to Node copy, utilities for store-and-forward data exchange -Copyright (C) 2016-2021 Sergey Matveev +Copyright (C) 2016-2022 Sergey Matveev This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,7 +17,10 @@ along with this program. If not, see . 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 {