rtems-net-legacy repository
contains the legacy networking stack that was a part
of the RTEMS versions through 5 and resided under cpukit/libnetworking.
This is a standalone repository containing the rtems legacy networking stack and will be only maintained for bug fixes. You can find additional documentation at https://docs.rtems.org/
This repository uses rtems_waf as a git submodule. To update the submodule we need to run the following git commands:
git submodule init
git submodule update
To build and install:
$ ./waf configure --prefix=$HOME/development/rtems/6
$ ./waf build install
To get help and see waf options:
./waf --help
The Waf project can be found here:
The code is licensed under a mix of the rtems.org/LICENSE and various BSD licenses
This is a snapshot of my attempt to fit the FreeBSD networking code into RTEMS. Things seem to be working!
Things that need to be done:
-
More documentation!
-
Figure out what's still not working :-)
-
Rationalize the include files. Right now I have a special hack in the Makefile to ensure that I pick up the FreeBSD versions of the include files that are duplicated between RTEMS and FreeBSD.
The network device driver source should move to the BSP source tree.
-
Have a look at all the FIXME comments.
-
Go through and make sure that all the source files are free of undesired copyright restrictions.
19-AUG-1998 snapshot
- Pulled BOOTP initialization out of rtems_glue. Applications which
don't used BOOTP are now about 5k smaller.
- Loopback interface is not installed by default, rather it is
attached like any other interface. Saves about 0.5 kbytes.
- Add rtems_bsdnet_show_if_stats();
- Moved test programs from below freebsd directory.
18-AUG-1998 snapshot
- Removed some include files that were already part of RTEMS.
- Cleaned up machine/types.h to prepare for inclusion in RTEMS source.
- Added syslog library routines -- much simpler than KA9Q version.
Sockets can be shared among tasks (as long as the send is
protected by a mutex) so there's no need for a Syslog Daemon.
16-AUG-1998 snapshot
- Table-driven configuration (networkconfig.h).
- Cleaned up rtems_bsdnet.h.
- BOOTP now retries properly -- Note to Joel:
The dichotomy between RTEMS and UNIX error codes is
a real pain!
14-AUG-1998 snapshot
- Added dummy getprotobyname() and getprotobynum() functions.
- Added socket ioctl.
- Added application-level entry to manipulate routing tables.
- Added non-BOOTP network initialization.
13-AUG-1998 snapshot
- Changed some BOOTP addresses from sockaddr_in to inaddr;
- Get DNS information from BOOTP reply.
- Got DNS lookups working.
Bloatware comes to RTEMS -- invoking gethostbyname() drags in
and extra 40 kbytes of code!
- Added hostname lookup program.
12-AUG-1998 snapshot
- Added startup delay to network initialization.
- More statistic-printing routines.
- Added TFTP driver and test program
- Modified TFTP test program to use networkconfig.h.
- Removed unused include files.
- Added from ftp://ftp.ca.FreeBSD.ORG/pub/FreeBSD/FreeBSD-current/src/lib/libc/net.
11-AUG-1998 snapshot.
- Added getpeername()
- Added M68k versions of IP checksum code
- Added TCP timing program to snapshot.
02-AUG-1998 snapshot.