Ignore:
Timestamp:
Oct 24, 2026, 10:10:29 PM (6 days ago)
Author:
stuerze
Message:

Some fixes regarding memory corruption from stream data, credential exposure,

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/BNC/src/upload/bncrtnetuploadcaster.cpp

    r11058 r11124  
    504504            in >> ui >> vtec.NumLayers;
    505505            vtec.UpdateInterval = (unsigned int)determineUpdateInd(ui);
     506            if (vtec.NumLayers > VTEC_NUMIONOLAYERS) {
     507                vtec.NumLayers = 0;
     508            }
    506509            for (unsigned ll = 0; ll < vtec.NumLayers; ll++) {
    507510                int dummy;
    508511                in >> dummy >> vtec.Layers[ll].Degree >> vtec.Layers[ll].Order
    509512                    >> 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                }
    510518                for (unsigned iDeg = 0; iDeg <= vtec.Layers[ll].Degree; iDeg++) {
    511519                    for (unsigned iOrd = 0; iOrd <= vtec.Layers[ll].Order; iOrd++) {
Note: See TracChangeset for help on using the changeset viewer.