Compare commits

...

3 Commits

Author SHA1 Message Date
Henrique Dias
e706391934 chore: version v2.0.0
Former-commit-id: 1a6e6ec0cda359306ef81deb4393e6e588005674 [formerly 45bb5b1b929da50fec506f27a50e6ba492374b60] [formerly 41a597953b6d48ff01ed5a28817e9c9436db300b [formerly 145b391315]]
Former-commit-id: db2d7837facbec0ab84275550934d70956d28add [formerly 0d47b66dfb9c802f0ee885b43a034f6cea044878]
Former-commit-id: b5ddd38e9879458640ec3e9449c72e0fad4e4df1
2019-01-14 09:03:39 +00:00
Henrique Dias
58ff28f84d feat: export generate key
License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>

Former-commit-id: 3088476c44d4608e2b8c90d3c274b6db17ef30c0 [formerly e40d3ba193e0b54bccce8c13459032f51af84c7b] [formerly 33cabf26abee5ef4f1dd63e423fe1b0fa7ae4f7c [formerly a3daac84a2]]
Former-commit-id: fe022f36fc4d7d8442df8c0fa4a86e2ff3ec328e [formerly 1d949d0ae88b3b5a9b8e4da5c3b6ca814a319589]
Former-commit-id: 36207ddeb7eba335f5fe73ea9dcdf6bffc6265bf
2019-01-11 20:25:39 +00:00
Henrique Dias
74a1ecbb89 chore: setting untracked version [ci skip]
Former-commit-id: f8b61a3532b72c804933bf4ba63a111b3c8a2955 [formerly d076a6110407d517bde07846bf31f6cae710e0c0] [formerly 435d24276a43b69dec81ff9666d78f208116a577 [formerly 6dbf801370]]
Former-commit-id: 7ebd072dccb015521deb296f0151c06f17b5dcf8 [formerly 9f8c86143171142fb3c108ba32c7eab63a5632db]
Former-commit-id: d28fa2428da947bae7029257d04497d581c18d99
2019-01-09 21:52:14 +00:00
6 changed files with 21 additions and 10 deletions

View File

@@ -40,7 +40,7 @@ The path must be for a json or yaml file.`,
checkErr(err)
key = settings.Key
} else {
key = generateRandomBytes(64)
key = generateKey()
}
file := settingsFile{}

View File

@@ -29,7 +29,7 @@ override the options.`,
authMethod, auther := getAuthentication(flags)
s := &settings.Settings{
Key: generateRandomBytes(64), // 256 bit
Key: generateKey(),
Signup: mustGetBool(flags, "signup"),
Shell: strings.Split(strings.TrimSpace(mustGetString(flags, "shell")), " "),
AuthMethod: authMethod,

View File

@@ -215,7 +215,7 @@ func setupLog(logMethod string) {
func quickSetup(flags *pflag.FlagSet, d pythonData) {
set := &settings.Settings{
Key: generateRandomBytes(64), // 256 bit
Key: generateKey(),
Signup: false,
Defaults: settings.UserDefaults{
Scope: ".",

View File

@@ -1,7 +1,6 @@
package cmd
import (
"crypto/rand"
"encoding/json"
"errors"
"fmt"
@@ -10,6 +9,7 @@ import (
"path/filepath"
"github.com/asdine/storm"
"github.com/filebrowser/filebrowser/v2/settings"
"github.com/filebrowser/filebrowser/v2/storage"
"github.com/filebrowser/filebrowser/v2/storage/bolt"
"github.com/spf13/cobra"
@@ -41,12 +41,10 @@ func mustGetUint(flags *pflag.FlagSet, flag string) uint {
return b
}
func generateRandomBytes(n int) []byte {
b := make([]byte, n)
_, err := rand.Read(b)
func generateKey() []byte {
k, err := settings.GenerateKey()
checkErr(err)
// Note that err == nil only if we read len(b) bytes.
return b
return k
}
type cobraFunc func(cmd *cobra.Command, args []string)

View File

@@ -1,6 +1,7 @@
package settings
import (
"crypto/rand"
"strings"
"github.com/filebrowser/filebrowser/v2/rules"
@@ -41,3 +42,15 @@ type Server struct {
func (s *Server) Clean() {
s.BaseURL = strings.TrimSuffix(s.BaseURL, "/")
}
// GenerateKey generates a key of 256 bits.
func GenerateKey() ([]byte, error) {
b := make([]byte, 64)
_, err := rand.Read(b)
// Note that err == nil only if we read len(b) bytes.
if err != nil {
return nil, err
}
return b, nil
}

View File

@@ -2,5 +2,5 @@ package version
const (
// Version is the current File Browser version.
Version = "v2.0.0-rc.2"
Version = "v2.0.0"
)