1
0

greet.ts 1.1 KB

123456789101112131415161718192021222324
  1. export default () => {
  2. self.print_error('greeting server')
  3. self.send(pb.ClientHello(version=Protocol.VERSION, genesis_hash=get_current_genesis_hash()))
  4. reply = self.recv('serverhello')
  5. self.num_components = reply.num_components
  6. self.component_feerate = reply.component_feerate
  7. self.min_excess_fee = reply.min_excess_fee
  8. self.max_excess_fee = reply.max_excess_fee
  9. self.available_tiers = tuple(reply.tiers)
  10. strong_plugin = self.strong_plugin
  11. if strong_plugin:
  12. strong_plugin.set_remote_donation_address(reply.donation_address)
  13. # Enforce some sensible limits, in case server is crazy
  14. if self.component_feerate > MAX_COMPONENT_FEERATE:
  15. raise FusionError('excessive component feerate from server')
  16. if self.min_excess_fee > 400:
  17. # note this threshold should be far below MAX_EXCESS_FEE
  18. raise FusionError('excessive min excess fee from server')
  19. if self.min_excess_fee > self.max_excess_fee:
  20. raise FusionError('bad config on server: fees')
  21. if self.num_components < MIN_TX_COMPONENTS * 1.5:
  22. raise FusionError('bad config on server: num_components')
  23. }