summaryrefslogtreecommitdiff
path: root/debian
diff options
context:
space:
mode:
Diffstat (limited to 'debian')
-rw-r--r--debian/changelog81
-rw-r--r--debian/control10
-rw-r--r--debian/copyright4
-rw-r--r--debian/dmidecode.lintian-overrides6
-rw-r--r--debian/patches/0001-hurd.patch2
-rw-r--r--debian/patches/0145-Fix_condition_error_in_ascii_filter.patch18
-rw-r--r--debian/patches/0150-Fix_crash.patch21
-rw-r--r--debian/patches/0155-use_read_file.patch43
-rw-r--r--debian/patches/0160-HPE_OEM_Firmware_change.patch32
-rw-r--r--debian/patches/series8
-rwxr-xr-xdebian/rules2
-rw-r--r--debian/source/include-binaries1
-rw-r--r--debian/tests/control4
-rw-r--r--debian/upstream/signing-key.asc129
14 files changed, 276 insertions, 85 deletions
diff --git a/debian/changelog b/debian/changelog
index 9b5662c..1461a99 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,8 +1,85 @@
-dmidecode (3.2-4) UNRELEASED; urgency=medium
+dmidecode (3.5-3) unstable; urgency=medium
+
+ * Add loong64 to architecture list (Closes: #1050154).
+
+ -- Jörg Frings-Fürst <debian@jff.email> Mon, 18 Dec 2023 20:46:36 +0100
+
+dmidecode (3.5-2) unstable; urgency=medium
+
+ * New upstream patches:
+ - debian/patches/0155-use_read_file.patch
+ - debian/patches/0160-HPE_OEM_Firmware_change.patch
+ * Add debian/dmidecode.lintian-overrides for wrong groff-message.
+ * debian/rules:
+ - Remove ansi mode from override_dh_auto_build (Closes: #1041611).
+
+ -- Jörg Frings-Fürst <debian@jff.email> Sun, 13 Aug 2023 19:53:46 +0200
+
+dmidecode (3.5-1) unstable; urgency=medium
+
+ * New upstream release (Closes: #1032980).
+ - Fix CVE-2023-30630 (Closes: #1034483).
+ * Declare compliance with Debian Policy 4.6.2.0 (No changes needed).
+ * debian/copyright:
+ - Add year 2023 to myself.
+ * debian/control:
+ - Change to new repository.
+
+ -- Jörg Frings-Fürst <debian@jff.email> Sun, 23 Apr 2023 10:55:50 +0200
+
+dmidecode (3.4-1) unstable; urgency=medium
+
+ * New upstream release.
+ - Remove upstream applied patches:
+ + debian/patches/0145-Fix_condition_error_in_ascii_filter.patch
+ + debian/patches/0150-Fix_crash.patch
+ - Refresh upstream signing key.
+ * Declare compliance with Debian Policy 4.6.1.0 (No changes needed).
+ * debian/copyright:
+ - Add year 2022 to myself.
+
+ -- Jörg Frings-Fürst <debian@jff.email> Thu, 30 Jun 2022 20:37:08 +0200
+
+dmidecode (3.3-3) unstable; urgency=medium
+
+ * Add Architecture riscv64 (Closes: #991854).
+ * Declare compliance with Debian Policy 4.6.0.0 (No changes needed).
+
+ -- Jörg Frings-Fürst <debian@jff.email> Fri, 20 Aug 2021 08:15:05 +0200
+
+dmidecode (3.3-2) unstable; urgency=medium
+
+ * Add upstream recommended patches (Closes: #987033):
+ - New debian/patches/0145-Fix_condition_error_in_ascii_filter.patch.
+ - New debian/patches/0150-Fix_crash.patch.
+ * Declare compliance with Debian Policy 4.5.1 (No changes needed).
+ * debian/copyright:
+ - Add year 2021 to myself.
+
+ -- Jörg Frings-Fürst <debian@jff.email> Mon, 17 May 2021 18:53:43 +0200
+
+dmidecode (3.3-1) unstable; urgency=medium
+
+ * New upstream release.
+ - Remove upstream applied patches:
+ + debian/patches/0140-Fix_scan_entry_point.patch
+ + debian/patches/0005-build.patch
+ + Refresh debian/patches/0001-hurd.patch.
+ * Declare compliance with Debian Policy 4.5.0 (No changes needed).
+ * Migrate to debhelper 13:
+ - Bump debhelper-compat version in debian/control to = 13.
+ * Remove unused debian/source/include-binaries.
+ * Remove superficial test.
+ * debian/copyright:
+ - Add year 2020 to Jean Delvare and myself.
+
+ -- Jörg Frings-Fürst <debian@jff.email> Sat, 17 Oct 2020 10:31:23 +0200
+
+dmidecode (3.2-4) unstable; urgency=medium
* Add "Restrictions: superficial" to debian/tests/control (Closes: #969819).
- -- Jörg Frings-Fürst <debian@jff.email> Fri, 11 Sep 2020 09:45:19 +0200
+ -- Jörg Frings-Fürst <debian@jff.email> Mon, 14 Sep 2020 14:18:46 +0200
dmidecode (3.2-3) unstable; urgency=medium
diff --git a/debian/control b/debian/control
index 81ebc58..f30670d 100644
--- a/debian/control
+++ b/debian/control
@@ -2,16 +2,16 @@ Source: dmidecode
Section: utils
Priority: optional
Maintainer: Jörg Frings-Fürst <debian@jff.email>
-Build-Depends: debhelper-compat (= 12)
-Standards-Version: 4.4.1.2
+Build-Depends: debhelper-compat (= 13)
+Standards-Version: 4.6.2.0
Rules-Requires-Root: no
-Vcs-Git: git://jff.email/opt/git/dmidecode.git
-Vcs-Browser: https://jff.email/cgit/dmidecode.git/
+Vcs-Git: git://git.jff.email/dmidecode.git
+Vcs-Browser: https://git.jff.email/cgit/dmidecode.git/
Homepage: https://nongnu.org/dmidecode/
Package: dmidecode
Priority: important
-Architecture: any-amd64 arm64 armhf ia64 any-i386
+Architecture: any-amd64 arm64 armhf ia64 any-i386 riscv64 loong64
Multi-Arch: foreign
Depends: ${misc:Depends}, ${shlibs:Depends}
Description: SMBIOS/DMI table decoder
diff --git a/debian/copyright b/debian/copyright
index 2578c43..f08d9fe 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -4,7 +4,7 @@ Upstream-Contact: dmidecode-devel@nongnu.org
Source: http://download.savannah.gnu.org/releases/demidecode/
Files: *
-Copyright: 2002-2019 Jean Delvare <jdelvare@suse.de>
+Copyright: 2002-2020 Jean Delvare <jdelvare@suse.de>
2002 Alan Cox <alan@redhat.com>
2010 Anton Arapov <anton@redhat.com>
2015 Xie XiuQi <xiexiuqi@huawei.com>
@@ -13,7 +13,7 @@ License: GPL-2+
Files: debian/*
Copyright: 2003-2007 Petter Reinholdtsen <pere@debian.org>
2011-2012 Daniel Baumann <daniel.baumann@progress-technologies.net>
- 2014-2019 Jörg Frings-Fürst <debian@jff.email>
+ 2014-2023 Jörg Frings-Fürst <debian@jff.email>
License: GPL-2+
License: GPL-2+
diff --git a/debian/dmidecode.lintian-overrides b/debian/dmidecode.lintian-overrides
new file mode 100644
index 0000000..bae92a1
--- /dev/null
+++ b/debian/dmidecode.lintian-overrides
@@ -0,0 +1,6 @@
+#
+# LC_ALL=C.UTF-8 MANROFFSEQ='' MANWIDTH=80 man --warnings -E UTF-8 -l -Tutf8 -Z dmidecode.8 >/dev/null
+#
+# has no error
+#
+groff-message an.tmac:<standard input>:251: warning: tbl preprocessor failed, or it or soelim was not run; table(s) likely not rendered (TE macro called with TW register undefined) [usr/share/man/man8/dmidecode.8.gz:1] \ No newline at end of file
diff --git a/debian/patches/0001-hurd.patch b/debian/patches/0001-hurd.patch
index 236cdea..8f26387 100644
--- a/debian/patches/0001-hurd.patch
+++ b/debian/patches/0001-hurd.patch
@@ -5,7 +5,7 @@ Index: trunk/Makefile
===================================================================
--- trunk.orig/Makefile
+++ trunk/Makefile
-@@ -43,7 +43,7 @@ INSTALL_PROGRAM := $(INSTALL) -m 755
+@@ -44,7 +44,7 @@ INSTALL_PROGRAM := $(INSTALL) -m 755
RM := rm -f
# BSD make provides $MACHINE, but GNU make doesn't
diff --git a/debian/patches/0145-Fix_condition_error_in_ascii_filter.patch b/debian/patches/0145-Fix_condition_error_in_ascii_filter.patch
new file mode 100644
index 0000000..c7d976e
--- /dev/null
+++ b/debian/patches/0145-Fix_condition_error_in_ascii_filter.patch
@@ -0,0 +1,18 @@
+Description: Fix the condition error in ascii_filter
+Origin: upstream, http://git.savannah.gnu.org/cgit/dmidecode.git/commit/?id=1117390ccd9cea139638db6f460bb6de70e28f94
+Last-Update: 2021-05-07
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+Index: trunk/dmidecode.c
+===================================================================
+--- trunk.orig/dmidecode.c
++++ trunk/dmidecode.c
+@@ -116,7 +116,7 @@ static void ascii_filter(char *bp, size_
+ size_t i;
+
+ for (i = 0; i < len; i++)
+- if (bp[i] < 32 || bp[i] == 127)
++ if (bp[i] < 32 || bp[i] >= 127)
+ bp[i] = '.';
+ }
+
diff --git a/debian/patches/0150-Fix_crash.patch b/debian/patches/0150-Fix_crash.patch
new file mode 100644
index 0000000..c6c5af7
--- /dev/null
+++ b/debian/patches/0150-Fix_crash.patch
@@ -0,0 +1,21 @@
+Description: Fix crash with -u option
+Origin: upstream, http://git.savannah.gnu.org/cgit/dmidecode.git/commit/?id=11e134e54d15e67a64c39a623f492a28df922517
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=987033
+Last-Update: 2021-05-07
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+Index: trunk/dmidecode.c
+===================================================================
+--- trunk.orig/dmidecode.c
++++ trunk/dmidecode.c
+@@ -248,9 +248,9 @@ static void dmi_dump(const struct dmi_he
+ {
+ int j, l = strlen(s) + 1;
+
+- off = 0;
+ for (row = 0; row < ((l - 1) >> 4) + 1; row++)
+ {
++ off = 0;
+ for (j = 0; j < 16 && j < l - (row << 4); j++)
+ off += sprintf(raw_data + off,
+ j ? " %02X" : "%02X",
diff --git a/debian/patches/0155-use_read_file.patch b/debian/patches/0155-use_read_file.patch
new file mode 100644
index 0000000..18b1fb3
--- /dev/null
+++ b/debian/patches/0155-use_read_file.patch
@@ -0,0 +1,43 @@
+Description: Use read_file() instead of mem_chunk()
+Origin: upstream, https://git.savannah.gnu.org/cgit/dmidecode.git/commit/?id=c76ddda0ba0aa99a55945e3290095c2ec493c892
+Forwarded: not-needed
+Last-Update: 2023-07-15
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+Index: trunk/dmidecode.c
+===================================================================
+--- trunk.orig/dmidecode.c
++++ trunk/dmidecode.c
+@@ -6025,15 +6025,23 @@ int main(int argc, char * const argv[])
+ pr_comment("dmidecode %s", VERSION);
+
+ /* Read from dump if so instructed */
++ size = 0x20;
+ if (opt.flags & FLAG_FROM_DUMP)
+ {
+ if (!(opt.flags & FLAG_QUIET))
+ pr_info("Reading SMBIOS/DMI data from file %s.",
+ opt.dumpfile);
+- if ((buf = mem_chunk(0, 0x20, opt.dumpfile)) == NULL)
++ if ((buf = read_file(0, &size, opt.dumpfile)) == NULL)
+ {
+ ret = 1;
+ goto exit_free;
++ }
++
++ /* Truncated entry point can't be processed */
++ if (size < 0x20)
++ {
++ ret = 1;
++ goto done;
+ }
+
+ if (memcmp(buf, "_SM3_", 5) == 0)
+@@ -6059,7 +6067,6 @@ int main(int argc, char * const argv[])
+ * contain one of several types of entry points, so read enough for
+ * the largest one, then determine what type it contains.
+ */
+- size = 0x20;
+ if (!(opt.flags & FLAG_NO_SYSFS)
+ && (buf = read_file(0, &size, SYS_ENTRY_FILE)) != NULL)
+ {
diff --git a/debian/patches/0160-HPE_OEM_Firmware_change.patch b/debian/patches/0160-HPE_OEM_Firmware_change.patch
new file mode 100644
index 0000000..075b566
--- /dev/null
+++ b/debian/patches/0160-HPE_OEM_Firmware_change.patch
@@ -0,0 +1,32 @@
+Description: HPE OEM Record 237 Firmware change
+Origin: upstream, http://git.savannah.gnu.org/cgit/dmidecode.git/commit/?id=80de376231e903d2cbea95e51ffea31860502159
+Forwarded: not-needed
+Last-Update: 2023-07-15
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+Index: trunk/dmioem.c
+===================================================================
+--- trunk.orig/dmioem.c
++++ trunk/dmioem.c
+@@ -1094,7 +1094,8 @@ static int dmi_decode_hp(const struct dm
+ * 0x06 | Manufacture|STRING | DIMM Manufacturer
+ * 0x07 | Part Number|STRING | DIMM Manufacturer's Part Number
+ * 0x08 | Serial Num |STRING | DIMM Vendor Serial Number
+- * 0x09 | Spare Part |STRING | DIMM Spare Part Number
++ * 0x09 | Man Date | BYTE | DIMM Manufacture Date (YEAR) in BCD
++ * 0x0A | Man Date | BYTE | DIMM Manufacture Date (WEEK) in BCD
+ */
+ if (gen < G9) return 0;
+ pr_handle_name("%s DIMM Vendor Information", company);
+@@ -1105,8 +1106,9 @@ static int dmi_decode_hp(const struct dm
+ pr_attr("DIMM Manufacturer Part Number", "%s", dmi_string(h, data[0x07]));
+ if (h->length < 0x09) break;
+ pr_attr("DIMM Vendor Serial Number", "%s", dmi_string(h, data[0x08]));
+- if (h->length < 0x0A) break;
+- pr_attr("DIMM Spare Part Number", "%s", dmi_string(h, data[0x09]));
++ if (h->length < 0x0B) break;
++ if (WORD(data + 0x09))
++ pr_attr("DIMM Manufacture Date", "20%02x-W%02x", data[0x09], data[0x0A]);
+ break;
+
+ case 238:
diff --git a/debian/patches/series b/debian/patches/series
index fb5d205..5219567 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,6 +1,8 @@
+#0145-Fix_condition_error_in_ascii_filter.patch
+#0150-Fix_crash.patch
0100-ansi-c.patch
0001-hurd.patch
-0005-build.patch
+#0005-build.patch
#0105-dmidecode-avoid-sigbus.patch
#0110-nosysfs.patch
#0115-no_smbios_DMI_entry_point.patch
@@ -8,4 +10,6 @@
#0125-use_read_file_to_read_DMI_table_from_sysfs.patch
#0130-use_DWORD_for_table_max_size.patch
#0135-hide_fixup_msg.patch
-0140-Fix_scan_entry_point.patch
+#0140-Fix_scan_entry_point.patch
+0155-use_read_file.patch
+0160-HPE_OEM_Firmware_change.patch
diff --git a/debian/rules b/debian/rules
index dd31875..a7e6173 100755
--- a/debian/rules
+++ b/debian/rules
@@ -14,7 +14,7 @@ endif
dh ${@}
override_dh_auto_build:
- dh_auto_build -- CC=$(CC) CFLAGS="$(CFLAGS) $(CPPFLAGS) -Os -ansi" LDFLAGS="$(LDFLAGS)"
+ dh_auto_build -- CC=$(CC) CFLAGS="$(CFLAGS) $(CPPFLAGS) -Os" LDFLAGS="$(LDFLAGS)"
override_dh_auto_install:
dh_auto_install -- prefix=/usr
diff --git a/debian/source/include-binaries b/debian/source/include-binaries
deleted file mode 100644
index a610508..0000000
--- a/debian/source/include-binaries
+++ /dev/null
@@ -1 +0,0 @@
-debian/upstream/signing-key.pgp
diff --git a/debian/tests/control b/debian/tests/control
deleted file mode 100644
index 1b92f83..0000000
--- a/debian/tests/control
+++ /dev/null
@@ -1,4 +0,0 @@
-# smoke test
-Test-Command: /usr/sbin/dmidecode -V
-Depends: dmidecode
-Restrictions: superficial
diff --git a/debian/upstream/signing-key.asc b/debian/upstream/signing-key.asc
index 1242392..53e7564 100644
--- a/debian/upstream/signing-key.asc
+++ b/debian/upstream/signing-key.asc
@@ -1,68 +1,63 @@
------BEGIN PGP ARMORED FILE-----
-Comment: Use "gpg --dearmor" for unpacking
+-----BEGIN PGP PUBLIC KEY BLOCK-----
-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
-=9biY
------END PGP ARMORED FILE-----
+mQINBE6ewEABEACYt7MVRJJeyFsd4dMlP0bRE1U0A76al9te+XoalkAnjwltJPgy
+xnw2eP1m+klK+HJc9gVMIkg66LutN+c0x+qFf08UT6dk22/jULYnodkt1sUgAxIB
+cm6vdFif1mXY1WKRRdDrKsZqTZ5dw93Nd8T5w493Ll84ECl4cI9m5ZDDf33JHnph
+aR7JDCQwT2mxWrZTQzmGawhcFu3tLqQ93SuPBFx6DZWxyU4HT3UCQN89SUMdkiaE
+p5IYMvHnfdeP+oN7FlfCumqZGIl6Zm3KE31jfm2KiOwIXZdRliDHHGEXD7onnHIb
+/4WaP02LSvQFDAZ7+KQtnChR6tzfsdnWSKjSJmDeIf/qYzieOxEz5AmdroW6VLdS
+yBH9UZ11Is9Y6/vJdMJXvFYMGjTw64SDJKsKaeVNFBA4p/JBgFnGkl1Mt7JBlaYZ
+JwbE//42vC1HvHF0PHV5YOrhl8DDntWPw44PSH3qjyLgnuQ5WGgAWCO9foDSCUdo
+sk+J+lhtkmL/N4p99sYd3QSw3zNRmJf4snclcH1IBOUnEaOE+JP7wwclhVmeJeSw
+tMmQlNCx6QN/zzj1MoxVpwoAAkFIV8dmNi2yvIHDHvaqOkCAJI5Y3WzwIENlUl65
+vaG0zMKOeyPeLd/EDdwILlssLslf2kCsulj6fjCCFN7Gvh6k9hIwCd0IbQARAQAB
+tC5KZWFuIERlbHZhcmUgKGtlcm5lbC5vcmcpIDxraGFsaUBsaW51eC1mci5vcmc+
+iQIfBDABAgAJBQJUEWgOAh0gAAoJEKVSa5uzzU5q628P/igh/sU9og+quy7QVASy
+U+r+GcPllzzkOXu0dl5WYOCA/8PGQYNj2gMzH2livYVWtQpndUbZ2zIXxQ8wnvNF
+gz3n2YdLtJdxInOnmTiY6dXnvf0abIMWYDn9OduvHTrMG+xtwyWAgxHipKZ3LUWv
+zyE4AfWBhx6waevqGnmkcLZkje1L1OgbeRT5x0x6mu2MUX2hCVX5twqXtF6EK0za
+Od5XfiG4FYBbbY4e+7Ifd41XgnGmscnSQ7ti+Lo/5j+pREyvKXYRBxRoezSfJ4GW
+PiYtQLoJ1zmsPFgfH8is1WOweY2P3NjJVKby7RAYq1G4QSiv4X16FbpYIIOWsgdJ
+GHDB1/u2KTZwLrNsdW5U8rsbZrvzeMfcq7ssWYTP37UoqJFsImXRsyX87//YnB8l
+HhBZ6ojbMJFB63iD95c6LPqJUkyEXhzOsepjj+JpA3ODSArNDqOMxCMvwkitxDLo
+fY2KgJk9uR6U/ZYNVfEAQDma8LkxlXkX90gdjmy1f3BSlusFtr0aUKxhtCig//zM
+FoxkoOQMRQmAk98MQFqHGt11t7aG9g6saLBWkS+1rGNNQF27pDraUz745fdqh42W
+XPX6iSuTY0iIOeriG7B1g8CwR8qIJp1OKub1nqDxbjctAdtZK3Oa5bVoiIhIw28w
+Jw1VX84si4r3e6Sv56mtlDdRtCxKZWFuIERlbHZhcmUgKGtlcm5lbC5vcmcpIDxq
+ZGVsdmFyZUBzdXNlLmRlPokCOAQTAQIAIgUCTp7AQAIbAwYLCQgHAwIGFQgCCQoL
+BBYCAwECHgECF4AACgkQpVJrm7PNTmr+rhAAi1ek57JZ6zt7PfEbiTa2n5f+jpWm
+yCDFxLhY50Bt3haP3knek+AkbXHgw+rdA5SEVMax6K56LXppSk0cwLPF9YNS3LYQ
+4jKsDF59vD/58Y8AyWY/hy/nUFm7VLz8hr9Nm0pGebw255RYSBNPQWythk40zAgx
+hX+z9sTtxCEp7qMXKBRHPtwgrtZRCbz93NwICY/y9PzcUnCWPuIvSkHCiSqeJI0p
+n/XsOpIWjNCWUU6+McB/uh5IRrNimusaDJJujtJRN+2qiQeYMaqOUuKrgWJ9+KmP
+gJqxOu8KohV/FPF9PkGMakV2AUwcvQvSdkTf+XQ/pk0t0O406sd4RHotxUg1dlQN
+Taqmvrh79vShgtJH592rEh5gw/U3YLGD89bnjdyXthVTcb9CYXeGv0pTX+5WmLuo
+5BMKStUMttQaO03D5IBVRIU0ZuZv1A1TLAHi7qx7onC+126GDODdCUpu5+PdJwum
+xWdN3qXrdZnSf6ZauLBhy+aG9oe2/ycRNtMp6xuGymzoH0C2nuj3YEnUzRALw4lz
+X7pk2opWx9HbRzUUmHJwxBLgbeM+TdpqCVJbEpA0vYu/8YaSqWXIFCKQKPIQRRSQ
+Tt2locKtD1HiJOtD/nM7WO5MXWMSx83iCG0c6DAXkaNMqVWiu9JIYlHV98o0Q/Eb
+VRy7BAyxoiwoUZu5Ag0ETp7AQAEQAMkhZDUy6k8d4pfORjqIknTfq/d6IbUc4E3h
+DTKDm87inmjVxZ7FjexpXdtJOYoWWKT/0if9IFUpqFYb8vy2iy3gXc7HfecqJb+P
+TPAPvLojXs8hGpkLBhkEJuDqRXfQkQsTSKj2hUcjXwwC5k97dnkq6yjpyfW35zTP
+Scop3oorqKwukGg6FbBy6U3GmsqmbtQzQW3UbKSR05qjoc91ILYT/4RL46BYj7q9
+hIkbYcsasFnH7wfeLzrHt3TU+CIDk/P/+TGMRPU9dSSkPqD6yTdbpIBDfJMPqEae
+GIGHnVIEZZhcmLnQIIYN3zMxEk40fICMcHTLB6HHgC2DKwpQSx/TZvRoEblPmQSa
+Q6kpc/nWc87MKGTsY6fDRkapwB8Tf1h8ao6+VG1SX/3tAP8MFh4xHmYamO9LyZ3s
+ulhWbau3jMvB8nu7bR87EWzGu9C+3YcetRoyXTVSPUwaZVloyEMXAWbo7jw1kUhA
+NBsIZ2Z0W7buaO+ONuQ6GfWwooOGMZSM2zHY8yrSU6ofpaXfmXOFQlRIFCZhXo9B
+7oGf42pNzFZjhb6JQM3mAxNwSVrQtA7LtGCKuPBPXawNUEJoZkKIuyhqRI6iIZgz
+a9fe1LKGpvAPYW5AF3qMp8t49EiGgZ4xpHwz7oNRTaZRQwsgC3VdAb3ViJC/TQe5
+svWvD+bPABEBAAGJAh8EGAECAAkFAk6ewEACGwwACgkQpVJrm7PNTmrU3g/+JXwj
+LsW8H0WY2ZOyZbYJx74jSEOCi+AuZpd1v6f2p1oiz9ec9Q/TQdV4tTPBgyoflwOn
+/HZC+6C03Zyj0hCyxViekXHP54ZtC8+zSuN/jhy3P3I+pqDedzGZiV72aM+MXr1r
+v+KMKF6HOlz+NFMmHP5mwYGo3Tgg7S8XxLwz48SbglCc2hX56z9oveZG1e5tAved
+05FlAy+7ZOeBYfDN+e9Tdw2V0SLGM0On2rDDpTs/28MwX6YbTAPuQN6qZJzCq2u8
+Tv5HsWM3Xe7GnD3gpqGCCARTqCIJ4D9l+Qe/n8VQQbo3eTFTf0UbTi6Z0DIT96Bv
+FM6VH+jfQl757U99/7xmyw2ugnCKLA06ouaGIPWdGmBQKozHEo8IsGq8itqgjcH2
+3cJWfscKlqZOQtqb75cUMGmfloha3rnSpDc3n4PlKGNG5NaCN9yfjkl5QJ+m4e8/
+RFrr9Yj44Bt2cspN32BOztFsbGUahmfLz8OE2mAKs6EnicHm/NBBmoqJ6ZwiQz89
+bi5nHZ2Etx744C2nessg/y9RgDIbkSIaTsLwl54KrvqFHiYouIRYki/EpVku87dd
+Jf9aLHitaRW/c7l/a0iBXEMsEBNyytXvlCZ5OimKnxzZK8K9CdcoUyK75WcRwN8e
+Qu7m8XPTuUj0t1Fvq0Xleoa74ot+e+pKWAaR40U=
+=3wf6
+-----END PGP PUBLIC KEY BLOCK-----