diff --git a/files/мы-делаем-небольшой-троллинг.gif b/files/мы-делаем-небольшой-троллинг.gif new file mode 100644 index 0000000..c6aad74 Binary files /dev/null and b/files/мы-делаем-небольшой-троллинг.gif differ diff --git a/main.go b/main.go index 035d57b..23bfa5c 100644 --- a/main.go +++ b/main.go @@ -1,9 +1,11 @@ package main import ( + "encoding/base64" "fmt" "log" "net/http" + "os" "sync" "time" @@ -104,10 +106,55 @@ func wsHandler(w http.ResponseWriter, r *http.Request) { } else if buffer == "uefi" { conn.WriteJSON(map[string]string{"action": "redirect", "url": "https://www.techtarget.com/searchsecurity/news/366618102/ESET-details-UEFI-Secure-Boot-bypass-vulnerability"}) buffer = "" + } else if buffer == "trolling" { + conn.WriteJSON(map[string]string{"action": "redirect", "url": "/trolling"}) + buffer = "" } } } +func trollingHandler(w http.ResponseWriter, r *http.Request) { + w.Header().Set("Content-Type", "text/html; charset=utf-8") + w.Header().Set("Server", "0BSD_FOR_EVERYONE") + + fileContent, err := os.ReadFile("files/мы-делаем-небольшой-троллинг.gif") + if err != nil { + log.Printf("Ошибка чтения файла: %v", err) + fileContent = []byte("Файл не найден") + } + + base64Content := base64.StdEncoding.EncodeToString(fileContent) + + html := fmt.Sprintf(` + + + + Trolling + + + + мы делаем небольшой троллинг + +`, base64Content) + + fmt.Fprint(w, html) +} + func statusHandler(w http.ResponseWriter, r *http.Request) { w.Header().Set("Content-Type", "text/plain; charset=utf-8") w.Header().Set("Server", "0BSD_FOR_EVERYONE") @@ -213,6 +260,7 @@ func main() { mux.HandleFunc("/", handler) mux.HandleFunc("/ws", wsHandler) mux.HandleFunc("/status", statusHandler) + mux.HandleFunc("/trolling", trollingHandler) server := &http.Server{ Addr: ":" + p,