diff --git a/Makefile b/Makefile index 37b7960..f48a26a 100644 --- a/Makefile +++ b/Makefile @@ -15,7 +15,6 @@ run: cd src && \ sudo \ env IFACE=$(IFACE) DBPATH=$(DBPATH) \ - SHOUTRRR_URL=$(SHOUTRRR_URL) \ go run . go-build: diff --git a/src/db-connect.go b/src/db-connect.go index 5734a13..0807046 100644 --- a/src/db-connect.go +++ b/src/db-connect.go @@ -13,7 +13,7 @@ func db_exec(sqlStatement string) { _, err := db.Exec(sqlStatement) if err != nil { - log.Fatal(err) + log.Fatal("ERROR: db_exec: ", err) } } @@ -25,7 +25,7 @@ func db_select() (dbHosts []Host) { res, err := db.Query(sqlStatement) if err != nil { - log.Fatal(err) + log.Fatal("ERROR: db_select: ", err) } dbHosts = []Host{} @@ -35,7 +35,7 @@ func db_select() (dbHosts []Host) { if err != nil { log.Fatal(err) } - + oneHost.Name = unquote_str(oneHost.Name) dbHosts = append(dbHosts, oneHost) } diff --git a/src/db-edit.go b/src/db-edit.go index 6708fdc..20b41fa 100644 --- a/src/db-edit.go +++ b/src/db-edit.go @@ -28,7 +28,7 @@ func db_create() { func db_insert(oneHost Host) { sqlStatement := `INSERT INTO "now" (NAME, IP, MAC, HW, DATE, KNOWN, NOW) VALUES ('%s','%s','%s','%s','%s','%d','%d');` - sqlStatement = fmt.Sprintf(sqlStatement, oneHost.Name, oneHost.Ip, oneHost.Mac, oneHost.Hw, oneHost.Date, oneHost.Known, oneHost.Now) + sqlStatement = fmt.Sprintf(sqlStatement, quote_str(oneHost.Name), oneHost.Ip, oneHost.Mac, oneHost.Hw, oneHost.Date, oneHost.Known, oneHost.Now) //fmt.Println("Insert statement:", sqlStatement) db_exec(sqlStatement) } @@ -38,13 +38,12 @@ func db_update(oneHost Host) { NAME = '%s', IP = '%s', MAC = '%s', HW = '%s', DATE = '%s', KNOWN = '%d', NOW = '%d' WHERE ID = '%d';` - sqlStatement = fmt.Sprintf(sqlStatement, oneHost.Name, oneHost.Ip, oneHost.Mac, oneHost.Hw, oneHost.Date, oneHost.Known, oneHost.Now, oneHost.Id) - // fmt.Println("Update statement:", sqlStatement) + sqlStatement = fmt.Sprintf(sqlStatement, quote_str(oneHost.Name), oneHost.Ip, oneHost.Mac, oneHost.Hw, oneHost.Date, oneHost.Known, oneHost.Now, oneHost.Id) + //fmt.Println("Update statement:", sqlStatement) db_exec(sqlStatement) } func db_setnow() { sqlStatement := `UPDATE "now" set NOW = '0';` - // fmt.Println("Set now 0 statement:", sqlStatement) db_exec(sqlStatement) } \ No newline at end of file diff --git a/src/quote_str.go b/src/quote_str.go new file mode 100644 index 0000000..724ffa6 --- /dev/null +++ b/src/quote_str.go @@ -0,0 +1,11 @@ +package main + +import "strings" + +func quote_str(str string) string { + return strings.ReplaceAll(str, "'", "''") +} + +func unquote_str(str string) string { + return strings.ReplaceAll(str, "''", "'") +} \ No newline at end of file diff --git a/src/templates/header.html b/src/templates/header.html index b064b45..4c42cbb 100644 --- a/src/templates/header.html +++ b/src/templates/header.html @@ -4,7 +4,7 @@ Watch Your LAN - + diff --git a/src/templates/index.html b/src/templates/index.html index ce0b442..e94d82e 100644 --- a/src/templates/index.html +++ b/src/templates/index.html @@ -5,7 +5,7 @@

Online

-

Scanning interface: {{ .Config.Iface }}

+

Scanning interfaces: {{ .Config.Iface }}

Name