Port number not passed in Host header of Firefox Sync request
Categories
(Firefox for Android Graveyard :: Android Sync, defect)
Tracking
(Not tracked)
People
(Reporter: v3l0c1r4pt0r+bugzilla, Unassigned)
Details
User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0
Steps to reproduce:
- I set up self-hosted Sync server with http and mod_wsgi on non-standard TCP port with TLS encryption turned on.
- Modify tokenserver in about:config to point to my server, i.e. https://server.local:1234/
- Log in to Mozilla Account and Sync manually using Android settings
Actual results:
Android claims sync was successful, but nothing else happens, i.e. no data was synchronized. httpd logs error 500 and exception coming from syncserver on request to /token/1.0/sync/1.5. This is very similar to: https://github.com/mozilla-services/syncserver/issues/48 and according to the discussion there, was worked around from about version 1.5.0. However this workaround is not there anymore as of 1.8.0.
In HTTP transmission it is clearly visible that unlike desktop, Android sends following HTTP header:
Host: server.local
where desktop Firefox sends:
Host: server.local:1234
In latter case, it is fine.
This is most likely what syncserver then compares as public_url and application url (public URL is set to https://server.local:1234/). If so this assertion certainly must fail for Android, unless force_wsgi_environ = true is specified in server config.
Expected results:
Request being successful and continuation of synchronization process. This is exactly what happens, if I set force_wsgi_environ to true on server instance.
Comment 1•6 years ago
|
||
Firefox for Android is not receiving any feature changes at this time. It is currently a feature request for Firefox Preview https://github.com/mozilla-mobile/fenix/issues/3762
Updated•5 years ago
|
Description
•