Changeset 11124 in ntrip for trunk/BNC/src
- Timestamp:
- Oct 24, 2026, 10:10:29 PM (13 days ago)
- Location:
- trunk/BNC/src
- Files:
-
- 7 edited
-
RTCM3/RTCM3Decoder.cpp (modified) (1 diff)
-
RTCM3/clock_and_orbit/clock_orbit.h (modified) (1 diff)
-
RTCM3/clock_and_orbit/clock_orbit_rtcm_new.cpp (modified) (2 diffs)
-
RTCM3/crs.h (modified) (5 diffs)
-
bncnetqueryrtp.cpp (modified) (6 diffs)
-
bncnetqueryv1.cpp (modified) (1 diff)
-
upload/bncrtnetuploadcaster.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/BNC/src/RTCM3/RTCM3Decoder.cpp
r11084 r11124 2173 2173 for (int i = 0; i < dblinksnum; i++) { 2174 2174 int dblinknum = -1; 2175 char dblinkname[3 1];2175 char dblinkname[32]; // up to 31 characters (5-bit length) + terminating 0 2176 2176 GETBITS(dblinknum, 5) 2177 2177 if (dblinknum > -1 && dblinknum <= 31) { -
trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit.h
r11048 r11124 454 454 unsigned int Degree; /* 1-16 */ 455 455 unsigned int Order; /* 1-16 */ 456 double Sinus[VTEC_MAXIONODEGREE][VTEC_MAXIONOORDER]; 457 double Cosinus[VTEC_MAXIONODEGREE][VTEC_MAXIONOORDER]; 456 /* indices 0 .. Degree / 0 .. Order, both up to 16 */ 457 double Sinus[VTEC_MAXIONODEGREE+1][VTEC_MAXIONOORDER+1]; 458 double Cosinus[VTEC_MAXIONODEGREE+1][VTEC_MAXIONOORDER+1]; 458 459 } Layers[VTEC_NUMIONOLAYERS]; 459 460 }; -
trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_rtcm_new.cpp
r11046 r11124 637 637 fprintf(stderr, "ssrIod %d providerId %d solId %d numEntries %d \n", 638 638 md->SSRIOD, md->SSRProviderID, md->SSRSolutionID, md->NumEntries); 639 #endif 639 #endif 640 if (md->NumEntries > META_MAXNUMENTRIES) { /* DF+063 is 5 bits wide */ 641 md->NumEntries = 0; 642 return GCOBR_DATAMISMATCH; 643 } 640 644 for (i = 0; i < md->NumEntries; i++) { 641 645 unsigned int additionalBits; … … 687 691 if (md->Entries[i].nonDefaultIndicator && 688 692 md->Entries[i].additionalParameterIndicator) { 689 D_ADDITIONAL_MODEL_PARAMETER_DATA(md->Entries[i].additionalParameterData, additionalBits) 693 /* DF+071 allows up to 255 bits, only 32 can be stored: skip the 694 leading excess bits, keep the trailing 32 */ 695 while (additionalBits > 32) { 696 unsigned int n = (additionalBits - 32 > 32) ? 32 : additionalBits - 32; 697 SKIPSSRBITS(n) 698 additionalBits -= n; 699 } 700 if (additionalBits) 701 D_ADDITIONAL_MODEL_PARAMETER_DATA(md->Entries[i].additionalParameterData, additionalBits) 690 702 #ifdef BNC_DEBUG_SSR 691 703 fprintf(stderr, "- additional-data-parameter-data : %d\n", md->Entries[i].additionalParameterData); -
trunk/BNC/src/RTCM3/crs.h
r10545 r11124 24 24 } 25 25 void clear(void) { 26 memset(_name, '\0', 31 *sizeof(char));26 memset(_name, '\0', sizeof(_name)); 27 27 _coordinateEpoch = 0; 28 28 _CE = 0; … … 38 38 void setCoordinateEpochFromCE() {(!_CE) ? _coordinateEpoch = 0.0 : _coordinateEpoch = 1900 + _CE; } 39 39 void setCEFromCoordinateEpoch() {(!_coordinateEpoch) ? _CE = 0 : _CE = _coordinateEpoch -1900; } 40 char _name[3 1];40 char _name[32]; // up to 31 characters (5-bit length) + terminating 0 41 41 double _coordinateEpoch; 42 42 double _CE; … … 55 55 } 56 56 void clear() { 57 memset(_name, '\0', 31 *sizeof(char));57 memset(_name, '\0', sizeof(_name)); 58 58 _anchor = 0; 59 59 _plateNumber = 0; … … 71 71 } 72 72 } 73 char _name[3 1];73 char _name[32]; // up to 31 characters (5-bit length) + terminating 0 74 74 int _anchor; // 0.. global CRS (=> Plate number 0), 1.. plate-fixed CRS 75 75 int _plateNumber; // 0.. unknown, 7.. Eurasia … … 171 171 cout << endl; 172 172 } 173 char _sourceName[3 1];174 char _targetName[3 1];173 char _sourceName[32]; // up to 31 characters (5-bit length) + terminating 0 174 char _targetName[32]; 175 175 int _sysIdentNum; 176 176 int _utilTrafoMessageIndicator; -
trunk/BNC/src/bncnetqueryrtp.cpp
r8231 r11124 47 47 _status = finished; 48 48 if (_socket) { 49 QByteArray reqStr = "TEARDOWN " + _url.toEncoded() + " RTSP/1.0\r\n" 49 QByteArray reqStr = "TEARDOWN " + _url.toEncoded(QUrl::RemoveUserInfo) + " RTSP/1.0\r\n" 50 50 + "CSeq: " + QString("%1").arg(++_CSeq).toLatin1() + "\r\n" 51 51 + "Session: " + _session + "\r\n" … … 59 59 void bncNetQueryRtp::slotKeepAlive() { 60 60 if (_socket) { 61 QByteArray reqStr = "GET_PARAMETER " + _url.toEncoded() + " RTSP/1.0\r\n" 61 QByteArray reqStr = "GET_PARAMETER " + _url.toEncoded(QUrl::RemoveUserInfo) + " RTSP/1.0\r\n" 62 62 + "CSeq: " + QString("%1").arg(++_CSeq).toLatin1() + "\r\n" 63 63 + "Session: " + _session + "\r\n" … … 144 144 145 145 QByteArray reqStr; 146 reqStr = "SETUP " + _url.toEncoded() + " RTSP/1.0\r\n" 146 reqStr = "SETUP " + _url.toEncoded(QUrl::RemoveUserInfo) + " RTSP/1.0\r\n" 147 147 + "CSeq: " + QString("%1").arg(++_CSeq).toLatin1() + "\r\n" 148 148 + "Ntrip-Version: Ntrip/2.0\r\n" … … 202 202 } 203 203 204 reqStr = "PLAY " + _url.toEncoded() + " RTSP/1.0\r\n" 204 reqStr = "PLAY " + _url.toEncoded(QUrl::RemoveUserInfo) + " RTSP/1.0\r\n" 205 205 + "CSeq: " + QString("%1").arg(++_CSeq).toLatin1() + "\r\n" 206 206 + "Session: " + _session + "\r\n" … … 216 216 while (!line.isEmpty()) { 217 217 if (line.indexOf("200 OK") != -1) { 218 emit newMessage(_url.toEncoded().replace(0,1,"") 218 emit newMessage(_url.toEncoded(QUrl::RemoveUserInfo).replace(0,1,"") 219 219 + ": UDP connection established", true); 220 220 slotKeepAlive(); … … 233 233 _socket = 0; 234 234 _status = error; 235 emit newMessage(_url.toEncoded().replace(0,1,"") 235 emit newMessage(_url.toEncoded(QUrl::RemoveUserInfo).replace(0,1,"") 236 236 + ": NetQuery, waiting for connect", true); 237 237 } -
trunk/BNC/src/bncnetqueryv1.cpp
r8203 r11124 225 225 + userAndPwd + "\r\n"; 226 226 } else { 227 reqStr = "GET " + _url.toEncoded() + " HTTP/1.0\r\n" 227 reqStr = "GET " + _url.toEncoded(QUrl::RemoveUserInfo) + " HTTP/1.0\r\n" 228 228 + "User-Agent: NTRIP BNC/" BNCVERSION " (" BNC_OS ")\r\n" 229 229 + "Host: " + _url.host().toLatin1() + "\r\n" -
trunk/BNC/src/upload/bncrtnetuploadcaster.cpp
r11058 r11124 504 504 in >> ui >> vtec.NumLayers; 505 505 vtec.UpdateInterval = (unsigned int)determineUpdateInd(ui); 506 if (vtec.NumLayers > VTEC_NUMIONOLAYERS) { 507 vtec.NumLayers = 0; 508 } 506 509 for (unsigned ll = 0; ll < vtec.NumLayers; ll++) { 507 510 int dummy; 508 511 in >> dummy >> vtec.Layers[ll].Degree >> vtec.Layers[ll].Order 509 512 >> vtec.Layers[ll].Height; 513 if (vtec.Layers[ll].Degree < 1 || vtec.Layers[ll].Degree > VTEC_MAXIONODEGREE || 514 vtec.Layers[ll].Order < 1 || vtec.Layers[ll].Order > VTEC_MAXIONOORDER) { 515 vtec.NumLayers = 0; 516 break; 517 } 510 518 for (unsigned iDeg = 0; iDeg <= vtec.Layers[ll].Degree; iDeg++) { 511 519 for (unsigned iOrd = 0; iOrd <= vtec.Layers[ll].Order; iOrd++) {
Note:
See TracChangeset
for help on using the changeset viewer.
