func jailGetHandler(res http.ResponseWriter, req *http.Request, fail2goConn *fail2go.Conn) { currentlyFailed, totalFailed, fileList, currentlyBanned, totalBanned, IPList, err := fail2goConn.JailStatus(mux.Vars(req)["jail"]) if err != nil { writeHTTPError(res, err) return } failRegexes, _ := fail2goConn.JailFailRegex(mux.Vars(req)["jail"]) findTime, _ := fail2goConn.JailFindTime(mux.Vars(req)["jail"]) useDNS, _ := fail2goConn.JailUseDNS(mux.Vars(req)["jail"]) maxRetry, _ := fail2goConn.JailMaxRetry(mux.Vars(req)["jail"]) if IPList == nil { IPList = []string{} } if failRegexes == nil { failRegexes = []string{} } encodedOutput, _ := json.Marshal(map[string]interface{}{ "currentlyFailed": currentlyFailed, "totalFailed": totalFailed, "fileList": fileList, "currentlyBanned": currentlyBanned, "totalBanned": totalBanned, "IPList": IPList, "failRegexes": failRegexes, "findTime": findTime, "useDNS": useDNS, "maxRetry": maxRetry}) res.Write(encodedOutput) }