summaryrefslogtreecommitdiff
path: root/nest/cli.c
AgeCommit message (Collapse)Author
2023-04-24Resource pools are now bound with domains.Maria Matejka
Memory allocation is a fragile part of BIRD and we need checking that everybody is using the resource pools in an appropriate way. To assure this, all the resource pools are associated with locking domains and every resource manipulation is thoroughly checked whether the appropriate locking domain is locked. With transitive resource manipulation like resource dumping or mass free operations, domains are locked and unlocked on the go, thus we require pool domains to have higher order than their parent to allow for this transitive operations. Adding pool locking revealed some cases of insecure memory manipulation and this commit fixes that as well.
2023-04-22Resource pool closing has its dedicated functionMaria Matejka
2023-04-22Socket closing has its dedicated functionMaria Matejka
2023-01-19CLI closing fix when its action is run asynchronously.Maria Matejka
Some CLI actions, notably "show route", are run by queuing an event somewhere else. If the user closes the socket, in case such an action is being executed, the CLI must free the socket immediately from the error hook but the pool must remain until the asynchronous event finishes and cleans everything up.
2022-10-12CLI fix to break busy-loop waiting for corked show-route exportsMaria Matejka
2022-06-27The show-route CLI command now uses the route export APIMaria Matejka
In the multithreaded environment, it is not supposed that anybody traverses the routing table as the CLI show-route was doing. Now the routing table traversal is gone and CLI won't hold the table locked while computing filters.
2019-11-26CLI: Fix continuation lines after final oneOndrej Zajicek (work)
Continuation lines may use short form (with space instead of message number), but this should not be done when previous line is final. Thanks to Kenth Eriksson for the bugreport and analysis.
2019-03-20Fixed an undefined symbol bug in CLI introduced by filter refactoringMaria Matejka
2018-02-07Nest: Trivial whitespace cleanupOndrej Zajicek (work)
2017-05-31Merge branch 'master' into int-newOndrej Zajicek (work)
2017-05-31CLI: Fix bug in symbol handling introduced in previous patchesOndrej Zajicek (work)
2017-05-16Linpool: default allocation sizeJan Moskyto Matejka
2017-05-15Nest: split route show into separate fileJan Moskyto Matejka
2015-06-08unsigned [int] -> uintPavel TvrdĂ­k
2012-12-26Implements undo command and optional timeout for configurationOndrej Zajicek
Several new configure command variants: configure undo - undo last reconfiguration configure timeout - configure with scheduled undo if not confirmed in timeout configure confirm - confirm last configuration configure check - just parse and validate config file
2012-07-18Implements wildcard matching in config file include.Ondrej Zajicek
Also fixes some minor bugs in include. Thanks Kelly Cochran for suggestion and draft patch.
2011-10-10Fixes for include.Ondrej Zajicek
2011-09-11Configuration can include other files.Ondrej Filip
2011-07-03Prints full community lists during 'show route all'.Ondrej Zajicek
2010-02-21Fix configure to enable warnings and fix most of them.Ondrej Zajicek
2009-07-14Fixes bug in CLI TX buffer management.Ondrej Zajicek
2004-05-31Small correction to va_start/va_end in cli_printf (va_end was missing).Martin Mares
(Andreas)
2000-06-08Fixes for the programmer's manual.Martin Mares
2000-06-07Fixes to the progdoc.Martin Mares
2000-06-07Spelling fixes to progdoc.Martin Mares
2000-06-03Minor changes to the progdocs.Martin Mares
2000-06-03More documentation.Martin Mares
2000-05-29Tracing of CLI connections/commands can be now controlledMartin Mares
by `debug commands <level>' in the configuration. Level 0 means no tracing, 1 means connections only, 2 includes all commands.
2000-04-27Fixed a couple of nasty CLI bugs which were triggered on long or multi-partMartin Mares
outputs. It took a whole evening to hunt them down, but now the CLI seems to work fine. Now I run three BGP connections with several thousand routes!
2000-03-31Include "lib/string.h" instead of <string.h>. It should give us bzero()Martin Mares
and other non-portable functions on all systems.
2000-03-04Enabled short continuations.Martin Mares
1999-12-06Implemented echoing of log messages to CLI connections. Just try `echo all'.Martin Mares
1999-12-01Reset temporary parser data before parsing, not afterwards. This enablesMartin Mares
deferred CLI command handlers to store their temporary data in the CLI parsing pool.
1999-11-30Remember protocol instance in proto_config and use that forMartin Mares
`show protocols <name>'.
1999-11-30Don't use continuation shortcuts until real client is written.Martin Mares
1999-11-17Command line interface now works.Martin Mares
1999-10-31Parse CLI commands. We use the same parser as for configuration files (becauseMartin Mares
we want to allow filter and similar complex constructs to be used in commands and we should avoid code duplication), only with CLI_MARKER token prepended before the whole input. Defined macro CF_CLI(cmd, args, help) for defining CLI commands in .Y files. The first argument specifies the command itself, the remaining two arguments are copied to the help file (er, will be copied after the help file starts to exist). This macro automatically creates a skeleton rule for the command, you only need to append arguments as in: CF_CLI(STEAL MONEY, <$>, [[Steal <$> US dollars or equivalent in any other currency]]): NUM { cli_msg(0, "%d$ stolen", $3); } ; Also don't forget to reset lexer state between inputs.
1999-10-31The CLI I/O functions work as desired.Martin Mares
1999-10-29First steps of the Command Line Interface: I/O routines.Martin Mares