summaryrefslogtreecommitdiff
path: root/packages/backend/src
diff options
context:
space:
mode:
authortamaina <tamaina@hotmail.co.jp>2022-01-03 07:35:02 +0900
committerGitHub <noreply@github.com>2022-01-03 07:35:02 +0900
commit333ba491f10446066c076338f7cd495ac715f436 (patch)
tree8ac9adb62af27ae0cef8e9c46e5e3b81523fb917 /packages/backend/src
parenttweak ui (diff)
downloadmisskey-333ba491f10446066c076338f7cd495ac715f436.tar.gz
misskey-333ba491f10446066c076338f7cd495ac715f436.tar.bz2
misskey-333ba491f10446066c076338f7cd495ac715f436.zip
enhance: 許可されていないファイルタイプでは、オブジェクトストレージのファイル名に拡張子を付与しないように (#8108)
* 許可されていないファイルタイプでは、オブジェクトストレージのファイル名に拡張子を付与しないように * add comment
Diffstat (limited to 'packages/backend/src')
-rw-r--r--packages/backend/src/services/drive/add-file.ts6
1 files changed, 6 insertions, 0 deletions
diff --git a/packages/backend/src/services/drive/add-file.ts b/packages/backend/src/services/drive/add-file.ts
index 3d53fe8d34..38793412fa 100644
--- a/packages/backend/src/services/drive/add-file.ts
+++ b/packages/backend/src/services/drive/add-file.ts
@@ -50,6 +50,12 @@ async function save(file: DriveFile, path: string, name: string, type: string, h
if (type === 'image/vnd.mozilla.apng') ext = '.apng';
}
+ // 拡張子からContent-Typeを設定してそうな挙動を示すオブジェクトストレージ (upcloud?) も存在するので、
+ // 許可されているファイル形式でしか拡張子をつけない
+ if (!FILE_TYPE_BROWSERSAFE.includes(type)) {
+ ext = '';
+ }
+
const baseUrl = meta.objectStorageBaseUrl
|| `${ meta.objectStorageUseSSL ? 'https' : 'http' }://${ meta.objectStorageEndpoint }${ meta.objectStoragePort ? `:${meta.objectStoragePort}` : '' }/${ meta.objectStorageBucket }`;