From ff48e6a4ee08de6df538f6aa52bb9048396e32db Mon Sep 17 00:00:00 2001
From: Julian Rother <julian@cccv.de>
Date: Tue, 19 Apr 2022 23:47:27 +0200
Subject: [PATCH] Removed remailer domain option (for now)

---
 test_server.py  | 42 ------------------------------------------
 uffd-socketmapd | 12 +++---------
 2 files changed, 3 insertions(+), 51 deletions(-)

diff --git a/test_server.py b/test_server.py
index 2444e72..c43e59d 100644
--- a/test_server.py
+++ b/test_server.py
@@ -145,8 +145,6 @@ class TestSocketmapsRequestHandler(unittest.TestCase):
 		api = UffdAPIMock(remailer_map={
 			'v1-23-testuser@remailer.example.com': 'testuser@example.com',
 			'v1-23-testadmin@remailer.example.com': 'testadmin@example.com',
-			# Artifical entry to test if map is queried (see _with_remailer_domain case)
-			'foobar@test.example.com': 'DOESNOTEXIT',
 		})
 		RequestHandler = make_requesthandler(api)
 
@@ -167,43 +165,3 @@ class TestSocketmapsRequestHandler(unittest.TestCase):
 		conn = MockConnection(request, 4096)
 		RequestHandler(conn, '', None).handle()
 		self.assertEqual(conn.sent, response)
-
-		# See _with_remailer_domain case
-		request = b'42:remailer_canonical foobar@test.example.com,'
-		response = b'14:OK DOESNOTEXIT,'
-		conn = MockConnection(request, 4096)
-		RequestHandler(conn, '', None).handle()
-		self.assertEqual(conn.sent, response)
-
-	def test_handle_remailer_with_remailer_domain(self):
-		api = UffdAPIMock(remailer_map={
-			'v1-23-testuser@remailer.example.com': 'testuser@example.com',
-			'v1-23-testadmin@remailer.example.com': 'testadmin@example.com',
-			# Artifical entry to test if map is queried
-			'foobar@test.example.com': 'DOESNOTEXIT',
-		})
-		RequestHandler = make_requesthandler(api, remailer_domain='remailer.example.com')
-
-		request = b'54:remailer_canonical v1-23-testuser@remailer.example.com,'
-		response = b'23:OK testuser@example.com,'
-		conn = MockConnection(request, 4096)
-		RequestHandler(conn, '', None).handle()
-		self.assertEqual(conn.sent, response)
-
-		request = b'56:remailer_canonical v1-42-not-a-user@remailer.example.com,'
-		response = b'9:NOTFOUND ,'
-		conn = MockConnection(request, 4096)
-		RequestHandler(conn, '', None).handle()
-		self.assertEqual(conn.sent, response)
-
-		request = b'35:remailer_canonical test@example.com,'
-		response = b'9:NOTFOUND ,'
-		conn = MockConnection(request, 4096)
-		RequestHandler(conn, '', None).handle()
-		self.assertEqual(conn.sent, response)
-
-		request = b'42:remailer_canonical foobar@test.example.com,'
-		response = b'9:NOTFOUND ,'
-		conn = MockConnection(request, 4096)
-		RequestHandler(conn, '', None).handle()
-		self.assertEqual(conn.sent, response)
diff --git a/uffd-socketmapd b/uffd-socketmapd
index 0615d37..63672a8 100755
--- a/uffd-socketmapd
+++ b/uffd-socketmapd
@@ -123,7 +123,6 @@ def decode_netstring(netstring):
 
 class SocketmapsRequestHandler(socketserver.BaseRequestHandler):
 	api = None # Overwritten
-	remailer_domain = None # Overwritten
 
 	def handle(self):
 		buf = b''
@@ -196,20 +195,16 @@ class SocketmapsRequestHandler(socketserver.BaseRequestHandler):
 			return 'OK ' + ','.join(results)
 		if name == 'remailer_canonical':
 			domain = key.rsplit('@', 1)[-1]
-			# If self.remailer_domain is unset, uffd will do the filtering
-			if self.remailer_domain is not None and domain != self.remailer_domain:
-				return 'NOTFOUND '
 			result = self.api.resolve_remailer(key)
 			if result is None:
 				return 'NOTFOUND '
 			return 'OK ' + result
 		return 'PERM Unknown request name', logging.WARNING
 
-def make_requesthandler(api, remailer_domain=None):
+def make_requesthandler(api):
 	class RequestHandler(SocketmapsRequestHandler):
 		pass
 	RequestHandler.api = api
-	RequestHandler.remailer_domain = remailer_domain
 	return RequestHandler
 
 class FilenoUnixStreamServer(socketserver.UnixStreamServer):
@@ -245,8 +240,7 @@ class StdoutFilter(logging.Filter):
 @click.option('--api-url', required=True, help='Uffd base URL without API prefix or trailing slash (e.g. https://example.com)')
 @click.option('--api-user', required=True, help='API user/client id')
 @click.option('--api-secret', required=True, help='API secret, do not set this on the command-line, use environment variable SERVER_API_SECRET instead')
-@click.option('--remailer-domain', help='Domain to filter remailer lookups locally')
-def main(socket_path, socket_fd, api_url, api_user, api_secret, remailer_domain):
+def main(socket_path, socket_fd, api_url, api_user, api_secret):
 	if (socket_path is None and socket_fd is None) or \
 	   (socket_path is not None and socket_fd is not None):
 		raise click.ClickException('Either --socket-path or --socket-fd must be specified')
@@ -261,7 +255,7 @@ def main(socket_path, socket_fd, api_url, api_user, api_secret, remailer_domain)
 	logger.addHandler(stderr_handler)
 
 	api = UffdAPI(api_url, api_user, api_secret)
-	RequestHandler = make_requesthandler(api, remailer_domain)
+	RequestHandler = make_requesthandler(api)
 	if socket_path is not None:
 		cleanup_unix_socket(socket_path)
 		socketserver.ThreadingUnixStreamServer(socket_path, RequestHandler).serve_forever()
-- 
GitLab