netclientutils.go 760 B

123456789101112131415161718192021222324252627282930313233
  1. package ncutils
  2. import (
  3. "bytes"
  4. "encoding/gob"
  5. )
  6. // DEFAULT_GC_PERCENT - garbage collection percent
  7. const DEFAULT_GC_PERCENT = 10
  8. // == OS PATH FUNCTIONS ==
  9. // ConvertKeyToBytes - util to convert a key to bytes to use elsewhere
  10. func ConvertKeyToBytes(key *[32]byte) ([]byte, error) {
  11. var buffer bytes.Buffer
  12. var enc = gob.NewEncoder(&buffer)
  13. if err := enc.Encode(key); err != nil {
  14. return nil, err
  15. }
  16. return buffer.Bytes(), nil
  17. }
  18. // ConvertBytesToKey - util to convert bytes to a key to use elsewhere
  19. func ConvertBytesToKey(data []byte) (*[32]byte, error) {
  20. var buffer = bytes.NewBuffer(data)
  21. var dec = gob.NewDecoder(buffer)
  22. var result = new([32]byte)
  23. var err = dec.Decode(result)
  24. if err != nil {
  25. return nil, err
  26. }
  27. return result, err
  28. }