Thumbnail

rani/matterbridge.git

Clone URL: https://git.buni.party/rani/matterbridge.git

commit 6e2f7ab7574c0cd4286313e12a1c01f216c3d766 Author: Wim <wim@42.be> Date: Sun May 06 20:32:09 2018 +0000 Use only alphanumeric for file uploads to mediaserver. Closes #416 diff --git a/gateway/gateway.go b/gateway/gateway.go index 42259d9..0dddf89 100644 --- a/gateway/gateway.go +++ b/gateway/gateway.go @@ -236 +237 @@ import (   "github.com/hashicorp/golang-lru"   "github.com/peterhellberg/emojilib"   "net/http" + "path/filepath"   "regexp"   "strings"   "time" @@ -4096 +4107 @@ func (gw *Gateway) modifyMessage(msg *config.Message) {  }    func (gw *Gateway) handleFiles(msg *config.Message) { + reg := regexp.MustCompile("[^a-zA-Z0-9]+")   // if we don't have a attachfield or we don't have a mediaserver configured return   if msg.Extra == nil || gw.Config.General.MediaServerUpload == "" {   return @@ -4216 +42310 @@ func (gw *Gateway) handleFiles(msg *config.Message) {   }   for i, f := range msg.Extra["file"] {   fi := f.(config.FileInfo) + ext := filepath.Ext(fi.Name) + fi.Name = fi.Name[0 : len(fi.Name)-len(ext)] + fi.Name = reg.ReplaceAllString(fi.Name, "_") + fi.Name = fi.Name + ext   sha1sum := fmt.Sprintf("%x", sha1.Sum(*fi.Data))   reader := bytes.NewReader(*fi.Data)   url := gw.Config.General.MediaServerUpload + "/" + sha1sum + "/" + fi.Name