Hi

Thanks for the patch. what does 2 signify

if (vty->wfd > 2)
    close (vty->wfd);

Thanks,
  - Balaji


On Fri, Nov 24, 2017 at 6:51 PM, Evgeny Uskov <e...@qrator.net> wrote:

> Dear Quagga Developers,
>
> We found a bug in bgpd which causes file descriptor leaks each time
> when configuration is updated and then saved on disk. The reason is
> that output file descriptor vty->wfd is not closed in vty_close
> function.
>
> This bug is very easy to reproduce. You need to
> 1) check a number of opened FDs (using lsof or /proc/<pid>/fd)
> 2) perform any update to the configuration
> 3) execute "write" command in "configure terminal"
> 4) check a number of opened FDs again
>
> You can find a sample script (check.sh) in attachment that automates
> the steps above. An example of its output:
>  % sudo sh check.sh $(pgrep -f ./bgpd/.libs/bgpd) localhost 2605
> <telnet password>
> Open FDs: 10
> altering config...
> Open FDs: 11
> altering config 10 times...
> Open FDs: 21
>
> A simple patch that fixes the problem above is also attached.
>
> --
> | Evgeny Uskov  | HLL l QRATOR
> | mob.: +7 916 319 33 20
> | skype: evgeny_uskov
> | mailto: e...@qrator.net
> | visit: www.qrator.net
>
> _______________________________________________
> Quagga-dev mailing list
> Quagga-dev@lists.quagga.net
> https://lists.quagga.net/mailman/listinfo/quagga-dev
>
_______________________________________________
Quagga-dev mailing list
Quagga-dev@lists.quagga.net
https://lists.quagga.net/mailman/listinfo/quagga-dev

Reply via email to