* Fri Mar 26 2021 Tomas Bzatek <tbzatek@redhat.com> - 2.9.2-2
- Fix FAT mkfs with dosfstools >= 4.2 - udiskslinuxdriveata: Use GTask to apply configuration in a thread - Limit allowed module names - 80-udisks2.rules: Ignore Apple boot partition from livecd-tools
This commit is contained in:
		
							parent
							
								
									bec888cb71
								
							
						
					
					
						commit
						41209e5112
					
				
							
								
								
									
										25
									
								
								ignore-apple-boot-part.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								ignore-apple-boot-part.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,25 @@ | |||||||
|  | From b9863c11601e199420a375e13505e2b795de77c5 Mon Sep 17 00:00:00 2001 | ||||||
|  | From: Frederick Grose <4335897+FGrose@users.noreply.github.com> | ||||||
|  | Date: Tue, 9 Feb 2021 19:02:01 -0500 | ||||||
|  | Subject: [PATCH] 80-udisks2.rules: Ignore Apple boot partition from | ||||||
|  |  livecd-tools | ||||||
|  | 
 | ||||||
|  | https://github.com/livecd-tools/livecd-tools/pull/176 creates a new boot | ||||||
|  | partition with livecd-iso-to-disk from Fedora Live .iso files that UDISKS | ||||||
|  | should ignore. | ||||||
|  | ---
 | ||||||
|  |  data/80-udisks2.rules | 1 + | ||||||
|  |  1 file changed, 1 insertion(+) | ||||||
|  | 
 | ||||||
|  | diff --git a/data/80-udisks2.rules b/data/80-udisks2.rules
 | ||||||
|  | index fb50f48a0..d6fa072fd 100644
 | ||||||
|  | --- a/data/80-udisks2.rules
 | ||||||
|  | +++ b/data/80-udisks2.rules
 | ||||||
|  | @@ -122,6 +122,7 @@ ENV{ID_PART_ENTRY_SCHEME}=="mac", ENV{ID_PART_ENTRY_TYPE}=="Apple_Bootstrap", EN
 | ||||||
|  |   | ||||||
|  |  # Apple Boot partitions | ||||||
|  |  ENV{ID_PART_ENTRY_SCHEME}=="gpt", ENV{ID_PART_ENTRY_TYPE}=="426f6f74-0000-11aa-aa11-00306543ecac", ENV{UDISKS_IGNORE}="1" | ||||||
|  | +ENV{ID_FS_LABEL}=="ANACONDA", ENV{ID_PART_ENTRY_TYPE}=="48465300-0000-11aa-aa11-00306543ecac|0xaf", ENV{UDISKS_IGNORE}="1"
 | ||||||
|  |   | ||||||
|  |  # special DOS partition types (EFI, hidden, etc.) and RAID/LVM | ||||||
|  |  # see http://www.win.tue.nl/~aeb/partitions/partition_types-1.html | ||||||
							
								
								
									
										60
									
								
								udisks-2.10.0-ata_conf_apply_GTask.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								udisks-2.10.0-ata_conf_apply_GTask.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,60 @@ | |||||||
|  | commit 6ff556afabd490feb6c4b29f9e91e81d64e2c0ed | ||||||
|  | Author: Tomas Bzatek <tbzatek@redhat.com> | ||||||
|  | Date:   Tue Mar 23 12:56:40 2021 +0100 | ||||||
|  | 
 | ||||||
|  |     udiskslinuxdriveata: Use GTask to apply configuration in a thread | ||||||
|  |      | ||||||
|  |     Should fix a leaking GThread without a need to join or track it anyhow. | ||||||
|  | 
 | ||||||
|  | diff --git a/src/udiskslinuxdriveata.c b/src/udiskslinuxdriveata.c
 | ||||||
|  | index 5ebdcd76..2de138cd 100644
 | ||||||
|  | --- a/src/udiskslinuxdriveata.c
 | ||||||
|  | +++ b/src/udiskslinuxdriveata.c
 | ||||||
|  | @@ -1625,10 +1625,13 @@ apply_conf_data_free (ApplyConfData *data)
 | ||||||
|  |    g_free (data); | ||||||
|  |  } | ||||||
|  |   | ||||||
|  | -static gpointer
 | ||||||
|  | -apply_configuration_thread_func (gpointer user_data)
 | ||||||
|  | +static void
 | ||||||
|  | +apply_configuration_thread_func (GTask        *task,
 | ||||||
|  | +                                 gpointer      source_object,
 | ||||||
|  | +                                 gpointer      task_data,
 | ||||||
|  | +                                 GCancellable *cancellable)
 | ||||||
|  |  { | ||||||
|  | -  ApplyConfData *data = user_data;
 | ||||||
|  | +  ApplyConfData *data = task_data;
 | ||||||
|  |    UDisksDaemon *daemon; | ||||||
|  |    const gchar *device_file = NULL; | ||||||
|  |    gint fd = -1; | ||||||
|  | @@ -1799,8 +1802,6 @@ apply_configuration_thread_func (gpointer user_data)
 | ||||||
|  |   out: | ||||||
|  |    if (fd != -1) | ||||||
|  |      close (fd); | ||||||
|  | -  apply_conf_data_free (data);
 | ||||||
|  | -  return NULL;
 | ||||||
|  |  } | ||||||
|  |   | ||||||
|  |  /** | ||||||
|  | @@ -1819,6 +1820,7 @@ udisks_linux_drive_ata_apply_configuration (UDisksLinuxDriveAta *drive,
 | ||||||
|  |  { | ||||||
|  |    gboolean has_conf = FALSE; | ||||||
|  |    ApplyConfData *data = NULL; | ||||||
|  | +  GTask *task;
 | ||||||
|  |   | ||||||
|  |    data = g_new0 (ApplyConfData, 1); | ||||||
|  |    data->ata_pm_standby = -1; | ||||||
|  | @@ -1862,9 +1864,10 @@ udisks_linux_drive_ata_apply_configuration (UDisksLinuxDriveAta *drive,
 | ||||||
|  |    /* this can easily take a long time and thus block (the drive may be in standby mode | ||||||
|  |     * and needs to spin up) - so run it in a thread | ||||||
|  |     */ | ||||||
|  | -  g_thread_new ("apply-conf-thread",
 | ||||||
|  | -                apply_configuration_thread_func,
 | ||||||
|  | -                data);
 | ||||||
|  | +  task = g_task_new (data->object, NULL, NULL, NULL);
 | ||||||
|  | +  g_task_set_task_data (task, data, (GDestroyNotify) apply_conf_data_free);
 | ||||||
|  | +  g_task_run_in_thread (task, apply_configuration_thread_func);
 | ||||||
|  | +  g_object_unref (task);
 | ||||||
|  |   | ||||||
|  |    data = NULL; /* don't free data below */ | ||||||
|  |   | ||||||
							
								
								
									
										24
									
								
								udisks-2.10.0-dosfstools_4.2-reread_part.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								udisks-2.10.0-dosfstools_4.2-reread_part.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,24 @@ | |||||||
|  | commit d58ebcc32b583371dd73ab7f4c7be5191674ca62 | ||||||
|  | Author: Tomas Bzatek <tbzatek@redhat.com> | ||||||
|  | Date:   Wed Mar 17 18:52:22 2021 +0100 | ||||||
|  | 
 | ||||||
|  |     udiskslinuxblock: Re-read partition table after creating FAT filesystem | ||||||
|  |      | ||||||
|  |     Might not be needed after reverting mkfs.vfat behaviour back | ||||||
|  |     to the legacy way, added just as a precautionary measure. | ||||||
|  | 
 | ||||||
|  | diff --git a/src/udiskslinuxblock.c b/src/udiskslinuxblock.c
 | ||||||
|  | index 901426ad..69161b61 100644
 | ||||||
|  | --- a/src/udiskslinuxblock.c
 | ||||||
|  | +++ b/src/udiskslinuxblock.c
 | ||||||
|  | @@ -2913,7 +2913,9 @@ static inline gboolean
 | ||||||
|  |  need_partprobe_after_mkfs (const gchar *fs_type) | ||||||
|  |  { | ||||||
|  |    /* udftools makes fake MBR since the 2.0 release */ | ||||||
|  | -  return (g_strcmp0 (fs_type, "udf") == 0);
 | ||||||
|  | +  /* dosfstools makes fake MBR since the 4.2 release */
 | ||||||
|  | +  return (g_strcmp0 (fs_type, "udf") == 0 ||
 | ||||||
|  | +          g_strcmp0 (fs_type, "vfat") == 0);
 | ||||||
|  |  } | ||||||
|  |   | ||||||
|  |  void | ||||||
							
								
								
									
										75
									
								
								udisks-2.10.0-dosfstools_4.2.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										75
									
								
								udisks-2.10.0-dosfstools_4.2.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,75 @@ | |||||||
|  | commit ef1979d8cbfb8ad976de0af21a70f8c0f98fbbe9 | ||||||
|  | Author: Tomas Bzatek <tbzatek@redhat.com> | ||||||
|  | Date:   Wed Mar 17 18:50:19 2021 +0100 | ||||||
|  | 
 | ||||||
|  |     udiskslinuxfsinfo: Add dosfstools >= 4.2 quirks | ||||||
|  |      | ||||||
|  |     Reverting back the legacy behaviour with no protective (fake) MBR | ||||||
|  |     created while making new FAT filesystem on an unpartitioned block device. | ||||||
|  |      | ||||||
|  |     Added a label clear functionality as well. | ||||||
|  | 
 | ||||||
|  | diff --git a/src/udiskslinuxfsinfo.c b/src/udiskslinuxfsinfo.c
 | ||||||
|  | index 15af26c8..f18b9b80 100644
 | ||||||
|  | --- a/src/udiskslinuxfsinfo.c
 | ||||||
|  | +++ b/src/udiskslinuxfsinfo.c
 | ||||||
|  | @@ -21,6 +21,8 @@
 | ||||||
|  |  #include <string.h> | ||||||
|  |  #include <glib.h> | ||||||
|  |   | ||||||
|  | +#include <blockdev/exec.h>
 | ||||||
|  | +
 | ||||||
|  |  #include "config.h" | ||||||
|  |  #include "udiskslinuxfsinfo.h" | ||||||
|  |  #include "udisksconfigmanager.h" | ||||||
|  | @@ -236,6 +238,19 @@ const FSInfo _fs_info[] =
 | ||||||
|  |      }, | ||||||
|  |    }; | ||||||
|  |   | ||||||
|  | +/* workaround for dosfstools >= 4.2 */
 | ||||||
|  | +static const FSInfo vfat_dosfstools_42 =
 | ||||||
|  | +    {
 | ||||||
|  | +      FS_VFAT,
 | ||||||
|  | +      "fatlabel $DEVICE $LABEL",
 | ||||||
|  | +      "fatlabel --reset $DEVICE",
 | ||||||
|  | +      FALSE, /* supports_online_label_rename */
 | ||||||
|  | +      FALSE, /* supports_owners */
 | ||||||
|  | +      "mkfs.vfat -I -n $LABEL --mbr=n $DEVICE",
 | ||||||
|  | +      NULL,
 | ||||||
|  | +      NULL, /* option_no_discard */
 | ||||||
|  | +    };
 | ||||||
|  | +
 | ||||||
|  |  /** | ||||||
|  |   * get_fs_info: | ||||||
|  |   * | ||||||
|  | @@ -248,6 +263,7 @@ const FSInfo _fs_info[] =
 | ||||||
|  |  const FSInfo * | ||||||
|  |  get_fs_info (const gchar *fstype) | ||||||
|  |  { | ||||||
|  | +  const FSInfo *info = NULL;
 | ||||||
|  |    guint n; | ||||||
|  |   | ||||||
|  |    g_return_val_if_fail (fstype != NULL, NULL); | ||||||
|  | @@ -255,10 +271,20 @@ get_fs_info (const gchar *fstype)
 | ||||||
|  |    for (n = 0; n < sizeof(_fs_info)/sizeof(FSInfo); n++) | ||||||
|  |      { | ||||||
|  |        if (strcmp (_fs_info[n].fstype, fstype) == 0) | ||||||
|  | -        return &_fs_info[n];
 | ||||||
|  | +        {
 | ||||||
|  | +          info = &_fs_info[n];
 | ||||||
|  | +          break;
 | ||||||
|  | +        }
 | ||||||
|  | +    }
 | ||||||
|  | +
 | ||||||
|  | +  /* dosfstools >= 4.2 workaround */
 | ||||||
|  | +  if (g_str_equal (fstype, FS_VFAT) &&
 | ||||||
|  | +      bd_utils_check_util_version ("mkfs.vfat", "4.2", "--help", "mkfs.fat\\s+([\\d\\.]+).+", NULL))
 | ||||||
|  | +    {
 | ||||||
|  | +      info = &vfat_dosfstools_42;
 | ||||||
|  |      } | ||||||
|  |   | ||||||
|  | -  return NULL;
 | ||||||
|  | +  return info;
 | ||||||
|  |  } | ||||||
|  |   | ||||||
|  |  /** | ||||||
							
								
								
									
										136
									
								
								udisks-2.10.0-module-names.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										136
									
								
								udisks-2.10.0-module-names.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,136 @@ | |||||||
|  | commit e062c17e3829f3c04c25b5f6fc17ccc4491befa8 | ||||||
|  | Author: Tomas Bzatek <tbzatek@redhat.com> | ||||||
|  | Date:   Tue Mar 23 16:48:08 2021 +0100 | ||||||
|  | 
 | ||||||
|  |     modules: Limit module name to alphanumeric characters and -_ separators | ||||||
|  |      | ||||||
|  |     A hardening feature as long as the module name is directly involved | ||||||
|  |     in filename creation. | ||||||
|  | 
 | ||||||
|  | diff --git a/doc/udisks2-sections.txt.daemon.sections.in b/doc/udisks2-sections.txt.daemon.sections.in
 | ||||||
|  | index 16eaf74e..204ca897 100644
 | ||||||
|  | --- a/doc/udisks2-sections.txt.daemon.sections.in
 | ||||||
|  | +++ b/doc/udisks2-sections.txt.daemon.sections.in
 | ||||||
|  | @@ -312,6 +312,7 @@ udisks_daemon_util_get_free_mdraid_device
 | ||||||
|  |  udisks_ata_identify_get_word | ||||||
|  |  udisks_daemon_util_trigger_uevent | ||||||
|  |  udisks_daemon_util_trigger_uevent_sync | ||||||
|  | +udisks_module_validate_name
 | ||||||
|  |  </SECTION> | ||||||
|  |   | ||||||
|  |  <SECTION> | ||||||
|  | diff --git a/src/udisksconfigmanager.c b/src/udisksconfigmanager.c
 | ||||||
|  | index 9558e276..5868e864 100644
 | ||||||
|  | --- a/src/udisksconfigmanager.c
 | ||||||
|  | +++ b/src/udisksconfigmanager.c
 | ||||||
|  | @@ -26,6 +26,7 @@
 | ||||||
|  |  #include "udiskslogging.h" | ||||||
|  |  #include "udisksdaemontypes.h" | ||||||
|  |  #include "udisksconfigmanager.h" | ||||||
|  | +#include "udisksdaemonutil.h"
 | ||||||
|  |   | ||||||
|  |  struct _UDisksConfigManager { | ||||||
|  |    GObject parent_instance; | ||||||
|  | @@ -60,6 +61,8 @@ enum
 | ||||||
|  |  #define DEFAULTS_GROUP_NAME "defaults" | ||||||
|  |  #define DEFAULTS_ENCRYPTION_KEY "encryption" | ||||||
|  |   | ||||||
|  | +#define MODULES_ALL_ARG "*"
 | ||||||
|  | +
 | ||||||
|  |  static void | ||||||
|  |  udisks_config_manager_get_property (GObject    *object, | ||||||
|  |                                      guint       property_id, | ||||||
|  | @@ -170,7 +173,16 @@ parse_config_file (UDisksConfigManager         *manager,
 | ||||||
|  |              { | ||||||
|  |                modules_tmp = modules; | ||||||
|  |                for (module_i = *modules_tmp; module_i; module_i = *++modules_tmp) | ||||||
|  | -                *out_modules = g_list_append (*out_modules, g_strdup (g_strstrip (module_i)));
 | ||||||
|  | +                {
 | ||||||
|  | +                  g_strstrip (module_i);
 | ||||||
|  | +                  if (! udisks_module_validate_name (module_i) && !g_str_equal (module_i, MODULES_ALL_ARG))
 | ||||||
|  | +                    {
 | ||||||
|  | +                      g_warning ("Invalid module name '%s' specified in the %s config file.",
 | ||||||
|  | +                                 module_i, conf_filename);
 | ||||||
|  | +                      continue;
 | ||||||
|  | +                    }
 | ||||||
|  | +                  *out_modules = g_list_append (*out_modules, g_strdup (module_i));
 | ||||||
|  | +                }
 | ||||||
|  |                g_strfreev (modules); | ||||||
|  |              } | ||||||
|  |          } | ||||||
|  | @@ -397,7 +409,7 @@ udisks_config_manager_get_modules_all (UDisksConfigManager *manager)
 | ||||||
|  |   | ||||||
|  |    parse_config_file (manager, NULL, NULL, &modules); | ||||||
|  |   | ||||||
|  | -  ret = !modules || (g_strcmp0 (modules->data, "*") == 0 && g_list_length (modules) == 1);
 | ||||||
|  | +  ret = !modules || (g_strcmp0 (modules->data, MODULES_ALL_ARG) == 0 && g_list_length (modules) == 1);
 | ||||||
|  |   | ||||||
|  |    g_list_free_full (modules, (GDestroyNotify) g_free); | ||||||
|  |   | ||||||
|  | diff --git a/src/udisksdaemonutil.c b/src/udisksdaemonutil.c
 | ||||||
|  | index 60134765..1695b524 100644
 | ||||||
|  | --- a/src/udisksdaemonutil.c
 | ||||||
|  | +++ b/src/udisksdaemonutil.c
 | ||||||
|  | @@ -1880,3 +1880,29 @@ udisks_daemon_util_trigger_uevent_sync (UDisksDaemon *daemon,
 | ||||||
|  |  } | ||||||
|  |   | ||||||
|  |  /* ---------------------------------------------------------------------------------------------------- */ | ||||||
|  | +
 | ||||||
|  | +/**
 | ||||||
|  | + * udisks_module_validate_name:
 | ||||||
|  | + * @module_name: A udisks2 module name.
 | ||||||
|  | + *
 | ||||||
|  | + * Checks the string for a valid udisks2 module name. Only alphanumeric characters
 | ||||||
|  | + * along with the '-' and '_' separators are permitted.
 | ||||||
|  | + *
 | ||||||
|  | + * Returns: %TRUE if the string is a valid udisks2 module name, %FALSE otherwise.
 | ||||||
|  | + */
 | ||||||
|  | +gboolean
 | ||||||
|  | +udisks_module_validate_name (const gchar *module_name)
 | ||||||
|  | +{
 | ||||||
|  | +  int i;
 | ||||||
|  | +
 | ||||||
|  | +  for (i = 0; module_name[i] != '\0'; i++)
 | ||||||
|  | +    /* going ASCII, will disqualify any UTF-* string */
 | ||||||
|  | +    if (! g_ascii_isalnum (module_name[i]) &&
 | ||||||
|  | +        module_name[i] != '-' &&
 | ||||||
|  | +        module_name[i] != '_')
 | ||||||
|  | +      return FALSE;
 | ||||||
|  | +
 | ||||||
|  | +  return TRUE;
 | ||||||
|  | +}
 | ||||||
|  | +
 | ||||||
|  | +/* ---------------------------------------------------------------------------------------------------- */
 | ||||||
|  | diff --git a/src/udisksdaemonutil.h b/src/udisksdaemonutil.h
 | ||||||
|  | index 2d7ac981..df584de4 100644
 | ||||||
|  | --- a/src/udisksdaemonutil.h
 | ||||||
|  | +++ b/src/udisksdaemonutil.h
 | ||||||
|  | @@ -129,6 +129,8 @@ gchar *udisks_daemon_util_get_free_mdraid_device (void);
 | ||||||
|  |   | ||||||
|  |  guint16 udisks_ata_identify_get_word (const guchar *identify_data, guint word_number); | ||||||
|  |   | ||||||
|  | +gboolean udisks_module_validate_name (const gchar *module_name);
 | ||||||
|  | +
 | ||||||
|  |  /* Utility macro for policy verification. */ | ||||||
|  |  #define UDISKS_DAEMON_CHECK_AUTHORIZATION(daemon,                   \ | ||||||
|  |                                            object,                   \ | ||||||
|  | diff --git a/src/udiskslinuxmanager.c b/src/udiskslinuxmanager.c
 | ||||||
|  | index 8af65d97..26d8a5d7 100644
 | ||||||
|  | --- a/src/udiskslinuxmanager.c
 | ||||||
|  | +++ b/src/udiskslinuxmanager.c
 | ||||||
|  | @@ -956,6 +956,15 @@ handle_enable_module (UDisksManager         *object,
 | ||||||
|  |    UDisksLinuxManager *manager = UDISKS_LINUX_MANAGER (object); | ||||||
|  |    EnableModulesData *data; | ||||||
|  |   | ||||||
|  | +  if (! udisks_module_validate_name (arg_name))
 | ||||||
|  | +    {
 | ||||||
|  | +      g_dbus_method_invocation_return_error (invocation,
 | ||||||
|  | +                                             G_IO_ERROR, G_IO_ERROR_INVALID_ARGUMENT,
 | ||||||
|  | +                                             "Requested module name '%s' is not a valid udisks2 module name.",
 | ||||||
|  | +                                             arg_name);
 | ||||||
|  | +      return TRUE;
 | ||||||
|  | +    }
 | ||||||
|  | +
 | ||||||
|  |    if (! arg_enable) | ||||||
|  |      { | ||||||
|  |        /* TODO: implement proper module unloading */ | ||||||
							
								
								
									
										17
									
								
								udisks2.spec
									
									
									
									
									
								
							
							
						
						
									
										17
									
								
								udisks2.spec
									
									
									
									
									
								
							| @ -48,10 +48,16 @@ | |||||||
| Name:    udisks2 | Name:    udisks2 | ||||||
| Summary: Disk Manager | Summary: Disk Manager | ||||||
| Version: 2.9.2 | Version: 2.9.2 | ||||||
| Release: 2%{?dist} | Release: 3%{?dist} | ||||||
| License: GPLv2+ | License: GPLv2+ | ||||||
| URL:     https://github.com/storaged-project/udisks | URL:     https://github.com/storaged-project/udisks | ||||||
| Source0: https://github.com/storaged-project/udisks/releases/download/udisks-%{version}/udisks-%{version}.tar.bz2 | Source0: https://github.com/storaged-project/udisks/releases/download/udisks-%{version}/udisks-%{version}.tar.bz2 | ||||||
|  | Patch0:  udisks-2.10.0-dosfstools_4.2.patch | ||||||
|  | Patch1:  udisks-2.10.0-dosfstools_4.2-reread_part.patch | ||||||
|  | Patch2:  udisks-2.10.0-module-names.patch | ||||||
|  | Patch3:  udisks-2.10.0-ata_conf_apply_GTask.patch | ||||||
|  | # https://github.com/storaged-project/udisks/pull/847 | ||||||
|  | Patch4:  ignore-apple-boot-part.patch | ||||||
| 
 | 
 | ||||||
| BuildRequires: make | BuildRequires: make | ||||||
| BuildRequires: glib2-devel >= %{glib2_version} | BuildRequires: glib2-devel >= %{glib2_version} | ||||||
| @ -240,8 +246,9 @@ This package contains module for ZRAM configuration. | |||||||
| %endif | %endif | ||||||
| 
 | 
 | ||||||
| %prep | %prep | ||||||
| %setup -q -n udisks-%{version} | %autosetup -p1 -n udisks-%{version} | ||||||
| sed -i udisks/udisks2.conf.in -e "s/encryption=luks1/encryption=%{default_luks_encryption}/" | sed -i udisks/udisks2.conf.in -e "s/encryption=luks1/encryption=%{default_luks_encryption}/" | ||||||
|  | rm -f src/tests/dbus-tests/config_h.py | ||||||
| 
 | 
 | ||||||
| %build | %build | ||||||
| autoreconf -ivf | autoreconf -ivf | ||||||
| @ -426,6 +433,12 @@ fi | |||||||
| %endif | %endif | ||||||
| 
 | 
 | ||||||
| %changelog | %changelog | ||||||
|  | * Fri Mar 26 2021 Tomas Bzatek <tbzatek@redhat.com> - 2.9.2-3 | ||||||
|  | - Fix FAT mkfs with dosfstools >= 4.2 | ||||||
|  | - udiskslinuxdriveata: Use GTask to apply configuration in a thread | ||||||
|  | - Limit allowed module names | ||||||
|  | - 80-udisks2.rules: Ignore Apple boot partition from livecd-tools | ||||||
|  | 
 | ||||||
| * Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 2.9.2-2 | * Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 2.9.2-2 | ||||||
| - Rebuilt for updated systemd-rpm-macros | - Rebuilt for updated systemd-rpm-macros | ||||||
|   See https://pagure.io/fesco/issue/2583. |   See https://pagure.io/fesco/issue/2583. | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user