• Home
  • Raw
  • Download

Lines Matching full:tsn

2753  *  - verify, by checking the Cumulative TSN Ack field of the chunk,
2812 /* If Cumulative TSN Ack beyond the max tsn currently in sctp_sf_do_9_2_shutdown()
2848 /* - verify, by checking the Cumulative TSN Ack field of the in sctp_sf_do_9_2_shutdown()
2864 * The Cumulative TSN Ack of the received SHUTDOWN chunk
2897 /* If Cumulative TSN Ack beyond the max tsn currently in sctp_sf_do_9_2_shut_ctsn()
2904 /* verify, by checking the Cumulative TSN Ack field of the in sctp_sf_do_9_2_shut_ctsn()
2990 * This chunk contains one data element, i.e. the TSN number that
2992 * TSN number in the datagram that was originally marked with the
3048 * contains one data element, i.e. the lowest TSN associated with the IP
3203 * and the peer's RTO has expired. The duplicate TSN number(s) in sctp_sf_eat_data_6_2()
3285 * TSN has not been updated yet. in sctp_sf_eat_data_fast_4_4()
3300 * i) If Cumulative TSN Ack is less than the Cumulative TSN Ack Point,
3301 * then drop the SACK. Since Cumulative TSN Ack is monotonically
3302 * increasing, a SACK whose Cumulative TSN Ack is less than the
3303 * Cumulative TSN Ack Point indicates an out-of-order SACK.
3306 * of bytes still outstanding after processing the Cumulative TSN Ack
3309 * iii) If the SACK is missing a TSN that was previously
3355 /* If Cumulative TSN Ack beyond the max tsn currently in sctp_sf_eat_sack_6_2()
3364 /* i) If Cumulative TSN Ack is less than the Cumulative TSN in sctp_sf_eat_sack_6_2()
3365 * Ack Point, then drop the SACK. Since Cumulative TSN in sctp_sf_eat_sack_6_2()
3367 * Cumulative TSN Ack is less than the Cumulative TSN Ack in sctp_sf_eat_sack_6_2()
4078 * When a FORWARD TSN chunk arrives, the data receiver MUST first update
4079 * its cumulative TSN point to the value carried in the FORWARD TSN
4080 * chunk, and then MUST further advance its cumulative TSN point locally
4083 * missing TSNs earlier than or equal to the new cumulative TSN point.
4099 __u32 tsn; in sctp_sf_eat_fwd_tsn() local
4121 tsn = ntohl(fwdtsn_hdr->new_cum_tsn); in sctp_sf_eat_fwd_tsn()
4122 pr_debug("%s: TSN 0x%x\n", __func__, tsn); in sctp_sf_eat_fwd_tsn()
4124 /* The TSN is too high--silently discard the chunk and count on it in sctp_sf_eat_fwd_tsn()
4127 if (sctp_tsnmap_check(&asoc->peer.tsn_map, tsn) < 0) in sctp_sf_eat_fwd_tsn()
4133 sctp_add_cmd_sf(commands, SCTP_CMD_REPORT_FWDTSN, SCTP_U32(tsn)); in sctp_sf_eat_fwd_tsn()
4166 __u32 tsn; in sctp_sf_eat_fwd_tsn_fast() local
4188 tsn = ntohl(fwdtsn_hdr->new_cum_tsn); in sctp_sf_eat_fwd_tsn_fast()
4189 pr_debug("%s: TSN 0x%x\n", __func__, tsn); in sctp_sf_eat_fwd_tsn_fast()
4191 /* The TSN is too high--silently discard the chunk and count on it in sctp_sf_eat_fwd_tsn_fast()
4194 if (sctp_tsnmap_check(&asoc->peer.tsn_map, tsn) < 0) in sctp_sf_eat_fwd_tsn_fast()
4200 sctp_add_cmd_sf(commands, SCTP_CMD_REPORT_FWDTSN, SCTP_U32(tsn)); in sctp_sf_eat_fwd_tsn_fast()
4762 * cumulative tsn ack to a point beyond the max tsn currently sent.
4775 static const char err_str[] = "The cumulative tsn ack beyond the max tsn currently sent:"; in sctp_sf_violation_ctsn()
5499 * TSN Ack field the last sequential TSN it has received from the peer.
5502 * with the updated last sequential TSN received from its peer.
5518 * in the Cumulative TSN Ack field the last sequential TSN it in sctp_sf_do_9_2_start_shutdown()
5726 /* E3) Determine how many of the earliest (i.e., lowest TSN) in sctp_sf_do_6_3_3_rtx()
5901 * with the updated last sequential TSN received from its peer.
6384 __u32 tsn; in sctp_eat_data() local
6391 tsn = ntohl(data_hdr->tsn); in sctp_eat_data()
6392 pr_debug("%s: TSN 0x%x\n", __func__, tsn); in sctp_eat_data()
6413 SCTP_U32(tsn)); in sctp_eat_data()
6417 tmp = sctp_tsnmap_check(&asoc->peer.tsn_map, tsn); in sctp_eat_data()
6419 /* The TSN is too high--silently discard the chunk and in sctp_eat_data()
6427 sctp_add_cmd_sf(commands, SCTP_CMD_REPORT_DUP, SCTP_U32(tsn)); in sctp_eat_data()
6431 /* This is a new TSN. */ in sctp_eat_data()
6458 /* If this is the next TSN, consider reneging to make in sctp_eat_data()
6465 (sctp_tsnmap_get_ctsn(map) + 1) == tsn) { in sctp_eat_data()
6466 pr_debug("%s: reneging for tsn:%u\n", __func__, tsn); in sctp_eat_data()
6469 pr_debug("%s: discard tsn:%u len:%zu, rwnd:%d\n", in sctp_eat_data()
6470 __func__, tsn, datalen, asoc->rwnd); in sctp_eat_data()
6485 (sctp_tsnmap_get_ctsn(map) + 1) == tsn) { in sctp_eat_data()
6486 pr_debug("%s: under pressure, reneging for tsn:%u\n", in sctp_eat_data()
6487 __func__, tsn); in sctp_eat_data()
6503 err = sctp_make_abort_no_data(asoc, chunk, tsn); in sctp_eat_data()
6545 /* Mark tsn as received even though we drop it */ in sctp_eat_data()
6546 sctp_add_cmd_sf(commands, SCTP_CMD_REPORT_TSN, SCTP_U32(tsn)); in sctp_eat_data()
6558 /* Check to see if the SSN is possible for this TSN. in sctp_eat_data()
6561 * wrap and for a valid TSN. We can simply check if the current in sctp_eat_data()