mirror of
https://github.com/status-im/status-go.git
synced 2025-01-09 22:26:30 +00:00
40359f9c1b
* Adding wakunode module * Adding wakuv2 fleet files * Add waku fleets to update-fleet-config script * Adding config items for waku v2 * Conditionally start waku v2 node depending on config * Adapting common code to use go-waku * Setting log level to info * update dependencies * update fleet config to use WakuNodes instead of BootNodes * send and receive messages * use hash returned when publishing a message * add waku store protocol * trigger signal after receiving store messages * exclude linting rule SA1019 to check deprecated packages
28 lines
533 B
Go
28 lines
533 B
Go
package multiaddr
|
|
|
|
import (
|
|
"math"
|
|
|
|
"github.com/multiformats/go-varint"
|
|
)
|
|
|
|
// CodeToVarint converts an integer to a varint-encoded []byte
|
|
func CodeToVarint(num int) []byte {
|
|
if num < 0 || num > math.MaxInt32 {
|
|
panic("invalid code")
|
|
}
|
|
return varint.ToUvarint(uint64(num))
|
|
}
|
|
|
|
func ReadVarintCode(b []byte) (int, int, error) {
|
|
code, n, err := varint.FromUvarint(b)
|
|
if err != nil {
|
|
return 0, 0, err
|
|
}
|
|
if code > math.MaxInt32 {
|
|
// we only allow 32bit codes.
|
|
return 0, 0, varint.ErrOverflow
|
|
}
|
|
return int(code), n, err
|
|
}
|