aboutsummaryrefslogtreecommitdiff
path: root/weed/server/webdav_server.go
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2020-03-06 00:49:47 -0800
committerChris Lu <chris.lu@gmail.com>2020-03-06 00:49:47 -0800
commit13e215ee5cb5f4c2873f89c263d8c970e9978b19 (patch)
tree731a943d505c809ef73f9652df2ed868fa09b118 /weed/server/webdav_server.go
parent31c481e3fce94a1a3872434a9907a574cb2679e1 (diff)
downloadseaweedfs-13e215ee5cb5f4c2873f89c263d8c970e9978b19.tar.xz
seaweedfs-13e215ee5cb5f4c2873f89c263d8c970e9978b19.zip
filer: option to encrypt data on volume server
Diffstat (limited to 'weed/server/webdav_server.go')
-rw-r--r--weed/server/webdav_server.go14
1 files changed, 8 insertions, 6 deletions
diff --git a/weed/server/webdav_server.go b/weed/server/webdav_server.go
index a07f6be01..9451fdf99 100644
--- a/weed/server/webdav_server.go
+++ b/weed/server/webdav_server.go
@@ -32,6 +32,7 @@ type WebDavOption struct {
Collection string
Uid uint32
Gid uint32
+ Cipher bool
}
type WebDavServer struct {
@@ -418,7 +419,7 @@ func (f *WebDavFile) Write(buf []byte) (int, error) {
fileUrl := fmt.Sprintf("http://%s/%s", host, fileId)
bufReader := bytes.NewReader(buf)
- uploadResult, err := operation.Upload(fileUrl, f.name, bufReader, false, "", nil, auth)
+ uploadResult, err := operation.Upload(fileUrl, f.name, f.fs.option.Cipher, bufReader, false, "", nil, auth)
if err != nil {
glog.V(0).Infof("upload data %v to %s: %v", f.name, fileUrl, err)
return 0, fmt.Errorf("upload data: %v", err)
@@ -429,11 +430,12 @@ func (f *WebDavFile) Write(buf []byte) (int, error) {
}
chunk := &filer_pb.FileChunk{
- FileId: fileId,
- Offset: f.off,
- Size: uint64(len(buf)),
- Mtime: time.Now().UnixNano(),
- ETag: uploadResult.ETag,
+ FileId: fileId,
+ Offset: f.off,
+ Size: uint64(len(buf)),
+ Mtime: time.Now().UnixNano(),
+ ETag: uploadResult.ETag,
+ CipherKey: uploadResult.CipherKey,
}
f.entry.Chunks = append(f.entry.Chunks, chunk)