hasso [Wed, 13 Oct 2004 10:33:26 +0000 (10:33 +0000)]
Make initializing smux connection configurable - "smux peer OID" command
initializes connection, and "no smux peer" command terminates it. Fixes
bugzilla #47 and #112.
paul [Wed, 13 Oct 2004 05:22:18 +0000 (05:22 +0000)]
2004-10-13 Paul Jakma <paul@dishone.st>
* (global) more const'ification.
* sockunion.c: (sockunion_su2str) buffer should be sized
SU_ADDRSTRLEN.
(sockunion_log) do not return stack variables, strdup buf before
return.
* vty.h: Fix up the VTY_GET_INTEGER macros. Testing caller supplied
values against ULONG_MAX is daft, when caller probably has passed
a type that can not hold ULONG_MAX. use a temporary long instead.
Add VTY_GET_LONG, make VTY_GET_INTEGER_RANGE use it, make
VTY_GET_INTEGER a define for VTY_GET_INTEGER_RANGE.
paul [Wed, 13 Oct 2004 05:06:08 +0000 (05:06 +0000)]
2004-10-13 Paul Jakma <paul@dishone.st>
* (global) more const'ification and fixups of types to clean up code.
* bgp_mplsvpn.{c,h}: (str2tag) fix abuse. Still not perfect,
should use something like the VTY_GET_INTEGER macro, but without
the vty_out bits..
* bgp_routemap.c: (set_aggregator_as) use VTY_GET_INTEGER_RANGE
(no_set_aggregator_as) ditto.
* bgpd.c: (peer_uptime) fix unlikely bug, where no buffer is
returned, add comments about troublesome return value.
paul [Mon, 11 Oct 2004 18:21:55 +0000 (18:21 +0000)]
2004-09-17 Paul Jakma <paul@dishone.st>
* vtysh.c: (vtysh_client_execute) fix the sync fix. The 4th and
final sync byte is not ASCII NULL, it's actually a status integer,
and only ASCII NULL if CMD_SUCCESS is returned by daemon.
Fix pointed out by Hasso.
paul [Mon, 11 Oct 2004 11:00:30 +0000 (11:00 +0000)]
2004-10-11 Paul Jakma <paul@dishone.st>
* (global) Const char update and signed/unsigned fixes.
* (various headers) size defines should be unsigned.
* ospf_interface.h: remove duplicated defines, include the
authoritative header - though, these defines should probably
be moved to a dedicated header, or ospfd.h.
* ospf_lsa.h: (struct lsa) ls_seqnum should be unsigned.
* ospf_packet.c: (ospf_write) cast result of shift to unsigned.
paul [Mon, 11 Oct 2004 10:11:25 +0000 (10:11 +0000)]
2004-10-11 Paul Jakma <paul@dishone.st>
* ospf_dump.c: (ospf_ip_header_dump) Assume header is in host order
remove ntohs that should have dissappeared. Take struct ip
as argument, caller has to know there's an IP header at start of
stream anyway.
* ospf_dump.h: update declaration of ospf_ip_header_dump.
* ospf_packet.c: (ospf_write) correct call to
sockopt_iphdrincl_swab_htosys which was munging the header.
(ospf_recv_packet) ip_len is needed for old OpenBSD fixup.
(ospf_read) sockopt_iphdrincl_swab_systoh ip header as soon as
we have it.
paul [Sun, 10 Oct 2004 11:56:56 +0000 (11:56 +0000)]
2004-10-10 Paul Jakma <paul@dishone.st>
* version.h.in: (pid_output*) add const qualifier.
* command.h: Change DEFUN func to take const char *[] rather
than char **, to begin process of fixing compile warnings in lib/.
Nearly all other changes in this commit follow from this change.
* buffer.{c,h}: (buffer_write) pointer-arithmetic is gccism, take
const void * and cast an automatic const char *p to it.
(buffer_putstr) add const
* command.c: (zencrypt) const qualifier
(cmd_execute_command_real) ditto
(cmd_execute_command_strict) ditto
(config_log_file) ditto.
Fix leak of getcwd() returned string.
* memory.{c,h}: Add MTYPE_DISTRIBUTE_IFNAME for struct dist ifname.
* distribute.{c,h}: Update with const qualifier.
(distribute_free) use MTYPE_DISTRIBUTE_IFNAME
(distribute_lookup) Cast to char *, note that it's ok.
(distribute_hash_alloc) use MTYPE_DISTRIBUTE_IFNAME.
(distribute_get) Cast to char *, note that it's ok.
* filter.c: Update with const qualifier.
* if.{c,h}: ditto.
* if_rmap.{c,h}: ditto.
(if_rmap_lookup) Cast to char *, note that it's ok.
(if_rmap_get) ditto.
* log.{c,h}: Update with const qualifier.
* plist.{c,h}: ditto.
* routemap.{c,h}: ditto.
* smux.{c,h}: ditto. Fix some signed/unsigned comparisons.
* sockopt.c: (getsockopt_cmsg_data) add return for error case.
* vty.c: Update with const qualifier.
gdt [Thu, 7 Oct 2004 19:38:20 +0000 (19:38 +0000)]
2004-10-07 Greg Troxel <gdt@claude.ir.bbn.com>
* ospf_apiserver.c (ospf_apiserver_unregister_opaque_type): Don't
use of variable names 'node' and 'nextnode' to avoid possible
conflict with list macros. Move variable declaration inside for
loop after a statement to top of function.
paul [Tue, 5 Oct 2004 14:57:50 +0000 (14:57 +0000)]
2004-10-05 Paul Jakma <paul@dishone.st>
* thread.c: (funcname_thread_add_timer_timeval) new function, add
timer at specified timeval.
(funcname_thread_add_timer) use funcname_thread_add_timer_timeval.
(funcname_thread_add_timer_msec) ditto
paul [Tue, 5 Oct 2004 14:39:43 +0000 (14:39 +0000)]
2004-10-05 Paul Jakma <paul@dishone.st>
* irdp_packet.c: (parse_irdp_packet) style issues.
Use sockopt_iphdrincl_swab_systoh.
Try unbork the code. Checksum the ICMP data and actually
compare it to received checksum. Check data length against
claimed length in header.
Always use ntoh.. when accessing addresses, even when the
comparison happens to be endian-safe.
(send_packet) minor style isues. Use
sockopt_iphdrincl_swab_htosys.
(irdp_iph_hton/ntoh) IP header to/from network/host order.
paul [Thu, 30 Sep 2004 04:56:26 +0000 (04:56 +0000)]
* Wed Sep 15 2004 Paul Jakma <paul@dishone.st>
- build snmp support by default
- build irdp support
- build with shared libs
- devel subpackage for archives and headers
paul [Mon, 27 Sep 2004 12:56:30 +0000 (12:56 +0000)]
2004-09-27 Paul Jakma <paul@dishone.st>
* ospf_dump.c: (ospf_ip_header_dump) Use HAVE_IP_HDRINCL_BSD_ORDER
Apply to offset too. Print ip_cksum, lets not worry about
possible 2.0.37 compile problems.
* ospf_packet.c: (ospf_swap_iph_to{n,h}) Use
HAVE_IP_HDRINCL_BSD_ORDER.
(ospf_recv_packet) ditto.
(ospf_write) Fixup iov argument to ospf_write_frags.
paul [Mon, 27 Sep 2004 12:46:37 +0000 (12:46 +0000)]
2004-09-27 Paul Jakma <paul@dishone.st>
* zebra.h: Add WANT_OSPF_WRITE_FRAGMENT for ospfd
to try to fragment oversized packets. Enabled only for Linux.
Add HAVE_IP_HDRINCL_BSD_ORDER to define struct ip byte order,
to consolidate various ad-hoc platform defines for same thing.
paul [Mon, 27 Sep 2004 07:49:57 +0000 (07:49 +0000)]
2004-09-27 Paul Jakma <paul@dishone.st>
* update-autotools: libtoolize should copy files, rather than link.
the whole idea is that dist files should not need auto*, etc.
installed to be able to compile.
paul [Mon, 27 Sep 2004 07:27:13 +0000 (07:27 +0000)]
2004-09-27 Paul Jakma <paul@dishone.st>
* ospf_packet.c: (ospf_write) (struct msghdr).msg_name is caddr_t
on most platforms.
(ospf_recv_packet) ditto. And msg_flags is not always there
memset struct then set fields we care about rather than
initialise all fields individually.
paul [Fri, 24 Sep 2004 08:24:42 +0000 (08:24 +0000)]
2004-09-24 Paul Jakma <paul@dishone.st>
* irdp_{interface,main}.c: lists typedef removal cleanup.
update some list loops to LIST_LOOP. some miscellaneous style
and indent fixups.
(no_ip_irdp_address_preference_cmd) Fix delete of referenced node
in loop.
* irdp_packet.c: (irdp_recvmsg) Fix buggy assignment of integer
to pointer.
* if_ioctl{,_solaris}.c: lists typedef removal cleanup.
update some list loops to LIST_LOOP.
paul [Fri, 24 Sep 2004 08:07:54 +0000 (08:07 +0000)]
2004-09-24 Paul Jakma <paul@dishone.st>
* ospf_packet.c: (ospf_write) ifdef fragmentation support.
move actual fragmentation out to a new, similarly ifdefed, function.
(ospf_write_frags) fragmented write support, moved from previous.
2004-09-20 LIU Xin <lx at ns.6test.edu.cn>
* isis_dr.c, isis_events.c: Remove hello multiplier usage while scheduling
DIS election.
* isis_pdu.c: Don't call isis_event_dis_status_change() whenever
l[1|2]_desig_is is different from hdr.lan_id.
Rework of SPF threads schedule logic. I'm not 100% sure whether it's right
thing to do to have completely separate threads for IPv4 and IPv6 SPF
though. But it works and it's now possible to have both IPv4 and IPv6
enabled in interface. One bug fixed in LSP regeneration scheduling as well.
paul [Fri, 17 Sep 2004 08:39:08 +0000 (08:39 +0000)]
2004-09-17 Paul Jakma <paul@dishone.st>
* ripngd/ripngd.c: move setsockopt_so_recvbuf to lib.
* lib/sockopt.{c,h}: Add setsockopt_so_recvbuf, for ripd and ripngd.
* ripd/ripd.c: set receive buffer to a decent size, some systems
have low defaults. Problem noted and fix suggested by Stephan
Schweizer in [zebra 20967].