"sent invalid signature in sendjoin signatures for event" #411

Open
opened 2023-12-03 18:01:32 +00:00 by _ZN3val · 8 comments
_ZN3val commented 2023-12-03 18:01:32 +00:00 (Migrated from gitlab.com)

After a report in #conduit:fachschaften.org, I tried to join #hm:rycee.net, and I am getting this error in my logs:

Dec 03 10:00:10 conduit conduit[922614]: 2023-12-03T10:00:10.776217Z  WARN conduit::api::client_server::membership: Server rycee.net sent invalid signature in sendjoin signatures for event {"auth_events": Array([String("$B8NBX6oUzLTq8OuFK_YvCJhqn2P_0fARY29XSZ6T3DA"), String("$0pt22mJ5ZFjIdguJmKzZyBjhMQGEzOgtoe_3IwqE8KY"), String("$LR-AN_TTZyWaFQ9mbw5mW4S_pWgOEx6yWGq49tQertc")]), "content": Object({"avatar_url": String("mxc://trix.re/9wk7Dp4jm78a8v0hcI5RqHZGVsqbyTC1"), "displayname": String("val"), "membership": String("join")}), "depth": 30058, "hashes": Object({"sha256": String("mHkvgyk2Ni8op/SmZZCI7nsiK8errfAJ9e7O3pRohqw")}), "origin": String("trix.re"), "origin_server_ts": 1701597604877, "prev_events": Array([String("$4P9UGzJySvtwKNk_sNmxrc6gAiFOHu1Xkk4HXguraEY")]), "room_id": String("!YllBCgVdcoakoavZvX:rycee.net"), "sender": String("@val:trix.re"), "signatures": Object({"trix.re": Object({"ed25519:voCzWLcp": String("hhmigofEDddF51C9OCDoMMMf7KUkpC4GcQkIHTojdNR0kWbQ8EvpqkWM/A48ed59zr7wCwIswHrE2RuLRN9UDQ")})}), "state_key": String("@val:trix.re"), "type": String("m.room.member"), "unsigned": Object({})}

which does seem valid when I am manually checking it with a custom Python script:

$ curl -s https://conduit.trix.re/_matrix/key/v2/server                                                                                                                    
{"old_verify_keys":{},"server_name":"trix.re","signatures":{"trix.re":{"ed25519:voCzWLcp":"ns/KbyvcZMoUiCe/E5SOpQsEFjLOxBMXXyLHchN2V3fVFtWwXTJK5AbfWtGpdKoDeaG6We95iBNalMwDdxpGCw"}},"valid_until_ts":1702231162336,"verify_keys":{"ed25519:voCzWLcp":{"key":"gyEyvcRNuH4Kq+69WFCfQQYtBZO7GsupEQ47DbBPE8k"}}}
$ python3
>>> import json, canonicaljson, mhstest, nacl.signing
>>> d3 = {"auth_events": ["$B8NBX6oUzLTq8OuFK_YvCJhqn2P_0fARY29XSZ6T3DA", "$0pt22mJ5ZFjIdguJmKzZyBjhMQGEzOgtoe_3IwqE8KY", "$LR-AN_TTZyWaFQ9mbw5mW4S_pWgOEx6yWGq49tQertc"], "content": {"avatar_url": "mxc://trix.re/9wk7Dp4jm78a8v0hcI5RqHZGVsqbyTC1", "displayname": "val", "mem
bership": "join"}, "depth": 30058, "hashes": {"sha256": "mHkvgyk2Ni8op/SmZZCI7nsiK8errfAJ9e7O3pRohqw"}, "origin": "trix.re", "origin_server_ts": 1701597604877, "prev_events": ["$4P9UGzJySvtwKNk_sNmxrc6gAiFOHu1Xkk4HXguraEY"], "room_id": "!YllBCgVdcoakoavZvX:rycee.net", "sen
der": "@val:trix.re", "signatures": {"trix.re": {"ed25519:voCzWLcp": "hhmigofEDddF51C9OCDoMMMf7KUkpC4GcQkIHTojdNR0kWbQ8EvpqkWM/A48ed59zr7wCwIswHrE2RuLRN9UDQ"}}, "state_key": "@val:trix.re", "type": "m.room.member", "unsigned": {}}
>>> d4 = canonicaljson.encode_canonical_json(mhstest.crypto.Crypto("6").strip_non_essential_keys({k: v for (k, v) in d3.items() if k not in ("signatures", "unsigned")}))
>>> d4
b'{"auth_events":["$B8NBX6oUzLTq8OuFK_YvCJhqn2P_0fARY29XSZ6T3DA","$0pt22mJ5ZFjIdguJmKzZyBjhMQGEzOgtoe_3IwqE8KY","$LR-AN_TTZyWaFQ9mbw5mW4S_pWgOEx6yWGq49tQertc"],"content":{"membership":"join"},"depth":30058,"hashes":{"sha256":"mHkvgyk2Ni8op/SmZZCI7nsiK8errfAJ9e7O3pRohqw"},"origin":"trix.re","origin_server_ts":1701597604877,"prev_events":["$4P9UGzJySvtwKNk_sNmxrc6gAiFOHu1Xkk4HXguraEY"],"room_id":"!YllBCgVdcoakoavZvX:rycee.net","sender":"@val:trix.re","state_key":"@val:trix.re","type":"m.room.member"}'
>>> k = nacl.signing.VerifyKey(base64.b64decode("gyEyvcRNuH4Kq+69WFCfQQYtBZO7GsupEQ47DbBPE8k="))
>>> k.verify(d4, signature=base64.b64decode(d3["signatures"]["trix.re"]["ed25519:voCzWLcp"] + "=="))
b'{"auth_events":["$B8NBX6oUzLTq8OuFK_YvCJhqn2P_0fARY29XSZ6T3DA","$0pt22mJ5ZFjIdguJmKzZyBjhMQGEzOgtoe_3IwqE8KY","$LR-AN_TTZyWaFQ9mbw5mW4S_pWgOEx6yWGq49tQertc"],"content":{"membership":"join"},"depth":30058,"hashes":{"sha256":"mHkvgyk2Ni8op/SmZZCI7nsiK8errfAJ9e7O3pRohqw"},"origin":"trix.re","origin_server_ts":1701597604877,"prev_events":["$4P9UGzJySvtwKNk_sNmxrc6gAiFOHu1Xkk4HXguraEY"],"room_id":"!YllBCgVdcoakoavZvX:rycee.net","sender":"@val:trix.re","state_key":"@val:trix.re","type":"m.room.member"}'

(k.verify not raising an exception means the signature is valid)

Additionally, Conduit's log looks exactly like the JSON that matrix.org serves when requesting this event:

{
  "origin": "matrix.org",
  "origin_server_ts": 1701624885170,
  "pdus": [
    {
      "auth_events": [
        "$B8NBX6oUzLTq8OuFK_YvCJhqn2P_0fARY29XSZ6T3DA",
        "$0pt22mJ5ZFjIdguJmKzZyBjhMQGEzOgtoe_3IwqE8KY",
        "$LR-AN_TTZyWaFQ9mbw5mW4S_pWgOEx6yWGq49tQertc"
      ],
      "content": { "avatar_url": "mxc://trix.re/9wk7Dp4jm78a8v0hcI5RqHZGVsqbyTC1", "displayname": "val", "membership": "join" },
      "depth": 30058,
      "hashes": { "sha256": "mHkvgyk2Ni8op/SmZZCI7nsiK8errfAJ9e7O3pRohqw" },
      "origin": "trix.re",
      "origin_server_ts": 1701597604877,
      "prev_events": [ "$4P9UGzJySvtwKNk_sNmxrc6gAiFOHu1Xkk4HXguraEY" ],
      "room_id": "!YllBCgVdcoakoavZvX:rycee.net",
      "sender": "@val:trix.re",
      "state_key": "@val:trix.re",
      "type": "m.room.member",
      "signatures": { "trix.re": { "ed25519:voCzWLcp": "hhmigofEDddF51C9OCDoMMMf7KUkpC4GcQkIHTojdNR0kWbQ8EvpqkWM/A48ed59zr7wCwIswHrE2RuLRN9UDQ" } },
      "unsigned": { }
    }
  ]
}
After a report in #conduit:fachschaften.org, I tried to join `#hm:rycee.net`, and I am getting this error in my logs: ``` Dec 03 10:00:10 conduit conduit[922614]: 2023-12-03T10:00:10.776217Z WARN conduit::api::client_server::membership: Server rycee.net sent invalid signature in sendjoin signatures for event {"auth_events": Array([String("$B8NBX6oUzLTq8OuFK_YvCJhqn2P_0fARY29XSZ6T3DA"), String("$0pt22mJ5ZFjIdguJmKzZyBjhMQGEzOgtoe_3IwqE8KY"), String("$LR-AN_TTZyWaFQ9mbw5mW4S_pWgOEx6yWGq49tQertc")]), "content": Object({"avatar_url": String("mxc://trix.re/9wk7Dp4jm78a8v0hcI5RqHZGVsqbyTC1"), "displayname": String("val"), "membership": String("join")}), "depth": 30058, "hashes": Object({"sha256": String("mHkvgyk2Ni8op/SmZZCI7nsiK8errfAJ9e7O3pRohqw")}), "origin": String("trix.re"), "origin_server_ts": 1701597604877, "prev_events": Array([String("$4P9UGzJySvtwKNk_sNmxrc6gAiFOHu1Xkk4HXguraEY")]), "room_id": String("!YllBCgVdcoakoavZvX:rycee.net"), "sender": String("@val:trix.re"), "signatures": Object({"trix.re": Object({"ed25519:voCzWLcp": String("hhmigofEDddF51C9OCDoMMMf7KUkpC4GcQkIHTojdNR0kWbQ8EvpqkWM/A48ed59zr7wCwIswHrE2RuLRN9UDQ")})}), "state_key": String("@val:trix.re"), "type": String("m.room.member"), "unsigned": Object({})} ``` which does seem valid when I am manually checking it with a custom Python script: ``` $ curl -s https://conduit.trix.re/_matrix/key/v2/server {"old_verify_keys":{},"server_name":"trix.re","signatures":{"trix.re":{"ed25519:voCzWLcp":"ns/KbyvcZMoUiCe/E5SOpQsEFjLOxBMXXyLHchN2V3fVFtWwXTJK5AbfWtGpdKoDeaG6We95iBNalMwDdxpGCw"}},"valid_until_ts":1702231162336,"verify_keys":{"ed25519:voCzWLcp":{"key":"gyEyvcRNuH4Kq+69WFCfQQYtBZO7GsupEQ47DbBPE8k"}}} $ python3 >>> import json, canonicaljson, mhstest, nacl.signing >>> d3 = {"auth_events": ["$B8NBX6oUzLTq8OuFK_YvCJhqn2P_0fARY29XSZ6T3DA", "$0pt22mJ5ZFjIdguJmKzZyBjhMQGEzOgtoe_3IwqE8KY", "$LR-AN_TTZyWaFQ9mbw5mW4S_pWgOEx6yWGq49tQertc"], "content": {"avatar_url": "mxc://trix.re/9wk7Dp4jm78a8v0hcI5RqHZGVsqbyTC1", "displayname": "val", "mem bership": "join"}, "depth": 30058, "hashes": {"sha256": "mHkvgyk2Ni8op/SmZZCI7nsiK8errfAJ9e7O3pRohqw"}, "origin": "trix.re", "origin_server_ts": 1701597604877, "prev_events": ["$4P9UGzJySvtwKNk_sNmxrc6gAiFOHu1Xkk4HXguraEY"], "room_id": "!YllBCgVdcoakoavZvX:rycee.net", "sen der": "@val:trix.re", "signatures": {"trix.re": {"ed25519:voCzWLcp": "hhmigofEDddF51C9OCDoMMMf7KUkpC4GcQkIHTojdNR0kWbQ8EvpqkWM/A48ed59zr7wCwIswHrE2RuLRN9UDQ"}}, "state_key": "@val:trix.re", "type": "m.room.member", "unsigned": {}} >>> d4 = canonicaljson.encode_canonical_json(mhstest.crypto.Crypto("6").strip_non_essential_keys({k: v for (k, v) in d3.items() if k not in ("signatures", "unsigned")})) >>> d4 b'{"auth_events":["$B8NBX6oUzLTq8OuFK_YvCJhqn2P_0fARY29XSZ6T3DA","$0pt22mJ5ZFjIdguJmKzZyBjhMQGEzOgtoe_3IwqE8KY","$LR-AN_TTZyWaFQ9mbw5mW4S_pWgOEx6yWGq49tQertc"],"content":{"membership":"join"},"depth":30058,"hashes":{"sha256":"mHkvgyk2Ni8op/SmZZCI7nsiK8errfAJ9e7O3pRohqw"},"origin":"trix.re","origin_server_ts":1701597604877,"prev_events":["$4P9UGzJySvtwKNk_sNmxrc6gAiFOHu1Xkk4HXguraEY"],"room_id":"!YllBCgVdcoakoavZvX:rycee.net","sender":"@val:trix.re","state_key":"@val:trix.re","type":"m.room.member"}' >>> k = nacl.signing.VerifyKey(base64.b64decode("gyEyvcRNuH4Kq+69WFCfQQYtBZO7GsupEQ47DbBPE8k=")) >>> k.verify(d4, signature=base64.b64decode(d3["signatures"]["trix.re"]["ed25519:voCzWLcp"] + "==")) b'{"auth_events":["$B8NBX6oUzLTq8OuFK_YvCJhqn2P_0fARY29XSZ6T3DA","$0pt22mJ5ZFjIdguJmKzZyBjhMQGEzOgtoe_3IwqE8KY","$LR-AN_TTZyWaFQ9mbw5mW4S_pWgOEx6yWGq49tQertc"],"content":{"membership":"join"},"depth":30058,"hashes":{"sha256":"mHkvgyk2Ni8op/SmZZCI7nsiK8errfAJ9e7O3pRohqw"},"origin":"trix.re","origin_server_ts":1701597604877,"prev_events":["$4P9UGzJySvtwKNk_sNmxrc6gAiFOHu1Xkk4HXguraEY"],"room_id":"!YllBCgVdcoakoavZvX:rycee.net","sender":"@val:trix.re","state_key":"@val:trix.re","type":"m.room.member"}' ``` (`k.verify` not raising an exception means the signature is valid) Additionally, Conduit's log looks exactly like the JSON that matrix.org serves when requesting this event: ```json { "origin": "matrix.org", "origin_server_ts": 1701624885170, "pdus": [ { "auth_events": [ "$B8NBX6oUzLTq8OuFK_YvCJhqn2P_0fARY29XSZ6T3DA", "$0pt22mJ5ZFjIdguJmKzZyBjhMQGEzOgtoe_3IwqE8KY", "$LR-AN_TTZyWaFQ9mbw5mW4S_pWgOEx6yWGq49tQertc" ], "content": { "avatar_url": "mxc://trix.re/9wk7Dp4jm78a8v0hcI5RqHZGVsqbyTC1", "displayname": "val", "membership": "join" }, "depth": 30058, "hashes": { "sha256": "mHkvgyk2Ni8op/SmZZCI7nsiK8errfAJ9e7O3pRohqw" }, "origin": "trix.re", "origin_server_ts": 1701597604877, "prev_events": [ "$4P9UGzJySvtwKNk_sNmxrc6gAiFOHu1Xkk4HXguraEY" ], "room_id": "!YllBCgVdcoakoavZvX:rycee.net", "sender": "@val:trix.re", "state_key": "@val:trix.re", "type": "m.room.member", "signatures": { "trix.re": { "ed25519:voCzWLcp": "hhmigofEDddF51C9OCDoMMMf7KUkpC4GcQkIHTojdNR0kWbQ8EvpqkWM/A48ed59zr7wCwIswHrE2RuLRN9UDQ" } }, "unsigned": { } } ] } ```
_ZN3val commented 2023-12-03 18:03:12 +00:00 (Migrated from gitlab.com)

changed the description

changed the description
_ZN3val commented 2023-12-03 18:38:37 +00:00 (Migrated from gitlab.com)

mentioned in merge request !563

mentioned in merge request !563
_ZN3val commented 2023-12-03 18:39:17 +00:00 (Migrated from gitlab.com)

Using https://gitlab.com/famedly/conduit/-/merge_requests/563, I see that the underlying error seems to be a missing signature: BadRequest(InvalidParam, "Server did not send its signature")

More logs, btw:

2023-12-03T18:33:46.791508Z DEBUG http_request{path=/_matrix/client/v3/directory/room/:room_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Sending request to rycee.net at https://matrix.rycee.net/_matrix/federation/v1/query/directory?room_alias=%23hm%3Arycee.net
2023-12-03T18:34:14.925242Z DEBUG http_request{path=/_matrix/client/v3/sync}: tower_http::trace::on_response: finished processing request latency=30021 ms status=200
2023-12-03T18:34:14.954580Z DEBUG http_request{path=/_matrix/client/v3/directory/room/:room_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Received response from rycee.net at https://matrix.rycee.net/_matrix/federation/v1/query/directory?room_alias=%23hm%3Arycee.net
2023-12-03T18:34:14.954682Z DEBUG http_request{path=/_matrix/client/v3/directory/room/:room_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Getting response bytes from rycee.net
2023-12-03T18:34:14.954803Z DEBUG http_request{path=/_matrix/client/v3/directory/room/:room_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Got response bytes from rycee.net
2023-12-03T18:34:14.954869Z DEBUG http_request{path=/_matrix/client/v3/directory/room/:room_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Parsing response bytes from rycee.net
2023-12-03T18:34:14.955349Z DEBUG http_request{path=/_matrix/client/v3/directory/room/:room_alias}: tower_http::trace::on_response: finished processing request latency=28377 ms status=200
2023-12-03T18:34:14.957409Z DEBUG http_request{path=/_matrix/client/v3/sync}: tower_http::trace::on_request: started processing request
2023-12-03T18:34:14.957621Z DEBUG http_request{path=/_matrix/client/v3/sync}: tower_http::trace::on_response: finished processing request latency=0 ms status=200
2023-12-03T18:34:14.973081Z DEBUG http_request{path=/_matrix/client/v3/sync}: tower_http::trace::on_request: started processing request
2023-12-03T18:34:14.973785Z DEBUG http_request{path=/_matrix/client/v3/sync}: conduit::api::ruma_wrapper::axum: Request { method: GET, uri: /_matrix/client/v3/sync?filter=cQRR&timeout=30000&set_presence=online&since=1278, version: HTTP/1.1, headers: {"host": "conduit-test.magnesium.progval.net", "x-real-ip": "2a01:cb08:b80:2100:fdc4:d65c:9c25:799f", "x-forwarded-for": "2a01:cb08:b80:2100:fdc4:d65c:9c25:799f", "x-forwarded-proto": "https", "user-agent": "Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/114.0", "accept": "application/json", "accept-language": "en-US,en;q=0.5", "accept-encoding": "gzip, deflate, br", "origin": "https://app.element.io", "sec-fetch-dest": "empty", "sec-fetch-mode": "cors", "sec-fetch-site": "cross-site", "authorization": Sensitive, "cache-control": "max-age=0"}, body: [] }
2023-12-03T18:34:15.018803Z DEBUG http_request{path=/_matrix/client/v3/rooms/:room_id/initialSync}: tower_http::trace::on_request: started processing request
2023-12-03T18:34:15.019008Z DEBUG http_request{path=/_matrix/client/v3/rooms/:room_id/initialSync}: tower_http::trace::on_response: finished processing request latency=0 ms status=200
2023-12-03T18:34:15.032245Z DEBUG http_request{path=/_matrix/client/v3/rooms/:room_id/initialSync}: tower_http::trace::on_request: started processing request
2023-12-03T18:34:15.032474Z  INFO http_request{path=/_matrix/client/v3/rooms/:room_id/initialSync}: conduit::utils::error: Returning an error: 403 Forbidden: M_GUEST_ACCESS_FORBIDDEN: Guest access not implemented
2023-12-03T18:34:15.032656Z DEBUG http_request{path=/_matrix/client/v3/rooms/:room_id/initialSync}: tower_http::trace::on_response: finished processing request latency=0 ms status=403
2023-12-03T18:34:15.042757Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: tower_http::trace::on_request: started processing request
2023-12-03T18:34:15.042849Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: tower_http::trace::on_response: finished processing request latency=0 ms status=200
2023-12-03T18:34:15.082507Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: tower_http::trace::on_request: started processing request
2023-12-03T18:34:15.084923Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: conduit::api::ruma_wrapper::axum: Request { method: POST, uri: /_matrix/client/v3/join/%23hm%3Arycee.net, version: HTTP/1.1, headers: {"host": "conduit-test.magnesium.progval.net", "x-real-ip": "2a01:cb08:b80:2100:fdc4:d65c:9c25:799f", "x-forwarded-for": "2a01:cb08:b80:2100:fdc4:d65c:9c25:799f", "x-forwarded-proto": "https", "content-length": "2", "user-agent": "Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/114.0", "accept": "application/json", "accept-language": "en-US,en;q=0.5", "accept-encoding": "gzip, deflate, br", "content-type": "application/json", "origin": "https://app.element.io", "sec-fetch-dest": "empty", "sec-fetch-mode": "cors", "sec-fetch-site": "cross-site", "authorization": Sensitive}, body: [123, 125] }
2023-12-03T18:34:15.085095Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request: conduit::service::sending: Waiting for permit
2023-12-03T18:34:15.085124Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request: conduit::service::sending: Got permit
2023-12-03T18:34:15.085176Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Preparing to send request to rycee.net
2023-12-03T18:34:15.085743Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Sending request to rycee.net at https://matrix.rycee.net/_matrix/federation/v1/query/directory?room_alias=%23hm%3Arycee.net
2023-12-03T18:34:15.367590Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Received response from rycee.net at https://matrix.rycee.net/_matrix/federation/v1/query/directory?room_alias=%23hm%3Arycee.net
2023-12-03T18:34:15.367697Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Getting response bytes from rycee.net
2023-12-03T18:34:15.367832Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Got response bytes from rycee.net
2023-12-03T18:34:15.367887Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Parsing response bytes from rycee.net
2023-12-03T18:34:15.368542Z  INFO http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: conduit::api::client_server::membership: Joining !YllBCgVdcoakoavZvX:rycee.net over federation.
2023-12-03T18:34:15.368624Z  INFO http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: conduit::api::client_server::membership: Asking rycee.net for make_join
2023-12-03T18:34:15.368709Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request: conduit::service::sending: Waiting for permit
2023-12-03T18:34:15.368755Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request: conduit::service::sending: Got permit
2023-12-03T18:34:15.368870Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Preparing to send request to rycee.net
2023-12-03T18:34:15.369982Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Sending request to rycee.net at https://matrix.rycee.net/_matrix/federation/v1/make_join/!YllBCgVdcoakoavZvX:rycee.net/@valtest:conduit-test.magnesium.progval.net?ver=6&ver=7&ver=8&ver=9&ver=10&ver=3&ver=4&ver=5&ver=11
2023-12-03T18:34:15.525470Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Received response from rycee.net at https://matrix.rycee.net/_matrix/federation/v1/make_join/!YllBCgVdcoakoavZvX:rycee.net/@valtest:conduit-test.magnesium.progval.net?ver=6&ver=7&ver=8&ver=9&ver=10&ver=3&ver=4&ver=5&ver=11
2023-12-03T18:34:15.525580Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Getting response bytes from rycee.net
2023-12-03T18:34:15.525691Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Got response bytes from rycee.net
2023-12-03T18:34:15.525757Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Parsing response bytes from rycee.net
2023-12-03T18:34:15.526004Z  INFO http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: conduit::api::client_server::membership: make_join finished
2023-12-03T18:34:15.528987Z  INFO http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: conduit::api::client_server::membership: Asking rycee.net for send_join
2023-12-03T18:34:15.529355Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request: conduit::service::sending: Waiting for permit
2023-12-03T18:34:15.529413Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request: conduit::service::sending: Got permit
2023-12-03T18:34:15.529521Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Preparing to send request to rycee.net
2023-12-03T18:34:15.531047Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Sending request to rycee.net at https://matrix.rycee.net/_matrix/federation/v2/send_join/!YllBCgVdcoakoavZvX:rycee.net/$iQZO4V5IAubO7kxYCCbokyLrxvGSPIsBQ5t8z1sLvDw
2023-12-03T18:34:16.326639Z DEBUG http_request{path=/.well-known/matrix/server}: tower_http::trace::on_request: started processing request
2023-12-03T18:34:16.326819Z  WARN http_request{path=/.well-known/matrix/server}: conduit: Not found: /.well-known/matrix/server
2023-12-03T18:34:16.326892Z  INFO http_request{path=/.well-known/matrix/server}: conduit::utils::error: Returning an error: 404 Not Found: M_UNRECOGNIZED: Unrecognized request
2023-12-03T18:34:16.327055Z DEBUG http_request{path=/.well-known/matrix/server}: tower_http::trace::on_response: finished processing request latency=0 ms status=404
2023-12-03T18:34:16.957677Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Received response from rycee.net at https://matrix.rycee.net/_matrix/federation/v2/send_join/!YllBCgVdcoakoavZvX:rycee.net/$iQZO4V5IAubO7kxYCCbokyLrxvGSPIsBQ5t8z1sLvDw
2023-12-03T18:34:16.957747Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Getting response bytes from rycee.net
2023-12-03T18:34:17.226534Z DEBUG http_request{path=/.well-known/matrix/server}: tower_http::trace::on_request: started processing request
2023-12-03T18:34:17.226621Z  WARN http_request{path=/.well-known/matrix/server}: conduit: Not found: /.well-known/matrix/server
2023-12-03T18:34:17.226648Z  INFO http_request{path=/.well-known/matrix/server}: conduit::utils::error: Returning an error: 404 Not Found: M_UNRECOGNIZED: Unrecognized request
2023-12-03T18:34:17.226726Z DEBUG http_request{path=/.well-known/matrix/server}: tower_http::trace::on_response: finished processing request latency=0 ms status=404
2023-12-03T18:34:17.343670Z DEBUG http_request{path=/.well-known/matrix/server}: tower_http::trace::on_request: started processing request
2023-12-03T18:34:17.343833Z  WARN http_request{path=/.well-known/matrix/server}: conduit: Not found: /.well-known/matrix/server
2023-12-03T18:34:17.343885Z  INFO http_request{path=/.well-known/matrix/server}: conduit::utils::error: Returning an error: 404 Not Found: M_UNRECOGNIZED: Unrecognized request
2023-12-03T18:34:17.344062Z DEBUG http_request{path=/.well-known/matrix/server}: tower_http::trace::on_response: finished processing request latency=0 ms status=404
2023-12-03T18:34:17.351017Z DEBUG http_request{path=/_matrix/federation/v1/send/:transaction_id}: tower_http::trace::on_request: started processing request
2023-12-03T18:34:17.351619Z DEBUG http_request{path=/_matrix/federation/v1/send/:transaction_id}: conduit::api::ruma_wrapper::axum: Unexpected field `destination` in X-Matrix Authorization header
2023-12-03T18:34:17.351963Z DEBUG http_request{path=/_matrix/federation/v1/send/:transaction_id}:fetch_signing_keys: conduit::service::rooms::event_handler: Fetching signing keys for rycee.net over federation
2023-12-03T18:34:17.352052Z DEBUG http_request{path=/_matrix/federation/v1/send/:transaction_id}:fetch_signing_keys:send_federation_request: conduit::service::sending: Waiting for permit
2023-12-03T18:34:17.352091Z DEBUG http_request{path=/_matrix/federation/v1/send/:transaction_id}:fetch_signing_keys:send_federation_request: conduit::service::sending: Got permit
2023-12-03T18:34:17.352177Z DEBUG http_request{path=/_matrix/federation/v1/send/:transaction_id}:fetch_signing_keys:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Preparing to send request to rycee.net
2023-12-03T18:34:17.353020Z DEBUG http_request{path=/_matrix/federation/v1/send/:transaction_id}:fetch_signing_keys:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Sending request to rycee.net at https://matrix.rycee.net/_matrix/key/v2/server
[...]
2023-12-03T18:34:27.932329Z DEBUG http_request{path=/.well-known/matrix/server}: tower_http::trace::on_response: finished processing request latency=0 ms status=404
2023-12-03T18:34:28.195259Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Got response bytes from rycee.net
2023-12-03T18:34:28.195359Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Parsing response bytes from rycee.net
2023-12-03T18:34:28.298262Z  INFO http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: conduit::api::client_server::membership: send_join finished
2023-12-03T18:34:28.298293Z  INFO http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: conduit::api::client_server::membership: There is a signed event. This room is probably using restricted joins. Adding signature to our event
2023-12-03T18:34:28.298511Z  WARN http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: conduit::api::client_server::membership: Server rycee.net sent invalid signature in sendjoin signatures for event {"auth_events": Array([String("$B8NBX6oUzLTq8OuFK_YvCJhqn2P_0fARY29XSZ6T3DA"), String("$0pt22mJ5ZFjIdguJmKzZyBjhMQGEzOgtoe_3IwqE8KY"), String("$LR-AN_TTZyWaFQ9mbw5mW4S_pWgOEx6yWGq49tQertc")]), "content": Object({"displayname": String("valtest ⚡\u{fe0f}"), "membership": String("join")}), "depth": 30067, "hashes": Object({"sha256": String("RbdWqS9ITKDyyrhNWyPl3HJh0dGei6cAYww2YNSwzgY")}), "origin": String("conduit-test.magnesium.progval.net"), "origin_server_ts": 1701628455526, "prev_events": Array([String("$JLPE00oc8PoNUw1VIM0QdihC7kUhNvQlFvdX4uG5EpU")]), "room_id": String("!YllBCgVdcoakoavZvX:rycee.net"), "sender": String("@valtest:conduit-test.magnesium.progval.net"), "signatures": Object({"conduit-test.magnesium.progval.net": Object({"ed25519:vfVYq8Ey": String("RtUU4OfUyBxKm+CT0feCvUT9la/IchEK0Kjb7C1AFX2ROrPSkDtA22NoVjhApZc57q7byY1q7lsLChEKZ6DOCw")})}), "state_key": String("@valtest:conduit-test.magnesium.progval.net"), "type": String("m.room.member"), "unsigned": Object({})}: BadRequest(InvalidParam, "Server did not send its signature")
Using https://gitlab.com/famedly/conduit/-/merge_requests/563, I see that the underlying error seems to be a missing signature: `BadRequest(InvalidParam, "Server did not send its signature")` More logs, btw: ``` 2023-12-03T18:33:46.791508Z DEBUG http_request{path=/_matrix/client/v3/directory/room/:room_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Sending request to rycee.net at https://matrix.rycee.net/_matrix/federation/v1/query/directory?room_alias=%23hm%3Arycee.net 2023-12-03T18:34:14.925242Z DEBUG http_request{path=/_matrix/client/v3/sync}: tower_http::trace::on_response: finished processing request latency=30021 ms status=200 2023-12-03T18:34:14.954580Z DEBUG http_request{path=/_matrix/client/v3/directory/room/:room_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Received response from rycee.net at https://matrix.rycee.net/_matrix/federation/v1/query/directory?room_alias=%23hm%3Arycee.net 2023-12-03T18:34:14.954682Z DEBUG http_request{path=/_matrix/client/v3/directory/room/:room_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Getting response bytes from rycee.net 2023-12-03T18:34:14.954803Z DEBUG http_request{path=/_matrix/client/v3/directory/room/:room_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Got response bytes from rycee.net 2023-12-03T18:34:14.954869Z DEBUG http_request{path=/_matrix/client/v3/directory/room/:room_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Parsing response bytes from rycee.net 2023-12-03T18:34:14.955349Z DEBUG http_request{path=/_matrix/client/v3/directory/room/:room_alias}: tower_http::trace::on_response: finished processing request latency=28377 ms status=200 2023-12-03T18:34:14.957409Z DEBUG http_request{path=/_matrix/client/v3/sync}: tower_http::trace::on_request: started processing request 2023-12-03T18:34:14.957621Z DEBUG http_request{path=/_matrix/client/v3/sync}: tower_http::trace::on_response: finished processing request latency=0 ms status=200 2023-12-03T18:34:14.973081Z DEBUG http_request{path=/_matrix/client/v3/sync}: tower_http::trace::on_request: started processing request 2023-12-03T18:34:14.973785Z DEBUG http_request{path=/_matrix/client/v3/sync}: conduit::api::ruma_wrapper::axum: Request { method: GET, uri: /_matrix/client/v3/sync?filter=cQRR&timeout=30000&set_presence=online&since=1278, version: HTTP/1.1, headers: {"host": "conduit-test.magnesium.progval.net", "x-real-ip": "2a01:cb08:b80:2100:fdc4:d65c:9c25:799f", "x-forwarded-for": "2a01:cb08:b80:2100:fdc4:d65c:9c25:799f", "x-forwarded-proto": "https", "user-agent": "Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/114.0", "accept": "application/json", "accept-language": "en-US,en;q=0.5", "accept-encoding": "gzip, deflate, br", "origin": "https://app.element.io", "sec-fetch-dest": "empty", "sec-fetch-mode": "cors", "sec-fetch-site": "cross-site", "authorization": Sensitive, "cache-control": "max-age=0"}, body: [] } 2023-12-03T18:34:15.018803Z DEBUG http_request{path=/_matrix/client/v3/rooms/:room_id/initialSync}: tower_http::trace::on_request: started processing request 2023-12-03T18:34:15.019008Z DEBUG http_request{path=/_matrix/client/v3/rooms/:room_id/initialSync}: tower_http::trace::on_response: finished processing request latency=0 ms status=200 2023-12-03T18:34:15.032245Z DEBUG http_request{path=/_matrix/client/v3/rooms/:room_id/initialSync}: tower_http::trace::on_request: started processing request 2023-12-03T18:34:15.032474Z INFO http_request{path=/_matrix/client/v3/rooms/:room_id/initialSync}: conduit::utils::error: Returning an error: 403 Forbidden: M_GUEST_ACCESS_FORBIDDEN: Guest access not implemented 2023-12-03T18:34:15.032656Z DEBUG http_request{path=/_matrix/client/v3/rooms/:room_id/initialSync}: tower_http::trace::on_response: finished processing request latency=0 ms status=403 2023-12-03T18:34:15.042757Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: tower_http::trace::on_request: started processing request 2023-12-03T18:34:15.042849Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: tower_http::trace::on_response: finished processing request latency=0 ms status=200 2023-12-03T18:34:15.082507Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: tower_http::trace::on_request: started processing request 2023-12-03T18:34:15.084923Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: conduit::api::ruma_wrapper::axum: Request { method: POST, uri: /_matrix/client/v3/join/%23hm%3Arycee.net, version: HTTP/1.1, headers: {"host": "conduit-test.magnesium.progval.net", "x-real-ip": "2a01:cb08:b80:2100:fdc4:d65c:9c25:799f", "x-forwarded-for": "2a01:cb08:b80:2100:fdc4:d65c:9c25:799f", "x-forwarded-proto": "https", "content-length": "2", "user-agent": "Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/114.0", "accept": "application/json", "accept-language": "en-US,en;q=0.5", "accept-encoding": "gzip, deflate, br", "content-type": "application/json", "origin": "https://app.element.io", "sec-fetch-dest": "empty", "sec-fetch-mode": "cors", "sec-fetch-site": "cross-site", "authorization": Sensitive}, body: [123, 125] } 2023-12-03T18:34:15.085095Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request: conduit::service::sending: Waiting for permit 2023-12-03T18:34:15.085124Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request: conduit::service::sending: Got permit 2023-12-03T18:34:15.085176Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Preparing to send request to rycee.net 2023-12-03T18:34:15.085743Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Sending request to rycee.net at https://matrix.rycee.net/_matrix/federation/v1/query/directory?room_alias=%23hm%3Arycee.net 2023-12-03T18:34:15.367590Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Received response from rycee.net at https://matrix.rycee.net/_matrix/federation/v1/query/directory?room_alias=%23hm%3Arycee.net 2023-12-03T18:34:15.367697Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Getting response bytes from rycee.net 2023-12-03T18:34:15.367832Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Got response bytes from rycee.net 2023-12-03T18:34:15.367887Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Parsing response bytes from rycee.net 2023-12-03T18:34:15.368542Z INFO http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: conduit::api::client_server::membership: Joining !YllBCgVdcoakoavZvX:rycee.net over federation. 2023-12-03T18:34:15.368624Z INFO http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: conduit::api::client_server::membership: Asking rycee.net for make_join 2023-12-03T18:34:15.368709Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request: conduit::service::sending: Waiting for permit 2023-12-03T18:34:15.368755Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request: conduit::service::sending: Got permit 2023-12-03T18:34:15.368870Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Preparing to send request to rycee.net 2023-12-03T18:34:15.369982Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Sending request to rycee.net at https://matrix.rycee.net/_matrix/federation/v1/make_join/!YllBCgVdcoakoavZvX:rycee.net/@valtest:conduit-test.magnesium.progval.net?ver=6&ver=7&ver=8&ver=9&ver=10&ver=3&ver=4&ver=5&ver=11 2023-12-03T18:34:15.525470Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Received response from rycee.net at https://matrix.rycee.net/_matrix/federation/v1/make_join/!YllBCgVdcoakoavZvX:rycee.net/@valtest:conduit-test.magnesium.progval.net?ver=6&ver=7&ver=8&ver=9&ver=10&ver=3&ver=4&ver=5&ver=11 2023-12-03T18:34:15.525580Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Getting response bytes from rycee.net 2023-12-03T18:34:15.525691Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Got response bytes from rycee.net 2023-12-03T18:34:15.525757Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Parsing response bytes from rycee.net 2023-12-03T18:34:15.526004Z INFO http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: conduit::api::client_server::membership: make_join finished 2023-12-03T18:34:15.528987Z INFO http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: conduit::api::client_server::membership: Asking rycee.net for send_join 2023-12-03T18:34:15.529355Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request: conduit::service::sending: Waiting for permit 2023-12-03T18:34:15.529413Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request: conduit::service::sending: Got permit 2023-12-03T18:34:15.529521Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Preparing to send request to rycee.net 2023-12-03T18:34:15.531047Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Sending request to rycee.net at https://matrix.rycee.net/_matrix/federation/v2/send_join/!YllBCgVdcoakoavZvX:rycee.net/$iQZO4V5IAubO7kxYCCbokyLrxvGSPIsBQ5t8z1sLvDw 2023-12-03T18:34:16.326639Z DEBUG http_request{path=/.well-known/matrix/server}: tower_http::trace::on_request: started processing request 2023-12-03T18:34:16.326819Z WARN http_request{path=/.well-known/matrix/server}: conduit: Not found: /.well-known/matrix/server 2023-12-03T18:34:16.326892Z INFO http_request{path=/.well-known/matrix/server}: conduit::utils::error: Returning an error: 404 Not Found: M_UNRECOGNIZED: Unrecognized request 2023-12-03T18:34:16.327055Z DEBUG http_request{path=/.well-known/matrix/server}: tower_http::trace::on_response: finished processing request latency=0 ms status=404 2023-12-03T18:34:16.957677Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Received response from rycee.net at https://matrix.rycee.net/_matrix/federation/v2/send_join/!YllBCgVdcoakoavZvX:rycee.net/$iQZO4V5IAubO7kxYCCbokyLrxvGSPIsBQ5t8z1sLvDw 2023-12-03T18:34:16.957747Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Getting response bytes from rycee.net 2023-12-03T18:34:17.226534Z DEBUG http_request{path=/.well-known/matrix/server}: tower_http::trace::on_request: started processing request 2023-12-03T18:34:17.226621Z WARN http_request{path=/.well-known/matrix/server}: conduit: Not found: /.well-known/matrix/server 2023-12-03T18:34:17.226648Z INFO http_request{path=/.well-known/matrix/server}: conduit::utils::error: Returning an error: 404 Not Found: M_UNRECOGNIZED: Unrecognized request 2023-12-03T18:34:17.226726Z DEBUG http_request{path=/.well-known/matrix/server}: tower_http::trace::on_response: finished processing request latency=0 ms status=404 2023-12-03T18:34:17.343670Z DEBUG http_request{path=/.well-known/matrix/server}: tower_http::trace::on_request: started processing request 2023-12-03T18:34:17.343833Z WARN http_request{path=/.well-known/matrix/server}: conduit: Not found: /.well-known/matrix/server 2023-12-03T18:34:17.343885Z INFO http_request{path=/.well-known/matrix/server}: conduit::utils::error: Returning an error: 404 Not Found: M_UNRECOGNIZED: Unrecognized request 2023-12-03T18:34:17.344062Z DEBUG http_request{path=/.well-known/matrix/server}: tower_http::trace::on_response: finished processing request latency=0 ms status=404 2023-12-03T18:34:17.351017Z DEBUG http_request{path=/_matrix/federation/v1/send/:transaction_id}: tower_http::trace::on_request: started processing request 2023-12-03T18:34:17.351619Z DEBUG http_request{path=/_matrix/federation/v1/send/:transaction_id}: conduit::api::ruma_wrapper::axum: Unexpected field `destination` in X-Matrix Authorization header 2023-12-03T18:34:17.351963Z DEBUG http_request{path=/_matrix/federation/v1/send/:transaction_id}:fetch_signing_keys: conduit::service::rooms::event_handler: Fetching signing keys for rycee.net over federation 2023-12-03T18:34:17.352052Z DEBUG http_request{path=/_matrix/federation/v1/send/:transaction_id}:fetch_signing_keys:send_federation_request: conduit::service::sending: Waiting for permit 2023-12-03T18:34:17.352091Z DEBUG http_request{path=/_matrix/federation/v1/send/:transaction_id}:fetch_signing_keys:send_federation_request: conduit::service::sending: Got permit 2023-12-03T18:34:17.352177Z DEBUG http_request{path=/_matrix/federation/v1/send/:transaction_id}:fetch_signing_keys:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Preparing to send request to rycee.net 2023-12-03T18:34:17.353020Z DEBUG http_request{path=/_matrix/federation/v1/send/:transaction_id}:fetch_signing_keys:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Sending request to rycee.net at https://matrix.rycee.net/_matrix/key/v2/server [...] 2023-12-03T18:34:27.932329Z DEBUG http_request{path=/.well-known/matrix/server}: tower_http::trace::on_response: finished processing request latency=0 ms status=404 2023-12-03T18:34:28.195259Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Got response bytes from rycee.net 2023-12-03T18:34:28.195359Z DEBUG http_request{path=/_matrix/client/v3/join/:room_id_or_alias}:send_federation_request:send_request{destination="rycee.net"}: conduit::api::server_server: Parsing response bytes from rycee.net 2023-12-03T18:34:28.298262Z INFO http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: conduit::api::client_server::membership: send_join finished 2023-12-03T18:34:28.298293Z INFO http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: conduit::api::client_server::membership: There is a signed event. This room is probably using restricted joins. Adding signature to our event 2023-12-03T18:34:28.298511Z WARN http_request{path=/_matrix/client/v3/join/:room_id_or_alias}: conduit::api::client_server::membership: Server rycee.net sent invalid signature in sendjoin signatures for event {"auth_events": Array([String("$B8NBX6oUzLTq8OuFK_YvCJhqn2P_0fARY29XSZ6T3DA"), String("$0pt22mJ5ZFjIdguJmKzZyBjhMQGEzOgtoe_3IwqE8KY"), String("$LR-AN_TTZyWaFQ9mbw5mW4S_pWgOEx6yWGq49tQertc")]), "content": Object({"displayname": String("valtest ⚡\u{fe0f}"), "membership": String("join")}), "depth": 30067, "hashes": Object({"sha256": String("RbdWqS9ITKDyyrhNWyPl3HJh0dGei6cAYww2YNSwzgY")}), "origin": String("conduit-test.magnesium.progval.net"), "origin_server_ts": 1701628455526, "prev_events": Array([String("$JLPE00oc8PoNUw1VIM0QdihC7kUhNvQlFvdX4uG5EpU")]), "room_id": String("!YllBCgVdcoakoavZvX:rycee.net"), "sender": String("@valtest:conduit-test.magnesium.progval.net"), "signatures": Object({"conduit-test.magnesium.progval.net": Object({"ed25519:vfVYq8Ey": String("RtUU4OfUyBxKm+CT0feCvUT9la/IchEK0Kjb7C1AFX2ROrPSkDtA22NoVjhApZc57q7byY1q7lsLChEKZ6DOCw")})}), "state_key": String("@valtest:conduit-test.magnesium.progval.net"), "type": String("m.room.member"), "unsigned": Object({})}: BadRequest(InvalidParam, "Server did not send its signature") ```
_ZN3val commented 2023-12-03 18:51:35 +00:00 (Migrated from gitlab.com)

In https://spec.matrix.org/v1.9/server-server-api/#put_matrixfederationv2send_joinroomideventid the spec says: "The signed copy of the membership event sent to other servers by the resident server, including the resident server’s signature."

So it seems the Synapse at rycee.net is to blame here

In https://spec.matrix.org/v1.9/server-server-api/#put_matrixfederationv2send_joinroomideventid the spec says: "The signed copy of the membership event sent to other servers by the resident server, including the resident server’s signature." So it seems the Synapse at `rycee.net` is to blame here
_ZN3val commented 2023-12-03 19:03:38 +00:00 (Migrated from gitlab.com)

Reproduced with matrix.org and reported to Synapse: https://github.com/matrix-org/synapse/issues/16717

Reproduced with matrix.org and reported to Synapse: https://github.com/matrix-org/synapse/issues/16717
_ZN3val commented 2024-01-11 16:16:18 +00:00 (Migrated from gitlab.com)
WONTFIX from Synapse: https://github.com/element-hq/synapse/issues/16717#issuecomment-1887343791
CobaltCause commented 2024-01-20 06:24:32 +00:00 (Migrated from gitlab.com)

Expanding on that: the spec at the time Conduit implemented it was misleading and will be clarified in the future. This means that Conduit will need to change its behavior here. See also https://github.com/matrix-org/matrix-spec/issues/1708

Expanding on that: the spec at the time Conduit implemented it was misleading and will be clarified in the future. This means that Conduit will need to change its behavior here. See also <https://github.com/matrix-org/matrix-spec/issues/1708>
CobaltCause commented 2024-01-20 19:21:24 +00:00 (Migrated from gitlab.com)
Here's another report of this issue: https://matrix.to/#/!SMloEYlhCiqKwRLAgY:fachschaften.org/$WgBaN0Bdbrwbvlm-OhSmjmh7HgqgjCWHZpdZ4IqpUiw?via=flipdot.org&via=matrix.org&via=conduit.rs
Sign in to join this conversation.
No labels
Android
CS::needs customer feedback
CS::needs follow up
CS::needs on prem installation
CS::waiting
Chrome
Design:: Ready
Design:: in progress
Design::UX
E2EE
Edge
Firefox
GDPR
Iteration 13 IM
Linux
MacOS
Need::Discussion
Need::Steps to reproduce
Need::Upstream fix
Needs:: Planning
Needs::Dev-Team
Needs::More information
Needs::Priority
Needs::Product
Needs::Refinement
Needs::Severity
Priority::1-Critical
Priority::2-Max
Priority::3-Impending
Priority::4-High
Priority::5-Medium
Priority::6-Low
Priority::7-None
Progress::Backlog
Progress::Review
Progress::Started
Progress::Testing
Progress::Triage
Progress::Waiting
Reporter::Sentry
Safari
Target::Community
Target::Customer
Target::Internal
Target::PoC
Target::Security
Team:Customer-Success
Team:Design
Team:Infrastructure
Team:Instant-Messaging
Team:Product
Team:Workflows
Type::Bug
Type::Design
Type::Documentation
Type::Feature
Type::Improvement
Type::Support
Type::Tests
Windows
blocked
blocked-by-spec
cla-signed
conduit
contribution::advanced
contribution::easy
contribution::help needed
from::review
iOS
p::ti-tenant
performance
product::triage
proposal
refactor
release-blocker
s: dart_openapi_codegen
s::Famedly-Patient
s::Org-Directory
s::Passport-Generator
s::Requeuest
s:CRM
s:Famedly-App
s:Famedly-Web
s:Fhiroxide
s:Fhiroxide-cli
s:Fhiroxide-client
s:Fhirs
s:Hedwig
s:LISA
s:Matrix-Dart-SDK
s:Role-Manager
s:Synapse
s:User-Directory
s:WFS-Matrix
s:Workflow Engine
s:dtls
s:famedly-error
s:fcm-shared-isolate
s:matrix-api-lite
s:multiple-tab-detector
s:native-imaging
severity::1
severity::2
severity::3
severity::4
technical-debt
voip
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: Matthias/conduit#411
No description provided.