From 1e1e185535ed33ba5aac78d7a3ff03ea77f357ad Mon Sep 17 00:00:00 2001 From: yan Date: Tue, 9 Aug 2016 14:46:21 -0700 Subject: [PATCH] Allow 3p cookies in PDFJS viewer Otherwise some sites like Dropbox return 403 when trying to fetch the PDF. Fix #3056. Auditors: @bbondy --- app/filtering.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/filtering.js b/app/filtering.js index ee997be2b71..89c1879391a 100644 --- a/app/filtering.js +++ b/app/filtering.js @@ -37,6 +37,7 @@ const headersReceivedFilteringFns = [] let initializedPartitions = {} const transparent1pxGif = 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7' +const pdfjsOrigin = `chrome-extension://${config.PDFJSExtensionId}` // Third party domains that require a valid referer to work const refererExceptions = ['use.typekit.net', 'cloud.typography.com'] @@ -193,7 +194,8 @@ function registerForBeforeSendHeaders (session) { if (module.exports.isThirdPartyHost(urlParse(details.firstPartyUrl || '').hostname, parsedUrl.hostname)) { // Clear cookie and referer on third-party requests - if (requestHeaders['Cookie']) { + if (requestHeaders['Cookie'] && + getOrigin(details.firstPartyUrl) !== pdfjsOrigin) { requestHeaders['Cookie'] = undefined } if (requestHeaders['Referer'] &&