On Wed, Jan 30, 2019 at 01:01:54PM +0000, David Howells wrote: > Karel Zak <kzak@xxxxxxxxxx> wrote: > > > It seems more elegant is to ask for Nth option as expected by fsinfo(). > > More elegant yes, but there's an issue with atomiticity[*]. I'm in the > process of switching to something that returns you a single buffer with all > the options in, but each key and each value is preceded by a length count. Sounds good, for me is important to avoid all the split/join operations with the strings. > The reasons for not using separator characters are: > > (1) There's no separator char that cannot validly occur within an option[**]. Yes, it's pretty common for selinux mount options where "," is used within an option, so mount options string looks like 'context="system_u:object_r:tmp_t:s0:c127,c456",noexec' and I have doubts all the parses in userspace are compatible with this use case... > (2) Makes it possible to return binary values if we need to. Yes. > [**] Oh, and look at cifs where you can *change* the separator char during > option parsing ("sep=<char>"). No comment :-) Karel -- Karel Zak <kzak@xxxxxxxxxx> http://karelzak.blogspot.com