История изменений
Исправление vel, (текущая версия) :
Без явно заданной маски - нет.
Заглянул я в код net/netfilter/xt_mark.c
static unsigned int
mark_tg(struct sk_buff *skb, const struct xt_action_param *par)
{
const struct xt_mark_tginfo2 *info = par->targinfo;
skb->mark = (skb->mark & ~info->mask) ^ info->mark;
return XT_CONTINUE;
}
Посмотрел код который в iptables, а там !!!
case O_SET_XMARK:
info->mark = cb->val.mark;
info->mask = cb->val.mask;
break;
case O_SET_MARK:
info->mark = cb->val.mark;
info->mask = cb->val.mark | cb->val.mask;
break;
Хацкеры блин...
Исходная версия vel, :
Без явно заданной маски - нет.
Заглянул я в код net/netfilter/xt_mark.c и слегка удивился
static unsigned int
mark_tg(struct sk_buff *skb, const struct xt_action_param *par)
{
const struct xt_mark_tginfo2 *info = par->targinfo;
skb->mark = (skb->mark & ~info->mask) ^ info->mark;
return XT_CONTINUE;
}
Посмотрел код который в iptables, а там !!!
case O_SET_XMARK:
info->mark = cb->val.mark;
info->mask = cb->val.mask;
break;
case O_SET_MARK:
info->mark = cb->val.mark;
info->mask = cb->val.mark | cb->val.mask;
break;
Хацкеры блин...