Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 19 Jun 1999 22:16:22 -0700 (PDT)
From:      Jonathan Hanna <jh@cr1003333-a.crdva1.bc.home.com>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   bin/12304: infinite recursion in libalias with PKT_ALIAS_REVERSE
Message-ID:  <199906200516.WAA05806@cr1003333-a.crdva1.bc.home.com>

next in thread | raw e-mail | index | archive | help

>Number:         12304
>Category:       bin
>Synopsis:       infinite recursion in libalias with PKT_ALIAS_REVERSE
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sat Jun 19 22:20:00 PDT 1999
>Closed-Date:
>Last-Modified:
>Originator:     Jonathan Hanna
>Release:        FreeBSD 4.0-CURRENT i386
>Organization:
>Environment:

4.0-CURRENT
3.2-STABLE

>Description:

Setting PKT_ALIAS_REVERSE in libalias results in infinite
recursion of alternating alias-in and alias-out functions.

alias.c in libalias has this code:

int 
PacketAliasIn(char *ptr, int maxpacketsize)
{   
    struct in_addr alias_addr;
    struct ip *pip;
    int iresult;
    
    if (packetAliasMode & PKT_ALIAS_REVERSE) 
        return PacketAliasOut(ptr, maxpacketsize);
...

int 
PacketAliasOut(char *ptr,           /* valid IP packet */
               int  maxpacketsize   /* How much the packet data may grow
                                       (FTP and IRC inline changes) */
              )
{   
    int iresult;
    struct in_addr addr_save;
    struct ip *pip;
    
    if (packetAliasMode & PKT_ALIAS_REVERSE)
        return PacketAliasIn(ptr, maxpacketsize);
...

I noticed also that PKT_ALIAS_REVERSE is not documented int libalias.3. 


>How-To-Repeat:

Adding "-reverse" to a natd setup results in a core dump.

>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199906200516.WAA05806>