From 17a9fdfbf2b1fcbd2e3d622d1103995293d5579a Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Wed, 1 Nov 2017 20:43:35 +0100 Subject: [SERVER] Since fuse client assumed no backwards compat before v3, lie to clients If client reports protocol version < 3 on connect, just pretend we're at the same version. This sucks but we can't update servers before clients otherwise. :( --- src/server/net.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/server/net.c b/src/server/net.c index e4ec666..5866f25 100644 --- a/src/server/net.c +++ b/src/server/net.c @@ -287,7 +287,7 @@ void* net_handleNewConnection(void *clientPtr) timing_get( &image->atime ); spin_unlock( &image->lock ); serializer_reset_write( &payload ); - serializer_put_uint16( &payload, PROTOCOL_VERSION ); + serializer_put_uint16( &payload, client_version < 3 ? client_version : PROTOCOL_VERSION ); // XXX: Since messed up fuse client was messed up before :( serializer_put_string( &payload, image->name ); serializer_put_uint16( &payload, (uint16_t)image->rid ); serializer_put_uint64( &payload, image->virtualFilesize ); -- cgit v1.2.3-55-g7522