Commit Graph

263 Commits

Author SHA1 Message Date
Neil Blakey-Milner
0138fc17c5 Let Disk_Names() take advantage of the kern.disks sysctl if it's
available.  If not, it falls back to the existing hack and slash method.

A positive side effect is that non-root users may now use Disk_Names(),
for non-dangerous libh/disk.tcl testing.

Reviewed by:	phk
2000-06-23 14:01:06 +00:00
Yoshihiro Takahashi
88916759e4 Re-support "wd" if PC98 is defined. Because PC-98 still uses the wd driver. 2000-06-05 13:33:39 +00:00
Mike Smith
ad3a8d908d /dev/rXXX -> /dev/XXX
This should fix sysinstall and other tools that don't expect the 'r' devices
to exist anymore (and thus don't create them).
2000-05-31 00:51:57 +00:00
Mike Smith
6311733944 De-support 'wd'; with it making a dual appearance with 'ad', things
depending on libdisk to detect a list of actually-there disk devices
were providing duplicate entries (eg. sysinstall).
2000-05-30 15:18:30 +00:00
Alfred Perlstein
7009672a8a fix stray 'i' from editor. 2000-05-25 08:24:38 +00:00
Mike Smith
880479f425 Teach libdisk about 'twe' disks. 2000-05-25 02:23:47 +00:00
Jordan K. Hubbard
9b5b02c405 catch up to the modern ATAPI disk naming conventions and add floppy
disks.

Submitted by:	bde
2000-05-24 20:25:42 +00:00
Joerg Wunsch
a1dc0577ea Reassemble a sentence that has been botched in rev 1.4.
Reported by:	Alexander Leidinger <Alexander@leidinger.net>
2000-04-25 13:53:48 +00:00
Alexey Zelkin
c7ff9837bb Introduce .Lb macro to libdisk manpage 2000-04-22 15:58:49 +00:00
David E. O'Brien
cc7f40abaa Raw devices are now the normal device name, not prefixed with 'r'. 2000-04-19 18:51:28 +00:00
KATO Takenori
7e9e421193 Changes for PC-98. 2000-03-29 15:10:28 +00:00
Philippe Charnier
c0154e9a31 lowercase error message 2000-03-26 15:14:16 +00:00
Warner Losh
ce5e608527 Fix fd leak in libdisk's Disk_Names() 2000-03-10 22:54:04 +00:00
Jonathan Lemon
0b6b4751b5 Fix pointer addition bug (3 -> 4).
Submitted by:	 david.w.james@bt.com
2000-03-09 15:05:20 +00:00
Jonathan Lemon
064dbb0301 Correct device naming for IDA disk nodes (idad) 2000-03-08 18:14:02 +00:00
Jordan K. Hubbard
3925bc5d50 Hide more debugging behind isDebug(); what's currently
spewing out will only alarm people.
2000-02-18 03:06:43 +00:00
Rodney W. Grimes
d05257b0f2 Replace beforeinstall target with new variables used by .mk system.
Reviewed by:	marcel, and make world
2000-01-14 07:57:47 +00:00
Poul-Henning Kamp
2e636eed15 Just on the off-chance that somebody might use libdisk in a totally
lobotomized environment, say booted from a floppy with no /etc full
of password and group files, give sensible fallbacks for roots uid
and operators gid.

This might fix sysinstall.
1999-12-22 19:06:29 +00:00
Jordan K. Hubbard
63b7978d53 Catch up to the fact that block devices are toast.
Teach about the afd driver.
Teach new char dev for ad driver.
Make ownerships correct.

Submitted by:	jhb
1999-12-15 08:33:56 +00:00
Mike Smith
78c8bacf35 Remove 'sd' support. SCSI disks are known as 'da' these days. 1999-11-27 21:20:57 +00:00
Poul-Henning Kamp
b007e160a1 Remove BAD144 support 1999-11-27 14:33:30 +00:00
Mike Smith
9ca7957c86 Teach libdisk about the AMI and Mylex RAID drivers. You should be able
to install directly to arrays managed by these controllers now.
1999-11-02 03:40:14 +00:00
Alexey Zelkin
b4e9780ac9 fix couple mdoc error
mention library name in header (.Nd field) - it allows to use "man -k libdisk"
1999-10-28 15:42:48 +00:00
Peter Wemm
7f3dea244c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
Mike Smith
d84c9e2a65 Merge from -stable; support for the 'ida' driver, move fla to major 102 1999-07-05 09:43:29 +00:00
Mike Smith
5ca13e05f7 Fix my own Pie Floater.
(Correctly handle 'wd' devices)
1999-05-12 23:50:50 +00:00
Doug Rabson
c914395258 Back out the last change to disk.c - a kernel change removed the need.
Enabled writing to the disklabel when writing a disk (only affects alpha).
1999-05-09 11:34:58 +00:00
Doug Rabson
756b11d957 Make libdisk see the existing partitiions on the alpha. 1999-05-08 21:21:50 +00:00
Mike Smith
003afcdfdb Clean up after another half-Danish.
Add 'ad' as another known disk driver of the same kind as 'wd'.
1999-05-04 22:44:48 +00:00
Warner Losh
dcb0ae4ed8 More egcs warning fixes:
o use braces to avoid potentially ambiguous else
	o don't default to type int (and also remove a useless register
	  modifier).
	o Use parens around assignment values used as truth values.
	o Remove unused function.

Reviewed by: obrien and chuckr
1999-04-25 22:29:30 +00:00
Jordan K. Hubbard
35ea9462db More support for Alpha installs.
Submitted by:   dfr
1999-01-29 11:39:24 +00:00
Poul-Henning Kamp
5a5a489faf Bring us one step closer to sysinstall'ing on a DOC2k device. 1999-01-14 21:48:13 +00:00
Jordan K. Hubbard
a864ef37a3 Changes for alpha support.
Submitted by:	dfr
1999-01-08 00:32:19 +00:00
Jordan K. Hubbard
649ff492d7 Eliminate all dependence on boot1 and boot2. This is passed in by
Set_Boot_Blocks() anyway and should thus have never been a part of
libdisk, it should have been provided by the client of libdisk since
passing the information in is already part of the API.
1998-12-31 02:35:43 +00:00
Jordan K. Hubbard
e188aa994d Transition libdisk to use /boot since what it's looking for (boot1 and boot2)
are now there.
1998-12-30 13:29:11 +00:00
Bruce Evans
40b843918b Backed out previous commit. It depends on a.out utilities and libraries
somehow being available even on pure elf systems.
1998-12-30 12:06:08 +00:00
Bruce Evans
621be74548 Fixed bootstrapping of /usr/mdec/boot[12]. 1998-12-30 11:26:24 +00:00
Poul-Henning Kamp
3d7b283155 Add "fla" to Disk_Names() 1998-12-19 18:48:33 +00:00
Mike Smith
f5ce88ded8 Fixes for handling 'wfd' (and any other disk with a non-2-character name)
Submitted by:	Some from Satoh Junichi (junichi@astec.co.jp)
1998-10-27 21:14:03 +00:00
Doug Rabson
5b4c313702 Teach libdisk about alpha boot blocks. 1998-10-06 11:57:08 +00:00
Jordan K. Hubbard
55ff249dd5 Eliminate unaligned access on Alpha and also neaten up this code a little.
Submitted by:	dfr
1998-09-30 21:40:51 +00:00
Justin T. Gibbs
d02ee3ee3e Remove references to the "od" device. 1998-09-15 10:23:17 +00:00
John Polstra
fd898ba100 Extend the existing hackery to set the disk type to SCSI for the
"da" and "od" devices.  Formerly ESDI was used for them, causing
problems for fresh installations of CAM systems.
1998-06-27 02:01:25 +00:00
Joseph Koshy
9c727d2ca9 Spelling corrections.
PR: 6868
Submitted by: Josh Gilliam <josh@quick.net>
1998-06-06 05:50:53 +00:00
David E. O'Brien
7863f660a2 Add new NetBSD FFS with FDISK partition ID 0xa9
Obtained from:	Frank van der Linden <frank@wins.uva.nl>
1998-05-19 11:15:44 +00:00
David E. O'Brien
361854f773 Change an arbitarly hardcoded `10' to MAX_NO_DISKS, which is currently "20".
Otherwise can't see sd10 (obtained using wired down sd unit numbers),
reguardless of the number of actual disks you have.
1998-05-15 21:17:01 +00:00
Jordan K. Hubbard
698b7ad3c9 Add Compaq & SCO partition types.
PR:		6092
Submitted by:	Drew Derbyshire <ahd@kew.com>
1998-03-22 07:41:23 +00:00
Jordan K. Hubbard
a299349b09 MF22: teach about LS-120 devices. 1998-03-20 23:43:04 +00:00
Philippe Charnier
a5941fc2aa .Sh AUTHOR -> .Sh AUTHORS. Use .An/.Aq 1998-03-19 07:34:22 +00:00
Andrey A. Chernov
dd6f94f065 Add more AIX/DOS/Win95 partition types 1998-03-14 21:14:31 +00:00
Andrey A. Chernov
56b19102ab Add primary fat-32 1998-03-07 08:45:46 +00:00
David E. O'Brien
e3d7eb92f6 Reconized OpenBSD partitions. 1998-03-05 03:08:16 +00:00
Jordan K. Hubbard
f1a98d56f2 Be more verbose if we can't determine device major/minor. 1998-02-10 17:19:12 +00:00
Bruce Evans
c7b367098d Fixed #includes in the synopsis and in an example. <sys/socket.h>
isn't a prerequisite, since it isn't required for the prototypes
and isn't always needed to call the functions (the address family
might be a variable).
1998-01-20 11:03:15 +00:00
Jordan K. Hubbard
76b851fda2 Non-intrusive changes to support Justin's CAM stuff. 1998-01-16 12:50:36 +00:00
John Polstra
eb64128d8a Fix erroneous format string. 1997-11-18 05:34:45 +00:00
Bruce Evans
26838e4e99 Fixed this header to compile with gcc -pedantic -Werror (removed comma
at end of enum).
1997-03-19 01:54:04 +00:00
Peter Wemm
7e546392b5 Revert $FreeBSD$ to $Id$ 1997-02-22 15:12:41 +00:00
David E. O'Brien
e9ce3d82e4 Adds slice_type_name() which extends chunk_n[] for subtype's too.
Curorary review by:	phk
1997-01-23 06:29:01 +00:00
Jordan K. Hubbard
1130b656e5 Make the long-awaited change from $Id$ to $FreeBSD$
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore.  This update would have been
insane otherwise.
1997-01-14 07:20:47 +00:00
Jordan K. Hubbard
0b3870cb60 Close PR#2198:
I've added an installation from optical disk drive facility.
	This enables FreeBSD to be installed from an optical disk, which
	may be formatted in "super floppy" style or sliced into MSDOS-FS
	and UFS partitions.

	Note:  ncr.c should be reviewed by Stefan Esser <se@freebsd.org>
	and cd.c by Joerg Wunsch <joerg@freebsd.org> before bringing this
	into 2.2.

Submitted-By: Shunsuke Akiyama <akiyama@kme.mei.co.jp>
1996-12-13 07:55:14 +00:00
Poul-Henning Kamp
00f723bf6b Improve the Dangerously Dedidcated mode a bit. Not much, but a bit better. 1996-11-27 22:44:43 +00:00
Peter Wemm
c5c878699b cmp -s || install -c ==> install -C 1996-08-30 01:51:09 +00:00
Jordan K. Hubbard
aa6e3d23d0 Cast lseek arguments appropriately.
Submitted-By: "Frank ten Wolde" <franky@pinewood.nl>
1996-07-09 12:17:46 +00:00
Bruce Evans
078a9c9415 Removed -g from CFLAGS. 1996-06-23 13:11:59 +00:00
Wolfram Schneider
9fb933075e `mv'' -> `mv -f''
``rm'' -> ``rm -f''
so mv/rm may not ask for confirmation if you are not root
1996-05-07 23:19:49 +00:00
Jordan K. Hubbard
4f3fd9ad3f Fix mis-declared static arrays that made sysinstall SEGV in
Set_Boot_Blocks().  Boy, this one had me tearing my hair out!
I hate how the loader distinguishes between `extern char *foo' and
`extern char foo[]' sometimes! :-)
1996-04-29 06:45:33 +00:00
Jordan K. Hubbard
d402093152 Move some warn()'s into DEBUG space since I don't need them coming
out in my curses interfaces and spamming my screen.
1996-04-29 05:03:02 +00:00
Joerg Wunsch
e2c8e21d6b Make libdisk C++ aware:
- add __BEGIN_DECLS and __END_DECLS,
- add a bunch of ``const'' qualifiers all over the place,
- rename the `private' struct member into `private_data' to avoid the
  clash with the C++ keyword.
1996-03-24 18:55:39 +00:00
Jordan K. Hubbard
198c323e44 Fix bogus MLINKS line. When is the old libdisk going to go away, BTW? 1996-03-18 15:15:42 +00:00
Joerg Wunsch
6db03f75e4 libdisk is now `adult':
. install libdisk.h into /usr/include
. add a (preliminary) manpage, mostly featured after phk's comments
  in libdisk.h
1996-03-17 23:20:09 +00:00
Peter Wemm
635d02db6f Repository copy src/release/libdisk to src/lib/libdisk as per recent
discussion on -core about disk partitioning tools etc.

Add NOPIC=yes to Makefile to prevent any possibility of version mismatch
because of the potential grave consequences. (as suggested by phk)

Note that this is also on RELENG_2_1_0, since the sysinstall stuff is
hopefully going to remain in sync.
1996-03-17 19:02:07 +00:00
Peter Wemm
40b0c0d936 Update the -current sources from the 2.1 branch.
Approved (in spirit) by: jkh
1995-12-07 10:34:59 +00:00
David Greenman
bdc3c66075 Brought in changes from rev 1.14.2.1 into main branch. 1995-08-26 04:57:03 +00:00
Rodney W. Grimes
d3628763db Merge RELENG_2_0_5 into HEAD 1995-06-11 19:33:05 +00:00
Rodney W. Grimes
e5370bd7fe Remove trailing whitespace. 1995-05-30 08:29:07 +00:00
Poul-Henning Kamp
6331da9711 Remove Ontrack special from All_FreeBSD().
Add chunk->disk pointer.
1995-05-25 06:14:49 +00:00
Jordan K. Hubbard
2f2a4e7a4a Align slices to cylinder boundries.
Submitted By: phk
1995-05-24 08:59:40 +00:00
Poul-Henning Kamp
c5cc77ec44 Fix a typo, now there should always be an active slice. 1995-05-21 07:47:24 +00:00
Poul-Henning Kamp
13da1b0612 Do not allocate the first track. 1995-05-20 19:11:44 +00:00
Poul-Henning Kamp
739618d119 Remove two printfs before Jordan has a fit over them. 1995-05-18 22:25:37 +00:00
Poul-Henning Kamp
86577745c3 Fixed the calculation of the reserved space for bad144. Thanks Rod! 1995-05-15 19:03:08 +00:00
Poul-Henning Kamp
ff88273903 Create_Chunk_DWIM will not allocate anything in the last cylinder of a
CHUNK_BAD144 slice.
Also mknod the 'c' partition for freebsd slices, so bad144(8) will have
something to work on.
1995-05-15 00:58:25 +00:00
Poul-Henning Kamp
7b92fbb848 Added MakeDevDisk(struct disk*, char *path);
fixed bug in extended slice naming.
1995-05-12 18:50:00 +00:00
Poul-Henning Kamp
8f9c995787 Get the CHUNK_COMPAT_BSD flag right. 1995-05-11 05:22:54 +00:00
Poul-Henning Kamp
59618a8666 Create_Chunk_DWIM() is here, though it doesn't quite do what the name implies. 1995-05-10 05:57:04 +00:00
Poul-Henning Kamp
d81adf1ebe Recognize slice type #6 as dos
handle OnTrack Disk manager correctly.
1995-05-08 02:08:33 +00:00
Poul-Henning Kamp
fccc689116 Add check for rootfs > cyl 1024. 1995-05-08 01:34:31 +00:00
Poul-Henning Kamp
c0b8ca15f5 I bet Jordan is tearing his hair out, trying to figure the previous patch
out... here is the real thing.
1995-05-08 01:26:47 +00:00
Poul-Henning Kamp
f768aaceb4 Fix bug. 1995-05-08 00:44:46 +00:00
Jordan K. Hubbard
5ff77a9985 Whoops! An extra paren somehow got in there. Fixed. 1995-05-07 01:28:16 +00:00
Jordan K. Hubbard
3906ebee12 Always zero new chunks - keeps things like the private structures from having
bogus data in them.
1995-05-07 01:25:22 +00:00
Poul-Henning Kamp
b83d7daff4 General sanitation and cleanup. Killed the "reserved" type, it wasn't. 1995-05-06 03:28:32 +00:00
Poul-Henning Kamp
0be90238f6 If in Create_Chunk we (type==freebsd && (flags&CHUNK_ALIGN)), then we will
align this chunk properly.  Have at it Jordan...
1995-05-05 07:07:45 +00:00
Poul-Henning Kamp
e9851d87a8 Make the partitions names even more sensible
CheckRules sets the CHUNK_ALIGN & CHUNK_PAST_1024 flags.
1995-05-04 07:00:57 +00:00
Poul-Henning Kamp
afb3a9c529 Add the private void *pointer to the chunks, and the functions to manage it.
Make the reassignment of partition names less bogus.
1995-05-03 22:36:52 +00:00
Jordan K. Hubbard
a7a5bb1246 Export the chunk names properly. 1995-05-03 17:38:00 +00:00
Poul-Henning Kamp
fcdd2c3c7d Make the target for tst01 more sensible.
Remove bogus targets.
Allocate partition letters as follows:
	lowest offset "flags & CHUNK_IS_ROOT" gets 'a',
	lowest offset "subtype==FS_SWAP" gets 'b'
	the rest is allocated in offset order from this sequence "defghab".
This will generally make sense.
Added rules to complain if more than one CHUNK_IS_ROOT or more than one
FS_SWAP per FreeBSD chunk.
Set CHUNK_IS_ROOT on the 'a' partition in Open_Disk.
Run Fixup_Names in Open_Disk.
1995-05-03 06:30:59 +00:00
Jordan K. Hubbard
d81fc24bca foo -> unknown 1995-05-02 20:16:16 +00:00
Jordan K. Hubbard
1d56870d74 I need Open_Disk() to not spew on my screen. #ifdef out some diagnostic
printfs.
1995-05-02 19:52:27 +00:00
Jordan K. Hubbard
ec27acc8cb foo -> unknown.
I have to be able to show this stuff to the user. :-)
1995-05-01 21:30:24 +00:00
Jordan K. Hubbard
81b15f5715 Stick a more BSD-like Makefile here so that I can link to the library. 1995-05-01 08:08:02 +00:00
Poul-Henning Kamp
20c9844ca0 start CHS is 0xff,0xff,0xff if past 1024.
end CHS is 1023,bios_hd,bios_sect if past 1024.  This way we can find
bios the geometry again.
Added a primitive "scan" to tst01.
1995-05-01 04:05:27 +00:00
Poul-Henning Kamp
87d4886cc3 Use the DIOCSYNCSLICE ioctl now. (use only with kernel from this morning).
Get the CHS's right.
Get the disklabels (more) right.
1995-04-30 22:51:05 +00:00
Poul-Henning Kamp
9781a14091 get bootblocks right.
Add mbr and bteasy17 to tst01
read partitions from kernel instead of disk.
Still problems with writing labels, discussing with Bruce.
Extended slices doesn't get written yet.
1995-04-30 11:04:16 +00:00
Poul-Henning Kamp
e6b172ee57 Use 0xff for CHS when past 1024 cyls.
Fix (hopefully) a bug Gary found.
1995-04-30 07:30:45 +00:00
Poul-Henning Kamp
98fc07cacb Make the default case less scary :-) 1995-04-30 06:19:32 +00:00
Poul-Henning Kamp
2d5caf92d0 Now we do writes too. 1995-04-30 06:09:29 +00:00
Poul-Henning Kamp
a29b6fccc0 Names are assigned when chunks are created.
Rules for only one fat & one extended in MBR.
1995-04-29 07:21:14 +00:00
Poul-Henning Kamp
a907b94117 Even More stuff. Disk_Names() is here amongst other things. 1995-04-29 04:50:39 +00:00
Poul-Henning Kamp
f9c10dfd1a Next Iteration, getting better.
Made an All_FreeBSD() function.
Added a cmd-line interface (lowest rank) to the tst01 program.
The tst01 program is harmless (worst it can do is coredump), but it
is instructive to run, you can see what the slice-code things of your
disk...
1995-04-29 04:00:57 +00:00
Poul-Henning Kamp
27bff5727d Sanitize and explain a little bit... Implement the first rules... 1995-04-29 01:55:25 +00:00
Poul-Henning Kamp
aded89c1b1 This is a revision 0.00 of the backend stuff for the fdisk/disklabel stuff
in the new sysinstall.  If you want to give a helping hand, then send email
to phk@FreeBSD.ORG.  DO NOT COMMIT TO THIS DIRECTORY!
1995-04-28 23:57:04 +00:00