Age | Commit message (Collapse) | Author |
|
* sigevent.c: (quagga_signal_handler) add a global caught flag, set
the flags to a constant rather increment to be kinder.
(quagga_sigevent_process) new function, to do core of what
quagga_signal_timer did. dont block signals at all as sig->caught
is volatile sig_atomic_t and should be safe to access from signal
and normal contexts. The signal blocking is unneeded paranoia, but
is left intact under an ifdef, should some platform require it.
Check global caught flag before iterating through array.
(quagga_signal_timer) nearly everything moved to
quagga_sigevent_process. Left in under ifdef, in case some
platform could use a regular timer check for signals.
* sigevent.h: quagga_sigevent_process declaration.
* thread.c: (thread_fetch) check for signals at beginning of
scheduler loop, check for signals if select returns EINTR.
|
|
* if.c: (if_cmp_func) Add comment suggested by Greg Troxel.
|
|
* sigevent.c: Don't block SIGTRAP and SIGKILL. Blocking SIGTRAP
confuses gdb, at least on NetBSD 2.0_BETA, where the block
succeeds.
|
|
* jhash.{c,h}: New files. Bob Jenkins' public domain hashing
function, as implemented in linux kernel by David Miller.
|
|
* Merge Kunihiro's 'show route-map' change and add
compatibility aliases for route-map continue
|
|
|
|
|
|
* if.c: (if_cmp_func) fix for interface names where name is same,
but one has no number, eg "devtyp" and "devtyp0".
|
|
libzebra and libospfapiclient are now built shared, and linked shared
with the daemons. This reduces the memory needed when running
multiple daemons; each daemon is at least 150k smaller. Static
libraries are still built, and libtool should use them on platforms
which don't have shared libaries. As with autoconf, the user of a
distribution does not need libtool; one just needs that to build from
CVS.
libospf.a is still a non-shared library, and still installed, not
because that makese sense, but because I don't understand why it is
the way it is now.
Note that the tree was tagged 'libtool-before' just before this commit.
|
|
* ChangeLog: fix my last update config.h -> zebra.h ;)
* zebra.h: Fix gcc check.
|
|
to read system one.
|
|
|
|
* filter.c: (access_list_remark_cmd) buffer_putstr doesnt need cast
to u_char. (ipv6_access_list_remark_cmd) ditto.
if.c: ditto
* network.c: (readn/writen) pointer arg should be type u_char.
* plist.c: needs to include stream.h, not declare stream functions
internally.
(various) Add static qualifier to internal functions.
(prefix_list_type_str) extraneous breaks in switch statement.
(ip_prefix_list_description_cmd) buffer_putstr doesnt need cast
* stream.h: depends on plist.h and export stream_put_prefix
* vty.c: (vty_<telnet option build functions>) should use
unsigned char, telnet options are 0 -> 255.
* zclient.c: various u_char<->char type cleanups.
* zebra.h: Having to define CMSG_* can apply to more than just
BSDI_NRL.
* ripd.c: (rip_distribute_update_all) distribute list hook
function pointer prototype requires struct prefix_list * arg.
(rip_distribute_update_all_wrapper) update to pass required arg,
NULL.
|
|
* config.h: __attribute__ is a gcc'ism
|
|
|
|
* type mismatch fixes
|
|
|
|
* bgp_zebra.c: (bgp_interface_address_add) sync to zclient changes
(bgp_interface_address_delete) ditto.
(bgp_zebra_announce) ditto.
(bgp_zebra_withdraw) ditto.
* isis_zebra.c: Sync with zclient changes.
* zclient.c (zapi_ipv4_route) Follow Sowmini's lead and describe
message format.
* ospf6_zebra.c: Sync to zclient changes
* ospf_zebra.c: Sync with lib/zclient changes
* rip_zebra.c: sync with zclient changes.
* rip_interface.c: ditto.
* ripng_{interface,zebra}.c: sync with zclient changes
2004-05-08 Sowmini Varadhan <sowmini.varadhan@sun.com>
* zclient.c: (zapi_ipv4_add) collapsed into zapi_ipv4_route
(zapi_ipv4_delete) ditto.
(zapi_ipv4_route) add/delete a route by way of cmd arg.
(zapi_ipv6_add) collapsed into zapi_ipv6_route.
(zapi_ipv6_delete) ditto.
(zapi_ipv6_route) add/delete a route by way of cmd arg.
(zebra_interface_address_delete_read) collapsed into
zebra_interface_address_read.
(zebra_interface_address_delete_read) ditto.
(zebra_interface_address_read) read address add/delete messages
by way of type argument. Describe command message format.
(zebra_interface_add_read) Unconditionally read new ifmtu6 field.
Describe command message format.
(zebra_interface_state_read) Unconditionally read new ifmtu6 field.
(zclient_redistribute_set) Collapsed into zclient_redistribute
(zclient_redistribute_unset) ditto
(zclient_redistribute) set/unset redistribution.
(zclient_redistribute_default_set) Collapsed into
zclient_redistribute_default.
(zclient_redistribute_default_unset) ditto.
(zclient_redistribute_default) Redistribute default set/unset.
* zclient.h: delete zapi_ipv{4,6}_add, zapi_ipv{4,6}_delete. Add
zapi_ipv{4,6}_route. delete zclient_redistribute_set/unset. Add
zclient_redistribute. Ditto for
zclient_redistribute_default_{set/unset}.
|
|
* command.c: (sockunion_getsockname) use socklen_t for len.
(sockunion_getpeername) ditto.
|
|
* if.h: Add mtu6 field to struct interface, IPv6 MTU may differ
from IPv4, and Solaris treats the MTU's differently.
Add connected_add_by_prefix, for use by later patch.
* if.c: (connected_add_by_prefix) Add prefix to connected list.
(if_flag_dump) Solaris: Dump IFF_IPv4/6 flag
(if_dump) Dump mtu6 flag, for HAVE_IPV6.
|
|
* daemon.c: (daemon) fix check for error return from setsid
|
|
* (many) reference <lib/version.h> rather than "version.h",
because version.h is a generated file and not present in the
source tree when using objdir builds.
(committed by gdt)
works fine with normal builds; didn't try objdir
|
|
from vtysh ([quagga-dev 932]).
|
|
change - just notes to others).
|
|
* tests/test-sig.c: New file, regression test for sigevents.
* lib/Makefile.am: add sigevent.{c,h}
* (isis|rip|ripng|ospf|ospf6|bgp)d/\1_main.c: modify for sigevents.
* zebra/main.c: ditto.
|
|
* sigevent.{c,h}: New files, implement event handled signals.
see signal_init() in sigevent.h.
|
|
address/netmask pairs, and clarify the two comparison functions.
|
|
|
|
- add privs support
- use misc quagga's definitions
- make it compile"able"
- fix segfault cases related to hostname()
- add debug isis xxx command
This patch has been approved by Paul Jakma.
|
|
|
|
* configure.ac (and everywhere a regular file is opened for
writing): use file permissions from configure rather than
compiled-in umask.
|
|
always.
|
|
|
|
|
|
|
|
555]. Okayed by Paul.
|
|
Use pkginclude_HEADERS rather than include_HEADERS to place includes
in ${prefix}/include/quaggainstead of polluting ${prefix}/include.
|
|
* lib/pid_output.c: (pid_output_lock) undo paulj's mindless edit.
|
|
* lib/routemap.c: (route_map_apply_index) renamed to
route_map_apply_match.
(route_map_apply_match) Take rule list as argument rather than
index. concentrate solely on match logic.
(route_map_apply) Properly implement the route map statement
logic, according to the table, especially the on-match exit
policy.
|
|
* lib/if.{ch}: remove ifc_pointtopoint() - left over from the
reverted RFC3021 patch.
|
|
* lib/vty.c: (vty_read) additional change i had applied to Jay's
telnet sub-option processing crash fix was incorrect, revert.
|
|
* configure.ac: Check for fcntl()
* {bgpd,ospf,ospf6d,ripd,ripngd}/Makefile.am: Install conf file via
regular automake means, not magic install incantations, see
bug #38.
* lib/Makefile.am: install the headers, needed to link libzebra.a
(and hence libospf.a, OSPF-API, etc.)
|
|
* lib/pid_output.c: (pid_output) call pid_output_lock if we have
fcntl().
(pid_output_lock) grab exclusive write lock on pid file, rather
than rely on (fragile) exclusive create.
|
|
* lib/zebra.h: include limits.h if its there, its a portable header
and useful and not just solaris specific. net/route.h is also
useful.
|
|
* lib/vty.c: cleanup getcwd again. just pass the buffer in to getcwd.
|
|
* lib/regex.c: bzero -> memset
* zebra/ioctl.c: ditto. bzero is not portable.
|
|
* lib/vty.c: (vty_telnet_option) Remote DoS exists if a telnet
end-sub-negotation is sent when no sub-negotation data has been
sent. Return immediately if no sub-negotation is in progress.
(vty_read) do not attempt to process options if no sub-negotation
is in progress.
|
|
* lib/vty.c: (vty_save_cwd) dont crash if getcwd fails. try fallback
to SYSCONFDIR. Allocate cwd from the stack rather than relying on
(non-portable) getcwd() allocation (which we didnt seem to be
freeing).
|
|
* lib/zebra.h: define UINT32_MAX for those systems which do not
provide it.
* bgp_attr.h: define BGP_MED_MAX.
* bgp_route.c: update defines/constants to BGP_MED_MAX.
* bgp_routemap.c: ditto. clean up route_match_metric_compile
slightly to avoid unneccesary XMALLOC.
|
|
* zebra/connected.c: revert the 'generic PtP' patch as it causes
far too many problems. People who use FreeSWAN should investigate
native linux ipsec.
* zebra/rt_netlink.c: ditto
* lib/if.c: ditto
* ripd/ripd.h: ditto
* ripd/ripd.c: ditto
* ripd/rip_interface.c: ditto
* ospfd/ospfd.c: ditto
* ospfd/ospf_snmp.c: ditto
* bgpd/bgp_nexthop.c: ditto
|