| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
modified: bgpd/bgp_connection.c -- using _unset functions
-- added bgp_connection_close_file
modified: bgpd/bgp_connection.h
modified: bgpd/bgp_fsm.c -- checked notification handling
-- uses bgp_connection_close_file
modified: bgpd/bgp_notification.c -- added _unset function
modified: bgpd/bgp_notification.h
modified: bgpd/bgp_open_state.c -- added _unset function
modified: bgpd/bgp_open_state.h
modified: lib/qtimers.c -- added debug _verify function
modified: lib/qtimers.h
modified: lib/sockunion.c -- added _unset function
modified: lib/sockunion.h
|
|
|
|
| |
asserts to try to track timer crash.
|
| |
|
| |
|
|
|
|
| |
with having 1 or multiple nexus (and pthreads).
|
|
|
|
|
| |
pthreads then all point at same nexus object. Do necessary in-thread
initialization and finalization. Fix some minor warnings.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
modified: bgpd/bgp_connection.c completed pending queue
modified: bgpd/bgp_engine.c TODOs for start/stop
modified: bgpd/bgp_msg_write.c ) added send_update and send_eor
modified: bgpd/bgp_msg_write.h )
modified: bgpd/bgp_open_state.c fixed free
modified: bgpd/bgp_packet.c tidied up peer->work usage
modified: bgpd/bgp_session.c ) completed various message handlers
modified: bgpd/bgp_session.h )
modified: lib/mqueue.c ) added revoke
modified: lib/mqueue.h )
|
|
|
|
| |
TODOs.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
modified: .gitignore
modified: bgpd/Makefile.am
modified: bgpd/bgp.h
modified: bgpd/bgp_common.h
modified: bgpd/bgp_connection.c
modified: bgpd/bgp_connection.h
modified: bgpd/bgp_fsm.c
modified: bgpd/bgp_msg_write.c
modified: bgpd/bgp_msg_write.h
modified: bgpd/bgp_notification.c
modified: bgpd/bgp_notification.h
modified: bgpd/bgp_open_state.c
modified: bgpd/bgp_open_state.h
modified: bgpd/bgp_packet.h
new file: bgpd/bgp_route_refresh.c
new file: bgpd/bgp_route_refresh.h
modified: bgpd/bgp_session.c
modified: bgpd/bgp_session.h
modified: lib/Makefile.am
new file: lib/confirm.h
modified: lib/memtypes.c
modified: lib/stream.c
modified: lib/stream.h
modified: lib/zassert.h
|
|
|
|
| |
wiring. New queue I/F handling. Routing engine nexus.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
modified: bgpd/Makefile.am
modified: bgpd/bgp_common.h
modified: bgpd/bgp_connection.c
modified: bgpd/bgp_connection.h
modified: bgpd/bgp_engine.c
modified: bgpd/bgp_fsm.c
modified: bgpd/bgp_fsm.h
new file: bgpd/bgp_msg_write.c
new file: bgpd/bgp_msg_write.h
modified: bgpd/bgp_notification.c
modified: bgpd/bgp_notification.h
modified: bgpd/bgp_session.c
modified: bgpd/bgp_session.h
modified: lib/sockunion.h
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
modified: bgpd/Makefile.am
modified: bgpd/bgp.h
modified: bgpd/bgp_common.h
modified: bgpd/bgp_connection.c
modified: bgpd/bgp_connection.h
modified: bgpd/bgp_engine.h
modified: bgpd/bgp_fsm.c
modified: bgpd/bgp_network.c
modified: bgpd/bgp_network.h
new file: bgpd/bgp_peer_index.c
new file: bgpd/bgp_peer_index.h
modified: bgpd/bgp_session.c
modified: bgpd/bgp_session.h
modified: lib/memtypes.c
modified: lib/mqueue.h
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updates lib/mqueue.c and .h
Allows for main message argument to be a (small) embedded structure.
Users of messages can now define suitable structs for the information
to be passed in a message, and use those to write/read the
message data. Should be easier to use and less error prone than
trying to match anonymous argv[n] values.
Allows for straightforward, flexible argv[] array as well.
|
|
|
|
|
|
|
|
| |
Updates lib/mqueue.c and .h
Added: mqb_push_argv_array() push array of 'n' pointers.
mqb_pop_argv_array() pop remains "list" to array of pointers.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updates lib/mqueue.c and .h
Having concluded that two arguments is really too restrictive, this
change:
* allows for an indefinite number of arguments.
With up to 6 in the body of the message queue block itself.
* supports the treatment of arguments from a given argument 'n'
onwards as a list of indefinite length.
So message queue block may be treated as having 'n' fixed
arguments and a variable number of further arguments.
Adds a further memory type.
|
|
|
|
|
| |
Added confirms and assert for SU_ADDRSTRLEN in sockunion.h and in
sockunion2str().
|
|\ |
|
| | |
|
| |\
| | |
| | |
| | | |
into bgp_engine
|
| | |
| | |
| | |
| | | |
mutex so that can call zlog from anywhere.
|
|/ /
| |
| |
| |
| | |
Flag indicates that at least one thread has been created.
(To be used to ensure no surprises when daemonising !)
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On branch bgp_engine
modified: .gitignore
modified: bgpd/Makefile.am
new file: bgpd/bgp.h
new file: bgpd/bgp_common.c
new file: bgpd/bgp_common.h
new file: bgpd/bgp_connection.c
new file: bgpd/bgp_connection.h
modified: bgpd/bgp_debug.c
new file: bgpd/bgp_engine.c
new file: bgpd/bgp_engine.h
modified: bgpd/bgp_fsm.c
modified: bgpd/bgp_fsm.h
modified: bgpd/bgp_network.c
modified: bgpd/bgp_network.h
new file: bgpd/bgp_notification.c
new file: bgpd/bgp_notification.h
modified: bgpd/bgp_open.c
new file: bgpd/bgp_open_state.c
new file: bgpd/bgp_open_state.h
modified: bgpd/bgp_packet.c
new file: bgpd/bgp_peer.c
new file: bgpd/bgp_peer.h
modified: bgpd/bgp_route.c
new file: bgpd/bgp_session.c
new file: bgpd/bgp_session.h
modified: bgpd/bgp_vty.c
modified: bgpd/bgp_zebra.c
modified: bgpd/bgpd.c
modified: bgpd/bgpd.h
modified: lib/Makefile.am
modified: lib/memtypes.c
modified: lib/mqueue.c
modified: lib/mqueue.h
new file: lib/qafi_safi.h
modified: lib/qpselect.c
modified: lib/qpselect.h
modified: lib/qpthreads.c
modified: lib/qpthreads.h
modified: lib/sockopt.c
modified: lib/sockunion.c
modified: lib/sockunion.h
modified: lib/stream.c
modified: lib/stream.h
modified: lib/symtab.h
modified: lib/zebra.h
|
|
|
|
| |
are blocked for non-main thraeds
|
|
|
|
|
| |
before and after reading config file. Announce on all vty when shutting
down.
|
| |
|
| |
|
|
|
|
| |
All qpt_thread_t values are equal if !qpthreads_enabled.
|
| |
|
| |
|
|
|
|
|
| |
For some timers it is convenient to have an interval stored in the
timer, and to be able to set the timer using that interval.
|
|
|
|
|
| |
Go with vector_unset_item(). May be used to trim NULL values at the
end of a vector or to remove all NULL values from a vector.
|
|
|
|
|
|
| |
Remove vector_ream(), which removes item from the vector, by
vector_get_last_item(). Leaves removal from the vector to
qps_file_remove().
|
|
|
|
| |
Run memory commands in cli thread.
|
|
|
|
| |
thread to run in. Add qlib_init stuff. Add -t parameter for "threaded".
|
| |
|
|
|
|
|
| |
When adding to signal queue, must use mq->kick.signal.head == NULL to
check for an empty queue (not mq->kick.signal.tail == NULL).
|
|
|
|
| |
Each has its own nexus.
|
|\ |
|
| |\ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* lib/prefix.h
* prefix6_bit(): add IPv6 wrapper for prefix_bit()
* ospf6d/ospf6_lsdb.c
* ospf6_lsdb_type_router_head(): employ prefix6_bit()
* ospf6_lsdb_type_head(): idem
|
|\ \ \ |
|
| | | | |
|
| |\ \ \
| | | |/
| | |/|
| | | | |
pthreads
|
| |\ \ \
| | | | |
| | | | |
| | | | | |
pthreads
|
| |\ \ \ \
| | | | | |
| | | | | |
| | | | | | |
pthreads
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Functions to set and get all user accessable parts of an mqueue_block
are now provided.
Uses the qpthreads_enabled flag to allow mqueues to work (though in a
limited fashion) when pthreads are not enabled.
|