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.
