| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| |
| |
| | |
Removed some of the temporary debuggery in qtimers that only worked in 1
thread. Initialised the mqueue mutex. Stopped peer_index from
zeroizing its mutex after it had been initialized.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
deleted: bgpd/bgp_fsm.x -- added by mistake
modified: bgpd/bgp_session.c -- get session->connect right
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
modified: bgpd/bgp_msg_write.c
modified: bgpd/bgp_notification.c
modified: bgpd/bgp_open_state.c
modified: bgpd/bgp_peer.c
modified: bgpd/bgp_session.c
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| |
| |
| | |
Correctly stepping along list of listeners in bgp_md5_set_listeners.
Added reset function for peer index and remove spurious argument
for bgp_peer_index_mutex_init.
|
| | |
|
| |
| |
| |
| |
| | |
Replaced single array of index entries by list of chunks of array
entries, and a vector for access by peer_id.
|
| | |
|
|\ \ |
|
| | | |
|
| |\ \
| | | |
| | | |
| | | | |
into bgp_engine
|
| | | |
| | | |
| | | |
| | | | |
with having 1 or multiple nexus (and pthreads).
|
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | | |
modified: bgpd/bgp_nexthop.c -- skipped queueing of connect
"thread"
modified: bgpd/bgp_zebra.c -- disabled and closed down
"threads"
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
modified: bgpd/bgp_common.h
Renaming of states: sStopping -> sLimping
sStopped -> sDisabled
modified: bgpd/bgp_fsm.c
Removed last vestige of session->state stuff.
modified: bgpd/bgp_peer.c
Upgraded event processing so that disable session has full hand
shake with BGP Engine.
modified: bgpd/bgp_session.c
Changed to implement sLimping and sDisabled states and the
disable session hand-shake.
modified: bgpd/bgp_session.h
|
| |
| |
| |
| |
| | |
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 )
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
engine. Wired up Routing engine side of sending update packets to BGP
engine with flow control.
Eliminated a lot of compilation errors and warnings although a few
remain.
Have skipped out now unused code, particularly in bgp_packet.c that will
be deleted eventually.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Along with the introduction of the sStopping session state, move
responsibility for the session->state field entirely back to
Peering Engine, and get it to change same when session events
arrive.
Stop FSM from writing the session->state, session->event,
session->notification, session->err and session->ordinal fields.
(Which may now be used by Peering Engine if it wants.)
Handle sStopping as an active state where required.
Not issue a further session disable once in sStopping state.
Wire up bgp_connection and bgp_msg_read.
modified: bgpd/bgp_connection.c
modified: bgpd/bgp_fsm.c
modified: bgpd/bgp_msg_read.c
modified: bgpd/bgp_msg_read.h
modified: bgpd/bgp_peer.c
modified: bgpd/bgp_peer_index.c
modified: bgpd/bgp_session.c
modified: bgpd/bgp_session.h
|
| |
| |
| |
| | |
new. Still work in progress.
|
| |
| |
| |
| | |
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
|
| |
| |
| |
| | |
bgp messages
|
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
modified: bgpd/bgp_common.h
modified: bgpd/bgp_connection.c
modified: bgpd/bgp_connection.h
modified: bgpd/bgp_fsm.c
modified: bgpd/bgp_fsm.h
modified: bgpd/bgp_network.c
modified: bgpd/bgp_open_state.h
modified: bgpd/bgp_session.c
modified: bgpd/bgp_session.h
|
| |
| |
| |
| |
| | |
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
|
| | |
|