]> git.ipfire.org Git - ipfire-2.x.git/blobdiff - src/scripts/scanhd
suricata: Change midstream policy to "pass-flow"
[ipfire-2.x.git] / src / scripts / scanhd
index 9ae6e932d9ff355a58522d4571a86e116bbeb7a3..3623829a53a9c8b15724bd3f77a60f323868d297 100644 (file)
@@ -1,14 +1,40 @@
 #!/bin/bash
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2007-2022  IPFire Team  <info@ipfire.org>                     #
+#                                                                             #
+# 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, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
 
 case "$1" in
        ide)
-               /sbin/kudzu -qps -c HD | egrep "desc|device:" | awk -F': ' '{print $2}' | sed -e '/"$/a\\' -e "s/$/\;/g" | tr "\n" "XX" | sed -e "s/XX/\n/g" -e "s/\;X/\;/g" > /var/ipfire/extrahd/scan
+               rm -f /var/ipfire/extrahd/scan
+               for DEV in `find /sys/block/* -maxdepth 0 ! -name sr* ! -name ram* ! -name loop* -exec basename {} \; | sort | uniq`
+               do
+                       VENDOR=`cat /sys/block/$DEV/device/vendor 2>/dev/null`
+                       MODEL=`cat /sys/block/$DEV/device/model 2>/dev/null`
+                       REV=`cat /sys/block/$DEV/device/rev 2>/dev/null`
+                       echo "$DEV;$VENDOR $MODEL $REV" >> /var/ipfire/extrahd/scan
+               done
                ;;
        partitions)
-               cat /proc/partitions | awk '{print $4 " " $3 }' | grep -v name | grep -v "^[:space:]*$" | \
+               cat /proc/partitions | awk '{print $4 " " $3 }' | grep -v name | grep -v "^[[:space:]]*$" | \
                        while read device size; do
                                [ -z "${device}" ] && continue
-                               echo "${device};${size};$(blkid -s UUID -o value /dev/${device});"
+                               echo "${device};${size};$(blkid -c /dev/null -s UUID -o value /dev/${device});"
                        done > /var/ipfire/extrahd/partitions
                ;;
        *)