tree c1f4c7b5ca393de745a6e158c049965da2be9106
parent 0164f200ab75c51a55e097a5a2175f0168ea61a0
author Thierry Fournier <tfournier@arpalert.org> 1456153738 +0100
committer Willy Tarreau <w@1wt.eu> 1456263767 +0100
encoding latin1

BUG/MINOR: server: some prototypes are renamed

The commit 87b096 renames the functions srv_shutdown_backup_sessions()
and srv_shutdown_sessions() to srv_shutdown_backup_streams() and
srv_shutdown_streams().

The header file <proto/servers.h> does not repport these changes.

This bug should be repported in the 1.6 branch, even if it is useless
because new dev are frozen.
