From 1587f73c38c9228a1a93889aae6351eff891cbe8 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Thu, 2 Nov 2017 13:41:35 +0100 Subject: [SERVER] Support finer control over replication when a proxy connects to a proxy Introduce new flag in "select image" message to tell the uplink server whether we have background replication enabled or not. Also reject a connecting proxy if the connecting proxy uses BGR but we don't, as this would basically force the image to be replicated locally too. --- src/server/image.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/server/image.c') diff --git a/src/server/image.c b/src/server/image.c index e356dbf..91d7572 100644 --- a/src/server/image.c +++ b/src/server/image.c @@ -1236,7 +1236,7 @@ static dnbd3_image_t *loadImageProxy(char * const name, const uint16_t revision, bool ok = false; int sock = sock_connect( &servers[i], 750, _uplinkTimeout ); if ( sock == -1 ) continue; - if ( !dnbd3_select_image( sock, name, revision, FLAGS8_SERVER ) ) goto server_fail; + if ( !dnbd3_select_image( sock, name, revision, SI_SERVER_FLAGS ) ) goto server_fail; if ( !dnbd3_select_image_reply( &serialized, sock, &remoteProtocolVersion, &remoteName, &remoteRid, &remoteImageSize ) ) goto server_fail; if ( remoteProtocolVersion < MIN_SUPPORTED_SERVER || remoteRid == 0 ) goto server_fail; if ( revision != 0 && remoteRid != revision ) goto server_fail; // Want specific revision but uplink supplied different rid -- cgit v1.2.3-55-g7522