webdav: add support for parsing more time formats

Signed-off-by: Nicola Murino <nicola.murino@gmail.com>
This commit is contained in:
Nicola Murino
2023-05-16 18:51:42 +02:00
parent 824a70b22d
commit 19da923369
3 changed files with 28 additions and 1 deletions

View File

@@ -18,8 +18,10 @@ package webdavd
import (
"fmt"
"net"
"net/http"
"os"
"path/filepath"
"time"
"github.com/go-chi/chi/v5/middleware"
@@ -43,6 +45,12 @@ const (
var (
certMgr *common.CertManager
serviceStatus ServiceStatus
timeFormats = []string{
http.TimeFormat,
"Mon, _2 Jan 2006 15:04:05 GMT",
time.RFC850,
time.ANSIC,
}
)
// ServiceStatus defines the service status
@@ -352,3 +360,13 @@ func getConfigPath(name, configDir string) string {
}
return name
}
func parseTime(text string) (t time.Time, err error) {
for _, layout := range timeFormats {
t, err = time.Parse(layout, text)
if err == nil {
return
}
}
return
}