Loading mobile/android/exoplayer2/src/main/java/org/mozilla/thirdparty/com/google/android/exoplayer2/upstream/DefaultHttpDataSource.java +2 −44 Original line number Diff line number Diff line Loading @@ -531,50 +531,8 @@ public class DefaultHttpDataSource extends BaseDataSource implements HttpDataSou boolean followRedirects, Map<String, String> requestParameters) throws IOException, URISyntaxException { /** * Tor Project modified the way the connection object was created. For the sake of * simplicity, instead of duplicating the whole file we changed the connection object * to use the ProxySelector. */ HttpURLConnection connection = (HttpURLConnection) openConnectionWithProxy(url.toURI()); connection.setConnectTimeout(connectTimeoutMillis); connection.setReadTimeout(readTimeoutMillis); Map<String, String> requestHeaders = new HashMap<>(); if (defaultRequestProperties != null) { requestHeaders.putAll(defaultRequestProperties.getSnapshot()); } requestHeaders.putAll(requestProperties.getSnapshot()); requestHeaders.putAll(requestParameters); for (Map.Entry<String, String> property : requestHeaders.entrySet()) { connection.setRequestProperty(property.getKey(), property.getValue()); } if (!(position == 0 && length == C.LENGTH_UNSET)) { String rangeRequest = "bytes=" + position + "-"; if (length != C.LENGTH_UNSET) { rangeRequest += (position + length - 1); } connection.setRequestProperty("Range", rangeRequest); } connection.setRequestProperty("User-Agent", userAgent); connection.setRequestProperty("Accept-Encoding", allowGzip ? "gzip" : "identity"); connection.setInstanceFollowRedirects(followRedirects); connection.setDoOutput(httpBody != null); connection.setRequestMethod(DataSpec.getStringForHttpMethod(httpMethod)); if (httpBody != null) { connection.setFixedLengthStreamingMode(httpBody.length); connection.connect(); OutputStream os = connection.getOutputStream(); os.write(httpBody); os.close(); } else { connection.connect(); } return connection; Log.i(TAG, "This is Tor Browser. Skipping."); throw new IOException(); } /** Creates an {@link HttpURLConnection} that is connected with the {@code url}. */ Loading mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/GeckoMediaDrmBridgeV21.java +1 −49 Original line number Diff line number Diff line Loading @@ -530,55 +530,7 @@ public class GeckoMediaDrmBridgeV21 implements GeckoMediaDrm { @Override protected Void doInBackground(final Void... params) { HttpURLConnection urlConnection = null; BufferedReader in = null; try { final URI finalURI = new URI(mURL + "&signedRequest=" + URLEncoder.encode(new String(mDrmRequest), "UTF-8")); urlConnection = (HttpURLConnection) ProxySelector.openConnectionWithProxy(finalURI); urlConnection.setRequestMethod("POST"); if (DEBUG) Log.d(LOGTAG, "Provisioning, posting url =" + finalURI.toString()); // Add data urlConnection.setRequestProperty("Accept", "*/*"); urlConnection.setRequestProperty("User-Agent", getCDMUserAgent()); urlConnection.setRequestProperty("Content-Type", "application/json"); // Execute HTTP Post Request urlConnection.connect(); final int responseCode = urlConnection.getResponseCode(); if (responseCode == HttpURLConnection.HTTP_OK) { in = new BufferedReader(new InputStreamReader(urlConnection.getInputStream(), UTF_8)); String inputLine; final StringBuffer response = new StringBuffer(); while ((inputLine = in.readLine()) != null) { response.append(inputLine); } in.close(); mResponseBody = String.valueOf(response).getBytes(UTF_8); if (DEBUG) Log.d(LOGTAG, "Provisioning, response received."); if (mResponseBody != null) Log.d(LOGTAG, "response length=" + mResponseBody.length); } else { Log.d(LOGTAG, "Provisioning, server returned HTTP error code :" + responseCode); } } catch (final IOException e) { Log.e(LOGTAG, "Got exception during posting provisioning request ...", e); } catch (final URISyntaxException e) { Log.e(LOGTAG, "Got exception during creating uri ...", e); } finally { if (urlConnection != null) { urlConnection.disconnect(); } try { if (in != null) { in.close(); } } catch (final IOException e) { Log.e(LOGTAG, "Exception during closing in ...", e); } } Log.i(LOGTAG, "This is Tor Browser. Skipping."); return null; } Loading Loading
mobile/android/exoplayer2/src/main/java/org/mozilla/thirdparty/com/google/android/exoplayer2/upstream/DefaultHttpDataSource.java +2 −44 Original line number Diff line number Diff line Loading @@ -531,50 +531,8 @@ public class DefaultHttpDataSource extends BaseDataSource implements HttpDataSou boolean followRedirects, Map<String, String> requestParameters) throws IOException, URISyntaxException { /** * Tor Project modified the way the connection object was created. For the sake of * simplicity, instead of duplicating the whole file we changed the connection object * to use the ProxySelector. */ HttpURLConnection connection = (HttpURLConnection) openConnectionWithProxy(url.toURI()); connection.setConnectTimeout(connectTimeoutMillis); connection.setReadTimeout(readTimeoutMillis); Map<String, String> requestHeaders = new HashMap<>(); if (defaultRequestProperties != null) { requestHeaders.putAll(defaultRequestProperties.getSnapshot()); } requestHeaders.putAll(requestProperties.getSnapshot()); requestHeaders.putAll(requestParameters); for (Map.Entry<String, String> property : requestHeaders.entrySet()) { connection.setRequestProperty(property.getKey(), property.getValue()); } if (!(position == 0 && length == C.LENGTH_UNSET)) { String rangeRequest = "bytes=" + position + "-"; if (length != C.LENGTH_UNSET) { rangeRequest += (position + length - 1); } connection.setRequestProperty("Range", rangeRequest); } connection.setRequestProperty("User-Agent", userAgent); connection.setRequestProperty("Accept-Encoding", allowGzip ? "gzip" : "identity"); connection.setInstanceFollowRedirects(followRedirects); connection.setDoOutput(httpBody != null); connection.setRequestMethod(DataSpec.getStringForHttpMethod(httpMethod)); if (httpBody != null) { connection.setFixedLengthStreamingMode(httpBody.length); connection.connect(); OutputStream os = connection.getOutputStream(); os.write(httpBody); os.close(); } else { connection.connect(); } return connection; Log.i(TAG, "This is Tor Browser. Skipping."); throw new IOException(); } /** Creates an {@link HttpURLConnection} that is connected with the {@code url}. */ Loading
mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/GeckoMediaDrmBridgeV21.java +1 −49 Original line number Diff line number Diff line Loading @@ -530,55 +530,7 @@ public class GeckoMediaDrmBridgeV21 implements GeckoMediaDrm { @Override protected Void doInBackground(final Void... params) { HttpURLConnection urlConnection = null; BufferedReader in = null; try { final URI finalURI = new URI(mURL + "&signedRequest=" + URLEncoder.encode(new String(mDrmRequest), "UTF-8")); urlConnection = (HttpURLConnection) ProxySelector.openConnectionWithProxy(finalURI); urlConnection.setRequestMethod("POST"); if (DEBUG) Log.d(LOGTAG, "Provisioning, posting url =" + finalURI.toString()); // Add data urlConnection.setRequestProperty("Accept", "*/*"); urlConnection.setRequestProperty("User-Agent", getCDMUserAgent()); urlConnection.setRequestProperty("Content-Type", "application/json"); // Execute HTTP Post Request urlConnection.connect(); final int responseCode = urlConnection.getResponseCode(); if (responseCode == HttpURLConnection.HTTP_OK) { in = new BufferedReader(new InputStreamReader(urlConnection.getInputStream(), UTF_8)); String inputLine; final StringBuffer response = new StringBuffer(); while ((inputLine = in.readLine()) != null) { response.append(inputLine); } in.close(); mResponseBody = String.valueOf(response).getBytes(UTF_8); if (DEBUG) Log.d(LOGTAG, "Provisioning, response received."); if (mResponseBody != null) Log.d(LOGTAG, "response length=" + mResponseBody.length); } else { Log.d(LOGTAG, "Provisioning, server returned HTTP error code :" + responseCode); } } catch (final IOException e) { Log.e(LOGTAG, "Got exception during posting provisioning request ...", e); } catch (final URISyntaxException e) { Log.e(LOGTAG, "Got exception during creating uri ...", e); } finally { if (urlConnection != null) { urlConnection.disconnect(); } try { if (in != null) { in.close(); } } catch (final IOException e) { Log.e(LOGTAG, "Exception during closing in ...", e); } } Log.i(LOGTAG, "This is Tor Browser. Skipping."); return null; } Loading