]> git.r.bdr.sh - rbdr/mobius/blobdiff - hotline/user.go
Add missing error handling and logging (#109)
[rbdr/mobius] / hotline / user.go
index 00fe98c8d1dc33355d7bb4562eb1053ae1cd5748..34fe1ab0fd3d450f8ad5b3e5b61dbcd977534716 100644 (file)
@@ -2,16 +2,21 @@ package hotline
 
 import (
        "encoding/binary"
-       "golang.org/x/crypto/bcrypt"
-       "log"
 )
 
-// User flags are stored as a 2 byte bitmap with the following values:
+// User flags are stored as a 2 byte bitmap and represent various user states
 const (
-       userFlagAway        = 0 // User is away
-       userFlagAdmin       = 1 // User is admin
-       userFlagRefusePM    = 2 // User refuses private messages
-       userFLagRefusePChat = 3 // User refuses private chat
+       UserFlagAway        = 0 // User is away
+       UserFlagAdmin       = 1 // User is admin
+       UserFlagRefusePM    = 2 // User refuses private messages
+       UserFlagRefusePChat = 3 // User refuses private chat
+)
+
+// FieldOptions flags are sent from v1.5+ clients as part of TranAgreed
+const (
+       refusePM     = 0 // User has "Refuse private messages" pref set
+       refuseChat   = 1 // User has "Refuse private chat" pref set
+       autoResponse = 2 // User has "Automatic response" pref set
 )
 
 type User struct {
@@ -70,18 +75,3 @@ func negateString(clearText []byte) []byte {
        }
        return obfuText
 }
-
-func hashAndSalt(pwd []byte) string {
-       // Use GenerateFromPassword to hash & salt pwd.
-       // MinCost is just an integer constant provided by the bcrypt
-       // package along with DefaultCost & MaxCost.
-       // The cost can be any value you want provided it isn't lower
-       // than the MinCost (4)
-       hash, err := bcrypt.GenerateFromPassword(pwd, bcrypt.MinCost)
-       if err != nil {
-               log.Println(err)
-       }
-       // GenerateFromPassword returns a byte slice so we need to
-       // convert the bytes to a string and return it
-       return string(hash)
-}