memcpy(&(IPCB(skb)->opt), opt, sizeof(struct ip_options));
        memcpy(iph+sizeof(struct iphdr), opt->__data, opt->optlen);
        opt = &(IPCB(skb)->opt);
-       opt->is_data = 0;
 
        if (opt->srr)
                memcpy(iph+opt->srr+iph[opt->srr+1]-4, &daddr, 4);
 
        memset(dopt, 0, sizeof(struct ip_options));
 
-       dopt->is_data = 1;
-
        sopt = &(IPCB(skb)->opt);
 
        if (sopt->optlen == 0) {
                iph = skb_network_header(skb);
                opt->optlen = ((struct iphdr *)iph)->ihl*4 - sizeof(struct iphdr);
                optptr = iph + sizeof(struct iphdr);
-               opt->is_data = 0;
        } else {
                optptr = opt->__data;
                iph = optptr - sizeof(struct iphdr);
        while (optlen & 3)
                opt->__data[optlen++] = IPOPT_END;
        opt->optlen = optlen;
-       opt->is_data = 1;
        if (optlen && ip_options_compile(opt, NULL)) {
                kfree(opt);
                return -EINVAL;