summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | Further extension to arguments for message queue blocks.Chris Hall2010-01-062-0/+124
| | | | | | | | | | | | | | | | 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.
* | Merge branch 'bgp_engine' of /git/quagga.euro-ix into bgp_engineChris Hall2010-01-061-4/+27
|\ \
| * | Added "threaded" command.paulo2010-01-061-4/+27
| | |
* | | Extended argument handling for message queue blocks.Chris Hall2010-01-063-38/+509
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | 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
* | Tighten SU_ADDRSTRLEN and sockunion2str() in lib/sockunion.c/.hChris Hall2010-01-052-1/+14
| | | | | | | | | | Added confirms and assert for SU_ADDRSTRLEN in sockunion.h and in sockunion2str().
* | Merge branch 'bgp_engine' of /git/quagga.euro-ix into bgp_engineChris Hall2010-01-052-8/+28
|\ \
| * | Fix typo in lib/sockunion.cpaulo2010-01-041-1/+1
| | |
| * | Merge branch 'pthreads' of ssh://paulo@80.177.246.130/git/quagga.euro-ix ↵paulo2010-01-041-7/+27
| |\ \ | | | | | | | | | | | | into bgp_engine
| | * | Set socket non-blocking prior to listen(). Changed to recursivepaulo2010-01-041-7/+27
| | | | | | | | | | | | | | | | mutex so that can call zlog from anywhere.
* | | | Add qpthreads_thread_created to lib/qpthreadsChris Hall2010-01-052-4/+10
|/ / / | | | | | | | | | | | | Flag indicates that at least one thread has been created. (To be used to ensure no surprises when daemonising !)
* / / Initial commit for bgp_engine branch -- seeding new files...Chris Hall2010-01-0445-2443/+8972
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | Fix bug in using new mqueue interface. Change which signalspaulo2009-12-182-2/+9
| | | | | | | | are blocked for non-main thraeds
* | 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-185-2/+71
| | | | | | | | | | before and after reading config file. Announce on all vty when shutting down.
* | Changes to mqueue interface to support revoke.paulo2009-12-184-74/+40
| |
* | Use qpt version of pthread_joinpaulo2009-12-171-3/+2
| |
* | Add qpt_thread_join() to lib/qpthreadsChris Hall (GMCH)2009-12-172-0/+31
| |
* | Add qpt_threads_equal() to lib/qpthreadsChris Hall (GMCH)2009-12-171-1/+9
| | | | | | | | All qpt_thread_t values are equal if !qpthreads_enabled.
* | Use static mutexespaulo2009-12-176-65/+58
| |
* | Fix shutdown. Move cpu stats command to cli thread.paulo2009-12-179-21/+96
| |
* | 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
* | | Add timer interval handling to lib/qtimerChris Hall (GMCH)2009-12-172-4/+52
| | | | | | | | | | | | | | | 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.
* | | Add vector_trim() and vector_condense() to lib/vector.cChris Hall (GMCH)2009-12-172-7/+50
| | | | | | | | | | | | | | | 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.
* | | Fix to qps_selection_ream()Chris Hall (GMCH)2009-12-171-1/+1
| | | | | | | | | | | | | | | | | | Remove vector_ream(), which removes item from the vector, by vector_get_last_item(). Leaves removal from the vector to qps_file_remove().
* | | Fix race condition when threads start. Make memory stats thread safepaulo2009-12-166-36/+97
| | | | | | | | | | | | Run memory commands in cli thread.
* | | Get CLI thread and UI working properly. Sex commands according topaulo2009-12-1511-189/+444
| | | | | | | | | | | | 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-1413-110/+285
| | |
* | | Fix to mqueue_dequeue in lib/mqueue.cChris Hall (GMCH)2009-12-141-2/+2
| | | | | | | | | | | | | | | When adding to signal queue, must use mq->kick.signal.head == NULL to check for an empty queue (not mq->kick.signal.tail == NULL).
* | | vty running in main thread. bgp running in its own thread.paulo2009-12-119-58/+196
| | | | | | | | | | | | Each has its own nexus.
* | | Merge branch 'master' of /git/quagga.euro-ix into pthreadsChris Hall (GMCH)2009-12-1018-156/+68
|\| |
| * | Merge branch 'master' of /git/quagga.euro-ixChris Hall (GMCH)2009-12-1026-2847/+7341
| |\ \ | | |/ | |/|
| * | ripd: fix compiler warningsStephen Hemminger2009-12-104-8/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ripd/rip_interface.c * rip_request_neighbor(): comment out, unused * rip_request_neighbor_all(): idem * rip_interface_up(): Cast flags otherwise compiler complains about %lld not matching uint64_t on 64 bit x86. Print in hex since flags are bit field. * rip_interface_add(): idem * rip_interface_delete(): idem * ripd/rip_zebra.c * rip_redistribute_set(): comment out, unused * ripd/ripd.h * rip_redistribute_check(): move prototype here so compiler can check function against prototype * ripd/ripd.c * rip_update_default_metric(): comment out, unused
| * | ospf6d: remove dead codeStephen Hemminger2009-12-102-17/+2
| | | | | | | | | | | | | | | | | | | | | | | | * ospf6d/ospf6_interface.c * loopind(): sayonara * ospf6d/ospf6_top.c * ospf6_delete(): comment out, it might be useful if real shutdown is added
| * | ospf6d: fix warnings from recent prefix bit commitStephen Hemminger2009-12-102-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | * 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
| * | ripngd: compiler warnings cleanupStephen Hemminger2009-12-102-23/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ripngd/ripng_interface.c * ripng_check_max_mtu(): unused, sayonara * ripng_interface_down(): cast flag arguments to logging function * ripng_interface_add(): idem * ripng_interface_delete(): idem * ripngd/ripngd.c * ripng_recv_packet(): avoid aliasing warning dereferencing pointer
| * | zebra: deal with irdp compile warningsStephen Hemminger2009-12-104-31/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * zebra/irdp.h * irdp_send_thread(): move prototype to common header file * irdp_advert_off(): idem * process_solicit(): idem * irdp_read_raw(): idem * send_packet(): idem * zebra/irdp_interface.c * inet_2a(): move function to where it is used * in_cksum(): lib/checksum.h already provides prototype * irdp_send_thread(): prototype moved away * inet_2a(): idem * irdp_advert_off(): idem * b1, b2, b3, b4: get rid of global buffers for inet_2a() * if_group(): add local buffer for inet_2a() * if_add_group(): idem * if_drop_group(): idem * irdp_config_write(): idem * Adv_new(): make static * zebra/irdp_main.c * irdp_read_raw(): prototype moved away * send_packet(): idem * in_cksum(): lib/checksum.h already provides prototype * inet_2a(): function moved to irdp_interface.c * zebra/irdp_packet.c * b1, b2, b3, b4: get rid of global buffers for inet_2a() * in_cksum(): lib/checksum.h already provides prototype * process_solicit(): prototype moved away * irdp_read_raw(): fix uninitialized variable
| * | 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 branch 'pthreads' of /git/quagga.euro-ix into pthreadsChris Hall (GMCH)2009-12-103-63/+80
|\ \ \
| * | | Needed unprotected version of vty_reset for use in vty_terminatepaulo2009-12-101-4/+10
| | | |
| * | | Merge branch 'master' of ssh://paulo@80.177.246.130/git/quagga.euro-ix into ↵paulo2009-12-101-2/+3
| |\ \ \ | | | |/ | | |/| | | | | pthreads
| * | | Merge branch 'master' of ssh://paulo@80.177.246.130/git/quagga.euro-ix into ↵paulo2009-12-101-6/+9
| |\ \ \ | | | | | | | | | | | | | | | pthreads
| * \ \ \ Merge branch 'master' of ssh://paulo@80.177.246.130/git/quagga.euro-ix into ↵paulo2009-12-101-2/+3
| |\ \ \ \ | | | | | | | | | | | | | | | | | | pthreads
| * | | | | Stop recursive lock checking assertpaulo2009-12-103-59/+70
| | | | | |
* | | | | | New access functions for mqueue_blocks & use qpthreads_enable.Chris Hall (GMCH)2009-12-102-92/+273
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | | | Introduced qpthreads_enabled flag in lib/qpthreadsChris Hall (GMCH)2009-12-102-99/+296
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This supports running without pthreads, but with code that is made thread-safe. A Big Switch -- qpthreads_enabled -- enables or disables all pthread functions. When disabled, all mutex calls become NOPs.
* | | | | | Merge branch 'master' of /git/quagga.euro-ix into pthreadsChris Hall (GMCH)2009-12-101-2/+3
|\ \ \ \ \ \ | | |_|_|/ / | |/| | | |
| * | | | | Fix reaming of empty symbol table -- lib/symtab.cChris Hall (GMCH)2009-12-101-2/+3
| | |_|/ / | |/| | |