Martin Mares
9fac310d1a
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.
2000-01-19 15:07:00 +00:00
Martin Mares
f50b9e48b9
Generate a list of all commands and their help texts for the client to use.
2000-01-19 14:37:56 +00:00
Martin Mares
4b87e256eb
Split off general commands to cmds.c.
...
Added `show symbols' command which dumps whole symbol table together
with symbol types etc.
2000-01-19 12:30:19 +00:00
Martin Mares
f5ad9f87a3
Killed a couple of bugs in the neighbor cache.
...
Manual disable/enable/restart/shutdown/reconfiguration of protocols
no longer hangs on loops in neighbor lists :)
2000-01-19 11:52:32 +00:00
Martin Mares
3ea1ba632b
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).
2000-01-18 11:01:03 +00:00
Martin Mares
54aaa89ada
protocol->startup_counter no longer exists.
2000-01-18 10:42:45 +00:00
Martin Mares
aa8761de94
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.
2000-01-18 10:39:30 +00:00
Martin Mares
fb89b1a4ce
Removed point-to-point tunnel hack as it breaks ordinary PtP interfaces.
...
I'll find a better solution soon.
2000-01-17 12:40:00 +00:00
Martin Mares
295ae16d4d
Static protocol supports full dynamic reconfiguration.
2000-01-17 12:38:50 +00:00
Martin Mares
471cc0be65
Moved initlialization of protocol lists to global init. Argh.
2000-01-17 12:38:07 +00:00
Martin Mares
d272fe22dd
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.
2000-01-17 11:52:50 +00:00
Martin Mares
f7fcb75252
Reconfiguration for device protocol.
2000-01-17 11:17:33 +00:00
Martin Mares
0ec90e9fc6
Pipe protocol supports reconfiguration.
2000-01-17 00:20:45 +00:00
Martin Mares
88dc89f991
Device protocol supports reconfiguration.
2000-01-17 00:20:17 +00:00
Martin Mares
26368f656c
Don't forget changing proto->name to point to name in new configuration
...
(to avoid the name being freed with the old config).
Also remember to add proto_pipe to protocol_list.
2000-01-17 00:19:58 +00:00
Martin Mares
ca0edc5395
When a quoted string is encountered, don't forget to copy it to the
...
config pool before passing it to the parser.
2000-01-16 23:36:53 +00:00
Martin Mares
99278e1042
Wording changes.
2000-01-16 23:36:19 +00:00
Martin Mares
f14a4becbe
Reworked proto lists -- each proto is now in two lists: the global one
...
(proto_list) and per-type one (original lists). A lot of things simplified.
Implemented `disable', `enable' and `restart' CLI commands.
2000-01-16 23:30:06 +00:00
Martin Mares
30a6108ccc
Added filter_same() for comparision of two filters.
...
Pavel, please implement this as soon as possible.
2000-01-16 17:49:32 +00:00
Martin Mares
bf8558bc9c
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.
2000-01-16 17:40:26 +00:00
Martin Mares
ebc793a5f5
No more problems when events get scheduled during event processing.
2000-01-16 17:39:16 +00:00
Martin Mares
50fe90edf3
First attempt on dynamic reconfiguration. There are still lots of bugs
...
and problems to solve, but the hardest part works.
2000-01-16 16:44:50 +00:00
Martin Mares
394aec8fdd
Don't forget to set proto->min_scope = SCOPE_HOST.
2000-01-16 16:40:57 +00:00
Ondrej Filip
1508757478
Preparing for building LS databaze. Huh, why is it so complicated? :-(
...
Adding definition of some constants.
2000-01-05 00:03:47 +00:00
Pavel Machek
7a7c1d9f34
Few more entries for bird documentation
1999-12-20 19:14:06 +00:00
Pavel Machek
c8c0f62444
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...
1999-12-18 20:41:19 +00:00
Pavel Machek
60d7d10e6f
Added fixme.
1999-12-18 20:39:53 +00:00
Martin Mares
476e108425
Minor cleanups.
1999-12-16 13:51:43 +00:00
Martin Mares
e693ddff87
Handle cases when SIOCGIFINDEX is defined, but doesn't work (new glibc
...
with 2.0 kernels).
1999-12-16 13:23:32 +00:00
Martin Mares
3f996d46df
Added missing semicolon.
...
rip.h compiles in IPv6 mode, rip.c still doesn't.
1999-12-16 13:14:32 +00:00
Martin Mares
a2867cd957
Better order of includes.
...
set_inaddr() moved to sysio.h.
1999-12-16 13:14:02 +00:00
Martin Mares
12a9d139ee
ipv6_compare() accepts non-lvalue arguments as well. This makes filters
...
compile with IPv6.
1999-12-16 13:13:22 +00:00
Martin Mares
67ece6df42
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.
1999-12-16 13:06:13 +00:00
Martin Mares
ccdc339756
Avoid touching F_MODIFY, it no longer exists.
1999-12-16 12:59:09 +00:00
Martin Mares
6aea8905c4
TODO entries and FIXME's.
1999-12-16 12:18:33 +00:00
Martin Mares
d46ffc97ff
Kicked off F_MODIFY (not generated nor used)
1999-12-16 12:18:19 +00:00
Martin Mares
f545d38707
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.
1999-12-09 18:54:20 +00:00
Martin Mares
30bc402ebb
Temporary work-arounds for multicast problems. Needs further investigation.
1999-12-08 15:12:54 +00:00
Martin Mares
0da472d7e8
Except for special protocols (nowadays only the kernel syncer), don't
...
export host and link scope routes.
1999-12-08 14:16:13 +00:00
Pavel Machek
dff1f57917
Added hooks for show route.
...
Fixed passing metrics around routing tables.
1999-12-08 13:33:44 +00:00
Martin Mares
dc82daaa9b
- Path to control socket is selectable via command-line option.
...
- die() when control socket open failed.
1999-12-08 13:20:19 +00:00
Pavel Machek
4d4de35f00
Fix timing and fix endianity in metrics.
1999-12-08 12:51:45 +00:00
Pavel Machek
2e18b87dcf
Disallow rta.net syntax.
1999-12-08 12:51:26 +00:00
Pavel Machek
3df563fa4c
Put rip options into config file.
1999-12-08 12:51:15 +00:00
Pavel Machek
9b47eb8530
Make bird.conf that does not crash machine when you run bird as root.
1999-12-08 12:50:57 +00:00
Pavel Machek
6c14255dd6
Make rta. syntax optional.
1999-12-08 10:15:51 +00:00
Pavel Machek
febe526303
Separated bird.conf and bird.conf for testing filters.
1999-12-08 10:15:40 +00:00
Martin Mares
f78056fb2c
Allow logging to stderr as well.
1999-12-06 13:51:04 +00:00
Martin Mares
4ab5331c63
Added type `g' for void (general) pointer.
1999-12-06 13:50:50 +00:00
Martin Mares
a0c37b45e5
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.
1999-12-06 13:45:56 +00:00