Skip to content

Commit 930ca0b

Browse files
committed
Move handle_original_sending_time_missing to inbound module
1 parent 4468afd commit 930ca0b

2 files changed

Lines changed: 21 additions & 12 deletions

File tree

crates/hotfix/src/session.rs

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -621,7 +621,11 @@ where
621621
}
622622
}
623623
MessageVerificationError::OriginalSendingTimeMissing { msg_seq_num } => {
624-
self.handle_original_sending_time_missing(msg_seq_num).await;
624+
if let Some(writer) = self.state.get_writer() {
625+
inbound::handle_original_sending_time_missing(
626+
&mut self.ctx, writer, msg_seq_num,
627+
).await;
628+
}
625629
}
626630
MessageVerificationError::OriginalSendingTimeAfterSendingTime {
627631
msg_seq_num, ..
@@ -753,17 +757,6 @@ where
753757
}
754758

755759

756-
async fn handle_original_sending_time_missing(&mut self, msg_seq_num: u64) {
757-
let reject = Reject::new(msg_seq_num)
758-
.session_reject_reason(SessionRejectReason::RequiredTagMissing)
759-
.text("original sending time is required");
760-
if let Err(err) = self.send_message(reject).await {
761-
error!("failed to send reject for time missing tag: {err}");
762-
};
763-
if let Err(err) = self.ctx.store.increment_target_seq_number().await {
764-
error!("failed to increment target seq number: {:?}", err);
765-
};
766-
}
767760

768761
fn reset_heartbeat_timer(&mut self) {
769762
self.state

crates/hotfix/src/session/inbound.rs

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,3 +45,19 @@ pub(crate) async fn handle_sending_time_accuracy_problem<A, S: MessageStore>(
4545
error!("failed to increment target seq number: {:?}", err);
4646
}
4747
}
48+
49+
pub(crate) async fn handle_original_sending_time_missing<A, S: MessageStore>(
50+
ctx: &mut SessionCtx<A, S>,
51+
writer: &WriterRef,
52+
msg_seq_num: u64,
53+
) {
54+
let reject = Reject::new(msg_seq_num)
55+
.session_reject_reason(SessionRejectReason::RequiredTagMissing)
56+
.text("original sending time is required");
57+
if let Err(err) = outbound::send_message(ctx, writer, reject).await {
58+
error!("failed to send reject for time missing tag: {err}");
59+
}
60+
if let Err(err) = ctx.store.increment_target_seq_number().await {
61+
error!("failed to increment target seq number: {:?}", err);
62+
}
63+
}

0 commit comments

Comments
 (0)