[Spread-cvs] cvs commit: spread/daemon session.c Makefile.in Readme.txt
jonathan at spread.org
jonathan at spread.org
Tue Jun 17 15:00:12 EDT 2003
jonathan 03/06/17 15:00:11
Modified: daemon session.c Makefile.in Readme.txt
Log:
Fix memory corruption/crash bug when fragmented message headers received by
the daemon. Also change the order in the makefile so docs are built after
the binary.
Revision Changes Path
1.14 +3 -1 spread/daemon/session.c
Index: session.c
===================================================================
RCS file: /storage/cvsroot/spread/daemon/session.c,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- session.c 28 Mar 2003 16:26:00 -0000 1.13
+++ session.c 17 Jun 2003 19:00:10 -0000 1.14
@@ -1153,6 +1153,7 @@
int len, remain, ret;
int head_size, data_frag_len;
int ses, ioctl_cmd;
+ char *head_cbuf;
#if 0
#ifndef ARCH_SCATTER_NONE
static struct msghdr msgh;
@@ -1187,6 +1188,7 @@
msg = Sessions[ses].read_mess;
head_ptr = Message_get_message_header(msg);
+ head_cbuf = (char *) head_ptr;
head_size = Message_get_header_size();
/* set file descriptor to non blocking */
@@ -1198,7 +1200,7 @@
/* read up to size of message_header */
len = Sessions[ses].read.cur_byte;
remain = sizeof(message_header) - len;
- ret = recv( mbox, (char *) &head_ptr[len], remain, 0 );
+ ret = recv( mbox, (char *) &head_cbuf[len], remain, 0 );
if( ret == remain )
{
Sessions[ses].read.cur_byte += ret;
1.7 +1 -1 spread/daemon/Makefile.in
Index: Makefile.in
===================================================================
RCS file: /storage/cvsroot/spread/daemon/Makefile.in,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- Makefile.in 28 Mar 2003 16:24:48 -0000 1.6
+++ Makefile.in 17 Jun 2003 19:00:10 -0000 1.7
@@ -77,7 +77,7 @@
FIXPATHSCMD = $(PERL) $(buildtoolsdir)/fixpaths $(PATHSUBS)
-all: $(CONFIGFILES) $(MANPAGES) $(TARGETS)
+all: $(TARGETS) $(MANPAGES)
$(SPREADOBJS): config.h
$(MONITOROBJS): config.h
1.32 +7 -2 spread/daemon/Readme.txt
Index: Readme.txt
===================================================================
RCS file: /storage/cvsroot/spread/daemon/Readme.txt,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- Readme.txt 17 Jun 2003 01:05:48 -0000 1.31
+++ Readme.txt 17 Jun 2003 19:00:10 -0000 1.32
@@ -46,10 +46,10 @@
| WWW : http://www.spread.org and http://www.cnds.jhu.edu |
| Contact: spread at spread.org |
| |
-| Version 3.17.1 Built XX/November/2002 |
+| Version 3.17.1 Built XX/June/2003 |
\===========================================================================/
-November XX, 2002 Ver 3.17.1
+June XX, 2003 Ver 3.17.1
----------------------------
Bugfixes:
*) Fix memory corruption and crash with groups of large size.
@@ -66,6 +66,11 @@
*) Fix Win32 project files to have correct path to source files.
(note CVS was always ok, but 3.17.0 release had incorrect path)
*) Fix bug where large groups overflow Mess_buf in groups.c.
+*) Fix memory corruption bug when a message header is received in
+ several separate packets in session.c. Thanks to Ryan Caudy for
+ many, many hours tracking this down.
+*) Change order of build in Makefile so binaries are built before
+ documentation.
September 25, 2002 Ver 3.17.0
----------------------
More information about the Spread-cvs
mailing list