prime fun + user stash

This commit is contained in:
daru
2022-07-26 20:33:11 +02:00
parent 3771b1d2c4
commit 7fe4181c72
7 changed files with 113 additions and 25 deletions

View File

@@ -1,12 +1,16 @@
package main
import (
"bytes"
"crypto/sha512"
"encoding/binary"
"fmt"
"io"
"strconv"
"strings"
"time"
"github.com/klauspost/compress/zstd"
)
func Sauce(malid int64, username string) string {
@@ -43,3 +47,32 @@ func BytesToInt64AndDate(bytes []byte) (int64, time.Time, error) {
func Int64AndDateToBytes(num int64, appoint time.Time) []byte {
return []byte(fmt.Sprintf("%d%s%s", num, AppointSplit, appoint.Format(time.RFC3339)))
}
func CompressZstd(src []byte) ([]byte, error) {
var buf bytes.Buffer
encoder, err := zstd.NewWriter(&buf)
if err != nil {
return nil, err
}
reader := bytes.NewReader(src)
_, err = io.Copy(encoder, reader)
if err != nil {
encoder.Close()
return nil, err
}
err = encoder.Close()
return buf.Bytes(), err
}
func DecompressZstd(src []byte) ([]byte, error) {
reader := bytes.NewReader(src)
decoder, err := zstd.NewReader(reader)
if err != nil {
return nil, err
}
defer decoder.Close()
var buf bytes.Buffer
_, err = io.Copy(&buf, decoder)
return buf.Bytes(), err
}