@@ -1027,19 +1027,17 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, L: Deref> PeerManager<D
1027
1027
let peers = & mut * peers_lock;
1028
1028
for event in events_generated. drain ( ..) {
1029
1029
macro_rules! get_peer_for_forwarding {
1030
- ( $node_id: expr, $handle_no_such_peer : block ) => {
1030
+ ( $node_id: expr) => {
1031
1031
{
1032
1032
let descriptor = match peers. node_id_to_descriptor. get( $node_id) {
1033
1033
Some ( descriptor) => descriptor. clone( ) ,
1034
1034
None => {
1035
- $handle_no_such_peer;
1036
1035
continue ;
1037
1036
} ,
1038
1037
} ;
1039
1038
match peers. peers. get_mut( & descriptor) {
1040
1039
Some ( peer) => {
1041
1040
if peer. their_features. is_none( ) {
1042
- $handle_no_such_peer;
1043
1041
continue ;
1044
1042
}
1045
1043
( descriptor, peer)
@@ -1054,19 +1052,15 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, L: Deref> PeerManager<D
1054
1052
log_trace ! ( self . logger, "Handling SendAcceptChannel event in peer_handler for node {} for channel {}" ,
1055
1053
log_pubkey!( node_id) ,
1056
1054
log_bytes!( msg. temporary_channel_id) ) ;
1057
- let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id, {
1058
- //TODO: Drop the pending channel? (or just let it timeout, but that sucks)
1059
- } ) ;
1055
+ let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id) ;
1060
1056
peer. pending_outbound_buffer . push_back ( peer. channel_encryptor . encrypt_message ( & encode_msg ! ( msg) ) ) ;
1061
1057
self . do_attempt_write_data ( & mut descriptor, peer) ;
1062
1058
} ,
1063
1059
MessageSendEvent :: SendOpenChannel { ref node_id, ref msg } => {
1064
1060
log_trace ! ( self . logger, "Handling SendOpenChannel event in peer_handler for node {} for channel {}" ,
1065
1061
log_pubkey!( node_id) ,
1066
1062
log_bytes!( msg. temporary_channel_id) ) ;
1067
- let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id, {
1068
- //TODO: Drop the pending channel? (or just let it timeout, but that sucks)
1069
- } ) ;
1063
+ let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id) ;
1070
1064
peer. pending_outbound_buffer . push_back ( peer. channel_encryptor . encrypt_message ( & encode_msg ! ( msg) ) ) ;
1071
1065
self . do_attempt_write_data ( & mut descriptor, peer) ;
1072
1066
} ,
@@ -1075,42 +1069,35 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, L: Deref> PeerManager<D
1075
1069
log_pubkey!( node_id) ,
1076
1070
log_bytes!( msg. temporary_channel_id) ,
1077
1071
log_funding_channel_id!( msg. funding_txid, msg. funding_output_index) ) ;
1078
- let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id, {
1079
- //TODO: generate a DiscardFunding event indicating to the wallet that
1080
- //they should just throw away this funding transaction
1081
- } ) ;
1072
+ // TODO: If the peer is gone we should generate a DiscardFunding event
1073
+ // indicating to the wallet that they should just throw away this funding transaction
1074
+ let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id) ;
1082
1075
peer. pending_outbound_buffer . push_back ( peer. channel_encryptor . encrypt_message ( & encode_msg ! ( msg) ) ) ;
1083
1076
self . do_attempt_write_data ( & mut descriptor, peer) ;
1084
1077
} ,
1085
1078
MessageSendEvent :: SendFundingSigned { ref node_id, ref msg } => {
1086
1079
log_trace ! ( self . logger, "Handling SendFundingSigned event in peer_handler for node {} for channel {}" ,
1087
1080
log_pubkey!( node_id) ,
1088
1081
log_bytes!( msg. channel_id) ) ;
1089
- let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id, {
1090
- //TODO: generate a DiscardFunding event indicating to the wallet that
1091
- //they should just throw away this funding transaction
1092
- } ) ;
1082
+ // TODO: If the peer is gone we should generate a DiscardFunding event
1083
+ // indicating to the wallet that they should just throw away this funding transaction
1084
+ let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id) ;
1093
1085
peer. pending_outbound_buffer . push_back ( peer. channel_encryptor . encrypt_message ( & encode_msg ! ( msg) ) ) ;
1094
1086
self . do_attempt_write_data ( & mut descriptor, peer) ;
1095
1087
} ,
1096
1088
MessageSendEvent :: SendFundingLocked { ref node_id, ref msg } => {
1097
1089
log_trace ! ( self . logger, "Handling SendFundingLocked event in peer_handler for node {} for channel {}" ,
1098
1090
log_pubkey!( node_id) ,
1099
1091
log_bytes!( msg. channel_id) ) ;
1100
- let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id, {
1101
- //TODO: Do whatever we're gonna do for handling dropped messages
1102
- } ) ;
1092
+ let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id) ;
1103
1093
peer. pending_outbound_buffer . push_back ( peer. channel_encryptor . encrypt_message ( & encode_msg ! ( msg) ) ) ;
1104
1094
self . do_attempt_write_data ( & mut descriptor, peer) ;
1105
1095
} ,
1106
1096
MessageSendEvent :: SendAnnouncementSignatures { ref node_id, ref msg } => {
1107
1097
log_trace ! ( self . logger, "Handling SendAnnouncementSignatures event in peer_handler for node {} for channel {})" ,
1108
1098
log_pubkey!( node_id) ,
1109
1099
log_bytes!( msg. channel_id) ) ;
1110
- let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id, {
1111
- //TODO: generate a DiscardFunding event indicating to the wallet that
1112
- //they should just throw away this funding transaction
1113
- } ) ;
1100
+ let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id) ;
1114
1101
peer. pending_outbound_buffer . push_back ( peer. channel_encryptor . encrypt_message ( & encode_msg ! ( msg) ) ) ;
1115
1102
self . do_attempt_write_data ( & mut descriptor, peer) ;
1116
1103
} ,
@@ -1121,9 +1108,7 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, L: Deref> PeerManager<D
1121
1108
update_fulfill_htlcs. len( ) ,
1122
1109
update_fail_htlcs. len( ) ,
1123
1110
log_bytes!( commitment_signed. channel_id) ) ;
1124
- let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id, {
1125
- //TODO: Do whatever we're gonna do for handling dropped messages
1126
- } ) ;
1111
+ let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id) ;
1127
1112
for msg in update_add_htlcs {
1128
1113
peer. pending_outbound_buffer . push_back ( peer. channel_encryptor . encrypt_message ( & encode_msg ! ( msg) ) ) ;
1129
1114
}
@@ -1146,39 +1131,31 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, L: Deref> PeerManager<D
1146
1131
log_trace ! ( self . logger, "Handling SendRevokeAndACK event in peer_handler for node {} for channel {}" ,
1147
1132
log_pubkey!( node_id) ,
1148
1133
log_bytes!( msg. channel_id) ) ;
1149
- let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id, {
1150
- //TODO: Do whatever we're gonna do for handling dropped messages
1151
- } ) ;
1134
+ let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id) ;
1152
1135
peer. pending_outbound_buffer . push_back ( peer. channel_encryptor . encrypt_message ( & encode_msg ! ( msg) ) ) ;
1153
1136
self . do_attempt_write_data ( & mut descriptor, peer) ;
1154
1137
} ,
1155
1138
MessageSendEvent :: SendClosingSigned { ref node_id, ref msg } => {
1156
1139
log_trace ! ( self . logger, "Handling SendClosingSigned event in peer_handler for node {} for channel {}" ,
1157
1140
log_pubkey!( node_id) ,
1158
1141
log_bytes!( msg. channel_id) ) ;
1159
- let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id, {
1160
- //TODO: Do whatever we're gonna do for handling dropped messages
1161
- } ) ;
1142
+ let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id) ;
1162
1143
peer. pending_outbound_buffer . push_back ( peer. channel_encryptor . encrypt_message ( & encode_msg ! ( msg) ) ) ;
1163
1144
self . do_attempt_write_data ( & mut descriptor, peer) ;
1164
1145
} ,
1165
1146
MessageSendEvent :: SendShutdown { ref node_id, ref msg } => {
1166
1147
log_trace ! ( self . logger, "Handling Shutdown event in peer_handler for node {} for channel {}" ,
1167
1148
log_pubkey!( node_id) ,
1168
1149
log_bytes!( msg. channel_id) ) ;
1169
- let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id, {
1170
- //TODO: Do whatever we're gonna do for handling dropped messages
1171
- } ) ;
1150
+ let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id) ;
1172
1151
peer. pending_outbound_buffer . push_back ( peer. channel_encryptor . encrypt_message ( & encode_msg ! ( msg) ) ) ;
1173
1152
self . do_attempt_write_data ( & mut descriptor, peer) ;
1174
1153
} ,
1175
1154
MessageSendEvent :: SendChannelReestablish { ref node_id, ref msg } => {
1176
1155
log_trace ! ( self . logger, "Handling SendChannelReestablish event in peer_handler for node {} for channel {}" ,
1177
1156
log_pubkey!( node_id) ,
1178
1157
log_bytes!( msg. channel_id) ) ;
1179
- let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id, {
1180
- //TODO: Do whatever we're gonna do for handling dropped messages
1181
- } ) ;
1158
+ let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id) ;
1182
1159
peer. pending_outbound_buffer . push_back ( peer. channel_encryptor . encrypt_message ( & encode_msg ! ( msg) ) ) ;
1183
1160
self . do_attempt_write_data ( & mut descriptor, peer) ;
1184
1161
} ,
@@ -1267,21 +1244,19 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, L: Deref> PeerManager<D
1267
1244
log_trace ! ( self . logger, "Handling SendErrorMessage HandleError event in peer_handler for node {} with message {}" ,
1268
1245
log_pubkey!( node_id) ,
1269
1246
msg. data) ;
1270
- let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id, {
1271
- //TODO: Do whatever we're gonna do for handling dropped messages
1272
- } ) ;
1247
+ let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id) ;
1273
1248
peer. pending_outbound_buffer . push_back ( peer. channel_encryptor . encrypt_message ( & encode_msg ! ( msg) ) ) ;
1274
1249
self . do_attempt_write_data ( & mut descriptor, peer) ;
1275
1250
} ,
1276
1251
}
1277
1252
} ,
1278
1253
MessageSendEvent :: SendChannelRangeQuery { ref node_id, ref msg } => {
1279
- let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id, { } ) ;
1254
+ let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id) ;
1280
1255
peer. pending_outbound_buffer . push_back ( peer. channel_encryptor . encrypt_message ( & encode_msg ! ( msg) ) ) ;
1281
1256
self . do_attempt_write_data ( & mut descriptor, peer) ;
1282
1257
} ,
1283
1258
MessageSendEvent :: SendShortIdsQuery { ref node_id, ref msg } => {
1284
- let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id, { } ) ;
1259
+ let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id) ;
1285
1260
peer. pending_outbound_buffer . push_back ( peer. channel_encryptor . encrypt_message ( & encode_msg ! ( msg) ) ) ;
1286
1261
self . do_attempt_write_data ( & mut descriptor, peer) ;
1287
1262
}
@@ -1292,7 +1267,7 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, L: Deref> PeerManager<D
1292
1267
msg. first_blocknum,
1293
1268
msg. number_of_blocks,
1294
1269
msg. sync_complete) ;
1295
- let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id, { } ) ;
1270
+ let ( mut descriptor, peer) = get_peer_for_forwarding ! ( node_id) ;
1296
1271
peer. pending_outbound_buffer . push_back ( peer. channel_encryptor . encrypt_message ( & encode_msg ! ( msg) ) ) ;
1297
1272
self . do_attempt_write_data ( & mut descriptor, peer) ;
1298
1273
}
0 commit comments