/* if_nhrp_authentication => "<ip|ipv6>nhrp authentication PASSWORD$password" */
DEFUN_CMD_FUNC_DECL(if_nhrp_authentication)
#define funcdecl_if_nhrp_authentication static int if_nhrp_authentication_magic(\
	const struct cmd_element *self __attribute__ ((unused)),\
	struct vty *vty __attribute__ ((unused)),\
	int argc __attribute__ ((unused)),\
	struct cmd_token *argv[] __attribute__ ((unused)),\
	const char * password)
funcdecl_if_nhrp_authentication;
DEFUN_CMD_FUNC_TEXT(if_nhrp_authentication)
{
#if 1 /* anything to parse? */
	int _i;
#if 0 /* anything that can fail? */
	unsigned _fail = 0, _failcnt = 0;
#endif
	const char *password = NULL;

	for (_i = 0; _i < argc; _i++) {
		if (!argv[_i]->varname)
			continue;
#if 0 /* anything that can fail? */
		_fail = 0;
#endif

		if (!strcmp(argv[_i]->varname, "password")) {
			password = (argv[_i]->type == WORD_TKN) ? argv[_i]->text : argv[_i]->arg;
		}
#if 0 /* anything that can fail? */
		if (_fail)
			vty_out (vty, "%% invalid input for %s: %s\n",
				   argv[_i]->varname, argv[_i]->arg);
		_failcnt += _fail;
#endif
	}
#if 0 /* anything that can fail? */
	if (_failcnt)
		return CMD_WARNING;
#endif
#endif
	if (!password) {
		vty_out(vty, "Internal CLI error [%s]\n", "password");
		return CMD_WARNING;
	}

	return if_nhrp_authentication_magic(self, vty, argc, argv, password);
}

/* if_no_nhrp_authentication => "no <ip|ipv6>nhrp authentication PASSWORD$password" */
DEFUN_CMD_FUNC_DECL(if_no_nhrp_authentication)
#define funcdecl_if_no_nhrp_authentication static int if_no_nhrp_authentication_magic(\
	const struct cmd_element *self __attribute__ ((unused)),\
	struct vty *vty __attribute__ ((unused)),\
	int argc __attribute__ ((unused)),\
	struct cmd_token *argv[] __attribute__ ((unused)),\
	const char * password)
funcdecl_if_no_nhrp_authentication;
DEFUN_CMD_FUNC_TEXT(if_no_nhrp_authentication)
{
#if 1 /* anything to parse? */
	int _i;
#if 0 /* anything that can fail? */
	unsigned _fail = 0, _failcnt = 0;
#endif
	const char *password = NULL;

	for (_i = 0; _i < argc; _i++) {
		if (!argv[_i]->varname)
			continue;
#if 0 /* anything that can fail? */
		_fail = 0;
#endif

		if (!strcmp(argv[_i]->varname, "password")) {
			password = (argv[_i]->type == WORD_TKN) ? argv[_i]->text : argv[_i]->arg;
		}
#if 0 /* anything that can fail? */
		if (_fail)
			vty_out (vty, "%% invalid input for %s: %s\n",
				   argv[_i]->varname, argv[_i]->arg);
		_failcnt += _fail;
#endif
	}
#if 0 /* anything that can fail? */
	if (_failcnt)
		return CMD_WARNING;
#endif
#endif
	if (!password) {
		vty_out(vty, "Internal CLI error [%s]\n", "password");
		return CMD_WARNING;
	}

	return if_no_nhrp_authentication_magic(self, vty, argc, argv, password);
}

