Login
User Name:

Password:



Register

Forgot your password?
Changes list / Addchange
Author: Khonsu
Submitted by: Khonsu
6Dragons mp3 sound pack
Author: Vladaar
Submitted by: Vladaar
AFKMud 2.2.3
Author: AFKMud Team
Submitted by: Samson
SWFOTEFUSS 1.5
Author: Various
Submitted by: Samson
SWRFUSS 1.4
Author: Various
Submitted by: Samson
Users Online
AhrefsBot, Google, Bing

Members: 0
Guests: 32
Stats
Files
Topics
Posts
Members
Newest Member
488
3,788
19,631
595
Khonsu

Today's Birthdays
There are no member birthdays today.
» SmaugMuds » Bugfix Lists » AFKMud Bugfix List » [Bug] Array boundary exceeded...
Forum Rules | Mark all | Recent Posts

[Bug] Array boundary exceeded during socket buffer flush
< Newer Topic :: Older Topic > AFKMud 2.1

Pages:<< prev 1 next >>
Post is unread #1 Oct 5, 2008 9:34 pm   
Go to the top of the page
Go to the bottom of the page

Samson
Black Hand
GroupAdministrators
Posts3,685
JoinedJan 1, 2002

 
Bug: Array boundary exceeded during socket buffer flush
Danger: High, with critical potential. Possible crashes or memory corruption due to array boundary overflow.
Discovered in: AFKMud 2.1
Found by: GCC 4.3
Fixed by: Samson

---

descriptor.cpp, descriptor_data::flush_buffer

Locate:
         buf[4096] = '\0';


Change to:
         buf[4095] = '\0';


GCC 4.3 issues the following warning:
descriptor.cpp: In member function 'bool descriptor_data::flush_buffer(bool)':
descriptor.cpp:528: warning: array subscript is above array bounds


Standard array buffer overflow. Guess it's never caused a problem before since it's never been reported. However NULLing memory outside of the array's boundary? Probably not such a hot idea.

Apparently some of the new warnings that have been enabled are actually useful.

Pages:<< prev 1 next >>