diff options
| author | Rose Hogenson <rosehogenson@posteo.net> | 2026-10-20 16:10:18 -0700 |
|---|---|---|
| committer | Rose Hogenson <rosehogenson@posteo.net> | 2026-10-20 16:33:08 -0700 |
| commit | 78ff3c607a6b7252c872ee6393c504d87c371489 (patch) | |
| tree | 16773e064500935d7ff59436db51c87083a678cb /tools/auth | |
| parent | Add a link to temporarily log in another device (diff) | |
| download | roseh.moe-78ff3c607a6b7252c872ee6393c504d87c371489.tar.zst | |
Remove a lot of files that aren't necessary
Diffstat (limited to 'tools/auth')
| -rw-r--r-- | tools/auth/auth.go | 68 |
1 files changed, 0 insertions, 68 deletions
diff --git a/tools/auth/auth.go b/tools/auth/auth.go deleted file mode 100644 index 6268ba8..0000000 --- a/tools/auth/auth.go +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2026 Rose Hogenson <r@roseh.moe> -// -// This file is part of roseh.moe. -// -// roseh.moe is free software: you can redistribute it and/or modify it -// under the terms of the GNU Affero General Public License as published -// by the Free Software Foundation, either version 3 of the License, -// or (at your option) any later version. -// -// roseh.moe is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty -// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public -// License along with roseh.moe. If not, -// see <https://www.gnu.org/licenses/>. - -package main - -import ( - "encoding/base32" - "encoding/base64" - "encoding/xml" - "flag" - "fmt" - "os" - - "github.com/skip2/go-qrcode" -) - -func run() error { - args := flag.Args() - if len(args) != 1 { - return fmt.Errorf("usage: auth <config file>") - } - fileBytes, err := os.ReadFile(args[0]) - if err != nil { - return err - } - var config struct { - AuthKey string `xml:",attr"` - } - if err := xml.Unmarshal(fileBytes, &config); err != nil { - return err - } - if config.AuthKey == "" { - return fmt.Errorf("%s: missing AuthKey", args[0]) - } - authKey, err := base64.StdEncoding.DecodeString(config.AuthKey) - if err != nil { - return err - } - qrCode, err := qrcode.New(fmt.Sprintf("otpauth://totp/roseh.moe:rose?secret=%s&issuer=roseh.moe", base32.StdEncoding.WithPadding(base32.NoPadding).EncodeToString(authKey)), qrcode.Medium) - if err != nil { - return err - } - fmt.Print(qrCode.ToSmallString(false)) - return nil -} - -func main() { - flag.Parse() - if err := run(); err != nil { - fmt.Fprintln(os.Stderr, err) - os.Exit(1) - } -} |
