aboutsummaryrefslogtreecommitdiff
path: root/weed/server/webdav_server.go
diff options
context:
space:
mode:
authorchrislu <chris.lu@gmail.com>2022-12-19 11:32:00 -0800
committerchrislu <chris.lu@gmail.com>2022-12-19 11:32:00 -0800
commitf9fb3cd1fc81a3dddbb63bdec834b29fea53d7b5 (patch)
tree7c5b256cc5b492e10b4a990c04eb0b932087f152 /weed/server/webdav_server.go
parent6c7fe40305fdebe0902e44ae2a841ca4382b6a9b (diff)
parenta1ffa03d75c7e87950f9369ad16c21da81d56bc8 (diff)
downloadseaweedfs-f9fb3cd1fc81a3dddbb63bdec834b29fea53d7b5.tar.xz
seaweedfs-f9fb3cd1fc81a3dddbb63bdec834b29fea53d7b5.zip
Merge branch 'master' of https://github.com/seaweedfs/seaweedfs
Diffstat (limited to 'weed/server/webdav_server.go')
-rw-r--r--weed/server/webdav_server.go12
1 files changed, 10 insertions, 2 deletions
diff --git a/weed/server/webdav_server.go b/weed/server/webdav_server.go
index 58c47671f..80b882181 100644
--- a/weed/server/webdav_server.go
+++ b/weed/server/webdav_server.go
@@ -26,6 +26,7 @@ import (
type WebDavOption struct {
Filer pb.ServerAddress
+ FilerRootPath string
DomainName string
BucketsPath string
GrpcDialOption grpc.DialOption
@@ -58,6 +59,11 @@ func NewWebDavServer(option *WebDavOption) (ws *WebDavServer, err error) {
fs, _ := NewWebDavFileSystem(option)
+ // Fix no set filer.path , accessing "/" returns "//"
+ if option.FilerRootPath == "/" {
+ option.FilerRootPath = ""
+ }
+
ws = &WebDavServer{
option: option,
grpcDialOption: security.LoadClientTLS(util.GetViper(), "grpc.filer"),
@@ -195,7 +201,8 @@ func (fs *WebDavFileSystem) Mkdir(ctx context.Context, fullDirPath string, perm
}
func (fs *WebDavFileSystem) OpenFile(ctx context.Context, fullFilePath string, flag int, perm os.FileMode) (webdav.File, error) {
-
+ // Add filer.path
+ fullFilePath = fs.option.FilerRootPath + fullFilePath
glog.V(2).Infof("WebDavFileSystem.OpenFile %v %x", fullFilePath, flag)
var err error
@@ -367,7 +374,8 @@ func (fs *WebDavFileSystem) stat(ctx context.Context, fullFilePath string) (os.F
}
func (fs *WebDavFileSystem) Stat(ctx context.Context, name string) (os.FileInfo, error) {
-
+ // Add filer.path
+ name = fs.option.FilerRootPath + name
glog.V(2).Infof("WebDavFileSystem.Stat %v", name)
return fs.stat(ctx, name)