+get_gpt_name () {
+ local dev="${1}"
+ /sbin/blkid -s PART_ENTRY_NAME -p -o value ${dev} 2>/dev/null
+}
+
+is_gpt_device () {
+ local dev="${1}"
+ [ "$(/sbin/blkid -s PART_ENTRY_SCHEME -p -o value ${dev} 2>/dev/null)" = "gpt" ]
+}
+
+probe_for_gpt_name ()
+{
+ local overlays="${1}"
+ local snapshots="${2}"
+ local dev="${3}"
+
+ if ! is_gpt_device ${dev} || \
+ ( echo ${PERSISTENT_ENCRYPTION} | grep -qve "\<luks\>" && \
+ /sbin/cryptsetup isLuks ${dev} > /dev/null 2>&1 )
+ then
+ return
+ fi
+ for label in ${overlays} ${snapshots}
+ do
+ if [ "$(get_gpt_name ${dev})" = "${label}" ]
+ then
+ echo "${label}=${dev}"
+ fi
+ done
+}
+