| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
* lib/tftpDriver.c: add comments to handlers struct function pointers.
* rtems/rtems_glue.c: move pointer arithmetic to be _after_
pointer has been checked against NULL.
|
|
|
|
|
| |
fast mutexes that bypass the API level to directly interface with the
SuperCore.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
initialization. This adds an interface which makes it easier to
control the BSD stack from user code. The BSD stack initialise uses
it. It is a sort of `function' interface for an ifconfig
command.
I also added support for attaching and removing interfaces. With hot
swap PCI comming online support for hot swap PCI will be an important
factor in "state of art" RTOS's. This is also part of a general move on
my part to allow RTEMS to be configured at runtime by calls rather than
table driven at initialisation.
|
|
|
|
|
|
|
| |
Janovetz <janovetz@tempest.ece.uiuc.edu> to return a status from
network initialization rather than panic'ing. It changes a bunch
of rtems_panics to printfs and returns a status from
rtems_bsdnet_initialize_network().
|
|
|
|
|
|
|
|
| |
EPICS needs a synchronized time-of-day clock. This patch is the changes
needed to get NTP server information from a BOOTP server.
This patch also adds NTP server information to the network configuration
structure, too.
|
|
|
|
|
|
| |
The old system would panic when the loopback interface was included as
part of the network initialation structures. With the printf you get an
message, but the interface is still properly initialized.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
the stack will wait for mbufs.
|
| |
|
|
|
|
| |
network stack runs out of mbufs.
|
|
|
|
| |
that results in an error in parsing network unit names/numbers.
|
|
|
|
|
| |
the reset of the CPU specific implementations after comment from
Eric Norum.
|
| |
|
|
|
|
| |
by Jiri Gaisler <jgais@ws.estec.esa.nl>.
|
|
|
|
|
| |
network interface names. This change does not introduce any
compatibility problems.
|
|
|
|
|
| |
IO handlers scheme that was implemented originally just to support
sockets. The file system IO switch is more general and works fine.
|
| |
|
|
|
|
| |
all conflicts.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
message after comments from Eric Valette <valette@crf.canon.fr>.
|
| |
|
| |
|
|
|