summaryrefslogtreecommitdiff
path: root/client
AgeCommit message (Collapse)Author
2013-11-20Fixes some potential issues with invalid term size in clients.Ondrej Zajicek
2013-04-23Restructures birdc and birdcl to merge duplicated code.Ondrej Zajicek
The BIRD client code is restructured that most of the code (including main function) is shared in client.c, while birdc.c and birdcl.c contain just I/O-specific callbacks. This removes all duplicated code from variant-specific files.
2013-04-19Removes unnecessary client subdirectories and updates buildsystem.Ondrej Zajicek
Renames some files: birdc/client.c -> birdc.c birdcl/client.c -> birdcl.c client_common.c -> common.c
2013-04-06Fix birdcl async message handlingTomas Hlavacek
Fix handling of async messafe in the bird light client. The async message may occure at the any moment so we need the client to liste for the message from server when it waits for user input.
2013-03-19Fix birdcl questionmark handlingTomas Hlavacek
Fix handling of questionmark handling in the bird light client. The questionmark should display help when it is the last non-blank character on command line. Otherwise the questionmark does not have any special meaning and it could be a part of a pattern.
2013-03-19Add lightweight client - birdclTomas Hlavacek
Restructure client/ subdir. Add two different flavors of client. The full featured birdc client code is in client/birdc/. The new light client birtcl is in client/birdcl/. Common sources of both clients are directly in client/. Rework on-line auto-completion in client/command.c to conditionally turn off ncurses-specific code. Add lightweight client without libreadline and ncurses dependencies - birdcl. The birdcl lacks support of history, on-line auto-completion and there are different implementations of "more" functionality and help on '?' press. New client operates in canonical terminal mode (apart from "more" display) and therefore all commands have to be executed by a return key including help commands (called by '?' character in the end of the line). Apart from these limitations the interaction style should be the same as for the full client - birdc. Build of birdcl is always on (independent on --enable-client parameter).
2013-03-19Pull out independent routines from client_full.cTomas Hlavacek
Pull out routines for interacting with the server and interpreting internal commands which are not dependent on libreadline and ncurses libraries. This is a preparation step for a new lightweight birdc client.
2013-03-19Rename client/client.c to client_full.cTomas Hlavacek
Rename client/client.c to client-full.c and change the Makefile accordingly. This is a preparation step for introducing a new lightweight client which should reuse as much code as possible from the old one but it should not depend on external libraries. Signed-off-by: Tomas Hlavacek <tmshlvck@gmail.com>
2013-02-12Allow submitting BIRD commands from UNIX shell even in restricted mode.Ondrej Filip
2012-05-04History deduplication in birdc.Ondrej Zajicek
2012-03-22Some minor changes to CLI.Ondrej Zajicek
2010-12-13Fixes string handling in birdc.Ondrej Zajicek
2010-02-21Fix configure to enable warnings and fix most of them.Ondrej Zajicek
2010-02-21Restricted read-only CLI.Ondrej Zajicek
Also adds support for executing commands using birdc <cmd>.
2009-08-12Count number of lines (and not messages) in 'more'.Ondrej Zajicek
2009-07-15Implements 'more' feature to birdc.Ondrej Zajicek
Also does some code restructuring.
2009-03-14New syntax for bgp_pathOndrej Zajicek
2009-02-12Do not use ? for client-side help when in new BGP path syntaxOndrej Zajicek
2008-11-21I am not sure whether this is proper fix for a problem that birdcOndrej Zajicek
shows only parts of larger outputs (for example 'show route all'). It seems that birdc reads (from bird) and writes (to stdout) everything but during execution of some readline code some already written output disappeared (although it is fflush()ed and tcdrain()ed). As birdc reads from stdin when select said there are some data, O_NONBLOCK for stdin is unnecessary and when it is removed, i didn't notified this problem.
2008-11-21birdc died during terminal resize because of unhandled EINTROndrej Zajicek
in select loop.
2008-10-26Check of socket name lengthOndrej Zajicek
2008-08-25Previous patch reverted. :-(Ondrej Filip
2008-08-25Buffer overflow fix.Ondrej Filip
2004-06-05Unused parameters in the client.Martin Mares
2004-05-31Need <termios.h> for tcdrain().Martin Mares
2004-05-31Fix handling on full pipe to client in bird. Prevent packet overflowsMartin Mares
for even only medium sized route table output. Fix a strange garbled output problem in the client. The latter seems to be caused by some library doing tcflush while there is still command output pending. So the best fix here is to do fflush and then tcdrain. Note that this problem occurs only under certain load situations and is not too easy to reproduce. (by Andreas)
2004-05-31Small change to compile client on FreeBSD.Ondrej Filip
2002-11-13Don't use obsolete functions which are no longer declared in the header.Martin Mares
2001-03-06Fixed <time.h> vs. <sys/time.h> problems.Martin Mares
2000-06-16Use our own SUN_LEN if libc doesn't provide it.Martin Mares
2000-06-09Use SUN_LEN() for length of UNIX domain addresses. This should fix problemsMartin Mares
with connection to clients on libc5 machines.
2000-05-31Both `help' command and the `unknown command' error message now tellMartin Mares
the user to press `?' if he wants help.
2000-05-31Updated all the Doc files to new format.Martin Mares
2000-05-29Delay user input whereever appropriate.Martin Mares
2000-05-08Use PATH_CONTROL_SOCKET instead of tacking on "bird.ctl" manually.Martin Mares
2000-05-05Added skeleton Doc files for the whole developer's documentation.Martin Mares
2000-04-20Use xmalloc() instead of malloc().Martin Mares
2000-04-12Introduced `ARRAY_SIZE' macro to replace all the sizeof(a)/sizeof(*a) ↵Martin Mares
constructs.
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-12Add internal commands of the client to the command list.Martin Mares
2000-03-12Commands which failed expansions are to be stored to history, too.Martin Mares
2000-03-07No longer echoes commands before sending them.Martin Mares
2000-03-04Fixed display of short continued messages in verbose mode.Martin Mares
2000-02-27Support expansion of command abbreviations.Martin Mares
Client considered finished (modulo bugs).
2000-02-17Completion works. Unfortunately, we have to access a couple of internalMartin Mares
symbols of libreadline :-(
2000-02-17Client: Online help works (Cisco style: just press `?' at the end of a line).Martin Mares
2000-02-15First usable version of the client. No command completion and similar niftyMartin Mares
features yet, but it works.
2000-01-20Configure, link and use the readline library.Martin Mares
2000-01-19Put client on a stony ground. The whole client is going to be system-specificMartin Mares
(the current version UNIX-specific) anyway, so it's useless to try splitting it to sysdep and generic part. Instead of this, configure script decides (based on system type and user's wish) what (if any) client should be built and what autoconfiguration it requires. Also, the client provides its own die/bug/... functions.
2000-01-19Generate a list of all commands and their help texts for the client to use.Martin Mares