crossbario / crossbar

Crossbar.io - WAMP application router
https://crossbar.io/
Other
2.05k stars 275 forks source link

Internal Error Attempting Rlink Forwarding #2076

Open Skully17 opened 1 year ago

Skully17 commented 1 year ago

Hello,

I have a simple setup of a “local” Crossbar router which connects to a “remote” Crossbar router using Rlink. When calling/publishing from the “remote” router to a URL that was registered/subscribed to, I am getting this error: RLinkRemoteSession.onUserError(): "RuntimeError: Internal error attempting rlink forwarding"

I can see that this is being raised here and it’s because details does not have a caller, caller_authrole or caller_authid: https://github.com/crossbario/crossbar/blob/03d7057ee18a0d1e59b33bf1633ee246c1cf908a/crossbar/worker/rlink.py#L292

I can’t work out why these values are not being set or even how they are set at all. How are details passed to the on_call method here: https://github.com/crossbario/crossbar/blob/03d7057ee18a0d1e59b33bf1633ee246c1cf908a/crossbar/worker/rlink.py#L284

I can see that this method is registered here but details isn't passed there, just reference in RegisterOptions: https://github.com/crossbario/crossbar/blob/03d7057ee18a0d1e59b33bf1633ee246c1cf908a/crossbar/worker/rlink.py#L344

Does RegisterOptions supply the details?

Just to be clear, the same process works when the “local” router calls/registers to a URI that has been registered/subscribed to on the “remote” router and I can see that the caller variables in details have values.

Skully17 commented 1 year ago

This comment describes exactly what tripped me up: https://github.com/crossbario/crossbar/issues/1909#issuecomment-974705712

Would it be agreeable if the error message "Internal error attempting rlink forwarding" was edited to include a suggestion to change the role's disclosures to "true" if this is not expected behaviour?