File os-prober-mountedtests-ufs2fix.patch of Package os-prober

--- os-prober-1.56/os-probes/common/50mounted-tests.orig	2012-10-23 10:24:16.000000000 -0700
+++ os-prober-1.56/os-probes/common/50mounted-tests	2012-10-23 11:00:03.000000000 -0700
@@ -19,6 +19,10 @@
 	if type ntfs-3g >/dev/null 2>&1; then
 		types='ntfs-3g ntfs'
 	fi
+elif [ "$types" = ufs ]; then
+	if (file -s $partition | grep -q 'v2') ; then
+		ufstype='ufs2'
+	fi
 elif [ -z "$types" ]; then
 	if type cryptsetup >/dev/null 2>&1 && \
 	   cryptsetup luksDump "$partition" >/dev/null 2>&1; then
@@ -47,23 +51,33 @@
 
 mounted=
 if type grub-mount >/dev/null 2>&1 && \
-   type grub-probe >/dev/null 2>&1 && \
+   type grub2-probe >/dev/null 2>&1 && \
    grub-mount "$partition" "$tmpmnt" 2>/dev/null; then
 	mounted=1
-	type="$(grub-probe -d "$partition" -t fs)"
+	type="$(grub2-probe -d "$partition" -t fs)"
 	if [ "$type" ]; then
 		debug "mounted using GRUB $type filesystem driver"
+		[ "$OSPDEBUG" ] && echo "mounted using GRUB $type filesystem driver"
 	else
 		debug "mounted using GRUB, but unknown filesystem?"
+		[ "$OSPDEBUG" ] && echo "mounted using GRUB, but unknown filesystem?"
 		type=fuseblk
 	fi
 else
 	ro_partition "$partition"
 	for type in $types $delaytypes; do
-		if mount -o ro -t "$type" "$partition" "$tmpmnt" 2>/dev/null; then
-			debug "mounted as $type filesystem"
-			mounted=1
-			break
+		if [ "$type" = ufs ]; then
+			for ufstype in ufs2 44bsd; do
+				if mount -o ro,ufstype=$ufstype -t "$type" "$partition" "$tmpmnt" 2>/dev/null; then
+					debug "mounted as $(echo $ufstype | sed 's|44bsd|ufs1|') filesystem"
+					mounted=1
+				fi
+			done
+		else
+			if mount -o ro -t "$type" "$partition" "$tmpmnt" 2>/dev/null; then
+				debug "mounted as $type filesystem"
+				mounted=1
+			fi
 		fi
 	done
 fi
openSUSE Build Service is sponsored by