Don't allocate memory for T1 or T2 timers when requesting
IA_TA addresses.
}
/* FALLTHROUGH */
case DH6S_INIT:
- len += ifo->ia_len * (sizeof(o) + (sizeof(uint32_t) * 3));
+ for (l = 0; l < ifo->ia_len; l++) {
+ ifia = &ifo->ia[l];
+ len += sizeof(o) + sizeof(uint32_t); /* IAID */
+ /* IA_TA does not have T1 or T2 timers */
+ if (ifo->ia[l].ia_type != D6_OPTION_IA_TA)
+ len += sizeof(uint32_t) + sizeof(uint32_t);
+ }
IA = 1;
break;
default: