2022-03-12 18:06:39 +00:00
|
|
|
// package helpers
|
|
|
|
|
|
|
|
// import (
|
|
|
|
// "crypto/rand"
|
|
|
|
// "encoding/hex"
|
|
|
|
// "log"
|
|
|
|
// "path/filepath"
|
|
|
|
// "runtime"
|
|
|
|
|
|
|
|
// "golang.org/x/crypto/bcrypt"
|
|
|
|
// )
|
|
|
|
|
|
|
|
// //CheckError checks for errors and logs them and stops the program
|
|
|
|
// func CheckError(err error) bool {
|
|
|
|
// if err != nil {
|
|
|
|
// log.Fatal(err)
|
|
|
|
// return false
|
|
|
|
// }
|
|
|
|
// return true
|
|
|
|
// }
|
|
|
|
|
|
|
|
// func GetRootDir() string {
|
|
|
|
// _, b, _, _ := runtime.Caller(0)
|
|
|
|
// dir := filepath.Dir(b)
|
|
|
|
// return filepath.Dir(filepath.Dir(dir))
|
|
|
|
// }
|
|
|
|
|
|
|
|
// func GetAssets() string {
|
|
|
|
// return GetRootDir()
|
|
|
|
// }
|
|
|
|
|
|
|
|
// func HashPassword(password string) (string, error) {
|
|
|
|
// hash, err := bcrypt.GenerateFromPassword([]byte(password), 14)
|
|
|
|
// return string(hash), err
|
|
|
|
// }
|
|
|
|
|
|
|
|
// func CheckPasswordHash(password, hash string) error {
|
|
|
|
// err := bcrypt.CompareHashAndPassword([]byte(hash), []byte(password))
|
|
|
|
// return err
|
|
|
|
// }
|
|
|
|
|
|
|
|
// func RandHex() string {
|
|
|
|
// bytes := make([]byte, 12)
|
|
|
|
// rand.Read(bytes)
|
|
|
|
// return hex.EncodeToString(bytes)
|
|
|
|
// }
|
|
|
|
|
|
|
|
// func Bytes(n int) ([]byte, error) {
|
|
|
|
// b := make([]byte, n)
|
|
|
|
// _, err := rand.Read(b)
|
|
|
|
// if err != nil {
|
|
|
|
// return nil, err
|
|
|
|
// }
|
|
|
|
// return b, nil
|
|
|
|
// }
|