On March 28, 2025 6:13 pm, Gabriel Goller wrote: > From: Stefan Hanreich <s.hanre...@proxmox.com> > > Reloading the FRR configuration failed, because outfunc was defined as > an empty hash, but Tools.pm requires it to be a CODE reference, so the > following error has been thrown on FRR reload: > > Not a CODE reference at /usr/share/perl5/PVE/Tools.pm line 577. > > Fix this by not providing an outfunc at all (it was empty anyway) and > for future debugging / error reporting actually include the error in > the task log. > > Signed-off-by: Stefan Hanreich <s.hanre...@proxmox.com> > Signed-off-by: Gabriel Goller <g.gol...@proxmox.com> > --- > src/PVE/Network/SDN/Frr.pm | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/src/PVE/Network/SDN/Frr.pm b/src/PVE/Network/SDN/Frr.pm > index 7922e27cbfc0..d38a4180ff96 100644 > --- a/src/PVE/Network/SDN/Frr.pm > +++ b/src/PVE/Network/SDN/Frr.pm > @@ -68,10 +68,10 @@ sub reload { > > if (-e $conf_file && -e $bin_path) { > eval { > - run_command([$bin_path, '--stdout', '--reload', $conf_file], > outfunc => {}, errfunc => $err); > + run_command([$bin_path, '--stdout', '--reload', $conf_file], > errfunc => $err);
this actually changes the behaviour though - I assume previously we wanted output to be suppressed here? not specifying outfunc means output is printed to stdout, unless quiet is set.. > }; > if ($@) { > - warn "frr reload command fail. Restarting frr."; > + warn "frr reload command fail: $@ Restarting frr."; this should probably be two warnings now to remain readable? > eval { run_command(['systemctl', 'restart', 'frr']); }; > } > } > -- > 2.39.5 > > > > _______________________________________________ > pve-devel mailing list > pve-devel@lists.proxmox.com > https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel > > > _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel