mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-05 20:51:17 +00:00
vtysh: improve config-write error reporting
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
This commit is contained in:
parent
87f44e2f0b
commit
c10c5926cb
@ -2479,9 +2479,9 @@ vtysh_write_config_integrated(void)
|
||||
fp = fopen (quagga_config, "w");
|
||||
if (fp == NULL)
|
||||
{
|
||||
fprintf (stdout,"%% Can't open configuration file %s due to '%s'\n",
|
||||
fprintf (stdout,"%% Error: failed to open configuration file %s: %s\n",
|
||||
quagga_config, safe_strerror(errno));
|
||||
return CMD_SUCCESS;
|
||||
return CMD_WARNING;
|
||||
}
|
||||
fd = fileno (fp);
|
||||
|
||||
@ -2538,12 +2538,11 @@ vtysh_write_config_integrated(void)
|
||||
|
||||
fclose (fp);
|
||||
|
||||
printf ("Integrated configuration saved to %s\n", quagga_config);
|
||||
if (err)
|
||||
return CMD_WARNING;
|
||||
|
||||
fprintf (stdout,"Integrated configuration saved to %s\n", quagga_config);
|
||||
fprintf (stdout,"[OK]\n");
|
||||
|
||||
printf ("[OK]\n");
|
||||
return CMD_SUCCESS;
|
||||
}
|
||||
|
||||
@ -2589,9 +2588,9 @@ DEFUN (vtysh_write_memory,
|
||||
|
||||
if (ret != CMD_SUCCESS)
|
||||
{
|
||||
printf("Warning: attempting direct configuration write without "
|
||||
printf("\nWarning: attempting direct configuration write without "
|
||||
"watchquagga.\nFile permissions and ownership may be "
|
||||
"incorrect, or write may fail.\n");
|
||||
"incorrect, or write may fail.\n\n");
|
||||
ret = vtysh_write_config_integrated();
|
||||
}
|
||||
return ret;
|
||||
|
@ -113,6 +113,12 @@ void integrated_write_sigchld(int status)
|
||||
zlog_warn("configuration write terminated");
|
||||
}
|
||||
|
||||
if (reply[3] != CMD_SUCCESS) {
|
||||
/* failure might be silent in vtysh without this */
|
||||
static const char msg[] = "% Configuration write failed.\n";
|
||||
write(integrated_result_fd, msg, strlen(msg));
|
||||
}
|
||||
|
||||
/* don't care about failures here, if the connection is broken the
|
||||
* return value will just be lost. */
|
||||
write(integrated_result_fd, reply, sizeof(reply));
|
||||
|
Loading…
Reference in New Issue
Block a user