split checker from token-validator

This commit is contained in:
nemunaire 2020-03-27 14:57:14 +01:00
commit 0c661f36f6
20 changed files with 634 additions and 748 deletions

View file

@ -12,11 +12,11 @@ import (
"path"
"strings"
"syscall"
"time"
"git.nemunai.re/lectures/adlin/libadlin"
)
var baseURL string = "/"
var sharedSecret string
type ResponseWriterPrefix struct {
real http.ResponseWriter
@ -60,9 +60,9 @@ func StripPrefix(prefix string, h http.Handler) http.Handler {
func main() {
var bind = flag.String("bind", ":8081", "Bind port/socket")
var dsn = flag.String("dsn", DSNGenerator(), "DSN to connect to the MySQL server")
var dsn = flag.String("dsn", adlin.DSNGenerator(), "DSN to connect to the MySQL server")
flag.StringVar(&baseURL, "baseurl", baseURL, "URL prepended to each URL")
flag.StringVar(&sharedSecret, "sharedsecret", "adelina", "secret used to communicate with remote validator")
flag.StringVar(&adlin.SharedSecret, "sharedsecret", "adelina", "secret used to communicate with remote validator")
flag.StringVar(&AuthorizedKeysLocation, "authorizedkeyslocation", AuthorizedKeysLocation, "File for allowing user to SSH to the machine")
flag.StringVar(&SshPiperLocation, "sshPiperLocation", SshPiperLocation, "Directory containing directories for sshpiperd")
var dummyauth = flag.Bool("dummyauth", false, "don't perform password check")
@ -88,13 +88,13 @@ func main() {
// Initialize contents
log.Println("Opening database...")
if err := DBInit(*dsn); err != nil {
if err := adlin.DBInit(*dsn); err != nil {
log.Fatal("Cannot open the database: ", err)
}
defer DBClose()
defer adlin.DBClose()
log.Println("Creating database...")
if err := DBCreate(); err != nil {
if err := adlin.DBCreate(); err != nil {
log.Fatal("Cannot create database: ", err)
}
@ -107,14 +107,6 @@ func main() {
Handler: StripPrefix(baseURL, Router()),
}
// Launch checker
go func() {
for {
studentsChecker()
time.Sleep(500 * time.Millisecond)
}
}()
// Serve content
go func() {
log.Fatal(srv.ListenAndServe())