> I think what you will want to do is increase the buffer AND limit the > amount of vnums returned. Since you're paging to the character, it won't > disconnect them, but you do have the problem with the buffer. > > Or, alternately, find/invent another way to page it to the character. > > --SR Well, that's just a poor-man's fix. It still has the potential to break. Just keep track of the character count. Use strlen, or what have you.... if ever 'strlen(buf) + strlen(next_line) > MAX_STRING_LENGTH' - stop writing. That way you'll never go over bounds. > > On Mon, 10 Jul 2000, Patrick Dughi wrote: > > > > I have experienced slight problems with the liblist commands (mlist, olist, > > > rlist, zlist) when I list with mlist, olist, and rlist and specify a range > > > larger than <olist 1000 4100> (stock bpl17 zones plus 5 zones) the list > > > worked fine with about 241 entries in the list, but greater than that, it > > > doesn't work, what can I do to fix this? It seems that the server crashes > > > when the list goes over 300 entries, because when I used rlist, and the list > > > ended at 309 it crashed after it was done printing with page_string... > > > > > > > This sounds like you haven't put in any sort of bounds checking. > > Without looking at that patch, I would guess that it uses the global 'buf' > > to write to, and that you're exceeding the MAX_STRING_LENGTH (or whatever > > size 'buf' is in your system). You can count chars and make sure you > > don't overwrite the bounds, and truncate at the max length.(most users > > can't take that level of screen spam anyway - their client will disconnect > > them). > > > > Of course, if you're lazy, you can just limit the number of > > returns, or increase the size of your buffer. These are just bandaids > > though, and eventually it will crash again in the right circumstances. > > > > PjD > > > > > > +------------------------------------------------------------+ > > | Ensure that you have read the CircleMUD Mailing List FAQ: | > > | http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html | > > +------------------------------------------------------------+ > > > > > +------------------------------------------------------------+ > | Ensure that you have read the CircleMUD Mailing List FAQ: | > | http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html | > +------------------------------------------------------------+ > +------------------------------------------------------------+ | Ensure that you have read the CircleMUD Mailing List FAQ: | | http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html | +------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 04/10/01 PDT