Lines Matching refs:la

272 static int	ProtoAliasIn(struct libalias *la, struct in_addr ip_src,
274 static int ProtoAliasOut(struct libalias *la, struct ip *pip,
289 IcmpAliasIn1(struct libalias *la, struct ip *pip) in IcmpAliasIn1() argument
294 LIBALIAS_LOCK_ASSERT(la); in IcmpAliasIn1()
298 lnk = FindIcmpIn(la, pip->ip_src, pip->ip_dst, ic->icmp_id, 1); in IcmpAliasIn1()
333 IcmpAliasIn2(struct libalias *la, struct ip *pip) in IcmpAliasIn2() argument
341 LIBALIAS_LOCK_ASSERT(la); in IcmpAliasIn2()
350 lnk = FindUdpTcpIn(la, ip->ip_dst, ip->ip_src, in IcmpAliasIn2()
354 lnk = FindUdpTcpIn(la, ip->ip_dst, ip->ip_src, in IcmpAliasIn2()
359 lnk = FindIcmpIn(la, ip->ip_dst, ip->ip_src, ic2->icmp_id, 0); in IcmpAliasIn2()
430 IcmpAliasIn(struct libalias *la, struct ip *pip) in IcmpAliasIn() argument
436 LIBALIAS_LOCK_ASSERT(la); in IcmpAliasIn()
443 if (la->packetAliasMode & PKT_ALIAS_PROXY_ONLY) in IcmpAliasIn()
453 iresult = IcmpAliasIn1(la, pip); in IcmpAliasIn()
463 iresult = IcmpAliasIn2(la, pip); in IcmpAliasIn()
467 iresult = IcmpAliasIn1(la, pip); in IcmpAliasIn()
478 IcmpAliasOut1(struct libalias *la, struct ip *pip, int create) in IcmpAliasOut1() argument
483 LIBALIAS_LOCK_ASSERT(la); in IcmpAliasOut1()
487 lnk = FindIcmpOut(la, pip->ip_src, pip->ip_dst, ic->icmp_id, create); in IcmpAliasOut1()
522 IcmpAliasOut2(struct libalias *la, struct ip *pip) in IcmpAliasOut2() argument
530 LIBALIAS_LOCK_ASSERT(la); in IcmpAliasOut2()
539 lnk = FindUdpTcpOut(la, ip->ip_dst, ip->ip_src, in IcmpAliasOut2()
543 lnk = FindUdpTcpOut(la, ip->ip_dst, ip->ip_src, in IcmpAliasOut2()
548 lnk = FindIcmpOut(la, ip->ip_dst, ip->ip_src, ic2->icmp_id, 0); in IcmpAliasOut2()
618 IcmpAliasOut(struct libalias *la, struct ip *pip, int create) in IcmpAliasOut() argument
623 LIBALIAS_LOCK_ASSERT(la); in IcmpAliasOut()
627 if (la->packetAliasMode & PKT_ALIAS_PROXY_ONLY) in IcmpAliasOut()
637 iresult = IcmpAliasOut1(la, pip, create); in IcmpAliasOut()
644 iresult = IcmpAliasOut2(la, pip); in IcmpAliasOut()
648 iresult = IcmpAliasOut1(la, pip, create); in IcmpAliasOut()
660 ProtoAliasIn(struct libalias *la, struct in_addr ip_src, in ProtoAliasIn() argument
665 LIBALIAS_LOCK_ASSERT(la); in ProtoAliasIn()
667 if (la->packetAliasMode & PKT_ALIAS_PROXY_ONLY) in ProtoAliasIn()
670 lnk = FindProtoIn(la, ip_src, pip->ip_dst, ip_p); in ProtoAliasIn()
692 ProtoAliasOut(struct libalias *la, struct ip *pip, in ProtoAliasOut() argument
697 LIBALIAS_LOCK_ASSERT(la); in ProtoAliasOut()
700 if (la->packetAliasMode & PKT_ALIAS_PROXY_ONLY) in ProtoAliasOut()
706 lnk = FindProtoOut(la, pip->ip_src, ip_dst, ip_p); in ProtoAliasOut()
744 UdpAliasIn(struct libalias *la, struct ip *pip) in UdpAliasIn() argument
749 LIBALIAS_LOCK_ASSERT(la); in UdpAliasIn()
755 lnk = FindUdpTcpIn(la, pip->ip_src, pip->ip_dst, in UdpAliasIn()
757 IPPROTO_UDP, !(la->packetAliasMode & PKT_ALIAS_PROXY_ONLY)); in UdpAliasIn()
784 error = find_handler(IN, UDP, la, pip, &ad); in UdpAliasIn()
835 UdpAliasOut(struct libalias *la, struct ip *pip, int maxpacketsize, int create) in UdpAliasOut() argument
845 LIBALIAS_LOCK_ASSERT(la); in UdpAliasOut()
852 proxy_type = ProxyCheck(la, &proxy_server_address, &proxy_server_port, in UdpAliasOut()
854 if (proxy_type == 0 && (la->packetAliasMode & PKT_ALIAS_PROXY_ONLY)) in UdpAliasOut()
880 lnk = FindUdpTcpOut(la, pip->ip_src, pip->ip_dst, in UdpAliasOut()
902 ProxyModify(la, lnk, pip, maxpacketsize, proxy_type); in UdpAliasOut()
910 find_handler(OUT, UDP, la, pip, &ad); in UdpAliasOut()
937 TcpAliasIn(struct libalias *la, struct ip *pip) in TcpAliasIn() argument
943 LIBALIAS_LOCK_ASSERT(la); in TcpAliasIn()
950 lnk = FindUdpTcpIn(la, pip->ip_src, pip->ip_dst, in TcpAliasIn()
953 !(la->packetAliasMode & PKT_ALIAS_PROXY_ONLY)); in TcpAliasIn()
979 find_handler(IN, TCP, la, pip, &ad); in TcpAliasIn()
1005 error = find_handler(la, pip, &ad); in TcpAliasIn()
1064 TcpAliasOut(struct libalias *la, struct ip *pip, int maxpacketsize, int create) in TcpAliasOut() argument
1075 LIBALIAS_LOCK_ASSERT(la); in TcpAliasOut()
1083 proxy_type = ProxyCheck(la, &proxy_server_address, in TcpAliasOut()
1089 if (proxy_type == 0 && (la->packetAliasMode & PKT_ALIAS_PROXY_ONLY)) in TcpAliasOut()
1111 lnk = FindUdpTcpOut(la, pip->ip_src, pip->ip_dst, in TcpAliasOut()
1136 ProxyModify(la, lnk, pip, maxpacketsize, proxy_type); in TcpAliasOut()
1148 find_handler(OUT, TCP, la, pip, &ad); in TcpAliasOut()
1197 static int FragmentIn(struct libalias *la, struct in_addr ip_src,
1203 FragmentIn(struct libalias *la, struct in_addr ip_src, struct ip *pip, in FragmentIn() argument
1208 LIBALIAS_LOCK_ASSERT(la); in FragmentIn()
1209 lnk = FindFragmentIn2(la, ip_src, pip->ip_dst, ip_id); in FragmentIn()
1224 FragmentOut(struct libalias *la, struct ip *pip, u_short *ip_sum) in FragmentOut() argument
1228 LIBALIAS_LOCK_ASSERT(la); in FragmentOut()
1229 alias_address = FindAliasAddress(la, pip->ip_src); in FragmentOut()
1250 LibAliasSaveFragment(struct libalias *la, void *ptr) in LibAliasSaveFragment() argument
1256 LIBALIAS_LOCK(la); in LibAliasSaveFragment()
1258 lnk = AddFragmentPtrLink(la, pip->ip_src, pip->ip_id); in LibAliasSaveFragment()
1264 LIBALIAS_UNLOCK(la); in LibAliasSaveFragment()
1269 LibAliasGetFragment(struct libalias *la, void *ptr) in LibAliasGetFragment() argument
1275 LIBALIAS_LOCK(la); in LibAliasGetFragment()
1277 lnk = FindFragmentPtr(la, pip->ip_src, pip->ip_id); in LibAliasGetFragment()
1285 LIBALIAS_UNLOCK(la); in LibAliasGetFragment()
1290 LibAliasFragmentIn(struct libalias *la, in LibAliasFragmentIn() argument
1298 LIBALIAS_LOCK(la); in LibAliasFragmentIn()
1299 (void)la; in LibAliasFragmentIn()
1306 LIBALIAS_UNLOCK(la); in LibAliasFragmentIn()
1311 LibAliasOutLocked(struct libalias *la, struct ip *pip,
1314 LibAliasInLocked(struct libalias *la, struct ip *pip,
1318 LibAliasIn(struct libalias *la, void *ptr, int maxpacketsize) in LibAliasIn() argument
1322 LIBALIAS_LOCK(la); in LibAliasIn()
1323 res = LibAliasInLocked(la, (struct ip *)ptr, maxpacketsize); in LibAliasIn()
1324 LIBALIAS_UNLOCK(la); in LibAliasIn()
1329 LibAliasInLocked(struct libalias *la, struct ip *pip, int maxpacketsize) in LibAliasInLocked() argument
1334 if (la->packetAliasMode & PKT_ALIAS_REVERSE) { in LibAliasInLocked()
1335 la->packetAliasMode &= ~PKT_ALIAS_REVERSE; in LibAliasInLocked()
1336 iresult = LibAliasOutLocked(la, pip, maxpacketsize, 1); in LibAliasInLocked()
1337 la->packetAliasMode |= PKT_ALIAS_REVERSE; in LibAliasInLocked()
1340 HouseKeeping(la); in LibAliasInLocked()
1351 iresult = FragmentIn(la, pip->ip_src, pip, pip->ip_id, in LibAliasInLocked()
1359 iresult = IcmpAliasIn(la, pip); in LibAliasInLocked()
1362 iresult = UdpAliasIn(la, pip); in LibAliasInLocked()
1365 iresult = TcpAliasIn(la, pip); in LibAliasInLocked()
1369 iresult = SctpAlias(la, pip, SN_TO_LOCAL); in LibAliasInLocked()
1385 error = find_handler(IN, IP, la, pip, &ad); in LibAliasInLocked()
1389 iresult = ProtoAliasIn(la, pip->ip_src, in LibAliasInLocked()
1394 iresult = ProtoAliasIn(la, pip->ip_src, pip, in LibAliasInLocked()
1402 lnk = FindFragmentIn1(la, pip->ip_src, alias_addr, pip->ip_id); in LibAliasInLocked()
1434 LibAliasOut(struct libalias *la, void *ptr, int maxpacketsize) in LibAliasOut() argument
1438 LIBALIAS_LOCK(la); in LibAliasOut()
1439 res = LibAliasOutLocked(la, (struct ip *)ptr, maxpacketsize, 1); in LibAliasOut()
1440 LIBALIAS_UNLOCK(la); in LibAliasOut()
1445 LibAliasOutTry(struct libalias *la, void *ptr, int maxpacketsize, int create) in LibAliasOutTry() argument
1449 LIBALIAS_LOCK(la); in LibAliasOutTry()
1450 res = LibAliasOutLocked(la, (struct ip *)ptr, maxpacketsize, create); in LibAliasOutTry()
1451 LIBALIAS_UNLOCK(la); in LibAliasOutTry()
1456 LibAliasOutLocked(struct libalias *la, in LibAliasOutLocked() argument
1465 if (la->packetAliasMode & PKT_ALIAS_REVERSE) { in LibAliasOutLocked()
1466 la->packetAliasMode &= ~PKT_ALIAS_REVERSE; in LibAliasOutLocked()
1467 iresult = LibAliasInLocked(la, pip, maxpacketsize); in LibAliasOutLocked()
1468 la->packetAliasMode |= PKT_ALIAS_REVERSE; in LibAliasOutLocked()
1471 HouseKeeping(la); in LibAliasOutLocked()
1480 addr_save = GetDefaultAliasAddress(la); in LibAliasOutLocked()
1481 if (la->packetAliasMode & PKT_ALIAS_UNREGISTERED_ONLY || in LibAliasOutLocked()
1482 la->packetAliasMode & PKT_ALIAS_UNREGISTERED_CGN) { in LibAliasOutLocked()
1495 la->packetAliasMode & PKT_ALIAS_UNREGISTERED_CGN) in LibAliasOutLocked()
1499 SetDefaultAliasAddress(la, pip->ip_src); in LibAliasOutLocked()
1501 } else if (la->packetAliasMode & PKT_ALIAS_PROXY_ONLY) { in LibAliasOutLocked()
1502 SetDefaultAliasAddress(la, pip->ip_src); in LibAliasOutLocked()
1506 iresult = FragmentOut(la, pip, &pip->ip_sum); in LibAliasOutLocked()
1513 iresult = IcmpAliasOut(la, pip, create); in LibAliasOutLocked()
1516 iresult = UdpAliasOut(la, pip, maxpacketsize, create); in LibAliasOutLocked()
1519 iresult = TcpAliasOut(la, pip, maxpacketsize, create); in LibAliasOutLocked()
1523 iresult = SctpAlias(la, pip, SN_TO_GLOBAL); in LibAliasOutLocked()
1538 error = find_handler(OUT, IP, la, pip, &ad); in LibAliasOutLocked()
1542 iresult = ProtoAliasOut(la, pip, in LibAliasOutLocked()
1547 iresult = ProtoAliasOut(la, pip, in LibAliasOutLocked()
1553 SetDefaultAliasAddress(la, addr_save); in LibAliasOutLocked()
1559 LibAliasUnaliasOut(struct libalias *la, in LibAliasUnaliasOut() argument
1571 LIBALIAS_LOCK(la); in LibAliasUnaliasOut()
1585 lnk = FindUdpTcpIn(la, pip->ip_dst, pip->ip_src, in LibAliasUnaliasOut()
1589 lnk = FindUdpTcpIn(la, pip->ip_dst, pip->ip_src, in LibAliasUnaliasOut()
1593 lnk = FindIcmpIn(la, pip->ip_dst, pip->ip_src, ic->icmp_id, 0); in LibAliasUnaliasOut()
1660 LIBALIAS_UNLOCK(la); in LibAliasUnaliasOut()