Added random-token-length, Encode() refactored

This commit is contained in:
Andrea Spacca
2021-05-20 08:26:07 +02:00
parent b5ffdb5095
commit fdfd453222
6 changed files with 58 additions and 13 deletions

View File

@ -41,7 +41,6 @@ import (
"io"
"io/ioutil"
"log"
"math/rand"
"mime"
"net/http"
"net/url"
@ -257,7 +256,7 @@ func (s *Server) postHandler(w http.ResponseWriter, r *http.Request) {
return
}
token := Encode(10000000 + int64(rand.Intn(1000000000)))
token := Encode(INIT_SEED, s.randomTokenLength)
w.Header().Set("Content-Type", "text/plain")
@ -319,7 +318,7 @@ func (s *Server) postHandler(w http.ResponseWriter, r *http.Request) {
return
}
metadata := MetadataForRequest(contentType, r)
metadata := MetadataForRequest(contentType, s.randomTokenLength, r)
buffer := &bytes.Buffer{}
if err := json.NewEncoder(buffer).Encode(metadata); err != nil {
@ -383,13 +382,13 @@ type Metadata struct {
DeletionToken string
}
func MetadataForRequest(contentType string, r *http.Request) Metadata {
func MetadataForRequest(contentType string, randomTokenLength int64, r *http.Request) Metadata {
metadata := Metadata{
ContentType: strings.ToLower(contentType),
MaxDate: time.Time{},
Downloads: 0,
MaxDownloads: -1,
DeletionToken: Encode(10000000+int64(rand.Intn(1000000000))) + Encode(10000000+int64(rand.Intn(1000000000))),
DeletionToken: Encode(INIT_SEED, randomTokenLength) + Encode(INIT_SEED, randomTokenLength),
}
if v := r.Header.Get("Max-Downloads"); v == "" {
@ -481,9 +480,9 @@ func (s *Server) putHandler(w http.ResponseWriter, r *http.Request) {
contentType = mime.TypeByExtension(filepath.Ext(vars["filename"]))
}
token := Encode(10000000 + int64(rand.Intn(1000000000)))
token := Encode(INIT_SEED, s.randomTokenLength)
metadata := MetadataForRequest(contentType, r)
metadata := MetadataForRequest(contentType, s.randomTokenLength, r)
buffer := &bytes.Buffer{}
if err := json.NewEncoder(buffer).Encode(metadata); err != nil {