sctp: fix const parameter violation in sctp_make_sack
authorMarcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Tue, 24 Apr 2018 21:17:34 +0000 (18:17 -0300)
committerDavid S. Miller <davem@davemloft.net>
Wed, 25 Apr 2018 17:21:26 +0000 (13:21 -0400)
sctp_make_sack() make changes to the asoc and this cast is just
bypassing the const attribute. As there is no need to have the const
there, just remove it and fix the violation.

Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Reviewed-by: Xin Long <lucien.xin@gmail.com>
Acked-by: Neil Horman <nhorman@tuxdriver.com
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/sctp/sm.h
net/sctp/sm_make_chunk.c

index 2d0e782..f4b6574 100644 (file)
@@ -207,7 +207,7 @@ struct sctp_chunk *sctp_make_datafrag_empty(const struct sctp_association *asoc,
                                            int len, __u8 flags, gfp_t gfp);
 struct sctp_chunk *sctp_make_ecne(const struct sctp_association *asoc,
                                  const __u32 lowest_tsn);
-struct sctp_chunk *sctp_make_sack(const struct sctp_association *asoc);
+struct sctp_chunk *sctp_make_sack(struct sctp_association *asoc);
 struct sctp_chunk *sctp_make_shutdown(const struct sctp_association *asoc,
                                      const struct sctp_chunk *chunk);
 struct sctp_chunk *sctp_make_shutdown_ack(const struct sctp_association *asoc,
index 5a4fb1d..db93eab 100644 (file)
@@ -779,10 +779,9 @@ struct sctp_chunk *sctp_make_datafrag_empty(const struct sctp_association *asoc,
  * association.  This reports on which TSN's we've seen to date,
  * including duplicates and gaps.
  */
-struct sctp_chunk *sctp_make_sack(const struct sctp_association *asoc)
+struct sctp_chunk *sctp_make_sack(struct sctp_association *asoc)
 {
        struct sctp_tsnmap *map = (struct sctp_tsnmap *)&asoc->peer.tsn_map;
-       struct sctp_association *aptr = (struct sctp_association *)asoc;
        struct sctp_gap_ack_block gabs[SCTP_MAX_GABS];
        __u16 num_gabs, num_dup_tsns;
        struct sctp_transport *trans;
@@ -857,7 +856,7 @@ struct sctp_chunk *sctp_make_sack(const struct sctp_association *asoc)
 
        /* Add the duplicate TSN information.  */
        if (num_dup_tsns) {
-               aptr->stats.idupchunks += num_dup_tsns;
+               asoc->stats.idupchunks += num_dup_tsns;
                sctp_addto_chunk(retval, sizeof(__u32) * num_dup_tsns,
                                 sctp_tsnmap_get_dups(map));
        }
@@ -869,11 +868,11 @@ struct sctp_chunk *sctp_make_sack(const struct sctp_association *asoc)
         * association so no transport will match after a wrap event like this,
         * Until the next sack
         */
-       if (++aptr->peer.sack_generation == 0) {
+       if (++asoc->peer.sack_generation == 0) {
                list_for_each_entry(trans, &asoc->peer.transport_addr_list,
                                    transports)
                        trans->sack_generation = 0;
-               aptr->peer.sack_generation = 1;
+               asoc->peer.sack_generation = 1;
        }
 nodata:
        return retval;