Commit graph

59 commits

Author SHA1 Message Date
Martin Mares
786d0bb9e7 Added ipa_class_mask() which guesses netmask for classful addressing.
For pure A/B/C class addresses it just returns the class netmask, for
subnets it tries to guess subnet mask. Please make sure the address
you pass to this function is really a valid host address (i.e., call
ipa_validate() first).
1998-07-10 08:38:29 +00:00
Martin Mares
28a9a189d7 Replaced remaining references of clock_t by bird_clock_t. 1998-07-10 08:32:18 +00:00
Pavel Machek
a103373f61 Commiting RIP. RIP should somehow listen, will not reply. I needed to
commit it so that whole thing compiles.
1998-07-09 19:39:04 +00:00
Pavel Machek
86b0023033 Making SIGUSR1 dump also all protocols. 1998-07-09 19:37:39 +00:00
Pavel Machek
87d2be86e5 Adding proto_dump_all() function 1998-07-09 19:36:52 +00:00
Pavel Machek
cf3527e2f4 Adding MIN()/MAX() macros 1998-07-09 19:36:05 +00:00
Pavel Machek
aea2dcabdc Adding walk list which permits you to delete entries. 1998-07-09 19:35:23 +00:00
Martin Mares
962ba482fd Use '%I' instead of dirty address printing hacks. 1998-06-17 14:36:02 +00:00
Martin Mares
d997534f65 Oops, forgot '%m'... 1998-06-17 14:34:13 +00:00
Martin Mares
9556f22585 debug() and log() use the new printf. Feel free to use new formatting
sequences for all output.
1998-06-17 14:33:29 +00:00
Martin Mares
ecacdfa434 Added local version of sprintf (bsprintf and bvsprintf) offering few new
format strings:

	%I	IP address
	%#I	IP address in hexadecimal
	%1I	IP address padded to full length
	%m	strerror(errno)
1998-06-17 14:31:36 +00:00
Martin Mares
97d858c590 ip_ntop() and ip_ntox() for IPv4. 1998-06-17 14:28:46 +00:00
Martin Mares
6b5e06abb5 Added function for converting of IP addresses to printable form. 1998-06-17 14:26:30 +00:00
Martin Mares
620a355a15 Now sending IF_CHANGE_CREATE when a new interface appears and IF_CHANGE_UP
only if it's really up.
1998-06-04 20:30:11 +00:00
Martin Mares
236d4eb8ce FIB_WALK and friends are now slightly more friendly. 1998-06-04 20:29:44 +00:00
Martin Mares
66e53309ac Dumping of _static_ attributes implemented. 1998-06-04 20:29:05 +00:00
Martin Mares
b1e4f81485 We have full interface routes now. 1998-06-04 20:28:43 +00:00
Martin Mares
0cdbd3975a Handle route deletion without segfaults. A bit more debug dumps. 1998-06-04 20:28:19 +00:00
Martin Mares
5331da6a4d Fixed processing of timers. 1998-06-04 20:27:49 +00:00
Martin Mares
fd50083df4 Killed socket debug code. Initialize config pool and protocols.
More to come later...
1998-06-03 08:43:44 +00:00
Martin Mares
c5ffa44759 Skeleton of device route protocol. As it's tightly coupled with our kernel,
it sits here instead of `proto/dev'.
1998-06-03 08:42:16 +00:00
Martin Mares
d9f330c5ff Protocol hooks. All of them may be NULL. 1998-06-03 08:40:10 +00:00
Martin Mares
7f4a39886c Basic protocol operations. 1998-06-03 08:38:53 +00:00
Martin Mares
a5f1a60e02 Changed protocol declarations a bit. 1998-06-03 08:38:06 +00:00
Martin Mares
33beab4f6c Added configuration pool. 1998-06-03 08:36:34 +00:00
Martin Mares
c5fd704e48 Protocols will reside in directory `proto'. 1998-06-03 08:35:40 +00:00
Martin Mares
869c695998 Synced to new interface code. 1998-06-01 21:41:32 +00:00
Martin Mares
4cc78c5082 - Rewrote whole interface logic. Removed support for multiple addresses per
interface since it makes much trouble everywhere. Instead, we understand
  secondary addresses as subinterfaces.

- In case interface addresses or basic flags change, we simply convert it
  to a down/up sequence.

- Implemented the universal neighbour cache. (Just forget what did previous
  includes say of neighbour caching, this one is brand new.)
1998-06-01 21:41:11 +00:00
Martin Mares
0fe3b28b68 Added ipa_xor() and ipa_in_net(). 1998-06-01 21:36:58 +00:00
Martin Mares
af847acc27 Whee, multicast sockets work!
Implemented recurrent timers.
1998-05-26 21:46:38 +00:00
Martin Mares
140f034105 Added CONFIG_AUTO_ROUTES (automatic device route creation) and
CONFIG_ALL_MULTICAST (all interfaces capable of multicasting, not depending
on IFF_MULTICAST flag).
1998-05-26 21:44:54 +00:00
Martin Mares
fe82105e5d Debug messages. 1998-05-26 21:43:45 +00:00
Martin Mares
8a48ecb8b1 Implemented scanning of network interfaces. Mostly very ugly code due to
terrible kernel interface (SIOGIFCONF and friends).
1998-05-26 21:42:05 +00:00
Martin Mares
b1487ee909 Added generic functions for unaligned data access. 1998-05-26 21:38:06 +00:00
Martin Mares
ed68a5c6a4 Resource pools are now named. 1998-05-26 21:37:37 +00:00
Martin Mares
d5417b379f Added ipa_opposite(). 1998-05-26 21:36:48 +00:00
Martin Mares
5222c46ceb DBG now calls debug() instead of sending it to log(). 1998-05-26 21:36:17 +00:00
Martin Mares
d804db0dab Added few socket declarations. 1998-05-24 15:00:48 +00:00
Martin Mares
b5d9ee5c87 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.
1998-05-24 14:50:18 +00:00
Martin Mares
6d45cf21be Added debug dump function, but it's still empty :( 1998-05-24 14:49:14 +00:00
Martin Mares
ded3ee6ddd protos_init, not proto_init. 1998-05-24 14:48:52 +00:00
Martin Mares
b53499cdaa Added interface index (used only by OS-dependent code since ifindexes itself
are OS-dependent).
1998-05-24 14:48:09 +00:00
Martin Mares
d4bc8dc000 Staticized some variables and functions. 1998-05-24 14:46:20 +00:00
Martin Mares
315aba32b3 Fixed path to includes. 1998-05-24 14:44:25 +00:00
Martin Mares
a2ccbb0b97 Implemented timers. Using bird_clock_t for absolute time from now... 1998-05-24 14:40:29 +00:00
Martin Mares
235562ca5a Point-to-point links: added address of the opposite end. 1998-05-24 09:20:59 +00:00
Martin Mares
480effedac Added declarations of all our socket functions. 1998-05-24 09:19:26 +00:00
Martin Mares
2326b001d6 Added routing table and routing attribute code. 1998-05-20 11:54:33 +00:00
Martin Mares
3994080eb1 Fixed path to includes. 1998-05-15 13:43:59 +00:00
Martin Mares
25697773b5 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.
1998-05-15 07:56:13 +00:00