mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2024-12-29 12:29:35 +03:00
c1d9abf905
Authored by: John Wren Kennedy <john.kennedy@delphix.com> Reviewed by: Dan Kimmel <dan.kimmel@delphix.com> Reviewed by: Matthew Ahrens <mahrens@delphix.com> Reviewed by: Dan McDonald <danmcd@omniti.com> Approved by: Gordon Ross <gordon.w.ross@gmail.com> Ported-by: Brian Behlendorf <behlendorf1@llnl.gov> Ported-by: George Melikov <mail@gmelikov.ru> Porting Notes: - Utilities which aren't available under Linux have been removed. - Because of sudo's default secure path behavior PATH must be explicitly reset at the top of libtest.shlib. This avoids the need for all users to customize secure path on their system. - Updated ZoL infrastructure to manage constrained path - Updated all test cases - Check permissions for usergroup tests - When testing in-tree create links under bin/ - Update fault cleanup such that missing files during cleanup aren't fatal. - Configure su environment with constrained path OpenZFS-issue: https://www.illumos.org/issues/7290 OpenZFS-commit: https://github.com/openzfs/openzfs/commit/1d32ba6 Closes #5903
65 lines
1.6 KiB
Plaintext
65 lines
1.6 KiB
Plaintext
#
|
|
# This file and its contents are supplied under the terms of the
|
|
# Common Development and Distribution License ("CDDL"), version 1.0.
|
|
# You may only use this file in accordance with the terms of version
|
|
# 1.0 of the CDDL.
|
|
#
|
|
# A full copy of the text of the CDDL should have accompanied this
|
|
# source. A copy of the CDDL is also available via the Internet at
|
|
# http://www.illumos.org/license/CDDL.
|
|
#
|
|
|
|
#
|
|
# Copyright (c) 2012, 2016 by Delphix. All rights reserved.
|
|
#
|
|
|
|
typeset -a compress_props=('on' 'off' 'lzjb' 'gzip' 'gzip-1' 'gzip-2' 'gzip-3'
|
|
'gzip-4' 'gzip-5' 'gzip-6' 'gzip-7' 'gzip-8' 'gzip-9' 'zle')
|
|
|
|
typeset -a checksum_props=('on' 'off' 'fletcher2' 'fletcher4' 'sha256' 'sha512'
|
|
'edonr' 'skein' 'noparity')
|
|
|
|
#
|
|
# Given the property array passed in, return 'num_props' elements to the
|
|
# user, excluding any elements below 'start.' This allows us to exclude
|
|
# 'off' and 'on' which can be either unwanted, or a duplicate of another
|
|
# property respectively.
|
|
#
|
|
function get_rand_prop
|
|
{
|
|
typeset prop_array=($(eval echo \${$1[@]}))
|
|
typeset -i num_props=$2
|
|
typeset -i start=$3
|
|
typeset retstr=""
|
|
|
|
[[ -z $prop_array || -z $num_props || -z $start ]] && \
|
|
log_fail "get_rand_prop: bad arguments"
|
|
|
|
typeset prop_max=$((${#prop_array[@]} - 1))
|
|
typeset -i i
|
|
for i in $(shuf -i $start-$prop_max -n $num_props); do
|
|
retstr="${prop_array[$i]} $retstr"
|
|
done
|
|
echo $retstr
|
|
}
|
|
|
|
function get_rand_compress
|
|
{
|
|
get_rand_prop compress_props $1 2
|
|
}
|
|
|
|
function get_rand_compress_any
|
|
{
|
|
get_rand_prop compress_props $1 0
|
|
}
|
|
|
|
function get_rand_checksum
|
|
{
|
|
get_rand_prop checksum_props $1 2
|
|
}
|
|
|
|
function get_rand_checksum_any
|
|
{
|
|
get_rand_prop checksum_props $1 0
|
|
}
|