diff --git a/.gitignore b/.gitignore deleted file mode 100644 index effec28..0000000 --- a/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ -/rbldnsd_0.996b.tar.gz -/rbldnsd-0.997a.tar.gz -/rbldnsd-0.998.tar.gz -/rbldnsd-0.998b.tgz diff --git a/85932ec5.patch b/85932ec5.patch deleted file mode 100644 index 8b919ef..0000000 --- a/85932ec5.patch +++ /dev/null @@ -1,62 +0,0 @@ -From 85932ec5d89041424cf6d20c71b482e23cf17d2f Mon Sep 17 00:00:00 2001 -From: "Antonio \"Criddi\" Mammita" - <77116213+ammammita@users.noreply.github.com> -Date: Wed, 13 Jan 2021 17:17:31 +0000 -Subject: [PATCH] Ticket 18 and 19 (#22) - -Fix issue #18 and issue #19 - -Base template replacement issue ---- - rbldnsd.8 | 4 ++-- - rbldnsd_util.c | 8 ++++++-- - 2 files changed, 8 insertions(+), 4 deletions(-) - -diff --git a/rbldnsd.8 b/rbldnsd.8 -index 36e70fa..addb737 100644 ---- a/rbldnsd.8 -+++ b/rbldnsd.8 -@@ -726,7 +726,7 @@ the above example may be simplified to: - .fi - There is no default TXT value, so - .B rbldnsd --will not return anything for TXT queries it TXT isn't -+will not return anything for TXT queries unless TXT isn't - specified. - .PP - When A value is specified for a given entry, but TXT template -@@ -782,7 +782,7 @@ text given for individual entries. In order to stop usage of base template - \fB$=\fR for a single record, start it with \fB=\fR (which will be omitted - from the resulting TXT value). For example, - .nf -- $0 See http://www.example.com/bl?$= ($) for details -+ $= See http://www.example.com/bl?$= ($) for details - 127.0.0.2 r123 - 127.0.0.3 - 127.0.0.4 =See other blocklists for details about $ -diff --git a/rbldnsd_util.c b/rbldnsd_util.c -index c6d628d..eeafd07 100644 ---- a/rbldnsd_util.c -+++ b/rbldnsd_util.c -@@ -243,6 +243,8 @@ int txtsubst(char sb[TXTBUFSIZ], const char *txt, - char *const e = sb + 254; - char *lp = sb; - const char *s, *si, *sx; -+ const char *srec = s0; -+ - if (txt[0] == '=') - sx = ++txt; - else if (sn[SUBST_BASE_TEMPLATE] && *sn[SUBST_BASE_TEMPLATE]) { -@@ -273,8 +275,10 @@ int txtsubst(char sb[TXTBUFSIZ], const char *txt, - sl = strlen(si); - ++s; - } -- else -- sl = strlen(si = s0); -+ else { -+ sl = strlen(si = srec); -+ } -+ - if (lp + sl > e) /* silently truncate TXT RR >255 bytes */ - sl = e - lp; - memcpy(lp, si, sl); diff --git a/README.systemd b/README.systemd deleted file mode 100644 index 474f5f5..0000000 --- a/README.systemd +++ /dev/null @@ -1,76 +0,0 @@ -Using rbldnsd with systemd -========================== - -The traditional SysV initscript shipped with rbldnsd supports using -multiple instances with arbitrary command lines. This is difficult -to achieve with systemd so a wrapper script, rbldnsctl, has been -provided to assist with the creation and use of native systemd unit -files for each required instance, using exactly the same configuration -in /etc/sysconfig/rbldnsd as the SysV initscript used. - -Having edited /etc/sysconfig/rbldnsd to specify the rbldnsd -instance(s) required, individual unit files for each instance can be -created by: - - rbldnsctl create - -This creates unit files /etc/systemd/system/rbldnsd-.service -for each required instance. These units can then be manipulated -individually using /bin/systemctl as usual, or all at once by using -other rbldnsctl commands: - - rbldnsctl enable - -This enables all configured rbldnsd instances to start at boot time -(equivalent of chkconfig rbldnsd on). - - rbldnsctl disable - -This disables all configured rbldnsd instances from starting at boot time -(equivalent of chkconfig rbldnsd off). - - rbldnsctl start - -This starts all configured rbldnsd instances immediately -(equivalent of service rbldnsd start). - - rbldnsctl stop - -This stops all configured rbldnsd instances -(equivalent of service rbldnsd stop). - - rbldnsctl reload - -This reloads all configured rbldnsd instances -(equivalent of service rbldnsd reload). - - rbldnsctl restart - -This restarts all configured rbldnsd instances -(equivalent of service rbldnsd restart). - - rbldnsctl condrestart - rbldnsctl try-restart - -These restart all configured rbldnsd instances immediately, if they are -already running (equivalent of service rbldnsd condrestart). - - rbldnsctl status - -This shows status of all configured rbldnsd instances -(equivalent of service rbldnsd status). - -When editing /etc/sysconfig/rbldnsd to specify rbldnsd instance options, -bear in mind: - -* systemd prefers the daemons it controls not to fork, so the unit files - created by rbldnsctl start rbldnsd with the "-n" option to prevent - it from forking; this also means that systemd knows the PIDs of all - instances itself, so there is no need to specify any forking/pidfile related - options in /etc/sysconfig/rbldnsd - -* if you want just a single instance of rbldnsd and use the traditional "-" - identifier for it, rbldnsctl will create a unit file - /etc/systemd/system/rbldnsd-single.service, i.e. the instance name will be - set to "single" - diff --git a/dead.package b/dead.package new file mode 100644 index 0000000..a72aec0 --- /dev/null +++ b/dead.package @@ -0,0 +1 @@ +epel8-playground decommissioned : https://pagure.io/epel/issue/136 diff --git a/rbldnsctl b/rbldnsctl deleted file mode 100755 index f5bb1b9..0000000 --- a/rbldnsctl +++ /dev/null @@ -1,175 +0,0 @@ -#!/bin/bash -# -# rbldnsctl : helper script for managing rbldnsd instances with systemd -# -# Configuration is via the RBLDNSD variable in /etc/sysconfig/rbldnsd, -# exactly as used with the traditional sysv initscript. -# -# Usage: -# -# rbldnsctl create -# Creates unit files /etc/systemd/system/rbldnsd-.service -# for each configured rbldnsd instance -# -# rbldnsctl enable -# Enables (via systemctl) all configured rbldnsd instances to start -# at boot time -# -# rbldnsctl disable -# Disables (via systemctl) all configured rbldnsd instances from -# starting at boot time -# -# rbldnsctl start -# Starts (via systemctl) all configured rbldnsd instances immediately -# -# rbldnsctl stop -# Stop (via systemctl) all configured rbldnsd instances immediately -# -# rbldnsctl reload -# Reloads (via systemctl) all configured rbldnsd instances immediately -# -# rbldnsctl restart -# Restarts (via systemctl) all configured rbldnsd instances immediately -# -# rbldnsctl condrestart -# rbldnsctl try-restart -# Restarts (via systemctl) all configured rbldnsd instances immediately, -# if they are already running -# -# rbldnsctl status -# Shows status of all configured rbldnsd instances -# -PATH=/sbin:/bin:/usr/bin:/usr/sbin - -# Get config and check that RBLDNSD is set -[ -f /etc/sysconfig/rbldnsd ] && . /etc/sysconfig/rbldnsd - -# Check that configuration has been set up (RBLDNSD set in /etc/sysconfig/rbldnsd) -if [ -z "$RBLDNSD" ]; then - echo "rbldnsctl: RBLDNSD not configured in /etc/sysconfig/rbldnsd" >&2 - exit 6 -fi - -# Set an exit status -set_status() { - exit $1 -} - -# Process multiple instances of the daemon (see /etc/sysconfig/rbldnsd) -for_all_daemons() { - ret=0 - while read name args; do - # For a single instance (name = "-"), use "single" as name - case "$name" in - ""|\#*) continue;; - -) name=single;; - *) ;; - esac - # Process this instance - $1 - thisret=$? - if [ "$1" = "check_one_daemon" -o "$1" = "reload_one_daemon" ]; then - if [ $thisret -ne 0 ]; then - ret=$thisret - fi - else - if [ $thisret -ne 0 ]; then - ret=1 - fi - fi - done < <(echo "$RBLDNSD") - set_status $ret -} - -start_one_daemon() { - /usr/bin/systemctl start "rbldnsd-${name}.service" -} - -stop_one_daemon() { - /usr/bin/systemctl stop "rbldnsd-${name}.service" -} - -reload_one_daemon() { - /usr/bin/systemctl reload "rbldnsd-${name}.service" -} - -check_one_daemon() { - /usr/bin/systemctl status "rbldnsd-${name}.service" -} - -restart_one_daemon() { - /usr/bin/systemctl restart "rbldnsd-${name}.service" -} - -condrestart_one_daemon() { - /usr/bin/systemctl try-restart "rbldnsd-${name}.service" -} - -create_one_daemon() { - { - awk '/^\[Unit\]/, 1 == 2' /etc/systemd/rbldnsd.conf - cat <<-END_OF_UNIT - [Unit] - Description=DNSBL (rbldnsd) ${name} instance - - [Service] - ExecStart=/sbin/rbldnsd -n ${args} - END_OF_UNIT - } > "/etc/systemd/system/rbldnsd-${name}.service" - echo "Created unit file /etc/systemd/system/rbldnsd-${name}.service" -} - -enable_one_daemon() { - /usr/bin/systemctl enable "rbldnsd-${name}.service" -} - -disable_one_daemon() { - /usr/bin/systemctl disable "rbldnsd-${name}.service" -} - -# See how we were called. -case "$1" in - create) - for_all_daemons create_one_daemon - RETVAL=$? - /usr/bin/systemctl daemon-reload - ;; - enable) - for_all_daemons enable_one_daemon - RETVAL=$? - ;; - disable) - for_all_daemons disable_one_daemon - RETVAL=$? - ;; - start) - for_all_daemons start_one_daemon - RETVAL=$? - ;; - restart) - for_all_daemons restart_one_daemon - RETVAL=$? - ;; - reload) - for_all_daemons reload_one_daemon - RETVAL=$? - ;; - stop) - for_all_daemons stop_one_daemon - RETVAL=$? - ;; - status) - for_all_daemons check_one_daemon - RETVAL=$? - ;; - condrestart|try-restart) - for_all_daemons condrestart_one_daemon - RETVAL=$? - ;; - *) - echo $"Usage: $0 {create|enable|disable|start|stop|restart|try-restart|reload|status}" >&2 - RETVAL=1 - ;; -esac - -exit $RETVAL diff --git a/rbldnsd-0.998b-version.patch b/rbldnsd-0.998b-version.patch deleted file mode 100644 index a193fd9..0000000 --- a/rbldnsd-0.998b-version.patch +++ /dev/null @@ -1,16 +0,0 @@ -This addition of the release date for version 0.998b fixes the -version number that rbldnsd reports in its logging output. The -version is extracted from the NEWS file by the configure script -but the pattern matching requires the date to be present. - ---- NEWS -+++ NEWS -@@ -1,7 +1,7 @@ - This file describes user-visible changes in rbldnsd. - Newer news is at the top. - --0.998b -+0.998b (21 Dec 2016) - - Fix for memory errors on very large datasets. - Patch by Andrew Clayton - diff --git a/rbldnsd-configure-c99.patch b/rbldnsd-configure-c99.patch deleted file mode 100644 index 3eb7970..0000000 --- a/rbldnsd-configure-c99.patch +++ /dev/null @@ -1,20 +0,0 @@ -Avoid implicit declarations of gethostbyname and connect in the -non-autoconf configure script. This prevents altering the test result -with compilers which do not support implicit function declarations. - -A more elaborate pull request has been submitted upstream: - - - -diff --git a/configure b/configure -index b0cb655797639dac..978f480e391a46a8 100755 ---- a/configure -+++ b/configure -@@ -173,6 +173,7 @@ else - fi - - if ac_library_find_v 'connect()' "" "-lsocket -lnsl" <rbldnsd.sysusers.conf </dev/null || groupadd -r rbldns -getent passwd rbldns >/dev/null || \ - useradd -r -g rbldns -d %{_localstatedir}/lib/rbldnsd \ - -s /sbin/nologin -c "rbldns daemon" rbldns -exit 0 -%endif - -%post -systemctl daemon-reload &>/dev/null || : - -%preun -if [ $1 -eq 0 ]; then - # Package removal, not upgrade - %{_sbindir}/rbldnsctl stop &>/dev/null || : - %{_sbindir}/rbldnsctl disable &>/dev/null || : -fi - -%postun -systemctl daemon-reload &>/dev/null || : -if [ $1 -ge 1 ]; then - # Package upgrade, not uninstall - %{_sbindir}/rbldnsctl try-restart &>/dev/null || : -fi - -%files -%license LICENSE.txt -%doc CHANGES-0.81 NEWS README README.user TODO contrib/debian/changelog -%{_sbindir}/rbldnsd -%{_mandir}/man8/rbldnsd.8* -%dir %{_localstatedir}/lib/rbldnsd/ -%config(noreplace) %{_sysconfdir}/sysconfig/rbldnsd -%doc README.systemd -%config(noreplace) %{_sysconfdir}/systemd/rbldnsd.conf -%{_sbindir}/rbldnsctl -%if %{use_sysusers} -%{_sysusersdir}/rbldnsd.conf -%endif - -%changelog -* Fri Sep 26 2025 Paul Howarth - 0.998b-19 -- Fix base template replacement issue (GH#18, GH#19, GH#22, rhbz#2398024) - -* Fri Jul 25 2025 Fedora Release Engineering - 0.998b-18 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Wed Feb 12 2025 Paul Howarth - 0.998b-17 -- Add sysusers.d config file to allow rpm to create users/groups automatically - from Fedora 43 onwards - -* Sat Jan 18 2025 Fedora Release Engineering - 0.998b-16 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Fri Jul 19 2024 Fedora Release Engineering - 0.998b-15 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Fri Jan 26 2024 Fedora Release Engineering - 0.998b-14 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Mon Jan 22 2024 Fedora Release Engineering - 0.998b-13 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Fri Jul 21 2023 Fedora Release Engineering - 0.998b-12 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Fri Jun 23 2023 Paul Howarth - 0.998b-11 -- Avoid use of systemd ".include" directive (rhbz#2216790) -- Avoid use of deprecated patch syntax -- Fix version number reported by rbldnsd - -* Mon Jan 30 2023 Paul Howarth - 0.998b-10 -- Use SPDX-format license tag - -* Mon Jan 30 2023 Florian Weimer - 0.998b-9 -- Port non-autoconf configure script to C99 - -* Fri Jan 20 2023 Fedora Release Engineering - 0.998b-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Sat Jul 23 2022 Fedora Release Engineering - 0.998b-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Fri Jan 21 2022 Fedora Release Engineering - 0.998b-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Fri Jul 23 2021 Fedora Release Engineering - 0.998b-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Wed Jan 27 2021 Paul Howarth - 0.998b-4 -- Drop EL-6 support - - Always assume systemd init - - Drop support for sysv-to-systemd migration - - Use %%license unconditionally - - Use %%{?systemd_requires} - -* Wed Jan 27 2021 Fedora Release Engineering - 0.998b-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Wed Jul 29 2020 Fedora Release Engineering - 0.998b-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Tue May 5 2020 Paul Howarth - 0.998b-1 -- Update to 0.998b - - Minor fixes in copyright and documentation - - Bugfix: Minor fix to prevent errors on newer compilers - - Fix for memory errors on very large datasets -- Upstream is now at rbldnsd.io -- Package new LICENSE.txt and README files - -* Thu Jan 30 2020 Fedora Release Engineering - 0.998-11 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Fri Jul 26 2019 Fedora Release Engineering - 0.998-10 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Sat Feb 02 2019 Fedora Release Engineering - 0.998-9 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Sat Jul 14 2018 Fedora Release Engineering - 0.998-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Fri Feb 09 2018 Fedora Release Engineering - 0.998-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Mon Jan 29 2018 Paul Howarth - 0.998-6 -- Account for systemd-units being merged into systemd at Fedora 17 -- Drop support for SysV-to-systemd migration from Fedora 18, RHEL 7 -- Use forward-looking conditionals -- Use fewer full paths from commands in scriptlets, to aid readability -- Drop legacy BuildRoot: and Group: tags -- Drop explicit buildroot cleaning in %%clean and %%install - -* Thu Aug 03 2017 Fedora Release Engineering - 0.998-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Thu Jul 27 2017 Fedora Release Engineering - 0.998-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Sat Feb 11 2017 Fedora Release Engineering - 0.998-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Thu Feb 04 2016 Fedora Release Engineering - 0.998-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Fri Jan 1 2016 Paul Howarth - 0.998-1 -- Update to 0.998 - - Correctly handle V4MAPPED (v4 in v6) addresses; the original v6 prefix was - wrong - - Sometimes IP4-based datasets gave false positives when an IP6 dataset was - present, and it was also possible to have false positives in IP6 datasets; - both have been fixed - -* Thu Jun 18 2015 Fedora Release Engineering - 0.997a-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Sun Aug 17 2014 Fedora Release Engineering - 0.997a-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Thu Jul 10 2014 Paul Howarth 0.997a-4 -- fix return value from initscript, by using process substitution instead of - a while loop at the end of a pipe (#1118013) -- drop %%defattr, redundant since rpm 4.4 - -* Sun Jun 8 2014 Fedora Release Engineering 0.997a-3 -- rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Thu Nov 21 2013 Paul Howarth 0.997a-2 -- use format string in dslog() invocation - -* Mon Jul 29 2013 Paul Howarth 0.997a-1 -- update to 0.997a - - minor fixes/changes in packaging, no code changes - - in particular, fixes a build failure on *BSD introduced in 0.997 - -* Sun Jun 30 2013 Paul Howarth 0.997-1 -- update to 0.997 - - main feature of this version is ipv6 support - - feature: ip6trie - new dataset supports listing of arbitrary length ip6 - CIDRs, along with individual A/TXT values for each prefix - - feature: ip6tset - new dataset supports listing of ip6 /64 subnets and the - exclusion of /128 subnets; only supports a single A/TXT value for the - entire dataset - - optimization: ip4trie - using new trie implementation (developed for the - ip6trie dataset) decreases memory consumption by roughly a factor of three - - feature: acl dataset - ip6 addresses are now supported in ACLs - - feature: added --enable-asserts configure option to enable compilation of - debugging assertions; assertion checking is disabled by default - - featurette: zero-length "wildcard" IP4 CIDR prefixes are now allowed in - ip4trie and acl datasets - -* Thu Feb 14 2013 Fedora Release Engineering 0.996b-10 -- rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild - -* Sat Jul 21 2012 Fedora Release Engineering 0.996b-9 -- rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Tue Apr 17 2012 Paul Howarth 0.996b-8 -- rename systemctl-rbldnsd to rbldnsctl (#807504) - -* Tue Apr 17 2012 Paul Howarth 0.996b-7 -- use native systemd init from F-17 onwards (see README.systemd) - -* Mon Apr 16 2012 Paul Howarth 0.996b-6 -- fix some initscript issues (#807504) -- do a hardened build (PIE) where possible - -* Thu Jan 5 2012 Paul Howarth 0.996b-5 -- nobody else likes macros for commands - -* Wed Feb 9 2011 Fedora Release Engineering 0.996b-4 -- rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild - -* Sun Jul 26 2009 Fedora Release Engineering 0.996b-3 -- rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild - -* Wed Feb 25 2009 Fedora Release Engineering 0.996b-2 -- rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild - -* Mon Mar 31 2008 Paul Howarth 0.996b-1 -- update to 0.996b -- _GNU_SOURCE no longer needed - -* Wed Feb 20 2008 Paul Howarth 0.996a-6 -- fix exit codes for reload, stop, and try-restart actions of initscript - -* Wed Feb 13 2008 Paul Howarth 0.996a-5 -- define _GNU_SOURCE for NI_MAXHOST symbol visibility -- LSB-ize initscript (#247043) - -* Thu Aug 23 2007 Paul Howarth 0.996a-4 -- add buildreq gawk - -* Thu Aug 23 2007 Paul Howarth 0.996a-3 -- upstream released a new version without changing the version number (the - only changes are in debian/control and debian/changelog, neither of which - are used in the RPM package) -- unexpand tabs in spec -- use the standard scriptlet for user/group creation in %%pre -- drop scriptlet dependencies on /sbin/service by calling initscript directly -- clarify license as GPL version 2 or later - -* Wed Aug 30 2006 Paul Howarth 0.996a-2 -- FE6 mass rebuild - -* Fri Jul 28 2006 Paul Howarth 0.996a-1 -- update to 0.996a - -* Tue Feb 21 2006 Paul Howarth 0.996-1 -- update to 0.996 -- use /usr/sbin/useradd instead of %%{_sbindir}/useradd -- add buildreq zlib-devel to support gzipped zone files - -* Wed Feb 15 2006 Paul Howarth 0.995-5 -- license text not included in upstream tarball, so don't include it - -* Tue Jun 28 2005 Paul Howarth 0.995-4 -- include gpl.txt as %%doc - -* Mon Jun 27 2005 Paul Howarth 0.995-3 -- fix /etc/sysconfig/rbldnsd references to /var/lib/rbldns to point to - %%{_localstatedir}/lib/rbldnsd instead -- don't enable daemons in any runlevel by default -- add -q option to sample entries in /etc/sysconfig/rbldnsd - -* Fri Jun 17 2005 Paul Howarth 0.995-2 -- first Fedora Extras build, largely based on upstream spec file diff --git a/sources b/sources deleted file mode 100644 index e8638f2..0000000 --- a/sources +++ /dev/null @@ -1 +0,0 @@ -SHA512 (rbldnsd-0.998b.tgz) = 8efa1e324475c29baeeb1e64c433d4e28516b01ff871a620938fb72d7ad8bdfa23e541b9546081bdda12622178da2f4d32cec6cb83466b05ee9076f67e31d8fe