matrix-org / synapse

Synapse: Matrix homeserver written in Python/Twisted.
https://matrix-org.github.io/synapse
Apache License 2.0
11.83k stars 2.13k forks source link

`/_matrix/client/v3/register` fails over unix socket #16742

Open Sir-Photch opened 11 months ago

Sir-Photch commented 11 months ago

Description

cp. #16404.

I had a quick glance at the code; Since the IP may be necessary later during execution I couldn't come up with a PR that just replaces the occurences with .get_client_ip_if_available() in register.py

Steps to reproduce

cp. #16404

Homeserver

selfhosted

Synapse Version

1.95.1

Installation Method

Other (please mention below)

Database

postgresql

Workers

Single process

Platform

archlinux arm

Configuration

No response

Relevant log output

Traceback (most recent call last):
  File "/usr/lib/python3.11/site-packages/synapse/http/server.py", line
 326, in _async_render_wrapper
    callback_return = await self._async_render(request)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/synapse/http/server.py", line
 538, in _async_render
    callback_return = await raw_callback_return
                      ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/synapse/rest/client/_base.py"
, line 102, in wrapped
    return await orig(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/synapse/rest/client/register.
py", line 436, in on_POST
    client_addr = request.getClientAddress().host
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'UNIXAddress' object has no attribute 'host'

Anything else that would be useful to know?

No response