diff --git a/SOURCES/sos-bz1938932-sssd-add-individual-sssd-log-files.patch b/SOURCES/sos-bz1938932-sssd-add-individual-sssd-log-files.patch
new file mode 100644
index 0000000..c49397b
--- /dev/null
+++ b/SOURCES/sos-bz1938932-sssd-add-individual-sssd-log-files.patch
@@ -0,0 +1,57 @@
+From ece97a2cbb1620c8667cf293c89c30147820350e Mon Sep 17 00:00:00 2001
+From: Jan Jansky <jjansky@redhat.com>
+Date: Tue, 6 Apr 2021 10:44:45 +0200
+Subject: [PATCH] [sssd] Add individual SSSD log files
+
+The issue is that SSSD creates individual log files for its
+components. To be able to track the issue we need all of them.
+
+With one wildcard copy set we usually get just one truncated
+log file and this is not very useful for solving issues. We
+need to track the request accross logs to understand the
+problem. Also log file names are specific for paricular
+configuration.
+
+With this patch we list log files under /var/log/sssd and
+we add them one by one.
+
+Related: #2445
+Resolves: #2476
+
+Signed-off-by: Jan Jansky <jjansky@redhat.com>
+Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
+---
+ sos/plugins/sssd.py | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/sos/plugins/sssd.py b/sos/plugins/sssd.py
+index ea9fdee..0c3aaf8 100644
+--- a/sos/plugins/sssd.py
++++ b/sos/plugins/sssd.py
+@@ -10,6 +10,7 @@
+ 
+ from sos.plugins import (Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin,
+                          SoSPredicate)
++from glob import glob
+ 
+ 
+ class Sssd(Plugin):
+@@ -23,12 +24,14 @@ class Sssd(Plugin):
+     def setup(self):
+         self.add_copy_spec([
+             "/etc/sssd/sssd.conf",
+-            "/var/log/sssd/*",
+             "/var/lib/sss/pubconf/krb5.include.d/*",
+             # SSSD 1.14
+             "/etc/sssd/conf.d/*.conf"
+         ])
+ 
++        # add individual log files
++        self.add_copy_spec(glob("/var/log/sssd/*log*"))
++
+         # call sssctl commands only when sssd service is running,
+         # otherwise the command timeouts
+         sssd_pred = SoSPredicate(self, services=["sssd"])
+-- 
+1.8.3.1
+
diff --git a/SOURCES/sos-bz1938932-sssd-collect-memory-cache-individual-files.patch b/SOURCES/sos-bz1938932-sssd-collect-memory-cache-individual-files.patch
new file mode 100644
index 0000000..8ebce96
--- /dev/null
+++ b/SOURCES/sos-bz1938932-sssd-collect-memory-cache-individual-files.patch
@@ -0,0 +1,59 @@
+From 7d6cb4e71b79d1f2393db475bf65dc4e143d09fa Mon Sep 17 00:00:00 2001
+From: Jan Jansky <jjansky@redhat.com>
+Date: Tue, 6 Apr 2021 11:06:13 +0200
+Subject: [PATCH] [sssd] Collect memory cache individual files
+
+By default SSSD collects all memory cache files:
+* /var/lib/sss/mc/passwd
+* /var/lib/sss/mc/group
+* /var/lib/sss/mc/initgroups
+
+They all are included in 25MB size limit for sosreport.
+This commits add memory cache files one - by - one,
+this way 25MB size limit will be aplied per file.
+
+Related: #2462
+Resolves: #2476
+
+Signed-off-by: Jan Jansky <jjansky@redhat.com>
+Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
+---
+ sos/plugins/sssd.py | 13 +++++++------
+ 1 file changed, 7 insertions(+), 6 deletions(-)
+
+diff --git a/sos/plugins/sssd.py b/sos/plugins/sssd.py
+index 7bdd167..c532800 100644
+--- a/sos/plugins/sssd.py
++++ b/sos/plugins/sssd.py
+@@ -23,21 +23,22 @@ class Sssd(Plugin):
+ 
+     def setup(self):
+         self.add_copy_spec([
+-            # Main config file
++            # main config file
+             "/etc/sssd/sssd.conf",
+             # SSSD 1.14
+             "/etc/sssd/conf.d/*.conf",
+-            # Main logs directory
+-            "/var/log/sssd/*",
+-            # Memory cache
+-            "/var/lib/sss/mc/*",
+-            # Dynamic Kerberos configuration
++            # dynamic Kerberos configuration
+             "/var/lib/sss/pubconf/krb5.include.d/*"
+         ])
+ 
+         # add individual log files
+         self.add_copy_spec(glob("/var/log/sssd/*log*"))
+ 
++        # add memory cache
++        self.add_copy_spec(["/var/lib/sss/mc/passwd",
++                            "/var/lib/sss/mc/group",
++                            "/var/lib/sss/mc/initgroups"])
++
+         # call sssctl commands only when sssd service is running,
+         # otherwise the command timeouts
+         sssd_pred = SoSPredicate(self, services=["sssd"])
+-- 
+1.8.3.1
+
diff --git a/SOURCES/sos-bz1938932-sssd-enable-collecting-memory-cache.patch b/SOURCES/sos-bz1938932-sssd-enable-collecting-memory-cache.patch
new file mode 100644
index 0000000..c01519c
--- /dev/null
+++ b/SOURCES/sos-bz1938932-sssd-enable-collecting-memory-cache.patch
@@ -0,0 +1,45 @@
+From 587383ccf28ba4908e3b5749ca0bf4f2bc9eb1c3 Mon Sep 17 00:00:00 2001
+From: Jan Jansky <jjansky@redhat.com>
+Date: Tue, 6 Apr 2021 11:00:45 +0200
+Subject: [PATCH] [sssd] Enable collecting SSSD memory cache
+
+SSSD plugin by default collects only logs and configuration.
+This patch enables collecting memory cache maintained
+by SSSD daemon. Cache does not contain any client sensible
+data so can be safely included in the sos-report.
+
+Related: #2444
+Resolves: #2476
+
+Signed-off-by: Jan Jansky <jjansky@redhat.com>
+Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
+---
+ sos/plugins/sssd.py | 10 ++++++++--
+ 1 file changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/sos/plugins/sssd.py b/sos/plugins/sssd.py
+index 0c3aaf8..7bdd167 100644
+--- a/sos/plugins/sssd.py
++++ b/sos/plugins/sssd.py
+@@ -23,10 +23,16 @@ class Sssd(Plugin):
+ 
+     def setup(self):
+         self.add_copy_spec([
++            # Main config file
+             "/etc/sssd/sssd.conf",
+-            "/var/lib/sss/pubconf/krb5.include.d/*",
+             # SSSD 1.14
+-            "/etc/sssd/conf.d/*.conf"
++            "/etc/sssd/conf.d/*.conf",
++            # Main logs directory
++            "/var/log/sssd/*",
++            # Memory cache
++            "/var/lib/sss/mc/*",
++            # Dynamic Kerberos configuration
++            "/var/lib/sss/pubconf/krb5.include.d/*"
+         ])
+ 
+         # add individual log files
+-- 
+1.8.3.1
+
diff --git a/SOURCES/sos-bz1946641-sssd-plugin-when-sssd-common.patch b/SOURCES/sos-bz1946641-sssd-plugin-when-sssd-common.patch
new file mode 100644
index 0000000..a76b0c7
--- /dev/null
+++ b/SOURCES/sos-bz1946641-sssd-plugin-when-sssd-common.patch
@@ -0,0 +1,37 @@
+From 79e2fc023072a74d7f54e332051b19f30039c0c3 Mon Sep 17 00:00:00 2001
+From: Jan Jansky <jjansky@redhat.com>
+Date: Thu, 3 Jun 2021 16:39:33 +0200
+Subject: [PATCH] [sssd] sssd plugin when sssd-common
+
+We have reports that sssd logs are not
+collected, when we investigated
+we found associate wants to collect
+sssd related logs also when only
+sssd-common package is installed.
+
+We got this confirmed by sbr-idm.
+
+Related: #2571
+Resolves: #2572
+
+Signed-off-by: Jan Jansky <jjansky@redhat.com>
+---
+ sos/plugins/sssd.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/sos/plugins/sssd.py b/sos/plugins/sssd.py
+index c532800..6d1c24d 100644
+--- a/sos/plugins/sssd.py
++++ b/sos/plugins/sssd.py
+@@ -19,7 +19,7 @@ class Sssd(Plugin):
+ 
+     plugin_name = "sssd"
+     profiles = ('services', 'security', 'identity')
+-    packages = ('sssd',)
++    packages = ('sssd', 'sssd-common')
+ 
+     def setup(self):
+         self.add_copy_spec([
+-- 
+1.8.3.1
+
diff --git a/SOURCES/sos-bz1956672-add-plugin-for-pulp-3.patch b/SOURCES/sos-bz1956672-add-plugin-for-pulp-3.patch
new file mode 100644
index 0000000..7e84e83
--- /dev/null
+++ b/SOURCES/sos-bz1956672-add-plugin-for-pulp-3.patch
@@ -0,0 +1,146 @@
+From 36c678fe3dd8f94e116600ece082bcbdf0404e55 Mon Sep 17 00:00:00 2001
+From: Pavel Moravec <pmoravec@redhat.com>
+Date: Tue, 4 May 2021 10:43:07 +0200
+Subject: [PATCH] [pulpcore] add plugin for pulp-3
+
+Backport #2512 to add pulpcore plugin also to legacy-3.9 branch.
+
+Related: #2512
+Resolves: #2520
+
+Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
+Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
+---
+ sos/plugins/pulpcore.py | 120 ++++++++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 120 insertions(+)
+ create mode 100644 sos/plugins/pulpcore.py
+
+diff --git a/sos/plugins/pulpcore.py b/sos/plugins/pulpcore.py
+new file mode 100644
+index 0000000..46fa0d5
+--- /dev/null
++++ b/sos/plugins/pulpcore.py
+@@ -0,0 +1,120 @@
++# Copyright (C) 2021 Red Hat, Inc., Pavel Moravec <pmoravec@redhat.com>
++
++# This file is part of the sos project: https://github.com/sosreport/sos
++#
++# This copyrighted material is made available to anyone wishing to use,
++# modify, copy, or redistribute it subject to the terms and conditions of
++# version 2 of the GNU General Public License.
++#
++# See the LICENSE file in the source distribution for further information.
++
++from sos.plugins import Plugin, IndependentPlugin
++from pipes import quote
++from re import match
++
++
++class PulpCore(Plugin, IndependentPlugin):
++
++    short_desc = 'Pulp-3 aka pulpcore'
++
++    plugin_name = "pulpcore"
++    commands = ("pulpcore-manager",)
++    files = ("/etc/pulp/settings.py",)
++    option_list = [
++        ('task-days', 'days of tasks history', 'fast', 7)
++    ]
++
++    def parse_settings_config(self):
++        databases_scope = False
++        self.dbhost = "localhost"
++        self.dbport = 5432
++        self.dbpasswd = ""
++        # TODO: read also redis config (we dont expect much customisations)
++        # TODO: read also db user (pulp) and database name (pulpcore)
++        self.staticroot = "/var/lib/pulp/assets"
++        self.uploaddir = "/var/lib/pulp/media/upload"
++
++        def separate_value(line, sep=':'):
++            # an auxiliary method to parse values from lines like:
++            #       'HOST': 'localhost',
++            val = line.split(sep)[1].lstrip().rstrip(',')
++            if (val.startswith('"') and val.endswith('"')) or \
++               (val.startswith('\'') and val.endswith('\'')):
++                val = val[1:-1]
++            return val
++
++        try:
++            for line in open("/etc/pulp/settings.py").read().splitlines():
++                # skip empty lines and lines with comments
++                if not line or line[0] == '#':
++                    continue
++                if line.startswith("DATABASES"):
++                    databases_scope = True
++                    continue
++                # example HOST line to parse:
++                #         'HOST': 'localhost',
++                if databases_scope and match(r"\s+'HOST'\s*:\s+\S+", line):
++                    self.dbhost = separate_value(line)
++                if databases_scope and match(r"\s+'PORT'\s*:\s+\S+", line):
++                    self.dbport = separate_value(line)
++                if databases_scope and match(r"\s+'PASSWORD'\s*:\s+\S+", line):
++                    self.dbpasswd = separate_value(line)
++                # if line contains closing '}' database_scope end
++                if databases_scope and '}' in line:
++                    databases_scope = False
++                if line.startswith("STATIC_ROOT = "):
++                    self.staticroot = separate_value(line, sep='=')
++                if line.startswith("CHUNKED_UPLOAD_DIR = "):
++                    self.uploaddir = separate_value(line, sep='=')
++        except IOError:
++            # fallback when the cfg file is not accessible
++            pass
++        # set the password to os.environ when calling psql commands to prevent
++        # printing it in sos logs
++        # we can't set os.environ directly now: other plugins can overwrite it
++        self.env = {"PGPASSWORD": self.dbpasswd}
++
++    def setup(self):
++        self.parse_settings_config()
++
++        self.add_copy_spec("/etc/pulp/settings.py")
++
++        self.add_cmd_output("rq info -u redis://localhost:6379/8",
++                            env={"LC_ALL": "en_US.UTF-8"},
++                            suggest_filename="rq_info")
++        self.add_cmd_output("curl -ks https://localhost/pulp/api/v3/status/",
++                            suggest_filename="pulp_status")
++        dynaconf_env = {"LC_ALL": "en_US.UTF-8",
++                        "PULP_SETTINGS": "/etc/pulp/settings.py",
++                        "DJANGO_SETTINGS_MODULE": "pulpcore.app.settings"}
++        self.add_cmd_output("dynaconf list", env=dynaconf_env)
++        for _dir in [self.staticroot, self.uploaddir]:
++            self.add_cmd_output("ls -l %s" % _dir)
++
++        task_days = self.get_option('task-days')
++        for table in ['core_task', 'core_taskgroup',
++                      'core_reservedresourcerecord',
++                      'core_taskreservedresourcerecord',
++                      'core_groupprogressreport', 'core_progressreport']:
++            _query = "select * from %s where pulp_last_updated > NOW() - " \
++                     "interval '%s days' order by pulp_last_updated" % \
++                     (table, task_days)
++            _cmd = "psql -h %s -p %s -U pulp -d pulpcore -c %s" % \
++                   (self.dbhost, self.dbport, quote(_query))
++            self.add_cmd_output(_cmd, env=self.env, suggest_filename=table)
++
++    def postproc(self):
++        # TODO obfuscate from /etc/pulp/settings.py :
++        # SECRET_KEY = "eKfeDkTnvss7p5WFqYdGPWxXfHnsbDBx"
++        # 'PASSWORD': 'tGrag2DmtLqKLTWTQ6U68f6MAhbqZVQj',
++        self.do_path_regex_sub(
++            "/etc/pulp/settings.py",
++            r"(SECRET_KEY\s*=\s*)(.*)",
++            r"\1********")
++        self.do_path_regex_sub(
++            "/etc/pulp/settings.py",
++            r"(PASSWORD\S*\s*:\s*)(.*)",
++            r"\1********")
++
++
++# vim: set et ts=4 sw=4 :
+-- 
+1.8.3.1
+
diff --git a/SOURCES/sos-bz1956672-add-plugin-for-pulp-3_2.patch b/SOURCES/sos-bz1956672-add-plugin-for-pulp-3_2.patch
new file mode 100644
index 0000000..4bf6864
--- /dev/null
+++ b/SOURCES/sos-bz1956672-add-plugin-for-pulp-3_2.patch
@@ -0,0 +1,40 @@
+From c7ddda1bb6dc85c0d509b656511fd79d3c1d7e06 Mon Sep 17 00:00:00 2001
+From: Jan Jansky <jjansky@redhat.com>
+Date: Tue, 15 Jun 2021 17:15:15 +0200
+Subject: [PATCH] [pulpcore] obfuscate two passwords from 'dynaconf list'
+
+The command also prints content of /etc/pulp/settings.py
+where we need to also obfuscate the SECRET_KEY and PASSWORD values.
+
+Related: #2583
+Resolves: #2584
+
+Signed-off-by: Jan Jansky <jjansky@redhat.com>
+---
+ sos/plugins/pulpcore.py | 11 ++++++++++-
+ 1 file changed, 10 insertions(+), 1 deletion(-)
+
+diff --git a/sos/plugins/pulpcore.py b/sos/plugins/pulpcore.py
+index 46fa0d5..f4ac467 100644
+--- a/sos/plugins/pulpcore.py
++++ b/sos/plugins/pulpcore.py
+@@ -115,6 +115,15 @@ class PulpCore(Plugin, IndependentPlugin):
+             "/etc/pulp/settings.py",
+             r"(PASSWORD\S*\s*:\s*)(.*)",
+             r"\1********")
+-
++        # apply the same for "dynaconf list" output that prints settings.py
++        # in a pythonic format
++        self.do_cmd_output_sub(
++            "dynaconf list",
++            r"(SECRET_KEY<str>\s*)'(.*)'",
++            r"\1********")
++        self.do_cmd_output_sub(
++            "dynaconf list",
++            r"(PASSWORD\S*\s*:\s*)(.*)",
++            r"\1********")
+ 
+ # vim: set et ts=4 sw=4 :
+-- 
+1.8.3.1
+
diff --git a/SOURCES/sos-bz1956817-fix-unmatched-group-error-in-scrubbing-installer-logs.patch b/SOURCES/sos-bz1956817-fix-unmatched-group-error-in-scrubbing-installer-logs.patch
new file mode 100644
index 0000000..2c81deb
--- /dev/null
+++ b/SOURCES/sos-bz1956817-fix-unmatched-group-error-in-scrubbing-installer-logs.patch
@@ -0,0 +1,36 @@
+From 612b65cf4551b8b40afbc75d707bc7e573fcc6fe Mon Sep 17 00:00:00 2001
+From: Jan Jansky <jjansky@redhat.com>
+Date: Tue, 4 May 2021 13:02:20 +0200
+Subject: [PATCH] [foreman] fix unmatched group error in scrubbing installer
+ logs
+
+Legacy PR.
+
+Having just one whitespace before "Found key:" failed to match
+the first group.
+
+Related: #2521
+Resolves: #2522
+
+Signed-off-by: Jan Jansky <jjansky@redhat.com>
+Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
+---
+ sos/plugins/foreman.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/sos/plugins/foreman.py b/sos/plugins/foreman.py
+index 84fb4b0..d3d3543 100644
+--- a/sos/plugins/foreman.py
++++ b/sos/plugins/foreman.py
+@@ -274,7 +274,7 @@ class Foreman(Plugin):
+             satreg,
+             r"\1 ********")
+         # need to do two passes here, debug output has different formatting
+-        sat_debug_reg = (r"(\s)* (Found key: (\"(foreman(.*?)|katello)"
++        sat_debug_reg = (r"(\s)+(Found key: (\"(foreman(.*?)|katello)"
+                          r"::(.*(token|secret|key|passw).*)\") value:) "
+                          r"(.*)")
+         self.do_path_regex_sub(
+-- 
+1.8.3.1
+
diff --git a/SOURCES/sos-bz1964000-foreman-collect-all-apache-foreman.patch b/SOURCES/sos-bz1964000-foreman-collect-all-apache-foreman.patch
new file mode 100644
index 0000000..9285a08
--- /dev/null
+++ b/SOURCES/sos-bz1964000-foreman-collect-all-apache-foreman.patch
@@ -0,0 +1,34 @@
+From e24dc299b7c41bf446b0330869c4b4687fdfbfde Mon Sep 17 00:00:00 2001
+From: Jan Jansky <jjansky@redhat.com>
+Date: Tue, 25 May 2021 10:00:34 +0200
+Subject: [PATCH] [foreman] Collect all apache foreman* logs in foreman plugin
+
+Some important logs are written to foreman_[access|error].log in
+/var/log/httpd dir. foreman plugin should collect all the logs that
+apache plugin skips to prevent duplicit collection.
+
+Related: #2554
+Resolves: #2557
+
+Signed-off-by: Jan Jansky <jjansky@redhat.com>
+Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
+---
+ sos/plugins/foreman.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/sos/plugins/foreman.py b/sos/plugins/foreman.py
+index d3d3543..58f5256 100644
+--- a/sos/plugins/foreman.py
++++ b/sos/plugins/foreman.py
+@@ -114,7 +114,7 @@ class Foreman(Plugin):
+             "/etc/puppetlabs/puppet/ssl/certs/ca.pem",
+             "/etc/puppetlabs/puppet/ssl/certs/{}.pem".format(_hostname),
+             "/var/lib/puppet/ssl/certs/{}.pem".format(_hostname),
+-            "/var/log/{}*/foreman-ssl_*_ssl*log[.-]*".format(self.apachepkg),
++            "/var/log/{}*/foreman*".format(self.apachepkg),
+             "/var/log/{}*/katello-reverse-proxy_access_ssl.log*".format(
+                 self.apachepkg),
+             "/var/log/{}*/katello-reverse-proxy_error_ssl.log*".format(
+-- 
+1.8.3.1
+
diff --git a/SOURCES/sos-bz1964000-foreman-follow-sizelimit-to-foreman-maintain-and-installer-logs.patch b/SOURCES/sos-bz1964000-foreman-follow-sizelimit-to-foreman-maintain-and-installer-logs.patch
new file mode 100644
index 0000000..5894385
--- /dev/null
+++ b/SOURCES/sos-bz1964000-foreman-follow-sizelimit-to-foreman-maintain-and-installer-logs.patch
@@ -0,0 +1,38 @@
+From e8cdf68382ae9160363fd6dba4bf75afd047c764 Mon Sep 17 00:00:00 2001
+From: Jan Jansky <jjansky@redhat.com>
+Date: Tue, 25 May 2021 10:12:16 +0200
+Subject: [PATCH] [foreman] Follow sizelimit to foreman maintain and installer
+ logs
+
+Specifying add_copy_spec to a directory means all files from the
+directory are collected. That is ridiculous for foremain-installer and
+namely foreman-maintain logs, where we should stick to the size limit by
+default. Hence collect files from the dir "specifically".
+
+Related: #2554
+Resolves: #2557
+
+Signed-off-by: Jan Jansky <jjansky@redhat.com>
+Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
+---
+ sos/plugins/foreman.py | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/sos/plugins/foreman.py b/sos/plugins/foreman.py
+index 58f5256..c742ebc 100644
+--- a/sos/plugins/foreman.py
++++ b/sos/plugins/foreman.py
+@@ -99,8 +99,8 @@ class Foreman(Plugin):
+             "/var/log/foreman-proxy/smart_proxy_dynflow_core*log*",
+             "/var/log/foreman-selinux-install.log",
+             "/var/log/foreman-proxy-certs-generate*",
+-            "/var/log/foreman-installer/",
+-            "/var/log/foreman-maintain/",
++            "/var/log/foreman-installer/*",
++            "/var/log/foreman-maintain/*",
+             "/var/log/syslog*",
+             # Specific to TFM, _all_ catalina logs are relevant. Adding this
+             # here rather than the tomcat plugin to ease maintenance and not
+-- 
+1.8.3.1
+
diff --git a/SOURCES/sos-centos-branding.patch b/SOURCES/sos-centos-branding.patch
deleted file mode 100644
index 52b7c6d..0000000
--- a/SOURCES/sos-centos-branding.patch
+++ /dev/null
@@ -1,150 +0,0 @@
-diff -uNrp sos-3.9.orig/sos/policies/redhat.py sos-3.9/sos/policies/redhat.py
---- sos-3.9.orig/sos/policies/redhat.py	2020-03-24 15:33:13.000000000 +0000
-+++ sos-3.9/sos/policies/redhat.py	2020-10-03 12:48:32.088747085 +0000
-@@ -89,7 +89,7 @@ class RedHatPolicy(LinuxPolicy):
-     def check(cls):
-         """This method checks to see if we are running on Red Hat. It must be
-         overriden by concrete subclasses to return True when running on a
--        Fedora, RHEL or other Red Hat distribution or False otherwise."""
-+        Fedora, CentOS, RHEL or other Red Hat distribution or False otherwise."""
-         return False
- 
-     def check_usrmove(self, pkgs):
-@@ -187,29 +187,29 @@ _opts_all_logs_verify = SoSOptions(all_l
- _cb_profiles = ['boot', 'storage', 'system']
- _cb_plugopts = ['boot.all-images=on', 'rpm.rpmva=on', 'rpm.rpmdb=on']
- 
--RHEL_RELEASE_STR = "Red Hat Enterprise Linux"
-+RHEL_RELEASE_STR = "CentOS Linux"
- 
- RHV = "rhv"
--RHV_DESC = "Red Hat Virtualization"
-+RHV_DESC = "Virtualization"
- 
- RHEL = "rhel"
- RHEL_DESC = RHEL_RELEASE_STR
- 
- RHOSP = "rhosp"
--RHOSP_DESC = "Red Hat OpenStack Platform"
-+RHOSP_DESC = "OpenStack Platform"
- 
- RHOCP = "ocp"
--RHOCP_DESC = "OpenShift Container Platform by Red Hat"
-+RHOCP_DESC = "OpenShift Container Platform"
- RHOSP_OPTS = SoSOptions(plugopts=[
-                              'process.lsof=off',
-                              'networking.ethtool_namespaces=False',
-                              'networking.namespaces=200'])
- 
- RH_CFME = "cfme"
--RH_CFME_DESC = "Red Hat CloudForms"
-+RH_CFME_DESC = "CloudForms"
- 
- RH_SATELLITE = "satellite"
--RH_SATELLITE_DESC = "Red Hat Satellite"
-+RH_SATELLITE_DESC = "Satellite"
- SAT_OPTS = SoSOptions(verify=True, plugopts=['apache.log=on'])
- 
- CB = "cantboot"
-@@ -257,8 +257,8 @@ RH_FTP_HOST = "ftp://dropbox.redhat.com"
- 
- class RHELPolicy(RedHatPolicy):
-     distro = RHEL_RELEASE_STR
--    vendor = "Red Hat"
--    vendor_url = "https://access.redhat.com/support/"
-+    vendor = "CentOS"
-+    vendor_url = "https://wiki.centos.org/support"
-     msg = _("""\
- This command will collect diagnostic and configuration \
- information from this %(distro)s system and installed \
-@@ -280,7 +280,7 @@ support representative.
-     def check(cls):
-         """Test to see if the running host is a RHEL installation.
- 
--            Checks for the presence of the "Red Hat Enterprise Linux"
-+            Checks for the presence of the "CentOS Linux"
-             release string at the beginning of the NAME field in the
-             `/etc/os-release` file and returns ``True`` if it is
-             found, and ``False`` otherwise.
-@@ -334,7 +334,7 @@ support representative.
- 
-     def get_upload_url_string(self):
-         if self.get_upload_url().startswith(RH_API_HOST):
--            return "Red Hat Customer Portal"
-+            return "Customer Portal"
-         return self.upload_url or RH_FTP_HOST
- 
-     def get_upload_user(self):
-@@ -389,7 +389,7 @@ class CentOsPolicy(RHELPolicy):
- 
- ATOMIC = "atomic"
- ATOMIC_RELEASE_STR = "Atomic"
--ATOMIC_DESC = "Red Hat Enterprise Linux Atomic Host"
-+ATOMIC_DESC = "Atomic Host"
- 
- atomic_presets = {
-     ATOMIC: PresetDefaults(name=ATOMIC, desc=ATOMIC_DESC, note=NOTE_TIME,
-@@ -398,7 +398,7 @@ atomic_presets = {
- 
- 
- class RedHatAtomicPolicy(RHELPolicy):
--    distro = "Red Hat Atomic Host"
-+    distro = "Atomic Host"
-     msg = _("""\
- This command will collect diagnostic and configuration \
- information from this %(distro)s system.
-@@ -435,7 +435,7 @@ support representative.
- 
- 
- class RedHatCoreOSPolicy(RHELPolicy):
--    distro = "Red Hat CoreOS"
-+    distro = "CoreOS"
-     msg = _("""\
- This command will collect diagnostic and configuration \
- information from this %(distro)s system.
-@@ -456,7 +456,7 @@ support representative.
-         host_release = os.environ[ENV_HOST_SYSROOT] + cls._redhat_release
-         try:
-             for line in open(host_release, 'r').read().splitlines():
--                coreos |= 'Red Hat CoreOS' in line
-+                coreos |= 'CoreOS' in line
-         except IOError:
-             pass
-         return coreos
-diff -uNrp sos-3.9.orig/sos/policies/redhat.py sos-3.9/sos/policies/redhat.py
---- sos-3.9.orig/sos/policies/redhat.py	2021-02-02 15:39:49.180326048 +0000
-+++ sos-3.9/sos/policies/redhat.py	2021-02-02 15:44:02.907874181 +0000
-@@ -31,9 +31,9 @@ except NameError:
- 
- 
- class RedHatPolicy(LinuxPolicy):
--    distro = "Red Hat"
--    vendor = "Red Hat"
--    vendor_url = "https://www.redhat.com/"
-+    distro = "CentOS"
-+    vendor = "CentOS"
-+    vendor_url = "https://www.centos.org/"
-     _redhat_release = '/etc/redhat-release'
-     _tmp_dir = "/var/tmp"
-     _rpmq_cmd = 'rpm -qa --queryformat "%{NAME}|%{VERSION}|%{RELEASE}\\n"'
-@@ -87,9 +87,9 @@ class RedHatPolicy(LinuxPolicy):
- 
-     @classmethod
-     def check(cls):
--        """This method checks to see if we are running on Red Hat. It must be
-+        """This method checks to see if we are running on CentOS Linux. It must be
-         overriden by concrete subclasses to return True when running on a
--        Fedora, CentOS, RHEL or other Red Hat distribution or False otherwise."""
-+        Fedora, CentOS, RHEL or other CentOS distribution or False otherwise."""
-         return False
- 
-     def check_usrmove(self, pkgs):
-@@ -309,7 +309,7 @@ support representative.
-             return
-         if self.case_id:
-             self.upload_user = input(_(
--                "Enter your Red Hat Customer Portal username (empty to use "
-+                "Enter your Customer Portal username (empty to use "
-                 "public dropbox): ")
-             )
-             if not self.upload_user:
diff --git a/SPECS/sos.spec b/SPECS/sos.spec
index be19efb..693c894 100644
--- a/SPECS/sos.spec
+++ b/SPECS/sos.spec
@@ -2,7 +2,7 @@
 Summary: A set of tools to gather troubleshooting information from a system
 Name: sos
 Version: 3.9
-Release: 5%{?dist}.4
+Release: 5%{?dist}.6
 Group: Applications/System
 Source0: https://github.com/sosreport/sos/archive/%{version}.tar.gz
 License: GPLv2+
@@ -44,7 +44,15 @@ Patch21: sos-bz1932772-candlepin-foreman_psql_with_--no-password_2.patch
 Patch22: sos-bz1903144-pacemaker_fix_scrubbing_password.patch
 Patch23: sos-bz1886784-filesys_never_collect_panfs.patch
 Patch24: sos-bz1892692-openstack_ceilometer_backend_url.patch
-Patch25: sos-centos-branding.patch
+Patch25: sos-bz1938932-sssd-add-individual-sssd-log-files.patch
+Patch26: sos-bz1938932-sssd-enable-collecting-memory-cache.patch
+Patch27: sos-bz1938932-sssd-collect-memory-cache-individual-files.patch
+Patch28: sos-bz1956672-add-plugin-for-pulp-3.patch
+Patch29: sos-bz1956672-add-plugin-for-pulp-3_2.patch
+Patch30: sos-bz1956817-fix-unmatched-group-error-in-scrubbing-installer-logs.patch
+Patch31: sos-bz1964000-foreman-collect-all-apache-foreman.patch
+Patch32: sos-bz1964000-foreman-follow-sizelimit-to-foreman-maintain-and-installer-logs.patch
+Patch33: sos-bz1946641-sssd-plugin-when-sssd-common.patch
 
 %description
 Sos is a set of tools that gathers information about system
@@ -80,6 +88,14 @@ support technicians and developers.
 %patch23 -p1
 %patch24 -p1
 %patch25 -p1
+%patch26 -p1
+%patch27 -p1
+%patch28 -p1
+%patch29 -p1
+%patch30 -p1
+%patch31 -p1
+%patch32 -p1
+%patch33 -p1
 
 %build
 make
@@ -103,8 +119,21 @@ rm -rf ${RPM_BUILD_ROOT}
 %config(noreplace) %{_sysconfdir}/sos.conf
 
 %changelog
-* Tue Apr 27 2021 CentOS Sources <bugs@centos.org> - 3.9-5.el7.centos.4
-- Roll in CentOS Branding
+* Wed Jun 16 2021 Jan Jansky <jjansky@redhat.com> = 3.9-5.6
+- [pulpcore] add plugin for pulp-3
+  Resolves: bz1956672
+
+* Fri Jun 11 2021 Jan Jansky <jjansky@redhat.com> = 3.9-5.5
+- [sssd] Add individual SSSD log files
+  Resolves: bz1938932
+- [sssd] sssd plugin when sssd-common
+  Resolves: bz1946641
+- [foreman] fix unmatched group in scrubbing installer logs
+  Resolves: bz1956817
+- [foreman] Sizelimit foreman-maintain and installer logs
+  Resolves: bz1964000
+- [pulpcore] add plugin for pulp-3
+  Resolves: bz1956672
 
 * Thu Mar 18 2021 Jan Jansky <jjansky@redhat.com> = 3.9-5.4
 - [candlepin/foreman] psql with --no-password