CMPSADDR_MATCH
case CMPSADDR_MATCH:
if (cmpsaddr(remote, r->remote) != CMPSADDR_MATCH)
if (cmpsaddr(iph1->local, p->local) == CMPSADDR_MATCH
&& cmpsaddr(iph1->remote, p->remote) == CMPSADDR_MATCH)
cmpsaddr(sel->src, p->src) != CMPSADDR_MATCH)
cmpsaddr(sel->dst, p->dst) != CMPSADDR_MATCH)
if ((cmpsaddr(iph1->local, src) != CMPSADDR_MATCH ||
cmpsaddr(iph1->remote, dst) != CMPSADDR_MATCH) &&
(cmpsaddr(iph1->local, dst) != CMPSADDR_MATCH ||
cmpsaddr(iph1->remote, src) != CMPSADDR_MATCH)) {
((cmpsaddr(iph1->remote, remote) != CMPSADDR_MATCH) ||
(cmpsaddr(iph1->local, local) != CMPSADDR_MATCH)))
if (cmpsaddr(iph1->remote, remote) != CMPSADDR_MATCH) {
if (cmpsaddr(iph1->remote, remote) != CMPSADDR_MATCH) {
if (cmpsaddr(dst0, dst) != CMPSADDR_MATCH) {
if ((cmpsaddr(iph1->local, src) != CMPSADDR_MATCH ||
cmpsaddr(iph1->remote, dst) != CMPSADDR_MATCH) &&
(cmpsaddr(iph1->local, dst) != CMPSADDR_MATCH ||
cmpsaddr(iph1->remote, src) != CMPSADDR_MATCH))
(struct sockaddr *) &got_addr) == CMPSADDR_MATCH) {
(struct sockaddr *) &got_addr) == CMPSADDR_MATCH) {
(struct sockaddr *) &got_addr) == CMPSADDR_MATCH) {
if (cmpsaddr(ka->src, src) == CMPSADDR_MATCH &&
cmpsaddr(ka->dst, dst) == CMPSADDR_MATCH) {
if (cmpsaddr(ka->src, src) == CMPSADDR_MATCH &&
cmpsaddr(ka->dst, dst) == CMPSADDR_MATCH &&
if (cmpsaddr(iph1->local, ma->local) == CMPSADDR_MATCH &&
cmpsaddr(iph1->remote, ma->remote) == CMPSADDR_MATCH)
if (cmpsaddr(iph2->src, ma->local) == CMPSADDR_MATCH &&
cmpsaddr(iph2->dst, ma->remote) == CMPSADDR_MATCH)
if (cmpsaddr(osaddr, (struct sockaddr *) &saidx->src) != CMPSADDR_MATCH ||
cmpsaddr(odaddr, (struct sockaddr *) &saidx->dst) != CMPSADDR_MATCH) {
if (cmpsaddr(iph2->src, (struct sockaddr *) &spidx->src) != CMPSADDR_MATCH ||
if (cmpsaddr(iph2->dst, (struct sockaddr *) &spidx->dst) != CMPSADDR_MATCH ||
(struct sockaddr *) &b->src) != CMPSADDR_MATCH)
(struct sockaddr *) &b->dst) != CMPSADDR_MATCH)
return CMPSADDR_MATCH;
return CMPSADDR_MATCH;