Statistics
| Branch: | Revision:

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

History | View | Annotate | Download (7.05 KB)

# Date Author Comment
bf8558bc 01/16/2000 05:40 PM Martin Mares

Converted shutdown to a kind of reconfiguration, it's no more handled
as a exception in protocol state machines. Introduced a `shutdown'
CLI command. Killed few reconfiguration bugs.

50fe90ed 01/16/2000 04:44 PM Martin Mares

First attempt on dynamic reconfiguration. There are still lots of bugs
and problems to solve, but the hardest part works.

f545d387 12/09/1999 06:54 PM Martin Mares

Added universal locking mechanism which will solve problems
with protocols wanting to use the same port on the same interface
during reconfiguration time.

How to use locks: In the if_notify hook, just order locks for the
interfaces you want to work with and do the real socket opening after the...

dc82daaa 12/08/1999 01:20 PM Martin Mares

- Path to control socket is selectable via command-line option.
- die() when control socket open failed.

a0c37b45 12/06/1999 01:45 PM Martin Mares

Logging is now configurable. You can define multiple log outputs (to both
files and syslog) and assign lists of message categories to each of them.

b9672a84 10/31/1999 03:43 PM Martin Mares

The CLI I/O functions work as desired.

7d3aab1c 10/29/1999 12:10 PM Martin Mares

First steps of the Command Line Interface: I/O routines.

0498d92f 04/02/1999 11:45 AM Pavel Machek

Believe it or not, printf()'s does not work too much without this one.

5bc512aa 03/29/1999 08:14 PM Martin Mares

Clarify resource dumps and include them in the main debugging dump.

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...
7a2105be 03/04/1999 11:36 AM Martin Mares

Use dmalloc instead of EFence when available (dmalloc has lot of improvements
over EFence and also hopefully smaller memory overhead, but sadly it's non-free
for commercial use).

If the DMALLOC_OPTIONS environment variable is not set, switch on `reasonable'...

2d140452 03/03/1999 07:49 PM Martin Mares

Rewrote the kernel syncer. The old layering was horrible.

The new kernel syncer is cleanly split between generic UNIX module
and OS dependent submodules:

-  krt.c (the generic part)
- krt-iface (low-level functions for interface handling)
- krt-scan (low-level functions for routing table scanning)...
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.

14dea0ed 02/11/1999 10:51 PM Martin Mares

Run the event queue before writing SIGUSR dumps.

31b3e1bb 02/05/1999 09:37 PM Martin Mares

Implemented new configuration/reconfiguration interface and defined protocol
state machines. Full explanation will follow soon.

ca3d562b 01/15/1999 06:13 PM Pavel Machek

filters_init() renamed to filters_postconfig().

b9d70dc8 01/15/1999 04:49 PM Pavel Machek

Filters, second try. This time they have their own directory.

41183888 01/15/1999 02:40 PM Pavel Machek

Properly initialize filters. Also bumped version to 0.0.0 as it
actually does something.

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

die() -> bug() where appropriate.

980ffedb 12/06/1998 05:40 PM Martin Mares

Kernel syncer is now configurable. It will probably need some more
options, but at least basic tuning is possible now.

c74c0e3c 11/27/1998 09:09 PM Martin Mares

First attempt at protocol configuration (now done only for RIP).

70591fa0 11/27/1998 07:37 PM Martin Mares

Compile and use the new configuration code by default.

7d832907 10/19/1998 06:13 PM Martin Mares

Generate router_id automatically if possible (standard "smallest of local
regular interface addresses" rule).

Protocols should NOT rely on router_id existence -- when router ID is not
available, the router_id variable is set to zero and protocols requiring...

7e7790c6 10/18/1998 12:50 PM Martin Mares

Since almost every UNIX system requires different techniques for reading
the kernel routing table as opposed to modifying it which is approximately
the same on non-netlink systems, I've split the kernel routing table
routines to read and write parts. To be implemented later ;-)

0432c017 10/18/1998 11:53 AM Martin Mares

Split protocol init to building of protocol list and real protocol init.
Added kernel route table syncer skeleton.

47b79306 10/17/1998 11:05 AM Martin Mares

Solve chicken-and-egg problems with protocol startup. We now queue all inactive
protocols and don't send route/interface updates to them and when they come up,
we resend the whole route/interface tables privately.

Removed the "scan interface list after protocol start" work-around.

93f1c532 10/14/1998 01:38 PM Martin Mares

Moved scanning of interfaces, so that they get initialized after all
routing protocol instances.

86b00230 07/09/1998 07:37 PM Pavel Machek

Making SIGUSR1 dump also all protocols.

fd50083d 06/03/1998 08:43 AM Martin Mares

Killed socket debug code. Initialize config pool and protocols.
More to come later...

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

Synced to new interface code.

8a48ecb8 05/26/1998 09:42 PM Martin Mares

Implemented scanning of network interfaces. Mostly very ugly code due to
terrible kernel interface (SIOGIFCONF and friends).

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.

2326b001 05/20/1998 11:54 AM Martin Mares

Added routing table and routing attribute code.

25697773 05/15/1998 07:56 AM Martin Mares

The library is now glued together from generic and OS-dependent parts
by the `mergedirs' script. Few more IP address manipulation functions
and some fixes.