View | Details | Raw Unified | Return to bug 247129 | Differences between
and this patch

Collapse All | Expand All

(-)sys/netinet/libalias/alias.c (-19 / +38 lines)
Lines 443-449 Link Here
443
IcmpAliasIn(struct libalias *la, struct ip *pip)
443
IcmpAliasIn(struct libalias *la, struct ip *pip)
444
{
444
{
445
	struct icmp *ic;
445
	struct icmp *ic;
446
	int dlen, iresult;
446
	uint16_t dlen;
447
	int iresult;
447
448
448
	LIBALIAS_LOCK_ASSERT(la);
449
	LIBALIAS_LOCK_ASSERT(la);
449
450
Lines 740-746 Link Here
740
{
741
{
741
	struct udphdr *ud;
742
	struct udphdr *ud;
742
	struct alias_link *lnk;
743
	struct alias_link *lnk;
743
	int dlen;
744
	uint16_t dlen;
744
745
745
	LIBALIAS_LOCK_ASSERT(la);
746
	LIBALIAS_LOCK_ASSERT(la);
746
747
Lines 839-845 Link Here
839
	u_short dest_port;
840
	u_short dest_port;
840
	u_short proxy_server_port;
841
	u_short proxy_server_port;
841
	int proxy_type;
842
	int proxy_type;
842
	int dlen, error;
843
	uint16_t dlen;
844
	int error;
843
845
844
	LIBALIAS_LOCK_ASSERT(la);
846
	LIBALIAS_LOCK_ASSERT(la);
845
847
Lines 944-950 Link Here
944
{
946
{
945
	struct tcphdr *tc;
947
	struct tcphdr *tc;
946
	struct alias_link *lnk;
948
	struct alias_link *lnk;
947
	int dlen;
949
	uint16_t dlen;
948
950
949
	LIBALIAS_LOCK_ASSERT(la);
951
	LIBALIAS_LOCK_ASSERT(la);
950
952
Lines 1069-1075 Link Here
1069
static int
1071
static int
1070
TcpAliasOut(struct libalias *la, struct ip *pip, int maxpacketsize, int create)
1072
TcpAliasOut(struct libalias *la, struct ip *pip, int maxpacketsize, int create)
1071
{
1073
{
1072
	int dlen, proxy_type, error;
1074
	uint16_t dlen;
1075
	int proxy_type, error;
1073
	u_short dest_port;
1076
	u_short dest_port;
1074
	u_short proxy_server_port;
1077
	u_short proxy_server_port;
1075
	struct in_addr dest_address;
1078
	struct in_addr dest_address;
Lines 1398-1411 Link Here
1398
			error = find_handler(IN, IP, la, pip, &ad);
1401
			error = find_handler(IN, IP, la, pip, &ad);
1399
			if (error ==  0)
1402
			if (error ==  0)
1400
				iresult = PKT_ALIAS_OK;
1403
				iresult = PKT_ALIAS_OK;
1401
			else
1404
			else {
1405
				struct in_addr dst = pip->ip_dst;
1406
				u_short sum = pip->ip_sum;
1402
				iresult = ProtoAliasIn(la, pip->ip_src, 
1407
				iresult = ProtoAliasIn(la, pip->ip_src, 
1403
				    &pip->ip_dst, pip->ip_p, &pip->ip_sum);
1408
				    &dst, pip->ip_p, &sum);
1409
			}
1404
		}
1410
		}
1405
 			break; 
1411
 			break; 
1406
		default:
1412
		default: {
1407
			iresult = ProtoAliasIn(la, pip->ip_src, &pip->ip_dst,
1413
			struct in_addr dst = pip->ip_dst;
1408
			    pip->ip_p, &pip->ip_sum);
1414
			u_short sum = pip->ip_sum;
1415
			iresult = ProtoAliasIn(la, pip->ip_src, &dst,
1416
			    pip->ip_p, &sum);
1417
			}
1409
			break;
1418
			break;
1410
		}
1419
		}
1411
1420
Lines 1421-1428 Link Here
1421
			}
1430
			}
1422
		}
1431
		}
1423
	} else {
1432
	} else {
1424
		iresult = FragmentIn(la, pip->ip_src, &pip->ip_dst, pip->ip_id,
1433
		struct in_addr dst = pip->ip_dst;
1425
		    &pip->ip_sum);
1434
		u_short sum = pip->ip_sum;
1435
		iresult = FragmentIn(la, pip->ip_src, &dst, pip->ip_id,
1436
		    &sum);
1426
	}
1437
	}
1427
1438
1428
getout:
1439
getout:
Lines 1555-1572 Link Here
1555
			error = find_handler(OUT, IP, la, pip, &ad);
1566
			error = find_handler(OUT, IP, la, pip, &ad);
1556
			if (error == 0)
1567
			if (error == 0)
1557
 				iresult = PKT_ALIAS_OK;
1568
 				iresult = PKT_ALIAS_OK;
1558
 			else
1569
 			else {
1559
 				iresult = ProtoAliasOut(la, &pip->ip_src, 
1570
				struct in_addr src = pip->ip_src;
1560
				    pip->ip_dst, pip->ip_p, &pip->ip_sum, create);
1571
				u_short sum = pip->ip_sum;
1572
 				iresult = ProtoAliasOut(la, &src, 
1573
				    pip->ip_dst, pip->ip_p, &sum, create);
1574
			}
1561
		}
1575
		}
1562
 			break;
1576
 			break;
1563
		default:
1577
		default: {
1564
			iresult = ProtoAliasOut(la, &pip->ip_src,
1578
			struct in_addr src = pip->ip_src;
1565
			    pip->ip_dst, pip->ip_p, &pip->ip_sum, create);
1579
			u_short sum = pip->ip_sum;
1580
			iresult = ProtoAliasOut(la, &src,
1581
			    pip->ip_dst, pip->ip_p, &sum, create);
1582
		}
1566
			break;
1583
			break;
1567
		}
1584
		}
1568
	} else {
1585
	} else {
1569
		iresult = FragmentOut(la, &pip->ip_src, &pip->ip_sum);
1586
		struct in_addr src = pip->ip_src;
1587
		u_short sum = pip->ip_sum;
1588
		iresult = FragmentOut(la, &src, &sum);
1570
	}
1589
	}
1571
1590
1572
	SetDefaultAliasAddress(la, addr_save);
1591
	SetDefaultAliasAddress(la, addr_save);

Return to bug 247129