Merge pull request #41 from sharelatex/bg-error-on-null-bytes

null byte check for JSON.stringify in archiving
This commit is contained in:
Brian Gough 2017-06-06 09:21:33 +01:00 committed by GitHub
commit ff2363c876

View file

@ -46,6 +46,10 @@ module.exports = MongoAWS =
return callback new Error("cannot find pack to send to s3") if not result?
return callback new Error("refusing to send pack with TTL to s3") if result.expiresAt?
uncompressedData = JSON.stringify(result)
if uncompressedData.indexOf("\u0000") != -1
error = new Error("null bytes found in upload")
logger.error err: error, project_id: project_id, doc_id: doc_id, pack_id: pack_id, error.message
return callback(error)
zlib.gzip uncompressedData, (err, buf) ->
logger.log {project_id, doc_id, pack_id, origSize: uncompressedData.length, newSize: buf.length}, "compressed pack"
return callback(err) if err?