| Branch: | Revision:

iof-bird-daemon / sysdep / unix / io.c @ f7fcb752

History | View | Annotate | Download (17.9 KB)

# Date Author Comment
a2867cd9 12/16/1999 01:14 PM Martin Mares

Better order of includes.

set_inaddr() moved to sysio.h.

67ece6df 12/16/1999 01:06 PM Martin Mares

Tried to clean up multicast handling. Now we don't try to guess
multicast abilities depending on definedness of symbols and use hard-wired
system-dependent configuration defines instead.

Please test whereever you can.

30bc402e 12/08/1999 03:12 PM Martin Mares

Temporary work-arounds for multicast problems. Needs further investigation.

f78056fb 12/06/1999 01:51 PM Martin Mares

Allow logging to stderr as well.

a9c986f9 12/06/1999 01:43 PM Martin Mares

Added tracked_fopen() which is a fopen registered in resource database.
Will be used for log files.

afa8937a 12/01/1999 11:59 AM Martin Mares

Added tm_format_reltime() for formatting of relative time quantities.

487d1afa 11/30/1999 02:01 PM Martin Mares

Moved TIME_INFINITY to timer.h, so that it's publicly available.

30770df2 11/17/1999 12:04 PM Martin Mares

If the main event queue is not empty, call select() with zero timeout, so
that the events are ran again after the FD's are checked. This allows us
to schedule I/O checks between processing of user commands.

b93abffa 10/29/1999 12:09 PM Martin Mares

Implemented unix-domain sockets.

f782b72c 10/02/1999 11:06 AM Martin Mares

Failure to set socket TOS is not a fatal error.

f6519414 08/17/1999 08:47 PM Martin Mares

Added a function for generating 32-bit random numbers.

4f22c981 08/03/1999 07:36 PM Martin Mares

Support for IPv6 sockets. How nice one doesn't have to ifdef around
ten years of API evolution :-)

dce26783 08/03/1999 07:36 PM Martin Mares

Basic support for IPv6. The system-dependent part doesn't work yet,
but the core routines are there and seem to be working.

o  lib/ipv6.[ch] written
o Lexical analyser recognizes IPv6 addresses and when in IPv6
mode, treats pure IPv4 addresses as router IDs....
913f7dc9 08/03/1999 07:29 PM Martin Mares

Added functions for parsing and formatting of dates.

bd7f1081 06/01/1999 03:31 PM Martin Mares

Grrr, the "obvious fix" to multicasting code from yesterday was
fundamentally wrong. Reversed.

c7208da0 05/31/1999 08:28 PM Martin Mares

Fix potential multicasting bug.

9a158361 05/06/1999 09:38 PM Martin Mares

I rewrote the interface handling code, so that it supports multiple
addresses per interface (needed for example for IPv6 support).

Visible changes:

o struct iface now contains a list of all interface addresses (represented
by struct ifa), iface->addr points to the primary address (if any)....

4c5e5e3a 04/14/1999 12:29 PM Martin Mares

Multicasts once again: When using SO_BINDTODEVICE, don't specify IP address
of the interface.

1b50a1e4 04/14/1999 11:39 AM Martin Mares

Next attempt to get SO_BINDTODEVICE work :)

36154beb 04/14/1999 11:21 AM Martin Mares

Use SO_BINDTODEVICE if we're using old multicast API (i.e., struct ip_mreq
and not ip_mreqn). This should get multicasts on unnumbered PtP links work.

61fb537c 04/12/1999 03:27 PM Martin Mares

Use `struct ip_mreqn' instead of `struct ip_mreq' for multicast
operations on 2.1/2.2 kernels. This allows passing of real interface
indexes instead of referencing interfaces by their IP addresses which
fails badly in presence of unnumbered interfaces.

Unfortunately, this structure is not visible with glibc 2.0 as it provides...

5a99ade4 04/12/1999 02:57 PM Martin Mares

Fixed a couple of bugs in handling of multicast sockets.

See comments in lib/socket.h for a detailed guide on how to use them.

abae6e9c 04/01/1999 03:33 PM Martin Mares

First few FreeBSD portability fixes.

7e5f5ffd 03/26/1999 09:44 PM Martin Mares

Moved to a much more systematic way of configuring kernel protocols.

o  Nothing is configured automatically. You need to specify
the kernel syncer in config file in order to get it started.
o Syncing has been split to route syncer (protocol "Kernel") and...
b4b3b39e 03/01/1999 10:30 PM Martin Mares

Added SK_MAGIC type sockets for internal use by system dependent code,
especially for netlink communication.

f4aabcee 02/13/1999 08:15 PM Martin Mares

Perform gracious shutdown upon receipt of SIGTERM. Finally we can
test the whole protocol shutdown code... :)

4c9dd1e4 02/13/1999 07:43 PM Martin Mares

Synchronize signals to the main select/event/timer loop.

Parse command line options.

e8f73195 02/11/1999 09:18 PM Martin Mares

Added simple event scheduling system to avoid recursive calling
of various callbacks.

Events are just another resource type objects (thus automatically freed
and unlinked when the protocol using them shuts down). Each event can
be linked in at most one event list. For most purposes, just use the...

08c69a77 12/20/1998 02:27 PM Martin Mares

die() -> bug() where appropriate.

4cf45766 10/19/1998 05:47 PM Martin Mares

Exporting fill_in_sockaddr() for use by other unix-dependent code.

28a9a189 07/10/1998 08:32 AM Martin Mares

Replaced remaining references of clock_t by bird_clock_t.

5331da6a 06/04/1998 08:27 PM Martin Mares

Fixed processing of timers.

869c6959 06/01/1998 09:41 PM Martin Mares

Synced to new interface code.

af847acc 05/26/1998 09:46 PM Martin Mares

Whee, multicast sockets work!

Implemented recurrent timers.

b5d9ee5c 05/24/1998 02:50 PM Martin Mares

Added UNIX implementation of both timers and sockets. Timers should work,
sockets were tested only in TCP mode. main.c now contains some test
cases for socket code.