Remove ALLOWED_USERS.txt watcher
This commit is contained in:
5
go.mod
5
go.mod
@ -1,8 +1,3 @@
|
|||||||
module lts
|
module lts
|
||||||
|
|
||||||
go 1.24.3
|
go 1.24.3
|
||||||
|
|
||||||
require (
|
|
||||||
github.com/fsnotify/fsnotify v1.9.0 // indirect
|
|
||||||
golang.org/x/sys v0.13.0 // indirect
|
|
||||||
)
|
|
||||||
|
4
go.sum
4
go.sum
@ -1,4 +0,0 @@
|
|||||||
github.com/fsnotify/fsnotify v1.9.0 h1:2Ml+OJNzbYCTzsxtv8vKSFD9PbJjmhYF14k/jKC7S9k=
|
|
||||||
github.com/fsnotify/fsnotify v1.9.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0=
|
|
||||||
golang.org/x/sys v0.13.0 h1:Af8nKPmuFypiUBjVoU9V20FiaFXOcuZI21p0ycVYYGE=
|
|
||||||
golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
|
||||||
|
48
lts.go
48
lts.go
@ -18,8 +18,6 @@ import (
|
|||||||
"sync"
|
"sync"
|
||||||
"syscall"
|
"syscall"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/fsnotify/fsnotify"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
var LISTEN_ADDR string
|
var LISTEN_ADDR string
|
||||||
@ -258,7 +256,7 @@ func handleBrowse(w http.ResponseWriter, r *http.Request) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func reloadAllowedUsers() {
|
func loadAllowedUsers() {
|
||||||
log.Println("loading ALLOWED_USERS.txt")
|
log.Println("loading ALLOWED_USERS.txt")
|
||||||
allowedUsersTxt, err := ioutil.ReadFile("./ALLOWED_USERS.txt")
|
allowedUsersTxt, err := ioutil.ReadFile("./ALLOWED_USERS.txt")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -275,48 +273,8 @@ func reloadAllowedUsers() {
|
|||||||
allowedUsersMutex.Unlock()
|
allowedUsersMutex.Unlock()
|
||||||
}
|
}
|
||||||
|
|
||||||
func watchAllowedUsers() chan bool {
|
|
||||||
watcher, err := fsnotify.NewWatcher()
|
|
||||||
if err != nil {
|
|
||||||
log.Fatal("Error creating new watcher: ", err)
|
|
||||||
}
|
|
||||||
defer watcher.Close()
|
|
||||||
|
|
||||||
done := make(chan bool)
|
|
||||||
|
|
||||||
go func() {
|
|
||||||
for {
|
|
||||||
select {
|
|
||||||
case event, ok := <-watcher.Events:
|
|
||||||
if !ok {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
fmt.Println(event)
|
|
||||||
if event.Has(fsnotify.Chmod | fsnotify.Rename) {
|
|
||||||
reloadAllowedUsers()
|
|
||||||
}
|
|
||||||
case err, ok := <-watcher.Errors:
|
|
||||||
if !ok {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
log.Println("Watcher error: ", err)
|
|
||||||
case <-done:
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}()
|
|
||||||
|
|
||||||
err = watcher.Add("./ALLOWED_USERS.txt")
|
|
||||||
if err != nil {
|
|
||||||
log.Fatal("Error adding ALLOWED_USERS.txt to watcher: ", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
return done
|
|
||||||
}
|
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
reloadAllowedUsers()
|
loadAllowedUsers()
|
||||||
doneWatching := watchAllowedUsers()
|
|
||||||
|
|
||||||
http.HandleFunc("/", handleHome)
|
http.HandleFunc("/", handleHome)
|
||||||
http.HandleFunc("/browse", handleBrowse)
|
http.HandleFunc("/browse", handleBrowse)
|
||||||
@ -336,6 +294,4 @@ func main() {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal("Error in serving: ", err)
|
log.Fatal("Error in serving: ", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
doneWatching<-true
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user