2007-06-20 Nicolas Deffayet <nicolas@deffayet.com>

	* vtysh.c: (vtysh_write_terminal) Write 'end' when done,
	  to be consistent with telnet vty, and expected by tools
	  like rancid.

2007-05-01 David L Stevens <dlstevens@us.ibm.com>

	* vtysh/extract.pl.in: added VTYSH_ZEBRA flag for route-map and
	  plist
	* vtysh/Makefile.am: added zebra_routemap.c
	* vtysh/vtysh.h: added VTYSH_ZEBRA flag to VTYSH_RMAP

2007-04-28 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

	* vtysh.c: (vtysh_log_timestamp_precision,
	  no_vtysh_log_timestamp_precision) Implement new log timestamp
	  precision commands: send to all daemons.
	  (vtysh_init_vty) Install new log timestamp precision commands.

2006-07-27 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

	* vtysh_main.c: (usage) Add new -d and -E options.  And note that
	  -c can be used multiple times, possibly with embedded linefeeds.
	  (longopts) Add new -d and -E options.
	  (main) Add new -d and -E options, and create a linked list to
	  support multiple -c options.  Do not call vtysh_connect_all until
	  after vtysh_read_config(config_default) and vtysh_auth have
	  succeeded.  This prevents the vtysh.conf file from configuring
	  any daemons, and it ensures that authentication has been passed
	  before we send any commands to any daemons.  Call vtysh_connect_all
	  with any daemon name supplied with -d.  If it is unable to connect
	  to any daemons, issue an error message and exit immediately.
	  When used in -c mode, call vtysh_execute("enable") before
	  executing the commands in order to match interactive behavior. 
	  And detect embedded linefeed chars in -c commands and break them up
	  appropriately.
	* vtysh.h: (vtysh_connect_all) Fix proto to reflect new
	  daemon_name argument, and that it now returns an integer -- the
	  number of daemons to which we were able to connect.
	* vtysh.c: (vtysh_connect_all) Add a new daemon_name argument.
	  If supplied, connect only to that daemon.  And return
	  the number of daemons to which we were able to connect.
	  (vtysh_prompt): Performance enhancement -- make struct utsname
	  static so we call uname to get the hostname only once.

2006-05-24 Paul Jakma <paul.jakma@sun.com>

	* vtysh.c: (general) Add 'show memory' command.

2006-05-21 Paul Jakma <paul.jakma@sun.com>

	* vtysh.c: (vtysh_show_logging_cmd) Suppress output for daemons
	  which are not running (Andrew Schorr).

2006-05-17 Paul Jakma <paul.jakma@sun.com>

	* vtysh.c: (general) Add 'show logging' command.

2006-01-11 Erik Smit <zoiah@zoiah.net>

	* vtysh.c: (vtysh_config_from_file) fix regression from
	  a previous cleanup, vtysh_client.flags and cmd->daemon are
	  bitwise flags, bitwise & was meant to be used. Fixes breakage
	  of integrated config file reading.

2005-09-15 Hasso Tepper <hasso at quagga.net>

	* vtysh.c: Fix warning by casting rl_bind_key 2. argument correctly.
	* extract.pl.in: Fix warning - add isisd/topology to the includes.

2005-08-22 Hugo Santos <hsantos@av.it.pt>

	* vtysh.c: Add support for BGP_IPV6M_NODE
	
2005-07-12 Christian Hammers <ch@debian.org>

	* vtysh_user.c: rename struct user to struct vtysh_user to avoid
	  clashes with sys/user.h on Linux/ARM.

2005-04-07 Hasso Tepper <hasso at quagga.net>

	* Makefile.am: Remove rebuild4 target, it's not used any more by build
	  procedure. Define vtysh_cmd_FILES. Use EXTRA_DIST.
	* extract.pl.in: Ignore "router zebra".

2005-03-28 Hasso Tepper <hasso at quagga.net>

	* extract.pl.in: Use SNMP_INCLUDES to avoid warnings if compiling with
	  snmp support.

2005-03-09 Hasso Tepper <hasso at quagga.net>

	* vtysh_config.c: Move password commands to the AAA_NODE. It
	  quarantees that they will appear after SERVICE_NODE to make sure
	  that encrypted passwords will work ("service password-encryption"
	  command).

2005-01-28 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

	* vtysh.h: Remove obsolete VTYSH_INDEX_* defines.  Fix many prototypes
	  for functions with no arguments (must specify argument list as void).
	* vtysh.c: Enhance vtysh_client array to include the daemon's name
	  and bitmask and socket path (in addition to the fd).  This allows
	  us to use loop constructs for various operations that need to be
	  applied to all client daemons, and it facilitates better error
	  messages.  Also fix some prototypes with void argument lists.
	  (vclient_close) Issue a warning message indicating which daemon's
	  socket is being closed.
	  (vtysh_execute_func,vtysh_config_from_file) Use a for loop to
	  call vtysh_client_execute.
	  (vtysh_write_terminal,write_config_integrated) Use a for loop to
	  call vtysh_client_config.
	  (vtysh_write_memory) Use a for loop to call vtysh_client_execute.
	  (vtysh_show_daemons) Use a for loop.
	  (vtysh_connect) The struct vtysh_client is now statically initialized,
	  so do not initialize it here.
	  (vtysh_connect_all) Use a for loop to call vtysh_connect.  Set
	  ripd_client pointer for use in vtysh_exit_ripd_only.

2005-01-23 Hasso Tepper <hasso at quagga.net>

	* vtysh.conf.sample: Fix typo "integrated-vtysh-conf" ->
	  "integrated-vtysh-config".
	* vtysh/vtysh.c: Implement walkup in node tree for vtysh as it
	  already works in vty.

2005-01-10 Hasso Tepper <hasso at quagga.net>

	* vtysh.c: Reflect changes in lib. cmd_execute_command() should know
	  now that it's called from vtysh and must not attempt to walk up in
	  the node tree.

2004-12-22 Hasso Tepper <hasso at quagga.net>

	* vtysh_config.c: No delimiter between "ip forwarding" and "ipv6
	  forwarding". Show common router-id before router nodes. Fix router
	  bgp node parsing. Move debug commands into debug node and no
	  delimiter between lines there.

2004-12-09 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

	* vtysh.c: (vtysh_connect) No reason to call geteuid and getegid,
	  the results were never used.

2004-12-07 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

	* vtysh.c: Make several functions static instead of global.
	  Added several commands to support destination-specific logging levels.
	  (vtysh_completion) This function is unused, so comment it out.

2004-11-11 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

	* vtysh.c: (vtysh_client_execute) Fix flaws in detecting trailing
	  '\0' chars and command return code.

2004-10-28 Hasso Tepper <hasso at quagga.net>

	* vtysh.c: "show running-daemons" broke users habits who are using
	  "sho run" to view running configuration. Changed it to "show
	  daemons". 

2004-10-20 Hasso Tepper <hasso at quagga.net>

	* vtysh.c: Don't popen pager if command is "exit". Fixes "vtysh screws
	  up my terminal if I exit" issue.

2004-10-13 Hasso Tepper <hasso at quagga.net>

	* extract.pl.in: All daemons can use both IPv6 and IPv4 access lists
	  to limit access to vty.

2004-10-11 Paul Jakma <paul@dishone.st>

	* vtysh.c: (vtysh_client_execute) fix the sync fix. The 4th and
	  final sync byte is not ASCII NULL, it's actually a status integer,
	  and only ASCII NULL if CMD_SUCCESS is returned by daemon.
	  Fix pointed out by Hasso.
 
2004-10-11 Hasso Tepper <hasso at quagga.net>

	* vtysh.c, vtysh_user.c: Make more strings const.
	
2004-10-07 Hasso Tepper <hasso at quagga.net>

	* vtysh.c, vtysh.h, vtysh_config.c, vtysh_main.c: Fix compiler
	  warnings: make strings const, signed -> unsigned, remove unused
	  variables.
	* vtysh_config.c: Fix crash introduced with previous patch.

2004-10-03 Hasso Tepper <hasso at quagga.net>

	* vtsyh_main.c: Enter into enable node by default. Disable node doesn't
	  make sense if we don't have any authentication for enable.
	* vtysh.c: Implement "show running-daemons" command.
	* vtysh.c: Use either integrated conf or daemon conf not both. Move
	  configuration command into "service" level.
	* vtysh.c: Remove "write ..." commands from other nodes than enable.
	  We have "do ..." extension for that.
	* vtysh_config.c, vtysh.c: Integrate vtysh configuration into
	  integrated one.
	* vtysh_config.c: Use FORWARD_NODE and SERVICE_NODE vty nodes.
	* vtysh_config.c: Make "service" lines unique in integrated config.
	* vtysh.c: Make "service password-encryption" command work in vtysh.
	* vtysh_config.c, vtysh.c, Makefile.am, extract.pl.in: Introduce line
	  vty commands in vtysh. Parse lib/vty.c for commands, but ignore
	  commands that don't make sense in vtysh. Closes Bugzilla #104.
	* vtysh.c: Make "[enable] password" commands work in vtysh. Behavior
	  is similar to "log" commands - vtysh just passes commands to all
	  daemons.
	* vtysh_main.c, vtysh_config.c, vtysh.h: Remove any code dealing with
	  configuration files specified from command line. We read/write files
	  from/to system location only (ie. remove -f again).
	* Makefile.am: Parse zebra/router-id.c.

2004-09-26 Hasso Tepper <hasso at quagga.net>

	* vtysh.c: Fix compiler warning.

2004-09-17 Paul Jakma <paul@dishone.st>

	* vtysh.c: (vtysh_client_execute) trailling NULLs can be arbitrarily
          split across reads, dont get confused by this and block forever.

2004-09-13 Paul Jakma <paul@dishone.st>

	* Makefile.am: extract.pl isnt in srcdir, it's always in the builddir.
	  remove zebra/irdp.c from list - dead.
	* extract.pl.in: match on end of filenames, filename could contain
          various preamble due to out of tree builds. Substitute in the
	  autoconf srcdir/builddir paths for includes to cpp.

2004-08-28 Hasso Tepper <hasso at quagga.net>

	* vtysh_main.c: Rename signal handling functions not to conflict
	  with functions from lib/sigevent.c.

2004-08-27 Hasso Tepper <hasso at quagga.net>

	* vtysh.c: Make "terminal length <0-512>" command work in vtysh.

2004-08-27 Hasso Tepper <hasso at quagga.net>

	* vtysh.c: Enable using ssh from ENABLE_NODE.
	* vtysh_config.c: Make enable password uniq lines appear only once in
	  configuration.
	* vtysh_main.c, vtysh_config.c, vtysh.h: Remove useless code which
	  searched configuration files from current directory. Add -f to
	  specify conf from command line.

2004-08-26 Hasso Tepper <hasso at quagga.net>

	* *.c: Cosmetical changes - strip long lines, fix multiline comments
	  style, indentation fixes, remove useless comments.
	* vtysh.h: define VTYSH_INTERFACE.
	* vtysh.c: Use VTYSH_INTERFACE where possible. Added some related TODO
	  items.
	* vtysh.c: Move things around a little to reduce spaghetti mess.
	* Makefile.am: Parse only needed files from zebra daemon while
	  building vtysh_cmd.c file to supress warnings.

2004-06-30  Greg Troxel  <gdt@poblano.ir.bbn.com>

	* extract.pl.in: Rename from extract.pl, with @PERL@.

	* Makefile.am: Add vtysh_cmds.c to CLEANFILES.

2004-06-20 Hasso Tepper <hasso@estpak.ee>

	* extract.pl: Zebra daemon has access lists as well.

2004-05-10 Hasso Tepper <hasso@estpak.ee>

	* vtysh.c: Workaround for most hated vtysh bug - Bugzilla #58.

2004-04-06 Hasso Tepper <hasso@estpak.ee>

	* vtysh_main.c: Don't save command to history if last command already
	  there is same.
	* vtysh_main.c: Replace -e with -c.
	* vtysh_main.c: Fix help.

2004-03-04 Hasso Tepper <hasso@estpak.ee>

	* vtysh.c: Remove using PAGER.

2004-01-15 Paul Jakma <paul@dishone.st>

	* vtysh_config.c: Fix up strlen to use correct string.
	
2003-12-23 Hasso Tepper <hasso@estpak.ee>
  
	* Makefile.am extract.pl vtysh.c vtysh.h vtysh_config.c:
	  isisd integration to vtysh.

2003-05-01 Sergiy Vyshnevetskiy <serg@vostok.net>

	vtysh.c: Program shouldn't terminate on pager execution failure
	vtysh_user.c: configure support for openpam (freebsd5.0)

2003-04-19 Hasso Tepper <hasso@estpak.ee>

	* extract.pl vtysh.c vtysh.h: sync daemon's route-map commands to
	have same syntax

2002-09-30 Paul Jakma <paulzebra@rs250.org>
	
	* vtysh.c: add 'write-config (integrated|daemon)' option
	to specifiy whether write config commands should write
	integrated Zebra.conf file and/or per daemon files.
	Defaults to per daemon, unless this is turned off.

2002-07-07  Kunihiro Ishiguro  <kunihiro@ipinfusion.com>

	* zebra-0.93 released.

2001-08-19  Kunihiro Ishiguro  <kunihiro@ipinfusion.com>

	* zebra-0.92a released.

2001-08-15  Kunihiro Ishiguro  <kunihiro@ipinfusion.com>

	* zebra-0.92 released.

2001-02-20  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* vtysh.c (vtysh_client_config): Do not set bufsz to 120.
	Suggested by: Matthew Grant <grantma@anathoth.gen.nz>.

2001-02-15  Hideto Yamakawa <yamakawa@dml.com>

	* vtysh.c (vtysh_client_execute): Call fflush after fprintf.

	* vtysh_config.c (vtysh_config_dump): Use VTYSH_PAGER if defined.

2001-02-14  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* vtysh.c (vtysh_execute_func): Add fflush before pclose.

2001-02-10  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* vtysh.c: VTY shell pager name.  When environment variable
	VTYSH_PAGER is defined, use it as VTY shell pager.

2001-02-09  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* vtysh.c (vtysh_execute_func): Add pager argument for test of
	pager invocation.

2001-02-08  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* extract.pl: Add -DHAVE_CONFIG_H option to cpp.

2001-02-08  Matthew Grant <grantma@anathoth.gen.nz>

	* vtysh.c (vtysh_client_config): Use sysconf to determine output
	buffer size.
	(vtysh_write_memory): Set umask 0077.
	(vtysh_connect): Check permission to the socket.

2001-02-01  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* zebra-0.91 is released.

2001-01-31  Michael Rozhavsky <mrozhavsky@opticalaccess.com>

	* vtysh.c (new_completion): Fix problem of appending space when
	completion is executed.

2001-01-23  Akihiro Mizutani <mizutani@dml.com>

	* vtysh.c (vtysh_write_terminal): "write terminal" to all node.

2001-01-15  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* vtysh.c (vtysh_execute): Fix unconditional lock by other VTY.
	Suggested by Hideto Yamakawa <yamakawa@dml.com>.

2001-01-09  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* zebra-0.90 is released.

2001-01-07  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* vtysh.h (ZEBRA_PATH): Fix new vtysh path.  Reported by "Matt
	Ranney" <mjr@ranney.com>

2000-11-06  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* vtysh.c (DEFUNSH): Add "address-family vpnv4" DEFUNSH.

2000-10-23  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* vtysh.c (execute_command): Add two arguemnt support for
	executing child process.
	(vtysh_telnet_port): New command "telnet WORD PORT" is added.

2000-10-23  Akihiro Mizutani <mizutani@dml.com>

	* vtysh.c (vtysh_write_memory): Display [OK] when configuration is
	saved without problem.

2000-10-20  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* vtysh.c (vtysh_config_from_file): "key chain" command with -b
	flag problem is fixed.

2000-10-17  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* vtysh_user.c: Change to use linklist.c.

2000-10-02  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* Makefile.am (noinst_HEADERS): Add vtysh_user.h.

	* zebra-0.89 is released.

2000-09-22  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* vtysh_main.c: Declare thread master.

2000-08-25  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* vtysh_main.c (main): Add missing --help procudure.  Reported by
	Patrick Rother <krd@roka.net>.

2000-08-22  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* vtysh.c (DEFUNSH): "interface IFNAME" works.

2000-08-20  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* vtysh_user.c: Change name from vtysh_pam.c.

	* vtysh.conf.sample: New file for vtysh configuration.

2000-08-19  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* vtysh_pam.c (vtysh_pam): New file for PAM.

2000-08-17  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* zebra-0.88 is released.

2000-08-02  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* Makefile.am (vtysh_LDADD): Remove -lreadline and -lncurses.

	* vtysh.c (vtysh_connect): Use AF_UNIX instead of AF_LOCAL for
	backward compatibility.

2000-07-09  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* extract.pl: Change regexp to match DEFUN and ALIAS at the same
	time.

2000-07-05  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* vtysh.c (signal_init): Ignore SIGPIPE signal.

2000-07-04  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* extract.pl: ALIAS command can be extracted by extract.pl.

2000-07-03  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* extract.pl: Fix scalar and array semantics.

	* vtysh.c (vtysh_telnet): Add "telnet" client command.

2000-07-02  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* vtysh.c (main): Add -e flag for passing command from arugment.
	(vtysh_ping): Add "ping" command for test of command execution.
	(init_node): Add "traceroute" command.
	(vtysh_start_shell): Add "start-shell", "start-shell bash",
	"start-shell zsh".
	(sigint): Add check for execute_flag for avoid duplicate prompt.

2000-06-28  Kunihiro Ishiguro  <kunihiro@zebra.org>

	* vtysh.c: New file for vty shell.
	* vtysh.h: Likewise.
	* extract.pl: Likewise.
	* vtysh_cmd.c: Generate by extract.pl.
