|
@@ -611,7 +611,7 @@ xfrm_state_find(xfrm_address_t *daddr, xfrm_address_t *saddr,
|
|
|
selector.
|
|
|
*/
|
|
|
if (x->km.state == XFRM_STATE_VALID) {
|
|
|
- if (!xfrm_selector_match(&x->sel, fl, family) ||
|
|
|
+ if (!xfrm_selector_match(&x->sel, fl, x->sel.family) ||
|
|
|
!security_xfrm_state_pol_flow_match(x, pol, fl))
|
|
|
continue;
|
|
|
if (!best ||
|
|
@@ -623,7 +623,7 @@ xfrm_state_find(xfrm_address_t *daddr, xfrm_address_t *saddr,
|
|
|
acquire_in_progress = 1;
|
|
|
} else if (x->km.state == XFRM_STATE_ERROR ||
|
|
|
x->km.state == XFRM_STATE_EXPIRED) {
|
|
|
- if (xfrm_selector_match(&x->sel, fl, family) &&
|
|
|
+ if (xfrm_selector_match(&x->sel, fl, x->sel.family) &&
|
|
|
security_xfrm_state_pol_flow_match(x, pol, fl))
|
|
|
error = -ESRCH;
|
|
|
}
|