[kernel] refresh 2.6.35 patches
[openwrt/svn-archive/archive.git] / target / linux / generic / patches-2.6.35 / 110-netfilter_match_speedup.patch
index cd840cdc21f0baddc6064a3319e8093eaa49e73e..7affbb1221bac8177e0e3c11ba098097688191a2 100644 (file)
  
                e = (struct ipt_entry *)(loc_cpu_entry + off);
                if (copy_to_user(userptr + off
  
                e = (struct ipt_entry *)(loc_cpu_entry + off);
                if (copy_to_user(userptr + off
-@@ -979,6 +1020,14 @@ copy_entries_to_user(unsigned int total_
-                       ret = -EFAULT;
+@@ -980,6 +1021,14 @@ copy_entries_to_user(unsigned int total_
                        goto free_counters;
                }
                        goto free_counters;
                }
-+
 +              flags = e->ip.flags & ~IPT_F_NO_DEF_MATCH;
 +              if (copy_to_user(userptr + off
 +                               + offsetof(struct ipt_entry, ip.flags),
 +              flags = e->ip.flags & ~IPT_F_NO_DEF_MATCH;
 +              if (copy_to_user(userptr + off
 +                               + offsetof(struct ipt_entry, ip.flags),
 +                      ret = -EFAULT;
 +                      goto free_counters;
 +              }
 +                      ret = -EFAULT;
 +                      goto free_counters;
 +              }
++
                for (i = sizeof(struct ipt_entry);
                     i < e->target_offset;
                for (i = sizeof(struct ipt_entry);
                     i < e->target_offset;
+                    i += m->u.match_size) {