2022-12-22 04:45:15 +00:00
|
|
|
package cmd
|
|
|
|
|
|
|
|
import (
|
2023-07-10 06:38:08 +00:00
|
|
|
"fmt"
|
|
|
|
"hacklab.nilfm.cc/felt/register"
|
2023-01-31 04:38:30 +00:00
|
|
|
"hacklab.nilfm.cc/quartzgun/auth"
|
2023-07-10 06:38:08 +00:00
|
|
|
"strconv"
|
|
|
|
"time"
|
2022-12-22 04:45:15 +00:00
|
|
|
)
|
|
|
|
|
2023-07-10 06:38:08 +00:00
|
|
|
func ProcessCmd(args []string, userStore auth.UserStore, crypto register.SymmetricCrypto) bool {
|
2022-12-22 04:45:15 +00:00
|
|
|
if len(args) == 1 {
|
|
|
|
return false
|
|
|
|
}
|
|
|
|
switch args[1] {
|
2023-07-10 06:38:08 +00:00
|
|
|
case "register":
|
|
|
|
now := time.Now().UnixMicro()
|
|
|
|
strNow := strconv.FormatInt(now, 10)
|
|
|
|
self, err := crypto.Encrypt(strNow)
|
|
|
|
if err == nil {
|
|
|
|
fmt.Print("This is the registration key: ")
|
|
|
|
fmt.Println(self)
|
|
|
|
} else {
|
|
|
|
fmt.Printf("%v\n", err)
|
|
|
|
}
|
2022-12-22 04:45:15 +00:00
|
|
|
case "adduser":
|
|
|
|
if len(args) < 4 {
|
|
|
|
return help()
|
|
|
|
}
|
|
|
|
userStore.AddUser(args[2], args[3])
|
|
|
|
case "rmuser":
|
|
|
|
if len(args) < 3 {
|
|
|
|
return help()
|
|
|
|
}
|
|
|
|
userStore.DeleteUser(args[2])
|
|
|
|
case "passwd":
|
|
|
|
if len(args) < 5 {
|
|
|
|
return help()
|
|
|
|
}
|
|
|
|
userStore.ChangePassword(args[2], args[3], args[4])
|
|
|
|
default:
|
|
|
|
help()
|
|
|
|
}
|
|
|
|
return true
|
|
|
|
}
|
|
|
|
|
|
|
|
func help() bool {
|
|
|
|
return true
|
|
|
|
}
|