diff -rc perl-5.6.0.dist/patchlevel.h perl-5.6.0/patchlevel.h *** perl-5.6.0.dist/patchlevel.h Wed Mar 22 22:23:11 2000 --- perl-5.6.0/patchlevel.h Tue Aug 8 03:06:46 2000 *************** *** 69,75 **** */ #if !defined(PERL_PATCHLEVEL_H_IMPLICIT) && !defined(LOCAL_PATCH_COUNT) static char *local_patches[] = { ! NULL ,NULL }; --- 69,76 ---- */ #if !defined(PERL_PATCHLEVEL_H_IMPLICIT) && !defined(LOCAL_PATCH_COUNT) static char *local_patches[] = { ! NULL ! ,"SUIDMAIL - fixes for suidperl security" ,NULL }; diff -rc perl-5.6.0.dist/perl.c perl-5.6.0/perl.c *** perl-5.6.0.dist/perl.c Sat Mar 18 00:35:15 2000 --- perl-5.6.0/perl.c Mon Aug 7 20:56:56 2000 *************** *** 2758,2773 **** if (tmpstatbuf.st_dev != PL_statbuf.st_dev || tmpstatbuf.st_ino != PL_statbuf.st_ino) { (void)PerlIO_close(PL_rsfp); - if (PL_rsfp = PerlProc_popen("/bin/mail root","w")) { /* heh, heh */ - PerlIO_printf(PL_rsfp, - "User %"Uid_t_f" tried to run dev %ld ino %ld in place of dev %ld ino %ld!\n\ - (Filename of set-id script was %s, uid %"Uid_t_f" gid %"Gid_t_f".)\n\nSincerely,\nperl\n", - PL_uid,(long)tmpstatbuf.st_dev, (long)tmpstatbuf.st_ino, - (long)PL_statbuf.st_dev, (long)PL_statbuf.st_ino, - CopFILE(PL_curcop), - PL_statbuf.st_uid, PL_statbuf.st_gid); - (void)PerlProc_pclose(PL_rsfp); - } Perl_croak(aTHX_ "Permission denied\n"); } if ( --- 2758,2763 ----