summaryrefslogtreecommitdiffstats
path: root/cpukit/libnetworking (unfollow)
Commit message (Collapse)AuthorFilesLines
1999-07-12Patch from Eric Norum <eric@cls.usask.ca>:Joel Sherrill1-20/+15
I get the following warning when compiling the latest snapshot. I had a quick look at the source -- it certainly looks to me like this is a real bug. ../../../../src/rtems-19990709/c/src/lib/libc/mount.c:97: warning: `options' might be used uninitialized in this function Also, I changed the TFTP test program and TFTP driver to reflect the changes in the way paths are passed to the TFTP driver. The TFTP driver now needs a proper `dotted-decimal' hostname as the second component of the path name.
1999-06-15After comments D. V. Henkel-Wallace <gumby@zembu.com>, the interface toJoel Sherrill1-1/+1
mount() was changed to avoid the use of a string as the options.
1999-06-11Patch from Ian Lance Taylor <ian@airs.com>:Joel Sherrill4-2/+64
The select function is not particularly efficient when dealing with a large number of sockets. The application has to build a big set of bits and pass it in. RTEMS has to look through all those bits and see what is ready. Then the application has to look through all the bits again. On the other hand, when using RTEMS, the select function is needed exactly when you have a large number of sockets, because that is when it becomes prohibitive to use a separate thread for each socket. I think it would make more sense for RTEMS to support callback functions which could be invoked when there is data available to read from a socket, or when there is space available to write to a socket. Accordingly, I implemented them. This patch adds two new SOL_SOCKET options to setsockopt and getsockopt: SO_SNDWAKEUP and SO_RCVWAKEUP. They take arguments of type struct sockwakeup: struct sockwakeup { void (*sw_pfn) __P((struct socket *, caddr_t)); caddr_t sw_arg; }; They are used to add or remove a function which will be called when something happens for the socket. Getting a callback doesn't imply that a read or write will succeed, but it does imply that it is worth trying. This adds functionality to RTEMS which is somewhat like interrupt driven socket I/O on Unix. After the patch to RTEMS, I have appended a patch to netdemos-19990407/select/test.c to test the new functionality and demonstrate one way it might be used. To run the new test instead of the select test, change doSocket to call echoServer2 instead of echoServer.
1999-06-11Patch from Eric Norum <eric@cls.usask.ca> to fix bug reported byJoel Sherrill1-0/+2
Ian Lance Taylor <ian@airs.com>: Ian Lance Taylor wrote: > > In rtems-19990528, sbwait sets SB_WAIT in sb_flags. sowakeup checks > it. Why doesn't socket_select set it? > > I don't know that this is a bug--I haven't tried to create a test > case. However, it certainly looks odd. > > Ian Yes, there's a bug there. Sorry about that. It was introduced when I did some cleanup on the sleep/wakeup handling in rtems_glue.c.
1999-05-28Changes from Eric Norum to add a loop and limit on the length of timeJoel Sherrill1-22/+32
the stack will wait for mbufs.
1999-05-28Alignment corrected per Eric Norum's suggestion.Joel Sherrill1-1/+2
1999-05-27Patch from Eric Norum <eric@pollux.usask.ca> to eliminate a panic when theJoel Sherrill3-147/+88
network stack runs out of mbufs.
1999-05-20Removed all post 4.0 changes.Joel Sherrill1-81/+78
1999-05-17Patch from D. V. Henkel-Wallace <gumby@zembu.com> to remove compilerJoel Sherrill3-4/+4
warnings.
1999-05-07Error reporting fixed by Jennifer.Joel Sherrill1-15/+15
1999-04-27Patch from Eric Norum <eric@cls.usask.ca> to corrent a miscount in lengthJoel Sherrill1-1/+1
that results in an error in parsing network unit names/numbers.
1999-04-19Changed ioctl() prototype to be more like Linux/POSIX than BSD to easeJoel Sherrill1-1/+1
porting of ACE to RTEMS.
1999-04-19After discussion with Eric Norum <eric@skatter.usask.ca>,Joel Sherrill1-0/+22
I added __INSIDE_RTEMS_BSD_TCPIP_STACK__ that trips all the needed macro definitions for a network driver.
1999-04-01Moved sparc specific version of in_cksum_hdr to an inline routine likeJoel Sherrill2-31/+43
the reset of the CPU specific implementations after comment from Eric Norum.
1999-03-31Patch from Eric Norum <eric@skatter.usask.ca> which changed the exitJoel Sherrill1-2/+1
sequence.
1999-03-30Removed warning for `#ifdef' argument starts with punctuation.Joel Sherrill1-1/+1
1999-03-30Patch to add shutdown() routine from Tony R. Ambardar <tonya@ece.ubc.ca>.Joel Sherrill1-0/+25
1999-03-23SPARC optimized version of IP checksum header routine. SubmittedJoel Sherrill1-0/+32
by Jiri Gaisler <jgais@ws.estec.esa.nl>.
1999-03-23Patch from Eric Norum <eric@skatter.usask.ca> to improve parsing ofJoel Sherrill2-0/+45
network interface names. This change does not introduce any compatibility problems.
1999-03-19Patch from Eric Norum <eric@skatter.usask.ca> that adds externalJoel Sherrill1-4/+30
fcntl support and an external fcntl handler for sockets.
1999-03-01Patch from Eric Norum <eric@skatter.usask.ca> to eliminate externalJoel Sherrill4-23/+35
IO handlers scheme that was implemented originally just to support sockets. The file system IO switch is more general and works fine.
1999-02-05Patch from Eric Norum to correct bug induced by select() patch.Joel Sherrill2-5/+11
1999-02-04Added printf()'s that can be uncommented to trace MBUF operations. ThisJoel Sherrill1-0/+3
is very useful when debugging a device driver.
1999-02-04Modifed to reflect transition from device driver to file system.Joel Sherrill1-41/+4
1999-02-04Added debug printf()'s that are commented out. Uncommenting theseJoel Sherrill1-0/+3
allows one to trace the enqueueing and dequeueing of messages. This can be used to insure that packets are getting to the boundary between the network stack and the device driver.
1999-02-04Added PowerPC specific header checksum code.Joel Sherrill2-68/+10
1999-02-04Added PowerPC specific header checksum code.Joel Sherrill1-4/+61
Added volatile to i386 assembly statements in header checksum code.
1999-02-04Debugged and now works except for handling of minor number.Joel Sherrill1-313/+429
1999-02-04Modified to include comments on how to get TCPDEBUG turned on andJoel Sherrill2-1/+11
printing messages.
1999-02-02Added debug #define and commented it out.Joel Sherrill1-0/+1
1999-02-02Added PowerPC specific in_cksum file.Joel Sherrill1-0/+4
1999-02-02New file. Based on the i386 version.Joel Sherrill2-0/+404
1999-01-31Prepended macro variables with "_" to avoid name conflicts in expansions.Joel Sherrill1-78/+78
1999-01-28Patch from Eric Norum <eric@skatter.usask.ca> to avoid dereferencing aJoel Sherrill1-1/+4
NULL pointer.
1999-01-26Changed prototype of rtems_bsdnet_makeFdForSocket to (void *) pointerJoel Sherrill1-1/+1
so that the libc code did not have to know about (struct socket).
1999-01-26Switched from printf() to puts().Joel Sherrill1-1/+1
1999-01-21Made to compile after hacking tftp driver into beginnings of a mini-filesystem.Joel Sherrill5-39/+299
1999-01-19Added comments for changing to a filesystemJoel Sherrill1-0/+4
1999-01-04Patch from D. V. Henkel-Wallace <gumby@zembu.com> to use puts and have ↵Joel Sherrill2-2/+6
prototype.
1999-01-04Patch from D. V. Henkel-Wallace <gumby@zembu.com> to fix braces nesting problem.Joel Sherrill1-1/+2
1999-01-04Patch from D. V. Henkel-Wallace <gumby@zembu.com> to make macro nest ↵Joel Sherrill1-3/+5
properly in conditionals
1998-12-10Merged Eric Norum's select patch that was based on 4.0 and resolvedJoel Sherrill2-119/+20
all conflicts.
1998-12-10Patch from Ian Lance Taylor <ian@airs.com>:Joel Sherrill3-0/+24
From: Eric Norum <eric@skatter.usask.ca> Date: Sat, 5 Dec 98 13:20:51 -0600 What do you think of this patch? It implements your `tap' suggestion in a way that adds support for all ethernet devices with no driver modifications. I also added a return value from the tap function. If the return value is zero, the packet will be passed up the chain as usual. If the return value is non-zero the mbuf holding the packet will be freed and the packet will be dropped. If you like it, please submit it to Joel. I guess there needs to be an addition to the network documentation describing the additional ioctl's -- and a big warning that the tap function is called from a context that holds the network semaphore. Here is Eric's patch. I've tested it a bit, and made a couple of trivial changes. This is certainly better than mine: it should work for all Ethernet drivers. ================================================== The only concern I have about this patch is that the tap function may want to fiddle with the mbuf, calling functions like m_pullup and the like. If those force the networking code to rearrange the mbuf structure, then the caller's call to m_freem may crash. I don't know if this is a realistic concern--I don't know enough about the mbuf layer.
1998-12-07Patch from Ian Lance Taylor <ian@airs.com>:Joel Sherrill3-5/+12
RTEMS permits using the SO_SNDTIMEO and SO_RCVTIMEO socket options to set a timeout for most socket I/O operations. However, in RTEMS 4.0.0, those options do not affect connect or accept. I don't know of any way to put a timeout on those calls in RTEMS 4.0.0; can anybody point to one. Since it is frequently useful to have a timeout on accept, and sometimes useful to have a timeout on connect shorter than the BSD system default of 75 seconds, the following patch causes SO_RCVTIMEO to affect connect and accept.
1998-11-19Patch from Eric Norum <eric@skatter.usask.ca>:Joel Sherrill5-174/+220
1) Socket timeout field changed from `short' to `long'. This makes longer timeouts possible. With a 1 kHz system clock the old system allowed timeouts only up to a little over 30 seconds! This change is a slightly cleaned-up version of the patch proposed by Ian Lance Taylor. 2) Major changes to BOOTP/DHCP reply handling. Now supports much of RFC2132. These changes were done at the request of, and with the assistance of, Erik Ivanenko. If you're making changes, you might want to change the network supplement Essentially just do a global search and replace of BOOTP with BOOTP/DHCP.
1998-10-12Added header files per request from Chris Johns to avoid problemsJoel Sherrill1-0/+4
in include file order.
1998-09-29Patch from Eric Norum <eric@skatter.usask.ca>:Joel Sherrill1-3/+2
Remember the test to see if a socket could be read and written at the same time by two different tasks? I discovered that if both tasks attempt to close the socket a panic can occur from inside the BSD code. Closing the same socket twice from two different threads is certainly an error, but a panic is not the greatest error reporting method :-) The following small change to the socket close routine should reduce the chances of the panic.
1998-09-21Patch from Eric Norum <eric@skatter.usask.ca>:Joel Sherrill1-29/+101
Here's a patch to make the rtems_showroute routine a little more useful. For `host' route table entries the link-level address is now displayed. This is equivalent to the old `show arp table' information displayed by the KA9Q code.
1998-09-21Patch from Eric Norum and David Fiddes to put ColdFire support inJoel Sherrill2-16/+18
the inet checksum routine.
1998-09-11Patch from "David J. Fiddes" <D.J@fiddes.surfaid.org>:Joel Sherrill2-252/+74
I've fixed a few minor probs with the optimised version that Eric put together for me the other day and sent the fixes back to him. Provided he doesn't have a problem with it we've got a pretty solid in_cksum for the ColdFire as well as straight m68k. I've enclosed my updated in_cksum_m68k.c At the moment my own bottlenecks are elsewhere...as my driver is pulling 16bit data chunks through a libchip-esq access routine from the chip which for a polled I/O device is never going to be quick.