127 Commits

Author SHA1 Message Date
Pawel Jakub Dawidek
5b5a030fa4 When keys were configured without passphrase, number of iterations in
metadata is equal to -1. if we then wanted to attach provider (or change
keys) and forget about '-p' flag it failed on assertion (quite ok, without
assertion it could call PKCS#5v2 with 4294967295 iterations).

Instead of failing on assertion, remind about '-p' flag.

MFC after:	3 days
2005-08-14 14:13:07 +00:00
Pawel Jakub Dawidek
325319eb3d GELI doesn't need cryptodev.
MFC after:	2 days
2005-08-12 07:44:42 +00:00
Pawel Jakub Dawidek
9417a618d1 Add code for Ext2FS and ReiserFS labels recognition.
Submitted by:	Stanislav Sedov <stas@310.ru>
PR:		kern/84638
MFC after:	1 week
2005-08-12 00:27:45 +00:00
Ruslan Ermilov
a5de1230a9 Add missing check for the NO_CRYPT build option.
Reported by:	Alexander Polakov
2005-08-02 20:12:30 +00:00
Christian Brueffer
acc79971c2 Misc cleanup (spelling, grammar, mdoc, style, cut >80 char lines). 2005-07-30 13:27:15 +00:00
Pawel Jakub Dawidek
fd833a6a19 I actually do need libmd. 2005-07-29 10:06:57 +00:00
Pawel Jakub Dawidek
a05fe8d0e5 I think I found the problem, reconnect geli to the build. 2005-07-27 23:56:32 +00:00
Pawel Jakub Dawidek
0ee6653d31 - Reduce WARNS level to 3, so it will be compilabe on alpha.
- Don't link libmd, it is not needed.
- Connect manual page to the build.

MFC after:	1 week
2005-07-27 23:56:01 +00:00
Pawel Jakub Dawidek
f90af958e4 Disconnect geli from the build for now.
I need to find out first what is the cause of sha2.c compilation problem
on alpha.
2005-07-27 23:30:50 +00:00
Pawel Jakub Dawidek
5ca1fcfe06 Connect GEOM_ELI class to the build.
MFC after:	1 week
2005-07-27 21:47:55 +00:00
Pawel Jakub Dawidek
c58794debd Add GEOM_ELI class which provides GEOM providers encryption.
For features list and usage see manual page: geli(8).

Sponsored by:	Wheel Sp. z o.o.
		http://www.wheel.pl
MFC after:	1 week
2005-07-27 21:43:37 +00:00
Pawel Jakub Dawidek
436b93a0dd Don't forget to initialize 'id' field.
MFC after:	3 days
2005-07-13 07:46:55 +00:00
Pawel Jakub Dawidek
760fde0677 Remove trailing spaces. 2005-04-29 07:57:50 +00:00
Pawel Jakub Dawidek
0080ee9897 Fix stripe size in example.
Found by:	kris
MFC after:	3 days
2005-04-26 09:23:21 +00:00
Pawel Jakub Dawidek
8bdc733007 Remove duplicated description of 'clear' subcommand.
Pointed out by:	marck
X-MFC-after:	few seconds
2005-04-23 12:17:21 +00:00
Pawel Jakub Dawidek
d37ed29c98 Document 'clear' and 'dump' subcommands.
MFC after:	1 week
2005-04-15 23:51:20 +00:00
Pawel Jakub Dawidek
220bc2ffc1 Allow classes to specify local source files.
MFC after:	3 weeks
2005-04-07 15:57:38 +00:00
Pawel Jakub Dawidek
53767efdce Empty error buffer is not an error.
MFC after:	3 weeks
2005-04-07 06:46:11 +00:00
Pawel Jakub Dawidek
1bcfab7f56 Fix use of uninitialized buf[0].
Reported by:	stefanf
MFC after:	3 days
2005-03-22 22:05:44 +00:00
Pawel Jakub Dawidek
ee602fbb50 Be sure that class name storaed in 'class_name' is lower case.
MFC after:	1 week
2005-03-14 15:00:51 +00:00
Pawel Jakub Dawidek
e10c321f69 Define subcommands' usage inside g_command structure.
MFC after:	1 week
2005-03-14 14:25:47 +00:00
Pawel Jakub Dawidek
c979e2069c - Add gc_usage field to g_command structure. This will allow to define
usage for a subcommand, so no 'usage' function has to be implemented
  in class library.
- Bump version number as it breaks ABI, but don't provide backward
  compatibility, because there are probably no external consumers of this
  geom(8).
This allows to print more precise usage for standard commands and simplify
class libraries a bit.

MFC after:	1 week
2005-03-14 14:24:46 +00:00
Pawel Jakub Dawidek
650a08d046 Instead of documenting every standard subcommand's argument everywhere,
just leave reference to geom(8).

MFC after:	1 week
2005-03-14 13:14:04 +00:00
Pawel Jakub Dawidek
adc8d20d9c Document subcommands' arguments.
MFC after:	1 week
2005-03-14 13:06:09 +00:00
Pawel Jakub Dawidek
ccc0c8978c Document '-s' option of 'status' subcommand.
MFC after:	1 week
2005-03-14 12:37:55 +00:00
Pawel Jakub Dawidek
ba6821f0d0 Add '-s' option to 'status' subcommand. It produces script-friendly output:
# gmirror status
       Name    Status  Components
mirror/root  COMPLETE  ad0s1a
                       ad2s1a
mirror/data  DEGRADED  da0
                       da1 (76%)
                       da2
# gmirror status -s
       Name    Status  Components
mirror/root  COMPLETE  ad0s1a
mirror/root  COMPLETE  ad2s1a
mirror/data  DEGRADED  da0
mirror/data  DEGRADED  da1 (76%)
mirror/data  DEGRADED  da2

MFC after:	1 week
2005-03-14 12:33:19 +00:00
Pawel Jakub Dawidek
da80913d35 Use int instead of size_t (%*s needs int).
MFC after:	1 week
2005-03-14 08:34:02 +00:00
Xin LI
257eeb8e0b printf(3) expects that %*s having an int parameter, which generates
warning on 64-bit platforms.  Explicitly cast these values to int
to work around this issue, as these values are tend to be small.

Spotted by:	ia64 tinderbox
2005-03-14 04:33:13 +00:00
Pawel Jakub Dawidek
85e9dc7d1b - Document 'status' subcommand.
- Update copyrights.

MFC after:	1 week
2005-03-13 19:38:12 +00:00
Pawel Jakub Dawidek
18ee884076 Add 'status' command which prints general information about devices.
For example:

# gmirror status
       Name    Status  Components
mirror/root  COMPLETE  ad0s1a
                       ad2s1a
mirror/data  DEGRADED  da0
                       da1 (76%)
                       da2

MFC after:	1 week
2005-03-13 19:34:27 +00:00
Pawel Jakub Dawidek
c88a220206 Update copyrights. 2005-03-13 19:11:57 +00:00
Pawel Jakub Dawidek
2d76e2db38 Change function names related to 'list' command from 'show_one_*' to
'list_one_*'.

MFC after:	1 week
2005-03-13 19:10:13 +00:00
Pawel Jakub Dawidek
5fd66a44d8 When listing all devices (geoms) from the given class, skip geoms without
providers.
This prevents from listing geoms like <name>.sync which can be confusing.
It still allows to show details about it by giving its name when listing.

MFC after:	1 week
2005-03-13 16:45:41 +00:00
Christian Brueffer
7b3512daac Typos and grammar fixes, wordsmithing 2005-02-28 01:33:10 +00:00
Pawel Jakub Dawidek
e68909854c - Add md_provsize field to metadata, which will help with
shared-last-sector problem.
  After this change, even if there is more than one provider with the same
  last sector, the proper one will be chosen based on its size.
  It still doesn't fix the 'c' partition problem (when da0s1 can be confused
  with da0s1c) and situation when 'a' partition starts at offset 0
  (then da0s1a can be confused with da0s1 and da0s1c). One can use '-h'
  option there, when creating device or avoid sharing last sector.
  Actually, when providers share the same last sector and their size is equal,
  they provide exactly the same data, so the name (da0s1, da0s1a, da0s1c)
  isn't important at all.
- Provide backward compatibility.
- Update copyright's year.

MFC after:	1 week
2005-02-27 23:07:47 +00:00
Pawel Jakub Dawidek
3bad06e9ba - Add GEOM_LIBRARY_PATH environment variable which allows to specify an
alternative to /lib/geom/ path where shared libraries are stored.
- Improve debugging.

MFC after:	3 days
2005-02-27 21:14:58 +00:00
Pawel Jakub Dawidek
f71186982c Add SHSEC class to the list of geom(8)-aware classes.
MFC after:	3 days
2005-02-27 17:56:59 +00:00
Pawel Jakub Dawidek
4a06539f21 Add a missing comma. 2005-02-25 17:22:23 +00:00
Tom Rhodes
087f49016f Fix a couple of grammar nits.
PR:		77437
Submitted by:	Paul A. Hoadley <paulh@logicsquad.net> (original version)
2005-02-24 01:00:09 +00:00
Pawel Jakub Dawidek
fa30f3b293 Fix year in copyrights. 2005-02-16 22:19:13 +00:00
Ruslan Ermilov
6087df9e8b Sort sections. 2005-01-18 10:09:38 +00:00
Ruslan Ermilov
a866e17077 Added the EXIT STATUS section where appropriate. 2005-01-17 07:44:44 +00:00
Pawel Jakub Dawidek
a064f065ee Fix arguments syntax.
Manual pages fixes by:	ru
MFC after:		3 days
2005-01-15 13:02:50 +00:00
Ruslan Ermilov
e6ee149692 Markup fixes. 2005-01-15 10:05:02 +00:00
Pawel Jakub Dawidek
560cb85703 Connect SHSEC GEOM class to the build. 2005-01-11 18:18:40 +00:00
Pawel Jakub Dawidek
080361d6b8 Introduce a new GEOM class - SHSEC. It provides sharing secret between
the given providers. Without even one of the configured components there
should be no way to get the secret.

Supported by:	WHEEL Sp. z o.o.
		http://www.wheel.pl
2005-01-11 18:06:44 +00:00
Ruslan Ermilov
214144704b Scheduled mdoc(7) sweep. 2005-01-10 16:17:34 +00:00
Pawel Jakub Dawidek
687b001501 Detect if class name is '-h' or 'help' and if it is, show general help
message, i.e.:
	geom: usage: geom <class> <command> [options]

PR:		bin/71537
Submitted by:	bugghy <bugghy@phenix.rootshell.be>
MFC after:	5 days
2004-12-28 17:07:18 +00:00
Pawel Jakub Dawidek
a245a5483c - Add genid field to the metadata which will allow to improve reliability a bit.
After this change, when component is disconnected because of an I/O error,
  it will not be connected and synchronized automatically, it will be logged
  as broken and skipped. Autosynchronization can occur, when component is
  disconnected (on orphan event) and connected again - there were no I/O
  error, so there is no need to not connected the component, but when there were
  writes while it wasn't connected, it will be synchronized.
  This fix cases, when component is disconnected because of I/O error and can be
  connected again and again.
- Bump version number.
- Implement backward compatibility mechanism. After this change when metadata in
  old version is detected, it is automatically upgraded to the new (current)
  version.
2004-12-25 19:17:47 +00:00
Pawel Jakub Dawidek
9a9f504132 - Add genid field to the metadata which will allow to improve reliability a bit.
After this change, when component is disconnected because of an I/O error,
  it will not be connected and synchronized automatically, it will be logged
  as broken and skipped. Autosynchronization can occur, when component is
  disconnected (on orphan event) and connected again - there were no I/O
  error, so there is no need to not connected the component, but when there were
  writes while it wasn't connected, it will be synchronized.
  This fix cases, when component is disconnected because of I/O error and can be
  connected again and again.
- Bump version number.
- Add version change history.
- Implement backward compatibility mechanism. After this change when metadata in
  old version is detected, it is automatically upgraded to the new (current)
  version.
2004-12-22 23:09:32 +00:00