diff options
author | Thierry Vignaud <tvignaud@mandriva.org> | 2002-07-23 11:08:35 +0000 |
---|---|---|
committer | Thierry Vignaud <tvignaud@mandriva.org> | 2002-07-23 11:08:35 +0000 |
commit | 61b0cd36577df2a9f86cb2c08d14737f0bbcb557 (patch) | |
tree | 08dfd2ab02af6b7c7410158a531a95c2db7b3350 /perl-install/partition_table/empty.pm | |
parent | 6ed6b5341362f87e3c70420f206a33f71c72a3de (diff) | |
download | drakx-61b0cd36577df2a9f86cb2c08d14737f0bbcb557.tar drakx-61b0cd36577df2a9f86cb2c08d14737f0bbcb557.tar.gz drakx-61b0cd36577df2a9f86cb2c08d14737f0bbcb557.tar.bz2 drakx-61b0cd36577df2a9f86cb2c08d14737f0bbcb557.tar.xz drakx-61b0cd36577df2a9f86cb2c08d14737f0bbcb557.zip |
g Move 2: partition table: hierarchy
Diffstat (limited to 'perl-install/partition_table/empty.pm')
-rw-r--r-- | perl-install/partition_table/empty.pm | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/perl-install/partition_table/empty.pm b/perl-install/partition_table/empty.pm new file mode 100644 index 000000000..e90991684 --- /dev/null +++ b/perl-install/partition_table/empty.pm @@ -0,0 +1,36 @@ +package partition_table::empty; # $Id$ + +#- this is a mainly dummy partition table. If we find it's empty, we just call - +#- zero_MBR which will take care of bless'ing us to the partition table type best +#- suited + + +use diagnostics; +use strict; +use vars qw(@ISA); + +@ISA = qw(partition_table::raw); + +use common; +use partition_table::raw; +use partition_table; +use c; + + +sub read($$) { + my ($hd, $sector) = @_; + my $tmp; + + local *F; partition_table::raw::openit($hd, *F) or die "failed to open device"; + c::lseek_sector(fileno(F), $sector, 0) or die "reading of partition in sector $sector failed"; + + #- check magic number + sysread F, $tmp, 512 or die "error reading magic number on disk $hd->{device}"; + $tmp eq substr($tmp, 0, 1) x 512 or die "bad magic number on disk $hd->{device}"; + + partition_table::raw::zero_MBR($hd); + + $hd->{primary}{raw}; +} + +1; |