Deleted Added
full compact
geom_eli.c (162356) geom_eli.c (162868)
1/*-
2 * Copyright (c) 2004-2006 Pawel Jakub Dawidek <pjd@FreeBSD.org>
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 11 unchanged lines hidden (view full) ---

20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 */
26
27#include <sys/cdefs.h>
1/*-
2 * Copyright (c) 2004-2006 Pawel Jakub Dawidek <pjd@FreeBSD.org>
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 11 unchanged lines hidden (view full) ---

20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 */
26
27#include <sys/cdefs.h>
28__FBSDID("$FreeBSD: head/sbin/geom/class/eli/geom_eli.c 162356 2006-09-16 10:47:30Z pjd $");
28__FBSDID("$FreeBSD: head/sbin/geom/class/eli/geom_eli.c 162868 2006-09-30 14:40:50Z pjd $");
29
30#include <stdio.h>
31#include <stdint.h>
32#include <stdlib.h>
33#include <unistd.h>
34#include <fcntl.h>
35#include <readpassphrase.h>
36#include <string.h>

--- 54 unchanged lines hidden (view full) ---

91 * restore [-v] file prov
92 * clear [-v] prov ...
93 * dump [-v] prov ...
94 */
95struct g_command class_commands[] = {
96 { "init", G_FLAG_VERBOSE, eli_main,
97 {
98 { 'a', "aalgo", aalgo, G_TYPE_STRING },
29
30#include <stdio.h>
31#include <stdint.h>
32#include <stdlib.h>
33#include <unistd.h>
34#include <fcntl.h>
35#include <readpassphrase.h>
36#include <string.h>

--- 54 unchanged lines hidden (view full) ---

91 * restore [-v] file prov
92 * clear [-v] prov ...
93 * dump [-v] prov ...
94 */
95struct g_command class_commands[] = {
96 { "init", G_FLAG_VERBOSE, eli_main,
97 {
98 { 'a', "aalgo", aalgo, G_TYPE_STRING },
99 { 'b', "boot", NULL, G_TYPE_NONE },
99 { 'b', "boot", NULL, G_TYPE_BOOL },
100 { 'e', "ealgo", ealgo, G_TYPE_STRING },
101 { 'i', "iterations", &iterations, G_TYPE_NUMBER },
102 { 'K', "newkeyfile", newkeyfile, G_TYPE_STRING },
103 { 'l', "keylen", &keylen, G_TYPE_NUMBER },
100 { 'e', "ealgo", ealgo, G_TYPE_STRING },
101 { 'i', "iterations", &iterations, G_TYPE_NUMBER },
102 { 'K', "newkeyfile", newkeyfile, G_TYPE_STRING },
103 { 'l', "keylen", &keylen, G_TYPE_NUMBER },
104 { 'P', "nonewpassphrase", NULL, G_TYPE_NONE },
104 { 'P', "nonewpassphrase", NULL, G_TYPE_BOOL },
105 { 's', "sectorsize", &sectorsize, G_TYPE_NUMBER },
106 G_OPT_SENTINEL
107 },
108 "[-bPv] [-a aalgo] [-e ealgo] [-i iterations] [-l keylen] [-K newkeyfile] [-s sectorsize] prov"
109 },
110 { "label", G_FLAG_VERBOSE, eli_main,
111 {
112 { 'a', "aalgo", aalgo, G_TYPE_STRING },
105 { 's', "sectorsize", &sectorsize, G_TYPE_NUMBER },
106 G_OPT_SENTINEL
107 },
108 "[-bPv] [-a aalgo] [-e ealgo] [-i iterations] [-l keylen] [-K newkeyfile] [-s sectorsize] prov"
109 },
110 { "label", G_FLAG_VERBOSE, eli_main,
111 {
112 { 'a', "aalgo", aalgo, G_TYPE_STRING },
113 { 'b', "boot", NULL, G_TYPE_NONE },
113 { 'b', "boot", NULL, G_TYPE_BOOL },
114 { 'e', "ealgo", ealgo, G_TYPE_STRING },
115 { 'i', "iterations", &iterations, G_TYPE_NUMBER },
116 { 'K', "newkeyfile", newkeyfile, G_TYPE_STRING },
117 { 'l', "keylen", &keylen, G_TYPE_NUMBER },
114 { 'e', "ealgo", ealgo, G_TYPE_STRING },
115 { 'i', "iterations", &iterations, G_TYPE_NUMBER },
116 { 'K', "newkeyfile", newkeyfile, G_TYPE_STRING },
117 { 'l', "keylen", &keylen, G_TYPE_NUMBER },
118 { 'P', "nonewpassphrase", NULL, G_TYPE_NONE },
118 { 'P', "nonewpassphrase", NULL, G_TYPE_BOOL },
119 { 's', "sectorsize", &sectorsize, G_TYPE_NUMBER },
120 G_OPT_SENTINEL
121 },
122 "- an alias for 'init'"
123 },
124 { "attach", G_FLAG_VERBOSE | G_FLAG_LOADKLD, eli_main,
125 {
119 { 's', "sectorsize", &sectorsize, G_TYPE_NUMBER },
120 G_OPT_SENTINEL
121 },
122 "- an alias for 'init'"
123 },
124 { "attach", G_FLAG_VERBOSE | G_FLAG_LOADKLD, eli_main,
125 {
126 { 'd', "detach", NULL, G_TYPE_NONE },
126 { 'd', "detach", NULL, G_TYPE_BOOL },
127 { 'k', "keyfile", keyfile, G_TYPE_STRING },
127 { 'k', "keyfile", keyfile, G_TYPE_STRING },
128 { 'p', "nopassphrase", NULL, G_TYPE_NONE },
129 { 'r', "readonly", NULL, G_TYPE_NONE },
128 { 'p', "nopassphrase", NULL, G_TYPE_BOOL },
129 { 'r', "readonly", NULL, G_TYPE_BOOL },
130 G_OPT_SENTINEL
131 },
132 "[-dprv] [-k keyfile] prov"
133 },
134 { "detach", 0, NULL,
135 {
130 G_OPT_SENTINEL
131 },
132 "[-dprv] [-k keyfile] prov"
133 },
134 { "detach", 0, NULL,
135 {
136 { 'f', "force", NULL, G_TYPE_NONE },
137 { 'l', "last", NULL, G_TYPE_NONE },
136 { 'f', "force", NULL, G_TYPE_BOOL },
137 { 'l', "last", NULL, G_TYPE_BOOL },
138 G_OPT_SENTINEL
139 },
140 "[-fl] prov ..."
141 },
142 { "stop", 0, NULL,
143 {
138 G_OPT_SENTINEL
139 },
140 "[-fl] prov ..."
141 },
142 { "stop", 0, NULL,
143 {
144 { 'f', "force", NULL, G_TYPE_NONE },
145 { 'l', "last", NULL, G_TYPE_NONE },
144 { 'f', "force", NULL, G_TYPE_BOOL },
145 { 'l', "last", NULL, G_TYPE_BOOL },
146 G_OPT_SENTINEL
147 },
148 "- an alias for 'detach'"
149 },
150 { "onetime", G_FLAG_VERBOSE | G_FLAG_LOADKLD, NULL,
151 {
152 { 'a', "aalgo", aalgo, G_TYPE_STRING },
146 G_OPT_SENTINEL
147 },
148 "- an alias for 'detach'"
149 },
150 { "onetime", G_FLAG_VERBOSE | G_FLAG_LOADKLD, NULL,
151 {
152 { 'a', "aalgo", aalgo, G_TYPE_STRING },
153 { 'd', "detach", NULL, G_TYPE_NONE },
153 { 'd', "detach", NULL, G_TYPE_BOOL },
154 { 'e', "ealgo", ealgo, G_TYPE_STRING },
155 { 'l', "keylen", &keylen, G_TYPE_NUMBER },
156 { 's', "sectorsize", &sectorsize, G_TYPE_NUMBER },
157 G_OPT_SENTINEL
158 },
159 "[-d] [-a aalgo] [-e ealgo] [-l keylen] [-s sectorsize] prov ..."
160 },
161 { "configure", G_FLAG_VERBOSE, eli_main,
162 {
154 { 'e', "ealgo", ealgo, G_TYPE_STRING },
155 { 'l', "keylen", &keylen, G_TYPE_NUMBER },
156 { 's', "sectorsize", &sectorsize, G_TYPE_NUMBER },
157 G_OPT_SENTINEL
158 },
159 "[-d] [-a aalgo] [-e ealgo] [-l keylen] [-s sectorsize] prov ..."
160 },
161 { "configure", G_FLAG_VERBOSE, eli_main,
162 {
163 { 'b', "boot", NULL, G_TYPE_NONE },
164 { 'B', "noboot", NULL, G_TYPE_NONE },
163 { 'b', "boot", NULL, G_TYPE_BOOL },
164 { 'B', "noboot", NULL, G_TYPE_BOOL },
165 G_OPT_SENTINEL
166 },
167 "[-bB] prov ..."
168 },
169 { "setkey", G_FLAG_VERBOSE, eli_main,
170 {
171 { 'i', "iterations", &iterations, G_TYPE_NUMBER },
172 { 'k', "keyfile", keyfile, G_TYPE_STRING },
173 { 'K', "newkeyfile", newkeyfile, G_TYPE_STRING },
174 { 'n', "keyno", &keyno, G_TYPE_NUMBER },
165 G_OPT_SENTINEL
166 },
167 "[-bB] prov ..."
168 },
169 { "setkey", G_FLAG_VERBOSE, eli_main,
170 {
171 { 'i', "iterations", &iterations, G_TYPE_NUMBER },
172 { 'k', "keyfile", keyfile, G_TYPE_STRING },
173 { 'K', "newkeyfile", newkeyfile, G_TYPE_STRING },
174 { 'n', "keyno", &keyno, G_TYPE_NUMBER },
175 { 'p', "nopassphrase", NULL, G_TYPE_NONE },
176 { 'P', "nonewpassphrase", NULL, G_TYPE_NONE },
175 { 'p', "nopassphrase", NULL, G_TYPE_BOOL },
176 { 'P', "nonewpassphrase", NULL, G_TYPE_BOOL },
177 G_OPT_SENTINEL
178 },
179 "[-pPv] [-n keyno] [-i iterations] [-k keyfile] [-K newkeyfile] prov"
180 },
181 { "delkey", G_FLAG_VERBOSE, eli_main,
182 {
177 G_OPT_SENTINEL
178 },
179 "[-pPv] [-n keyno] [-i iterations] [-k keyfile] [-K newkeyfile] prov"
180 },
181 { "delkey", G_FLAG_VERBOSE, eli_main,
182 {
183 { 'a', "all", NULL, G_TYPE_NONE },
184 { 'f', "force", NULL, G_TYPE_NONE },
183 { 'a', "all", NULL, G_TYPE_BOOL },
184 { 'f', "force", NULL, G_TYPE_BOOL },
185 { 'n', "keyno", &keyno, G_TYPE_NUMBER },
186 G_OPT_SENTINEL
187 },
188 "[-afv] [-n keyno] prov"
189 },
190 { "kill", G_FLAG_VERBOSE, eli_main,
191 {
185 { 'n', "keyno", &keyno, G_TYPE_NUMBER },
186 G_OPT_SENTINEL
187 },
188 "[-afv] [-n keyno] prov"
189 },
190 { "kill", G_FLAG_VERBOSE, eli_main,
191 {
192 { 'a', "all", NULL, G_TYPE_NONE },
192 { 'a', "all", NULL, G_TYPE_BOOL },
193 G_OPT_SENTINEL
194 },
195 "[-av] [prov ...]"
196 },
197 { "backup", G_FLAG_VERBOSE, eli_main, G_NULL_OPTS,
198 "[-v] prov file"
199 },
200 { "restore", G_FLAG_VERBOSE, eli_main, G_NULL_OPTS,

--- 1030 unchanged lines hidden ---
193 G_OPT_SENTINEL
194 },
195 "[-av] [prov ...]"
196 },
197 { "backup", G_FLAG_VERBOSE, eli_main, G_NULL_OPTS,
198 "[-v] prov file"
199 },
200 { "restore", G_FLAG_VERBOSE, eli_main, G_NULL_OPTS,

--- 1030 unchanged lines hidden ---