Scott wrote 2011-06-30 21:37: >> Looks like I finally found it! I left a system and WireShark running >> overnight. My system crashed about 3:00am. Wireshark showed an HTTP GET >> coming in that had an invalid parameter value. My code should have caugh= t >> that, but did not. The incoming parameter is allowed to be 1 to 10, whic= h >> I then drop to 0 to 9 to index into an array. The parameter coming in wa= s >> 0, which I dropped to -1, which was not a valid array index. My range >> check was looking for>=3D0 instead of>0. That fixed it! >> > > That's good news. > > Do you use any static analysis tools like lint to help find these issues? > > I would hope lint or a good compiler would throw a warning about > "evaluation of>=3D 0 is always true" if the data type is unsigned int. > Of course, this only applies if you're writing in a language higher > than asm. > > -Scott Yes, these error are realy "interesting". :-) What about that other side of it, the system/box/whetever that sent the "0" parameter. Is that also something you have wrote ? If it was ment to only send 1-10, how come it sent a zero ? Jan-Erik. --=20 http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .