CasperSecurity

Current Path : /lib/udev/
Upload File :
Current File : //lib/udev/kpartx_id

#!/bin/sh
#
# kpartx_id
#
# Generates ID information for device-mapper tables.
#
# Copyright (C) 2006 SUSE Linux Products GmbH
# Author:
#       Hannes Reinecke <hare@suse.de>
#
#
#       This program is free software; you can redistribute it and/or modify it
#       under the terms of the GNU General Public License as published by the
#       Free Software Foundation version 2 of the License.
#
# This script generates ID information used to generate persistent symlinks.
# It relies on the UUID strings generated by the various programs; the name
# of the tables are of no consequence.
#
# Please note that dmraid does not provide the UUIDs (yet); a patch has been
# sent upstream but has not been accepted yet.
#

DMSETUP=/sbin/dmsetup

MAJOR=$1
MINOR=$2
UUID=$3

if [ -z "$MAJOR" -o -z "$MINOR" ]; then
    echo "usage: $0 major minor"
    exit 1;
fi

# Device-mapper not installed; not an error
if [ ! -x $DMSETUP ] ; then
    exit 0
fi


# Table UUIDs are always '<type>-<uuid>'.
dmuuid=${UUID#*-}
dmtbl=${UUID%%-*}
dmpart=${dmtbl#part}
dmserial=
# kpartx types are 'part<num>'
if [ "$dmpart" = "$dmtbl" ] ; then
    dmpart=
else
    dmtbl=part
fi

# Set the name of the table. We're only interested in dmraid,
# multipath, and kpartx tables; everything else is ignored.
if [ "$dmtbl" = "part" ] ; then
    dmname=$($DMSETUP info  -c --noheadings -o name -u $dmuuid)
    echo "DM_MPATH=$dmname"
    # We need the dependencies of the parent table to figure out
    # the type if the parent is a multipath table
    case "$dmuuid" in
	mpath-*)
	    dmdeps=$($DMSETUP deps -u $dmuuid)
	    dmserial=${dmuuid#mpath-}
	    ;;
    esac
elif [ "$dmtbl" = "mpath" ] ; then
    dmname="$dmuuid"
    dmserial="$dmuuid"
    # We need the dependencies of the table to figure out the type
    dmdeps=$($DMSETUP deps -u $UUID)
fi

[ -n "$dmpart" ] && echo "DM_PART=$dmpart"

# Figure out the type of the map. For non-multipath maps it's
# always 'raid'.
if [ -n "$dmdeps" ] ; then
    case "$dmdeps" in
	*\(94,*)
	    echo "DM_TYPE=ccw"
	    ;;
	*\(104,* | *\(105,* | *\(106,* | *\(107,* | *\(108,* | *\(109,* | *\(110,* | *\(112,*)
	    echo "DM_TYPE=cciss"
	    ;;
	*\(9*)
	    echo "DM_TYPE=raid"
	    ;;
	*)
	    echo "DM_TYPE=scsi"
	    echo "DM_WWN=0x${dmserial#?}"
	    ;;
    esac
else
    echo "DM_TYPE=raid"
fi
if [ -n "$dmserial" ]; then
    echo "DM_SERIAL=$dmserial"
fi

exit 0
Hacker Blog, Shell İndir, Sql İnjection, XSS Attacks, LFI Attacks, Social Hacking, Exploit Bot, Proxy Tools, Web Shell, PHP Shell, Alfa Shell İndir, Hacking Training Set, DDoS Script, Denial Of Service, Botnet, RFI Attacks, Encryption
Telegram @BIBIL_0DAY