OpenPKG CVS Repository
http://cvs.openpkg.org/
____________________________________________________________________________
Server: cvs.openpkg.org Name: Ralf S. Engelschall
Root: /e/openpkg/cvs Email: [EMAIL PROTECTED]
Module: openpkg-src Date: 22-Jan-2004 22:26:43
Branch: HEAD Handle: 2004012221264300
Modified files:
openpkg-src/openpkg uuid.sh
Log:
replace hard-coded OIDs with dynamic queries, including verbose output
of all relevant commands
Summary:
Revision Changes Path
1.2 +55 -29 openpkg-src/openpkg/uuid.sh
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: openpkg-src/openpkg/uuid.sh
============================================================================
$ cvs diff -u -r1.1 -r1.2 uuid.sh
--- openpkg-src/openpkg/uuid.sh 20 Jan 2004 16:56:12 -0000 1.1
+++ openpkg-src/openpkg/uuid.sh 22 Jan 2004 21:26:43 -0000 1.2
@@ -44,19 +44,9 @@
esac
done
-# Prepare Static Information
-do_prepare () {
- # official OpenPKG OID
- OID_OPKG="1.3.6.1.4.1.18749.4.1"
-
- # special UUIDs for OpenPKG OID-based namespaces
- UUID_NS_INSTANCE=`$prog_uuid -v3 ns:OID "$OID_OPKG.1"`
- UUID_NS_PLATFORM=`$prog_uuid -v3 ns:OID "$OID_OPKG.2"`
-
- # special "Nil UUID"
- UUID_NIL="00000000-0000-0000-0000-000000000000"
-}
-
+# special "Nil UUID"
+UUID_NIL="00000000-0000-0000-0000-000000000000"
+
# Query Dynamic Information
do_query () {
# query RPM information
@@ -114,7 +104,7 @@
# load configuration (and override defaults)
if [ -r $file_uuid ]; then
if [ ".$opt_v" = .yes ]; then
- echo "$0: loading UUID configuration file ($file_uuid)"
+ echo "uuid: loading UUID configuration file ($file_uuid)"
fi
. $file_uuid
fi
@@ -128,10 +118,10 @@
if [ ".$changed" = .yes ]; then
# save configuration
if [ ".$opt_v" = .yes ]; then
- echo "$0: saving UUID configuration file ($file_uuid)"
+ echo "uuid: saving UUID configuration file ($file_uuid)"
fi
if [ -f $file_uuid ] && [ ! -w $file_uuid ]; then
- echo "$0:ERROR: cannot write to $file_uuid" 1>&2
+ echo "uuid:ERROR: cannot write to $file_uuid" 1>&2
exit 1
fi
( echo "UUID_REGISTRY=\"$UUID_REGISTRY\""
@@ -141,7 +131,7 @@
n=`egrep 'UUID_(REGISTRY|INSTANCE|PLATFORM)="[0-9a-f-]*"' \
$file_uuid.new | wc -l | awk '{ print $1; }'`
if [ ".$n" != .3 ]; then
- echo "$0:ERROR: failed to update $file_uuid" 1>&2
+ echo "uuid:ERROR: failed to update $file_uuid" 1>&2
rm -f $file_uuid.new
exit 1
fi
@@ -181,12 +171,12 @@
opt="-m"
fi
if [ ".$opt_v" = .yes ]; then
- echo "$0: calculating OpenPKG Registry UUID (UUID_REGISTRY):"
- echo "$0: << $prog_uuid -v1 $opt"
+ echo "uuid: calculating OpenPKG Registry UUID (UUID_REGISTRY):"
+ echo "uuid: << $prog_uuid -v1 $opt"
fi
UUID_REGISTRY=`$prog_uuid -v1 $opt`
if [ ".$opt_v" = .yes ]; then
- echo "$0: >> $UUID_REGISTRY (NOT REPEATABLE)"
+ echo "uuid: >> $UUID_REGISTRY (NOT REPEATABLE)"
fi
changed=yes
fi
@@ -199,12 +189,28 @@
name="$name:${Q_rusr}:${Q_ruid}:${Q_rgrp}:${Q_rgid}"
name="$name:${Q_nusr}:${Q_nuid}:${Q_ngrp}:${Q_ngid}"
if [ ".$opt_v" = .yes ]; then
- echo "$0: calculating OpenPKG Instance UUID (UUID_INSTANCE):"
- echo "$0: << $prog_uuid -v3 \"$UUID_NS_INSTANCE\" \"$name\""
+ echo "uuid: querying OpenPKG Instance OID"
+ echo "uuid: << $prog_rpm --eval '%{l_openpkg_oid_instance}'"
+ fi
+ OID_NS_INSTANCE="`$prog_rpm --eval '%{l_openpkg_oid_instance}'`"
+ if [ ".$opt_v" = .yes ]; then
+ echo "uuid: >> $OID_NS_INSTANCE"
+ fi
+ if [ ".$opt_v" = .yes ]; then
+ echo "uuid: calculating OpenPKG Instance Namespace UUID"
+ echo "uuid: << $prog_uuid -v3 ns:OID \"$OID_NS_INSTANCE\""
+ fi
+ UUID_NS_INSTANCE=`$prog_uuid -v3 ns:OID "$OID_NS_INSTANCE"`
+ if [ ".$opt_v" = .yes ]; then
+ echo "uuid: >> $UUID_NS_INSTANCE"
+ fi
+ if [ ".$opt_v" = .yes ]; then
+ echo "uuid: calculating OpenPKG Instance UUID (UUID_INSTANCE):"
+ echo "uuid: << $prog_uuid -v3 \"$UUID_NS_INSTANCE\" \"$name\""
fi
uuid=`$prog_uuid -v3 "$UUID_NS_INSTANCE" "$name"`
if [ ".$opt_v" = .yes ]; then
- echo "$0: >> $uuid"
+ echo "uuid: >> $uuid"
fi
if [ ".$UUID_INSTANCE" != ".$uuid" ]; then
UUID_INSTANCE="$uuid"
@@ -216,12 +222,28 @@
name="$name:${Q_hostname}"
name="$name:${Q_ipaddr}"
if [ ".$opt_v" = .yes ]; then
- echo "$0: calculating OpenPKG Platform UUID (UUID_PLATFORM):"
- echo "$0: << $prog_uuid -v3 \"$UUID_NS_PLATFORM\" \"$name\""
+ echo "uuid: querying OpenPKG Platform OID"
+ echo "uuid: << $prog_rpm --eval '%{l_openpkg_oid_platform}'"
+ fi
+ OID_NS_PLATFORM="`$prog_rpm --eval '%{l_openpkg_oid_platform}'`"
+ if [ ".$opt_v" = .yes ]; then
+ echo "uuid: >> $OID_NS_PLATFORM"
+ fi
+ if [ ".$opt_v" = .yes ]; then
+ echo "uuid: calculating OpenPKG Platform Namespace UUID"
+ echo "uuid: << $prog_uuid -v3 ns:OID \"$OID_NS_PLATFORM\""
+ fi
+ UUID_NS_PLATFORM=`$prog_uuid -v3 ns:OID "$OID_NS_PLATFORM"`
+ if [ ".$opt_v" = .yes ]; then
+ echo "uuid: >> $UUID_NS_PLATFORM"
+ fi
+ if [ ".$opt_v" = .yes ]; then
+ echo "uuid: calculating OpenPKG Platform UUID (UUID_PLATFORM):"
+ echo "uuid: << $prog_uuid -v3 \"$UUID_NS_PLATFORM\" \"$name\""
fi
uuid=`$prog_uuid -v3 "$UUID_NS_PLATFORM" "$name"`
if [ ".$opt_v" = .yes ]; then
- echo "$0: >> $uuid"
+ echo "uuid: >> $uuid"
fi
if [ ".$UUID_PLATFORM" != ".$uuid" ]; then
UUID_PLATFORM="$uuid"
@@ -274,13 +296,17 @@
shift
case "$cmd" in
reset )
- do_prepare; do_load; do_reset; do_save
+ do_load; do_reset; do_save
;;
update )
- do_prepare; do_query; do_load; do_update; do_save
+ do_query; do_load; do_update; do_save
;;
info )
- do_prepare; do_query; do_load; do_info
+ do_query; do_load; do_info
+ ;;
+ * )
+ echo "uuid:ERROR: invalid command \"$cmd\"" 1>&2
+ exit 1
;;
esac
@@ .
______________________________________________________________________
The OpenPKG Project www.openpkg.org
CVS Repository Commit List [EMAIL PROTECTED]