]> Cypherpunks.ru repositories - gogost.git/blobdiff - src/cypherpunks.ru/gogost/mgm/mode.go
Forbid any later GNU GPL versions autousage
[gogost.git] / src / cypherpunks.ru / gogost / mgm / mode.go
index 2781cbba2d3554e9593c8caebfa04509f34a7ac1..fdbfa4277fad5577b2fc1af15a2857e547a4099c 100644 (file)
@@ -3,8 +3,7 @@
 //
 // 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
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
+// the Free Software Foundation, version 3 of the License.
 //
 // This program is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -101,10 +100,11 @@ func (mgm *MGM) Overhead() int {
 }
 
 func incr(data []byte) {
-       if len(data) == 4 {
-               binary.BigEndian.PutUint32(data, binary.BigEndian.Uint32(data)+1)
-       } else {
-               binary.BigEndian.PutUint64(data, binary.BigEndian.Uint64(data)+1)
+       for i := len(data) - 1; i >= 0; i-- {
+               data[i]++
+               if data[i] != 0 {
+                       return
+               }
        }
 }