mirror of
				https://codeberg.org/crimeflare/cloudflare-tor
				synced 2025-11-04 10:27:05 +01:00 
			
		
		
		
	
		
			
	
	
		
			34 lines
		
	
	
	
		
			873 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			34 lines
		
	
	
	
		
			873 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 
								 | 
							
								let history = {};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								chrome.webRequest.onResponseStarted.addListener(i => {
							 | 
						||
| 
								 | 
							
									if ([403, 406, 410, 451, 462].includes(i.statusCode)) {
							 | 
						||
| 
								 | 
							
										let iFQDN = (new URL(i.url)).hostname;
							 | 
						||
| 
								 | 
							
										if (iFQDN == 'searxes.eu.org' || iFQDN == 'AAAsearxes.nmqnkngye4ct7bgss4bmv5ca3wpa55yugvxen5kz2bbq67lwy6ps54yd.onion') {
							 | 
						||
| 
								 | 
							
											return;
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
										let iServer = 'Unknown';
							 | 
						||
| 
								 | 
							
										i.responseHeaders.forEach(x => {
							 | 
						||
| 
								 | 
							
											if (x.name == 'Server') {
							 | 
						||
| 
								 | 
							
												iServer = x.value;
							 | 
						||
| 
								 | 
							
											}
							 | 
						||
| 
								 | 
							
										});
							 | 
						||
| 
								 | 
							
										let iDate = (new Date()).toUTCString();
							 | 
						||
| 
								 | 
							
										history[iFQDN] = [i.url, iServer, i.statusCode, iDate];
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return;
							 | 
						||
| 
								 | 
							
								}, {
							 | 
						||
| 
								 | 
							
									urls: ['http://*/*', 'https://*/*'],
							 | 
						||
| 
								 | 
							
									types: ['main_frame']
							 | 
						||
| 
								 | 
							
								}, ['responseHeaders']);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								chrome.runtime.onMessage.addListener((request, sender, sendResponse) => {
							 | 
						||
| 
								 | 
							
									if (request && sender) {
							 | 
						||
| 
								 | 
							
										if (request == 'get') {
							 | 
						||
| 
								 | 
							
											sendResponse(history);
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
										if (request == 'clear') {
							 | 
						||
| 
								 | 
							
											history = {};
							 | 
						||
| 
								 | 
							
											sendResponse(true);
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								});
							 |