Mercurial > prosody-modules
comparison mod_http_upload/mod_http_upload.lua @ 4610:342664061c9b
mod_http_upload: Fix issuing slots to components or other non-c2s sessions
The 'full_jid' property only exists on local c2s sessions. This was not
adjusted for in 0a56dc6c61af, so it did not work.
Thanks Fren__ for highlighting the issue.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Thu, 01 Jul 2021 16:17:35 +0200 |
parents | 0a56dc6c61af |
children | 2b6e8ce5fb30 |
comparison
equal
deleted
inserted
replaced
4609:fcfe691d6322 | 4610:342664061c9b |
---|---|
193 module:log("debug", "File too large (%d > %d)", filesize, file_size_limit); | 193 module:log("debug", "File too large (%d > %d)", filesize, file_size_limit); |
194 return nil, st.error_reply(stanza, "modify", "not-acceptable", "File too large") | 194 return nil, st.error_reply(stanza, "modify", "not-acceptable", "File too large") |
195 :tag("file-too-large", {xmlns=xmlns}) | 195 :tag("file-too-large", {xmlns=xmlns}) |
196 :tag("max-file-size"):text(("%d"):format(file_size_limit)); | 196 :tag("max-file-size"):text(("%d"):format(file_size_limit)); |
197 elseif not check_quota(username, host, filesize) then | 197 elseif not check_quota(username, host, filesize) then |
198 module:log("debug", "Upload of %dB by %s would exceed quota", filesize, origin.full_jid); | 198 module:log("debug", "Upload of %dB by %s would exceed quota", filesize, user_bare); |
199 return nil, st.error_reply(stanza, "wait", "resource-constraint", "Quota reached"); | 199 return nil, st.error_reply(stanza, "wait", "resource-constraint", "Quota reached"); |
200 end | 200 end |
201 | 201 |
202 local random_dir = uuid(); | 202 local random_dir = uuid(); |
203 local created, err = lfs.mkdir(join_path(storage_path, random_dir)); | 203 local created, err = lfs.mkdir(join_path(storage_path, random_dir)); |
213 if not ok then | 213 if not ok then |
214 return nil, st.error_reply(stanza, "wait", "internal-server-error"); | 214 return nil, st.error_reply(stanza, "wait", "internal-server-error"); |
215 end | 215 end |
216 | 216 |
217 local slot = random_dir.."/"..filename; | 217 local slot = random_dir.."/"..filename; |
218 pending_slots[slot] = origin.full_jid; | 218 pending_slots[slot] = user_bare; |
219 | 219 |
220 module:add_timer(900, function() | 220 module:add_timer(900, function() |
221 pending_slots[slot] = nil; | 221 pending_slots[slot] = nil; |
222 end); | 222 end); |
223 | 223 |