This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
RE: TCP/IP Stack packet regrouping
- To: "'Grant Edwards'" <grante at visi dot com>
- Subject: RE: [ECOS] TCP/IP Stack packet regrouping
- From: "Trenton D. Adams" <tadams at extremeeng dot com>
- Date: Mon, 16 Jul 2001 16:35:20 -0600
- Cc: "'eCos Discussion'" <ecos-discuss at sourceware dot cygnus dot com>
- Organization: Extreme Engineering
> On Mon, Jul 16, 2001 at 03:44:40PM -0600, Trenton D. Adams wrote:
>
> > I'm reading the Linux documentation on send (), and it says
> > that a send () call will block if "the message does not fit
> > into the send buffer of the socket". Which tells me it that it
> > is sending the information all at once (from the programmer's
> > perspective). It also says that if it's to big to pass through
> > the underlying protocol, it will return with an error of
> > EMSGSIZE. Is this correct or not?
>
> It does appear that a write on a TCP socket under Linux will
> block until all of the data is sent -- I tried a single write()
> with block sizes up to 16MB, and it blocked until all data was
> sent. However, if a signal comes along, the write() gets
> interrupted and it returns a partial value.
>
You mean an OS signal like SIGHUP or something?