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>