While setting up Hysteria’s FinalMask to use Salamander type and its password, Happ works perfectly and receives the finalmask object completely but this behaviour is not persistent in other clients mentioned in the title.
Colleagues reported that even after fixing finalmask base64 on dev builds those clients were receiving these fields correctly but on stable release this behaviour changed (I cannot confirm dev build being ok on Streisand/Shadowrocket, I can only confirm that on stable those fields are empty in these clients)
This is a client application issue, not a panel issue. As I answered here, the Xray documentation doesn’t provide precise specifications for the Hysteria2 base64 format. We either strictly adhere to the Xray format, or strictly adhere to the Hysteria2 format (from the Hysteria2 documentation). In that case, we can forget about finalMask.
Nothing changed from that dev build on stable anyway.
I see, in that case maybe those clients are expecting Hysteria’s format because they supported those types of configs before Xray supporting it and still not supporting the Xray format.
Thanks for clarification.
While it would be possible to return these passwords to separate fields (as per the Hysteria2 documentation), they will still remain within finalMask. Some applications will likely handle these cases differently.
I did not expect you to try to handle this niche issue, Awesome! thanks.
So now, those fields will be passed to those kind of clients without breaking the previous fix to pass the finalmask as specified in the inbound, correct?