*    Dinakaran Joseph
  *    Jon Grimm <jgrimm@us.ibm.com>
  *    Sridhar Samudrala <sri@us.ibm.com>
- *
- * Rewritten to use libcrc32c by:
  *    Vlad Yasevich <vladislav.yasevich@hp.com>
  */
 
 
 #include <linux/types.h>
 #include <linux/sctp.h>
-#include <linux/crc32c.h>
-#include <linux/crc32.h>
-
-static inline __wsum sctp_csum_update(const void *buff, int len, __wsum sum)
-{
-       return (__force __wsum)crc32c((__force __u32)sum, buff, len);
-}
-
-static inline __wsum sctp_csum_combine(__wsum csum, __wsum csum2,
-                                      int offset, int len)
-{
-       return (__force __wsum)crc32c_combine((__force __u32)csum,
-                                             (__force __u32)csum2, len);
-}
-
-static const struct skb_checksum_ops sctp_csum_ops = {
-       .update  = sctp_csum_update,
-       .combine = sctp_csum_combine,
-};
 
 static inline __le32 sctp_compute_cksum(const struct sk_buff *skb,
                                        unsigned int offset)
 {
        struct sctphdr *sh = (struct sctphdr *)(skb->data + offset);
        __le32 old = sh->checksum;
-       __wsum new;
+       u32 new;
 
        sh->checksum = 0;
-       new = ~__skb_checksum(skb, offset, skb->len - offset, ~(__wsum)0,
-                             &sctp_csum_ops);
+       new = ~skb_crc32c(skb, offset, skb->len - offset, ~0);
        sh->checksum = old;
-
-       return cpu_to_le32((__force __u32)new);
+       return cpu_to_le32(new);
 }
 
 #endif /* __sctp_checksum_h__ */
 
        bool 'SCTP protocol connection tracking support'
        depends on NETFILTER_ADVANCED
        default y
-       select CRC32
+       select NET_CRC32C
        help
          With this option enabled, the layer 3 independent connection
          tracking code will be able to do state tracking on SCTP connections.
 
 config NF_TABLES
        select NETFILTER_NETLINK
-       select CRC32
+       select NET_CRC32C
        tristate "Netfilter nf_tables support"
        help
          nftables is the new packet classification framework that intends to