Le vendredi 25 novembre 2011 à 10:36 +0100, Hans Schillstrom a écrit : > From: Hans Schillstrom <hans.schillstrom@xxxxxxxxxxxx> > > The target allows you to create rules in the "raw" and "mangle" tables > which alter the netfilter mark (nfmark) field within a given range. > First a 32 bit hash value is generated then modulus by <limit> and > finally an offset is added before it's written to nfmark. > Prior to routing, the nfmark can influence the routing method (see > "Use netfilter MARK value as routing key") and can also be used by > other subsystems to change their behavior. > Oh well, yet another duplicated flow dissector ... > +/* > + * Calc hash value, special casre is taken on icmp and fragmented messages > + * i.e. fragmented messages don't use ports. > + */ > +__u32 hmark_v6(struct sk_buff *skb, const struct xt_action_param *par) > +{ > + struct xt_hmark_info *info = (struct xt_hmark_info *)par->targinfo; > +no6ports: > + nexthdr &= info->prmask; > + /* get a consistent hash (same value on both flow directions) */ > + if (addr2 < addr1) > + swap(addr1, addr2); > + hash = jhash_3words(addr1, addr2, ports.v32, info->hashrnd) ^ nexthdr; whats the point computing hash, if info->hmod is null, since we dont set skb->mark ? > + if (info->hmod) > + skb->mark = (hash % info->hmod) + info->hoffs; > + > + return XT_CONTINUE; > +} > +#endif > + Same problem/question on hmark_v4() -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html