Martin Mares [Wed, 19 Jan 2000 15:07:00 +0000 (15:07 +0000)]
Put client on a stony ground. The whole client is going to be system-specific
(the current version UNIX-specific) anyway, so it's useless to try splitting it
to sysdep and generic part. Instead of this, configure script decides (based on
system type and user's wish) what (if any) client should be built and what
autoconfiguration it requires. Also, the client provides its own die/bug/...
functions.
Martin Mares [Tue, 18 Jan 2000 11:01:03 +0000 (11:01 +0000)]
Killed protocol->priority. Protocol startup should be clean and hack-free now.
It seems everything still works (except for disable/enable/restart which hangs
sometimes, but it's another story).
Martin Mares [Tue, 18 Jan 2000 10:39:30 +0000 (10:39 +0000)]
Kernel route syncer now supports dynamic reconfiguration. Also it doesn't
depend on the startup counter hack now and uses a zero-time timer instead
to make itself scheduled after normal protocol startup.
Martin Mares [Mon, 17 Jan 2000 11:52:50 +0000 (11:52 +0000)]
Separated `official protocol names' used in status dumps from name templates
used for automatic generation of instance names.
protocol->name is the official name
protocol->template is the name template (usually "name%d"),
should be all lowercase.
Updated all protocols to define the templates, checked that their configuration
grammar includes proto_name which generates the name and interns it in the
symbol table.
Martin Mares [Sun, 16 Jan 2000 17:40:26 +0000 (17:40 +0000)]
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.
Pavel Machek [Sat, 18 Dec 1999 20:41:19 +0000 (20:41 +0000)]
This is first version of documentation. Be sure to take a close look
at it, and it would be very nice if you wrote at least introductions
to your chapters...
Martin Mares [Thu, 16 Dec 1999 13:06:13 +0000 (13:06 +0000)]
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.
Martin Mares [Thu, 9 Dec 1999 18:54:20 +0000 (18:54 +0000)]
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
lock hook function gets called. When you stop using the socket, close
it and rfree() the lock.
Please update your protocols to use the new locking mechanism.
Martin Mares [Fri, 3 Dec 1999 11:40:45 +0000 (11:40 +0000)]
Added proto_get_named() to be used in CLI commands to get protocol instance
of a given protocol with optionally given name. See `show static' for an
example.
Martin Mares [Wed, 1 Dec 1999 15:07:56 +0000 (15:07 +0000)]
Reset temporary parser data before parsing, not afterwards. This enables
deferred CLI command handlers to store their temporary data in the CLI
parsing pool.
Martin Mares [Wed, 1 Dec 1999 12:00:15 +0000 (12:00 +0000)]
`show protocols' now shows time of last state change and protocol-dependent
status information (obtained via newly introduced hook protocol->get_status).
Martin Mares [Wed, 1 Dec 1999 10:28:39 +0000 (10:28 +0000)]
Use linux-22 configuration with all 2.2.x and 2.3.x kernels. This means
you need to have your kernel compiled with netlink routing messages enabled.
If it doesn't work for you, use --with-sysconfig=linux-21 and let me know
what's going wrong.
Pavel Machek [Thu, 25 Nov 1999 14:54:08 +0000 (14:54 +0000)]
Bugfixes: select right password for password authentication, do not
try to process authentication blocks as datablocks, make it possible
to add data at end of packet. Password authentication should actually work.