From 44124646579f5d7f0579bc70395723d4c0bdbcb5 Mon Sep 17 00:00:00 2001 From: Lauren Perry Date: Fri, 13 Feb 2015 13:23:16 +0000 Subject: Add protocol versioning for distbuild systems --- distbuild/initiator_connection.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'distbuild/initiator_connection.py') diff --git a/distbuild/initiator_connection.py b/distbuild/initiator_connection.py index c7f9dec7..86df28f1 100644 --- a/distbuild/initiator_connection.py +++ b/distbuild/initiator_connection.py @@ -102,6 +102,18 @@ class InitiatorConnection(distbuild.StateMachine): try: if event.msg['type'] == 'build-request': + if (event.msg.get('protocol_version') != + distbuild.protocol.VERSION): + msg = distbuild.message('build-failed', + id=event.msg['id'], + reason=('Protocol version mismatch between server & ' + 'initiator: distbuild network uses distbuild ' + 'protocol version %i, but client uses version' + ' %i.', distbuild.protocol.VERSION, + event.msg.get('protocol_version'))) + self.jm.send(msg) + self._log_send(msg) + return new_id = self._idgen.next() self.our_ids.add(new_id) self._route_map.add(event.msg['id'], new_id) -- cgit v1.2.1