On Sat, Feb 16, 2013 at 5:52 PM, Zeeshan Ali (Khattak)
<[email protected]> wrote:
> On Sat, Feb 16, 2013 at 5:45 PM, Zbigniew Jędrzejewski-Szmek
> <[email protected]> wrote:
>> On Wed, Feb 13, 2013 at 05:39:54AM +0200, Zeeshan Ali (Khattak) wrote:
>>> From: "Zeeshan Ali (Khattak)" <[email protected]>
>>>
>>> This version 2 removes the bogus 'FS_' prefix from blkid property names.
>>>
>>> ---
>>>  src/udev/udev-builtin-blkid.c | 13 ++++++++++++-
>>>  1 file changed, 12 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/src/udev/udev-builtin-blkid.c b/src/udev/udev-builtin-blkid.c
>>> index 56a05f5..c42c19e 100644
>>> --- a/src/udev/udev-builtin-blkid.c
>>> +++ b/src/udev/udev-builtin-blkid.c
>>> @@ -78,7 +78,18 @@ static void print_property(struct udev_device *dev, bool 
>>> test, const char *name,
>>>          } else if (startswith(name, "PART_ENTRY_")) {
>>>                  strscpyl(s, sizeof(s), "ID_", name, NULL);
>>>                  udev_builtin_add_property(dev, test, s, value);
>>> -        }
>>> +
>>> +        } else if (streq(name, "SYSTEM_ID"))
>>> +                udev_builtin_add_property(dev, test, "ID_FS_SYSTEM_ID", 
>>> value);
>>> +
>>> +        else if (streq(name, "PUBLISHER_ID"))
>>> +                udev_builtin_add_property(dev, test, "ID_FS_PUBLISHER_ID", 
>>> value);
>>> +
>>> +        else if (streq(name, "APPLICATION_ID"))
>>> +                udev_builtin_add_property(dev, test, 
>>> "ID_FS_APPLICATION_ID", value);
>>> +
>>> +        else if (streq(name, "BOOT_SYSTEM_ID"))
>>> +                udev_builtin_add_property(dev, test, 
>>> "ID_FS_BOOT_SYSTEM_ID", value);
>> Hi Zeeshan,
>> iiuc, those strings are under the control of the FS creator.
>> Shouldn't they be treated like e.g. LABEL and passed through
>> blkid_safe_string and blkid_encode_string?
>
> Since Kay agrees, you are mostly likely correct. :) I have a question
> though, why do we replace spaces with underscores? I ask cause I'll
> have to do the opposite in my app to ensure libosinfo can match the ID
> strings with known values (or adjust the regex in libosinfo database
> accordingly). However, I'm curious to know why udev doesn't expose the
> strings as is?

We just hex encode stuff that isn't ascii or valid utf8, udev just
mangles some old values for compat reasons, new stuff should only use
encoding.

Kay
_______________________________________________
systemd-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/systemd-devel

Reply via email to