Looks like the ip_h323_pxy.c broken in Little Endian machine.
Below is the patch:
-xtang
*** netinet/ip_h323_pxy.c Tue May 21 20:28:14 2002
--- /home/xtang/src/ip_fil3.4.27/ip_h323_pxy.c Sat Apr 20 12:41:48 2002
***************
*** 52,58 ****
int datlen, *off;
unsigned short *port;
{
! u_32_t addr, netaddr;
u_char *dp;
int offset;
--- 52,58 ----
int datlen, *off;
unsigned short *port;
{
! u_32_t addr;
u_char *dp;
int offset;
***************
*** 62,72 ****
*port = 0;
offset = *off;
dp = (u_char *)data;
! netaddr = ntohl(ipaddr);
!
for (offset = 0; offset <= datlen - 6; offset++, dp++) {
addr = (dp[0] << 24) | (dp[1] << 16) | (dp[2] << 8) | dp[3];
! if (netaddr == addr)
{
*port = (*(dp + 4) << 8) | *(dp + 5);
break;
--- 62,71 ----
*port = 0;
offset = *off;
dp = (u_char *)data;
!
for (offset = 0; offset <= datlen - 6; offset++, dp++) {
addr = (dp[0] << 24) | (dp[1] << 16) | (dp[2] << 8) | dp[3];
! if (ipaddr == addr)
{
*port = (*(dp + 4) << 8) | *(dp + 5);
break;