The fix for this problem is now available at the Patches repository. To apply it, check: https://www.uyuni-project.org/pages/patches.html#server While this is not a CVE fix, and despite reposync does not crashes (it completes the operation but shows the error), we decided to release this patch, as otherwise users will get emails each time the sync happens, if it's automated, and the error looks way more dangerous than it really is. Of course the patch will be part of 2021.06 as well. I will send now the announcement to the other lists. On viernes, 28 de mayo de 2021 9:32:32 (CEST) Michael Calmer wrote:
Hi
thanks. According to the man page "Maintainer" is a recommended, but not mandatory field. So reposync should handle it as optional. Thanks for the report. We will fix it.
Am Freitag, 28. Mai 2021, 08:18:14 CEST schrieb Markus.Thum@iese.fraunhofer.de:
Hi, here comes the output of " spacewalk-repo-sync --channel debian-10-amd64-uyuni-client --type deb --fail"
uyuni:~ # spacewalk-repo-sync --channel debian-10-amd64-uyuni-client --type deb --fail 08:15:19 ====================================== 08:15:19 | Channel: debian-10-amd64-uyuni-client 08:15:19 ====================================== 08:15:19 Sync of channel started. 08:15:20 Repo URL: https://download.opensuse.org/repositories/systemsmanagement:/Uyuni:/Stab le:/Debian10-Uyuni-Client-Tools/Debian_10/ 08:15:20 Packages in repo: 35 08:15:20 Packages already synced: 31 08:15:20 Packages to sync: 4 08:15:20 New packages to download: 4 08:15:20 Downloading packages: 08:15:20 Downloading total 4 files from 1 queues. 08:15:22 1/4 : scap-security-guide_0.1.55git20210323-1.13.2.uyuni_all.deb 08:15:22 2/4 : scap-security-guide-debian_0.1.55git20210323-1.13.2.uyuni_all.deb 08:15:22 3/4 : scap-security-guide-ubuntu_0.1.55git20210323-1.13.2.uyuni_all.deb 08:15:23 4/4 : scap-security-guide-redhat_0.1.55git20210323-1.13.2.uyuni_all.deb 08:15:23 08:15:23 Importing packages to DB: 08:15:23 'Maintainer' 08:15:23 Unexpected error: <class 'uyuni.common.rhn_pkg.InvalidPackageError'> 08:15:23 multiprocessing.pool.RemoteTraceback: """
Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/uyuni/common/rhn_deb.py", line 58, in __init__> 'vendor': debcontrol.get_as_string('Maintainer'),
File "/usr/lib/python3.6/site-packages/debian/deb822.py", line 498, in get_as_string> return six.text_type(self[key])
File "/usr/lib/python3.6/site-packages/debian/deb822.py", line 247, in __getitem__> value = self.__dict[key]
KeyError: 'Maintainer'
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/uyuni/common/rhn_deb.py", line 130, in read_header> self.header = deb_Header(self.header_data)
File "/usr/lib/python3.6/site-packages/uyuni/common/rhn_deb.py", line 92, in __init__> raise_with_tb(InvalidPackageError(e), sys.exc_info()[2])
File "/usr/lib/python3.6/site-packages/uyuni/common/usix.py", line 76, in raise_with_tb> raise value.with_traceback(tb)
File "/usr/lib/python3.6/site-packages/uyuni/common/rhn_deb.py", line 58, in __init__> 'vendor': debcontrol.get_as_string('Maintainer'),
File "/usr/lib/python3.6/site-packages/debian/deb822.py", line 498, in get_as_string> return six.text_type(self[key])
File "/usr/lib/python3.6/site-packages/debian/deb822.py", line 247, in __getitem__> value = self.__dict[key]
uyuni.common.rhn_pkg.InvalidPackageError: 'Maintainer'
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "/usr/lib64/python3.6/multiprocessing/pool.py", line 119, in worker
result = (True, func(*args, **kwds))
File "/usr/lib/python3.6/site-packages/spacewalk/satellite_tools/reposync.py ", line 1217, in import_package_batch> pack.load_checksum_from_header()
File "/usr/lib/python3.6/site-packages/spacewalk/satellite_tools/repo_plugin s/__init__.py", line 90, in load_checksum_from_header> self.a_pkg.read_header()
File "/usr/lib/python3.6/site-packages/uyuni/common/rhn_deb.py", line 133, in read_header> raise_with_tb(InvalidPackageError(e), sys.exc_info()[2])
File "/usr/lib/python3.6/site-packages/uyuni/common/usix.py", line 76, in raise_with_tb> raise value.with_traceback(tb)
File "/usr/lib/python3.6/site-packages/uyuni/common/rhn_deb.py", line 130, in read_header> self.header = deb_Header(self.header_data)
File "/usr/lib/python3.6/site-packages/uyuni/common/rhn_deb.py", line 92, in __init__> raise_with_tb(InvalidPackageError(e), sys.exc_info()[2])
File "/usr/lib/python3.6/site-packages/uyuni/common/usix.py", line 76, in raise_with_tb> raise value.with_traceback(tb)
File "/usr/lib/python3.6/site-packages/uyuni/common/rhn_deb.py", line 58, in __init__> 'vendor': debcontrol.get_as_string('Maintainer'),
File "/usr/lib/python3.6/site-packages/debian/deb822.py", line 498, in get_as_string> return six.text_type(self[key])
File "/usr/lib/python3.6/site-packages/debian/deb822.py", line 247, in __getitem__> value = self.__dict[key]
uyuni.common.rhn_pkg.InvalidPackageError: 'Maintainer' """
The above exception was the direct cause of the following exception:
Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/spacewalk/satellite_tools/reposync.py ", line 596, in sync> ret = self.import_packages(plugin, data['id'], url, is_non_local_repo)
File "/usr/lib/python3.6/site-packages/spacewalk/satellite_tools/reposync.py ", line 1110, in import_packages> affected_channels_batch, failed_packages_batch, all_packages, processed_batch = result.get()> File "/usr/lib64/python3.6/multiprocessing/pool.py", line 644, in get
raise self._value
uyuni.common.rhn_pkg.InvalidPackageError: 'Maintainer'
08:15:23 Total time: 0:00:04 uyuni:~ #
Viele Grüße Markus
-----Original Message----- From: Michael Calmer <mc@suse.de> Sent: Donnerstag, 27. Mai 2021 16:13 To: users@lists.uyuni-project.org Subject: Re: Reposync error Debian10-Uyuni-Client-Tools
Hi
Am Donnerstag, 27. Mai 2021, 14:31:29 CEST schrieb
Markus.Thum@iese.fraunhofer.de:
Hi, synchronizing the repository "External - Uyuni Client Tools for Debian 10 Buster> > AMD64<https://uyuni.iese.fhg.de/rhn/channels/manage/repos/RepoEdit.do?id
526>" throws an error.
In the logs I find 11:47:44 | Channel: debian-10-amd64-uyuni-client 11:47:44 ====================================== 11:47:44 Sync of channel started.
11:47:45 Repo URL: https://download.opensuse.org/repositories/systemsmanagement:/Uyuni:/Sta bl e:/Debian10-Uyuni-Client-Tools/Debian_10/
11:47:45 Packages in repo: 35 11:47:45 Packages already synced: 31 11:47:45 Packages to sync: 4 11:47:45 New packages to download: 4 11:47:45 Downloading packages: 11:47:45 Downloading total 4 files from 1 queues. 11:47:45 1/4 : scap-security-guide_0.1.55git20210323-1.13.2.uyuni_all.deb 11:47:46 2/4 : scap-security-guide-debian_0.1.55git20210323-
1.13.2.uyuni_all.deb
11:47:46 3/4 : scap-security-guide-ubuntu_0.1.55git20210323-
1.13.2.uyuni_all.deb
11:47:47 4/4 : scap-security-guide-redhat_0.1.55git20210323-
1.13.2.uyuni_all.deb
11:47:47 11:47:47 Importing packages to DB: 11:47:47 Package batch #1 of 1 completed... 11:47:47 11:47:47 Patches in repo: 0. 11:47:47 Total time: 0:00:02
2021-05-27 11:47:47,372 [Thread-113] ERROR
com.redhat.rhn.taskomatic.task.RepoSyncTask - 11:47:47 'Maintainer'
11:47:47 'Maintainer' 11:47:47 'Maintainer' 11:47:47 'Maintainer'
2021-05-27 11:47:47,439 [DefaultQuartzScheduler_Worker-7] ERROR
com.redhat.rhn.taskomatic.task.RepoSyncTask - Command '[/usr/bin/spacewalk-repo-sync, --channel, debian-10-amd64-uyuni-client, --type, deb, --non-interactive]' exited with error code 4
Can you run
$> spacewalk-repo-sync --channel debian-10-amd64-uyuni-client --type deb --fail
manual and paste the stacktrace which should hopefully be printed when it fail.
-- Regards
Michael Calmer
-- Michael Calmer SUSE Software Solutions Germany GmbH, Maxfeldstr. 5, D-90409 Nuernberg T: +49 (0) 911 74053 0 F: +49 (0) 911 74053575 - e-mail: Michael.Calmer@suse.com
-- SUSE Software Solutions Germany GmbH, GF: Felix Imendörffer (HRB 36809, AG Nürnberg)
-- Julio González Gil Release Engineer, SUSE Manager and Uyuni jgonzalez@suse.com