act_connmark.c (b409074e6693bcdaa7abbee2a035f22a9eabda53) | act_connmark.c (4e8ddd7f1758ca4ddd0c1f7cf3e66fce736241d2) |
---|---|
1/* 2 * net/sched/act_connmark.c netfilter connmark retriever action 3 * skb mark is over-written 4 * 5 * Copyright (c) 2011 Felix Fietkau <nbd@openwrt.org> 6 * 7 * This program is free software; you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by --- 121 unchanged lines hidden (view full) --- 130 ci->zone = parm->zone; 131 132 tcf_idr_insert(tn, *a); 133 ret = ACT_P_CREATED; 134 } else { 135 ci = to_connmark(*a); 136 if (bind) 137 return 0; | 1/* 2 * net/sched/act_connmark.c netfilter connmark retriever action 3 * skb mark is over-written 4 * 5 * Copyright (c) 2011 Felix Fietkau <nbd@openwrt.org> 6 * 7 * This program is free software; you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by --- 121 unchanged lines hidden (view full) --- 130 ci->zone = parm->zone; 131 132 tcf_idr_insert(tn, *a); 133 ret = ACT_P_CREATED; 134 } else { 135 ci = to_connmark(*a); 136 if (bind) 137 return 0; |
138 tcf_idr_release(*a, bind); 139 if (!ovr) | 138 if (!ovr) { 139 tcf_idr_release(*a, bind); |
140 return -EEXIST; | 140 return -EEXIST; |
141 } |
|
141 /* replacing action and zone */ 142 ci->tcf_action = parm->action; 143 ci->zone = parm->zone; 144 } 145 146 return ret; 147} 148 --- 102 unchanged lines hidden --- | 142 /* replacing action and zone */ 143 ci->tcf_action = parm->action; 144 ci->zone = parm->zone; 145 } 146 147 return ret; 148} 149 --- 102 unchanged lines hidden --- |