@@ -79,8 +79,12 @@ __private.attachApi = function () {
7979
8080 req . peer . os = headers . os ;
8181 req . peer . version = headers . version ;
82-
83- modules . peers . accept ( req . peer ) ;
82+
83+ if ( req . peer . version >= library . config . minimumVersion ) {
84+ modules . peers . accept ( req . peer ) ;
85+ } else {
86+ library . logger . error ( "Peer version below minimum - " + req . peer . ip + ": " + req . peer . version ) ;
87+ }
8488
8589 return next ( ) ;
8690 } ) ;
@@ -195,8 +199,12 @@ __private.attachApi = function () {
195199
196200 return res . status ( 200 ) . json ( { success : false , error : e . toString ( ) } ) ;
197201 }
198-
199- modules . peers . accept ( req . peer ) ;
202+
203+ if ( req . peer . version >= library . config . minimumVersion ) {
204+ modules . peers . accept ( req . peer ) ;
205+ } else {
206+ library . logger . error ( "Peer version below minimum - " + req . peer . ip + ": " + req . peer . version ) ;
207+ }
200208
201209
202210 library . bus . message ( 'blockReceived' , block , req . peer , function ( error , data ) {
@@ -441,7 +449,11 @@ Transport.prototype.requestFromRandomPeer = function (config, options, cb) {
441449//
442450Transport . prototype . requestFromPeer = function ( peer , options , cb ) {
443451 var url ;
444- peer = modules . peers . accept ( peer ) ;
452+ if ( peer . version >= library . config . minimumVersion ) {
453+ peer = modules . peers . accept ( peer ) ;
454+ } else {
455+ peer = modules . peers . accept ( peer , true ) ;
456+ }
445457 library . logger . trace ( "requestFromPeer" , peer . toObject ( ) ) ;
446458
447459 if ( options . api ) {
0 commit comments