diff options
| author | erdgeist <erdgeist@erdgeist.org> | 2007-10-08 05:02:50 +0000 |
|---|---|---|
| committer | erdgeist <erdgeist@erdgeist.org> | 2007-10-08 05:02:50 +0000 |
| commit | 96478770ebe048cec19a378e3d84b1ebb5538489 (patch) | |
| tree | dd404fec68ece76ddc2acd1a4f83741aee1a18c7 /ezjail-admin | |
| parent | 845561e20dcb7a65e3d6025287e5d942d89247f2 (diff) | |
Get rid off rather ugly ezjail_imageparams HACK
Diffstat (limited to 'ezjail-admin')
| -rwxr-xr-x | ezjail-admin | 83 |
1 files changed, 40 insertions, 43 deletions
diff --git a/ezjail-admin b/ezjail-admin index d55bd9e..e2bced3 100755 --- a/ezjail-admin +++ b/ezjail-admin | |||
| @@ -244,6 +244,45 @@ ezjail_queryftpserver () { | |||
| 244 | return ${_ret} | 244 | return ${_ret} |
| 245 | } | 245 | } |
| 246 | 246 | ||
| 247 | parse_geli_attach_args () { | ||
| 248 | # create geli(8) attach arguments from geli(8) init arguments: | ||
| 249 | # -P becomes -p if present, -K newkeyfile becomes -k newkeyfile if present, | ||
| 250 | # everything else is dicarded | ||
| 251 | # exit values: 0->NO PASSWORD SET, 1->PASSWORD SET | ||
| 252 | _exit=0 | ||
| 253 | shift | ||
| 254 | while getopts :bPva:i:K:l:s: arg; do | ||
| 255 | case ${arg} in | ||
| 256 | b|v|a|i|l|s);; # ignore these | ||
| 257 | P) echo -n "-p "; _exit=1 ;; | ||
| 258 | K) echo -n "-k '$OPTARG' ";; | ||
| 259 | ?) exerr "Error: Processing of attach params failed.";; | ||
| 260 | esac | ||
| 261 | done | ||
| 262 | return ${_exit} | ||
| 263 | } | ||
| 264 | |||
| 265 | parse_gbde_attach_args () { | ||
| 266 | # create gbde(8) attach arguments from gbde(8) init arguments: | ||
| 267 | # -L lockfile becomes -l lockfile if present | ||
| 268 | # -K keyfile becomes -k keyfile if present | ||
| 269 | # -P passphrase becomes -p passphrase if present | ||
| 270 | # everything else is discarded | ||
| 271 | # exit values: 0->NO PASSWORD SET, 1->PASSWORD SET | ||
| 272 | _exit=0 | ||
| 273 | shift | ||
| 274 | while getopts :iK:f:L:P: arg; do | ||
| 275 | case ${arg} in | ||
| 276 | i|f);; # ignore these | ||
| 277 | P) echo -n "-p '$OPTARG' "; _exit=1;; | ||
| 278 | K) echo -n "-k '$OPTARG' ";; | ||
| 279 | L) echo -n "-l '$OPTARG' ";; | ||
| 280 | ?) exerr "Error: Processing of attach params failed.";; | ||
| 281 | esac | ||
| 282 | done | ||
| 283 | return ${_exit} | ||
| 284 | } | ||
| 285 | |||
| 247 | ############################# | 286 | ############################# |
| 248 | # End of function definitions | 287 | # End of function definitions |
| 249 | # | 288 | # |
| @@ -380,9 +419,7 @@ create) | |||
| 380 | # parse imageparams, generate attachparams | 419 | # parse imageparams, generate attachparams |
| 381 | ezjail_attachblocking="YES" | 420 | ezjail_attachblocking="YES" |
| 382 | if [ "${ezjail_imageparams}" ]; then | 421 | if [ "${ezjail_imageparams}" ]; then |
| 383 | ezjail_attachparams=`echo $0 _parse_g${ezjail_imagetype}_attach_args_ ${ezjail_imageparams} | /bin/sh` | 422 | ezjail_attachparams=`eval parse_g${ezjail_imagetype}_attach_args ${ezjail_imageparams}` || unset ezjail_attachblocking |
| 384 | [ 5 -eq $? ] && exerr "processing of ezjail_imageparams failed" | ||
| 385 | [ 3 -eq $? ] && unset ezjail_attachblocking | ||
| 386 | fi | 423 | fi |
| 387 | case ${ezjail_imagetype} in | 424 | case ${ezjail_imagetype} in |
| 388 | bde) init_cmd="gbde init /dev/${ezjail_imagedevice} ${ezjail_imageparams}" | 425 | bde) init_cmd="gbde init /dev/${ezjail_imagedevice} ${ezjail_imageparams}" |
| @@ -1018,46 +1055,6 @@ config) | |||
| 1018 | ;; | 1055 | ;; |
| 1019 | esac | 1056 | esac |
| 1020 | ;; | 1057 | ;; |
| 1021 | |||
| 1022 | ############################################################################## | ||
| 1023 | # ezjail_imageparams HACK starts here | ||
| 1024 | # | ||
| 1025 | # | ||
| 1026 | _parse_geli_attach_args_) | ||
| 1027 | # create geli(8) attach arguments from geli(8) init arguments: | ||
| 1028 | # -P becomes -p if present, -K newkeyfile becomes -k newkeyfile if present, | ||
| 1029 | # everything else is dicarded | ||
| 1030 | # exit values: 2->NO_ERROR, 3->NO_ERROR,PASSWORD_SET, 5->PARSER_ERROR | ||
| 1031 | _exit=2 | ||
| 1032 | shift; while getopts :bPva:i:K:l:s: arg; do case ${arg} in | ||
| 1033 | b|v|a|i|l|s);; # ignore these | ||
| 1034 | P) echo -n "-p "; _exit=3 ;; | ||
| 1035 | K) echo -n "-k '$OPTARG' ";; | ||
| 1036 | ?) exit 5;; | ||
| 1037 | esac; done | ||
| 1038 | exit ${_exit} | ||
| 1039 | ;; | ||
| 1040 | _parse_gbde_attach_args_) | ||
| 1041 | # create gbde(8) attach arguments from gbde(8) init arguments: | ||
| 1042 | # -L lockfile becomes -l lockfile if present | ||
| 1043 | # -K keyfile becomes -k keyfile if present | ||
| 1044 | # -P passphrase becomes -p passphrase if present | ||
| 1045 | # everything else is discarded | ||
| 1046 | # exit values: 2->NO_ERROR, 3->NO_ERROR+PASSWORD_SET, 5->PARSER_ERROR | ||
| 1047 | _exit=2 | ||
| 1048 | shift; while getopts :iK:f:L:P: arg; do case ${arg} in | ||
| 1049 | i|f);; # ignore these | ||
| 1050 | P) echo -n "-p '$OPTARG' "; _exit=3;; | ||
| 1051 | K) echo -n "-k '$OPTARG' ";; | ||
| 1052 | L) echo -n "-l '$OPTARG' ";; | ||
| 1053 | ?) exit 5;; | ||
| 1054 | esac; done | ||
| 1055 | exit ${_exit} | ||
| 1056 | ;; | ||
| 1057 | # | ||
| 1058 | # ezjail_imageparams HACK ends here (thank god) | ||
| 1059 | ############################################################################## | ||
| 1060 | |||
| 1061 | *) | 1058 | *) |
| 1062 | exerr ${ezjail_usage_ezjailadmin} | 1059 | exerr ${ezjail_usage_ezjailadmin} |
| 1063 | ;; | 1060 | ;; |
