-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improperly Formatted NTRIP sourcetable response #60
Comments
Hi @dclemmon, Thanks for the shout. I've uploaded a new branch fix-NTRIP-caster-HTTP-header-issue which should resolve this issue (tested on Windows, MacOS & Linux). Results before 88bd8e1: curl http:https://127.0.0.1:2101/ -H 'Connection: close' -H 'User-Agent: NTRIP pygnssutils' -H 'Accept: */*' -vvv -m 3 -u anon
Results after 88bd8e1: curl http:https://127.0.0.1:2101/ -H 'Connection: close' -H 'User-Agent: NTRIP pygnssutils' -H 'Accept: */*' -vvv -m 3 -u anon
I'd be grateful if you could install this branch yourself and confirm whether or not you get the same result: python3 -m pip install git+https://github.com/semuconsulting/pygnssutils@fix-NTRIP-caster-HTTP-header-issue Thanks |
Thanks for the quick response! I was able to test it out and your code change is working perfectly! Would you like me to close the issue from my side, or would you like to close it? |
Thanks @dclemmon . The issue wil be closed automatically once the branch is marged with main, which will hopefully be in the next week or so. Thanks again for the comprehensive issue report - most helpful. |
Improperly Formatted NTRIP sourcetable response
Describe the bug
The NTRIP sourcetable HTTP response from
socket_server.py
is missing the\r\n
separator line that should exist between the http header section and the body. This causes some http clients to treat the sourcetable data as a header, and can result is some clients hanging and timing out while they try to read the additional bytes specified in theContent-Length:
header.Running pygnssutils version 1.0.21, but issue exists in
main
branchTo Reproduce
Steps to reproduce the behaviour:
Here is the current output when running in verbose mode (
-vvv
):The sourcetable content can be seen in the response headers, and cURL times out trying to read data that will not arrive.
Expected Behaviour
I confirmed in the NTRIP 2.0 Spec that the expected output is the sourcetable in the HTTP body.
Running cURL in verbose mode (
-vvv
) the expected output would beIn the above example, the sourcetabe data is not returned in the headers, and the client does not timeout waiting for data.
Desktop (please complete the following information):
The text was updated successfully, but these errors were encountered: