summaryrefslogtreecommitdiffstats
path: root/bgpd
Commit message (Collapse)AuthorAgeFilesLines
...
* | Weed out last vestiges of FSM setting session->state.Chris Hall2010-01-212-6/+1
| |
* | close(fd) in bgp_connection_close()Chris Hall2010-01-211-4/+0
| |
* | Fix typo in bgp_connection_open.Chris Hall2010-01-211-1/+1
| |
* | Keep timer running past IO errors in Connect/Active states.Chris Hall2010-01-213-68/+58
| |
* | Fix sense of session->connect flagChris Hall2010-01-202-2624/+1
| | | | | | | | | | deleted: bgpd/bgp_fsm.x -- added by mistake modified: bgpd/bgp_session.c -- get session->connect right
* | Fix debuggery in qtimers. Check NULL notify pointer in bgp_vtypaulo2010-01-201-1/+1
| |
* | Fixed dangling uses of bgp_notify_free()Chris Hall2010-01-205-9/+7
| | | | | | | | | | | | | | | | 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
* | Adding verify debug code for qtimers and tidied up.Chris Hall2010-01-208-55/+2727
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | Fix bug in bgp_connection not clearing pointers after free. Plantedpaulo2010-01-202-2/+15
| | | | | | | | asserts to try to track timer crash.
* | Small fix to bgp_network & add reset to peer indexChris Hall2010-01-194-65/+97
| | | | | | | | | | | | | | 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.
* | Use sigprocmask when non-threaded. Fixed assert.paulo2010-01-191-1/+1
| |
* | Recast bgp_peer_index so that pointers to entries work !Chris Hall2010-01-191-70/+73
| | | | | | | | | | Replaced single array of index entries by list of chunks of array entries, and a vector for access by peer_id.
* | Minor fixes to get a clean compile so can start debugging.paulo2010-01-1911-47/+55
| |
* | Merge branch 'bgp_engine' of /git/quagga.euro-ix into bgp_engineChris Hall2010-01-191-13/+40
|\ \
| * \ Merge branch 'bgp_engine' of ssh://paulo@80.177.246.130/git/quagga.euro-ix ↵paulo2010-01-185-84/+168
| |\ \ | | | | | | | | | | | | into bgp_engine
| * | | Nexus to handle old threads and process the bgp local events. Dealspaulo2010-01-181-13/+40
| | | | | | | | | | | | | | | | with having 1 or multiple nexus (and pthreads).
* | | | Disable zebra pro temChris Hall2010-01-192-33/+44
| |/ / |/| | | | | | | | | | | | | | | | | modified: bgpd/bgp_nexthop.c -- skipped queueing of connect "thread" modified: bgpd/bgp_zebra.c -- disabled and closed down "threads"
* | | Refining the session state handling.Chris Hall2010-01-185-84/+168
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | Wired in nexus for bgp_ routing_ and cli_ such that if not usingpaulo2010-01-1811-126/+100
| | | | | | | | | | pthreads then all point at same nexus object. Do necessary in-thread initialization and finalization. Fix some minor warnings.
* | Further work-in-progress.Chris Hall2010-01-178-113/+540
| | | | | | | | | | | | | | | | | | | | | | | | | | 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 )
* | Wired up receiving updates, with update packet sent from BGP to Routingpaulo2010-01-1511-207/+224
| | | | | | | | | | | | | | | | | | | | | | 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.
* | Make session state a Peering Engine item.Chris Hall2010-01-148-84/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | More knitting and clean up replacing old state machine with events withpaulo2010-01-1411-255/+240
| | | | | | | | new. Still work in progress.
* | Knitting it all together. Still not got clean compile. Still lots ofpaulo2010-01-1319-351/+340
| | | | | | | | TODOs.
* | Progress on bgp_msg_read. Still on going.paulo2010-01-119-229/+393
| |
* | Further work-in-progressChris Hall2010-01-1017-2558/+1372
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | Fixed type in bgp_open_state.c. New file bgp_msg_read.c for parsingpaulo2010-01-082-21/+940
| | | | | | | | bgp messages
* | Update peer from received open state. Threaded command. Peer indexpaulo2010-01-087-326/+536
| | | | | | | | wiring. New queue I/F handling. Routing engine nexus.
* | Further work-in-progress.Chris Hall2010-01-0813-278/+2943
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | Continuing work-in-progressChris Hall2010-01-0813-268/+1188
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | Added "threaded" command.paulo2010-01-061-4/+27
| |
* | Work in progress on BGP EngineChris Hall2010-01-069-417/+907
| | | | | | | | | | | | | | | | | | | | | | | | 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
* | Initial commit for bgp_engine branch -- seeding new files...Chris Hall2010-01-0428-2010/+7974
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | Can't use stderr after daemonizing, goes to dev/nullpaulo2009-12-181-8/+0
| |
* | QDEBUG handling. Debug banner on stderr, vty and log file. Annoucepaulo2009-12-181-1/+19
| | | | | | | | | | before and after reading config file. Announce on all vty when shutting down.
* | Use qpt version of pthread_joinpaulo2009-12-171-3/+2
| |
* | Fix shutdown. Move cpu stats command to cli thread.paulo2009-12-171-9/+23
| |
* | Merge branch 'master' of /git/quagga.euro-ix into pthreadsChris Hall (GMCH)2009-12-175-21/+4
|\ \
| * | Merge branch 'master' of git://code.quagga.net/quaggaChris Hall (GMCH)2009-12-175-21/+4
| |\|
| | * bgpd: code cleanupStephen Hemminger2009-12-175-21/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * bgpd/bgp_aspath.c * ashash: only used in one file, make static * aspath_count_numas(): dead code, sayonara * bgpd/bgpd.c * peer_nsf_stop(): only used in one file, make static * bgpd/bgp_packet.h * bgp_capability_receive(): add missing prototype for a global function
* | | Get CLI thread and UI working properly. Sex commands according topaulo2009-12-151-7/+14
| | | | | | | | | | | | thread to run in. Add qlib_init stuff. Add -t parameter for "threaded".
* | | Using message queue to send commands from cli thread to bgp thread.paulo2009-12-141-5/+21
| | |
* | | vty running in main thread. bgp running in its own thread.paulo2009-12-111-10/+40
| | | | | | | | | | | | Each has its own nexus.
* | | Merge branch 'master' of /git/quagga.euro-ix into pthreadsChris Hall (GMCH)2009-12-104-75/+1
|\| |
| * | Merge branch 'master' of /git/quagga.euro-ixChris Hall (GMCH)2009-12-108-1441/+1305
| |\ \ | | |/ | |/|
| | * Merge remote branch 'quagga/master' of /git/quagga.euro-ixChris Hall (GMCH)2009-12-092-33/+9
| | |\
| * | | bgpd: compile warnings cleanupStephen Hemminger2009-12-104-75/+1
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * bgpd/bgp_fsm.c * bgp_clearing_completed(): only used in one file, can be static * bgpd/bgp_packet.c * afi2str(): sayonara * safi2str(): sayonara * bgpd/bgp_route.c * bgp_distance_reset(): sayonara * bgpd/bgp_zebra.c * bgp_ifindex_by_nexthop(): sayonara
* | | Merge remote branch 'quagga/master' of /git/quagga.euro-ix into pthreadsChris Hall (GMCH)2009-12-092-33/+9
|\| |
| * | lib: move check_bit into prefix common codeStephen Hemminger2009-12-091-31/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make one version of check prefix bit, and put it inline with proper prototype. This gets rid of some macro's and also some assert() that can never happen on a non-broken compiler. * bgpd/bgp_table.c * CHECK_BIT(): sayonara * check_bit(): sayonara * SET_LINK(): sayonara * set_link(): make use of prefix_bit() instead of check_bit() * bgp_node_match(): idem * bgp_node_lookup(): idem * bgp_node_get(): idem * lib/prefix.h * prefix_bit(): new inline version of check_bit() * lib/table.c * CHECK_BIT(): sayonara * check_bit(): sayonara * SET_LINK(): sayonara * set_link(): make use of prefix_bit() instead of check_bit() * route_node_match(): idem * route_node_lookup(): idem * route_node_get(): idem * ospf6d/ospf6_lsdb.c * CHECK_BIT(): sayonara * ospf6_lsdb_lookup_next(): make use of prefix_bit() instead of CHECK_BIT() * ospf6_lsdb_type_router_head(): idem * ospf6_lsdb_type_head(): idem * ospf6d/ospf6_route.c * CHECK_BIT(): sayonara * ospf6_route_match_head() make use of prefix_bit() instead of * CHECK_BIT()
| * | bgpd: work around warning in assegments_parse()Denis Ovsienko2009-12-041-2/+5
| | |