bin/53451: SEGV in rpcgen

dada at sbox.tugraz.at dada at sbox.tugraz.at
Wed Jun 18 09:30:02 PDT 2003


>Number:         53451
>Category:       bin
>Synopsis:       SEGV in rpcgen
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Jun 18 09:30:00 PDT 2003
>Closed-Date:
>Last-Modified:
>Originator:     Martin Kammerhofer
>Release:        FreeBSD 4.8-STABLE i386
>Organization:
Graz Uni
>Environment:
System: FreeBSD Martin.liebt.Susi 4.8-STABLE FreeBSD 4.8-STABLE #1: Thu Jun 12
13:27:38 CEST 2003 toor at Martin.liebt.Susi:/usr/obj/usr/src-4.x/sys/LEND4 i386

>Description:
	rpcgen -a may trigger a bug causing segmentation violation.
>How-To-Repeat:
	MALLOC_OPTIONS=J rpcgen -a /usr/share/examples/sunrpc/dir/dir.x
>Fix:
*** src/usr.bin/rpcgen/rpc_main.c.orig	Sat Aug 28 03:05:16 1999
--- src/usr.bin/rpcgen/rpc_main.c	Sun Jun 15 11:23:58 2003
***************
*** 909,915 ****
  		mkfilename = alloc(strlen("makefile.") +
  			strlen(cmd->infile) + 1);
  		temp = (char *)rindex(cmd->infile, '.');
! 		strcat(mkfilename, "makefile.");
  		(void) strncat(mkfilename, cmd->infile,
  			(temp - cmd->infile));
  	} else
--- 909,915 ----
  		mkfilename = alloc(strlen("makefile.") +
  			strlen(cmd->infile) + 1);
  		temp = (char *)rindex(cmd->infile, '.');
! 		strcpy(mkfilename, "makefile.");
  		(void) strncat(mkfilename, cmd->infile,
  			(temp - cmd->infile));
  	} else


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


More information about the freebsd-bugs mailing list