]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - net/sctp/sm_make_chunk.c
sctp: Fix use of uninitialized pointer
[linux-2.6-omap-h63xx.git] / net / sctp / sm_make_chunk.c
index 6eeee535e94eb188a5c30d09d2a78f1e84337f62..bbc7107c86cf90003d31ee70a11580b6fef48114 100644 (file)
@@ -2827,6 +2827,9 @@ static __be16 sctp_process_asconf_param(struct sctp_association *asoc,
        union sctp_addr addr;
        union sctp_addr_param *addr_param;
 
+       addr_param = (union sctp_addr_param *)
+                       ((void *)asconf_param + sizeof(sctp_addip_param_t));
+
        switch (addr_param->v4.param_hdr.type) {
        case SCTP_PARAM_IPV6_ADDRESS:
                if (!asoc->peer.ipv6_address)
@@ -2840,9 +2843,6 @@ static __be16 sctp_process_asconf_param(struct sctp_association *asoc,
                return SCTP_ERROR_INV_PARAM;
        }
 
-       addr_param = (union sctp_addr_param *)
-                       ((void *)asconf_param + sizeof(sctp_addip_param_t));
-
        af = sctp_get_af_specific(param_type2af(addr_param->v4.param_hdr.type));
        if (unlikely(!af))
                return SCTP_ERROR_INV_PARAM;