fix: list permanent whitelist entries sorted by creation time
Update ListPermEntries to return entry field instead of ip and sort results by created_at. Update the handler in auth.go to call ListPermEntries instead of ListTempEntries for the whitelist endpoint.
This commit is contained in:
2
auth.go
2
auth.go
@@ -76,7 +76,7 @@ func whitelistListHandler(cfg Config, db *sql.DB) http.HandlerFunc {
|
|||||||
http.Error(w, "unauthorized", http.StatusUnauthorized)
|
http.Error(w, "unauthorized", http.StatusUnauthorized)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
entries, err := ListTempEntries(db)
|
entries, err := ListPermEntries(db)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
http.Error(w, "database error", http.StatusInternalServerError)
|
http.Error(w, "database error", http.StatusInternalServerError)
|
||||||
return
|
return
|
||||||
|
|||||||
9
db.go
9
db.go
@@ -190,20 +190,19 @@ func ListTempEntries(db *sql.DB) ([]map[string]interface{}, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func ListPermEntries(db *sql.DB) ([]map[string]interface{}, error) {
|
func ListPermEntries(db *sql.DB) ([]map[string]interface{}, error) {
|
||||||
rows, err := db.Query(`SELECT ip FROM perm_whitelist ORDER BY ip`)
|
rows, err := db.Query(`SELECT entry, created_at FROM perm_whitelist ORDER BY created_at `)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
defer rows.Close()
|
defer rows.Close()
|
||||||
var list []map[string]interface{}
|
var list []map[string]interface{}
|
||||||
for rows.Next() {
|
for rows.Next() {
|
||||||
var ip, reason string
|
var entry string
|
||||||
var expiresAt time.Time
|
if err := rows.Scan(&entry); err != nil {
|
||||||
if err := rows.Scan(&ip, &expiresAt, &reason); err != nil {
|
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
list = append(list, map[string]interface{}{
|
list = append(list, map[string]interface{}{
|
||||||
"ip": ip,
|
"entry": entry,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
return list, nil
|
return list, nil
|
||||||
|
|||||||
Reference in New Issue
Block a user