add read-only db work mode

This commit is contained in:
nikk gitanes
2020-11-03 01:24:32 +03:00
parent 06d9a364d1
commit 045a0914ac
4 changed files with 18 additions and 4 deletions

View File

@@ -22,9 +22,10 @@ func openDB() error {
}
var err error
db, err = bolt.Open(filepath.Join(Path, "torrserver.db"), 0666, nil)
var ro = Get().ReadOnlyMode
db, err = bolt.Open(filepath.Join(Path, "torrserver.db"), 0666, &bolt.Options{ReadOnly: ro})
if err != nil {
fmt.Print(err)
fmt.Println(err)
return err
}

View File

@@ -37,6 +37,7 @@ type Settings struct {
DisableUPNP bool
DisableDHT bool
DisableUpload bool
ReadOnlyMode bool
Encryption int // 0 - Enable, 1 - disable, 2 - force
DownloadRateLimit int // in kb, 0 - inf
UploadRateLimit int // in kb, 0 - inf
@@ -113,3 +114,10 @@ func SaveSettings() error {
return setsDB.Put([]byte("json"), []byte(buf))
})
}
func SetRDB() {
SaveSettings()
fmt.Println("Enable Read-only DB mode")
CloseDB()
sets.ReadOnlyMode = true
}