MS-DOS patches to perl.
Apply this patch to the standard perl source, version 4, patch level 19,
using "patch -p."  Do this in the root directory of the perl source
distribution.

You can cat all these patches together and pipe the output to patch -p.

Len Reed
Holos Software, Inc.
..!gatech!holos0!lbr
holos0!lbr@gatech.edu
--------------------------------------
*** t/op/dbm.t.old	Tue Apr 23 22:38:40 1991
--- t/op/dbm.t	Thu Nov 14 08:57:10 1991
***************
*** 2,8 ****
  
  # $Header: dbm.t,v 4.0 91/03/20 01:51:52 lwall Locked $
  
! if (!-r '/usr/include/dbm.h' && !-r '/usr/include/ndbm.h') {
      print "1..0\n";
      exit;
  }
--- 2,11 ----
  
  # $Header: dbm.t,v 4.0 91/03/20 01:51:52 lwall Locked $
  
! eval('umask');	# won't work on MS-DOS
! $msdos = $@;
! 
! if (!$msdos && !-r '/usr/include/dbm.h' && !-r '/usr/include/ndbm.h') {
      print "1..0\n";
      exit;
  }
***************
*** 9,20 ****
  
  print "1..12\n";
  
! unlink <Op.dbmx.*>;
! umask(0);
! print (dbmopen(h,'Op.dbmx',0640) ? "ok 1\n" : "not ok 1\n");
  ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$mtime,$ctime,
!    $blksize,$blocks) = stat('Op.dbmx.pag');
! print (($mode & 0777) == 0640 ? "ok 2\n" : "not ok 2\n");
  while (($key,$value) = each(h)) {
      $i++;
  }
--- 12,31 ----
  
  print "1..12\n";
  
! if ($msdos) {
! 	# Not really needed, but using TMPDIR, when it's a RAM disk directory,
! 	# speeds this test a lot.
!     if (defined($tdir = $ENV{'TMPDIR'})) {
! 	chdir ($tdir);
!     }
! }
! 
! unlink <Op_dbmx.*>;
! umask(0) unless $msdos;
! print (dbmopen(h,'Op_dbmx',0640) ? "ok 1\n" : "not ok 1\n");
  ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$mtime,$ctime,
!    $blksize,$blocks) = stat('Op_dbmx.pag');
! print ($msdos || ($mode & 0777) == 0640 ? "ok 2\n" : "not ok 2\n");
  while (($key,$value) = each(h)) {
      $i++;
  }
***************
*** 40,46 ****
  delete $h{'goner2'};
  
  dbmclose(h);
! print (dbmopen(h,'Op.dbmx',0640) ? "ok 4\n" : "not ok 4\n");
  
  $h{'j'} = 'J';
  $h{'k'} = 'K';
--- 51,57 ----
  delete $h{'goner2'};
  
  dbmclose(h);
! print (dbmopen(h,'Op_dbmx',0640) ? "ok 4\n" : "not ok 4\n");
  
  $h{'j'} = 'J';
  $h{'k'} = 'K';
***************
*** 92,98 ****
  print ($ok ? "ok 8\n" : "not ok 8\n");
  
  ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$mtime,$ctime,
!    $blksize,$blocks) = stat('Op.dbmx.pag');
  print ($size > 0 ? "ok 9\n" : "not ok 9\n");
  
  @h{0..200} = 200..400;
--- 103,109 ----
  print ($ok ? "ok 8\n" : "not ok 8\n");
  
  ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$mtime,$ctime,
!    $blksize,$blocks) = stat('Op_dbmx.pag');
  print ($size > 0 ? "ok 9\n" : "not ok 9\n");
  
  @h{0..200} = 200..400;
***************
*** 102,105 ****
  print ($h{'foo'} eq '' ? "ok 11\n" : "not ok 11\n");
  print ($h{''} eq 'bar' ? "ok 12\n" : "not ok 12\n");
  
! unlink 'Op.dbmx.dir', 'Op.dbmx.pag';
--- 113,116 ----
  print ($h{'foo'} eq '' ? "ok 11\n" : "not ok 11\n");
  print ($h{''} eq 'bar' ? "ok 12\n" : "not ok 12\n");
  
! unlink 'Op_dbmx.dir', 'Op_dbmx.pag';
