lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Mon, 21 Oct 2019 13:11:36 +0200
From:   Pali Rohár <pali.rohar@...il.com>
To:     Konstantin Komarov <almaz.alexandrovich@...agon-software.com>
Cc:     "viro@...iv.linux.org.uk" <viro@...iv.linux.org.uk>,
        "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
        "linux-fsdevel@...r.kernel.org" <linux-fsdevel@...r.kernel.org>
Subject: Re: [PATCH] fs: exFAT read-only driver GPL implementation by Paragon
 Software.

On Friday 18 October 2019 15:18:39 Konstantin Komarov wrote:
> Recently exFAT filesystem specification has been made public by Microsoft (https://docs.microsoft.com/en-us/windows/win32/fileio/exfat-specification).
> Having decades of expertise in commercial file systems development, we at Paragon Software GmbH are very excited by Microsoft's decision and now want to make our contribution to the Open Source Community by providing our implementation of exFAT Read-Only (yet!) fs implementation for the Linux Kernel.
> We are about to prepare the Read-Write support patch as well.

Hi Konstantin! Do you have any plan when you provide also R/W support?

> 'fs/exfat' is implemented accordingly to standard Linux fs development approach with no use/addition of any custom API's.
> To divide our contribution from 'drivers/staging' submit of Aug'2019, our Kconfig key is "EXFAT_RO_FS"
>
> Signed-off-by: Konstantin Komarov <almaz.alexandrovich@...agon-software.com>
> ---
> MAINTAINERS         |    6 +
> fs/Kconfig          |    3 +-
> fs/exfat/Kconfig    |   31 ++
> fs/exfat/Makefile   |    9 +
> fs/exfat/bitmap.c   |  117 +++++
> fs/exfat/cache.c    |  483 ++++++++++++++++++
> fs/exfat/debug.h    |   69 +++
> fs/exfat/dir.c      |  610 +++++++++++++++++++++++
> fs/exfat/exfat.h    |  248 ++++++++++
> fs/exfat/exfat_fs.h |  388 +++++++++++++++
> fs/exfat/fatent.c   |   79 +++
> fs/exfat/file.c     |   93 ++++
> fs/exfat/inode.c    |  317 ++++++++++++
> fs/exfat/namei.c    |  154 ++++++
> fs/exfat/super.c    | 1145 +++++++++++++++++++++++++++++++++++++++++++
> fs/exfat/upcase.c   |  344 +++++++++++++
> 16 files changed, 4095 insertions(+), 1 deletion(-)
> create mode 100644 fs/exfat/Kconfig
> create mode 100644 fs/exfat/Makefile
> create mode 100644 fs/exfat/bitmap.c
> create mode 100644 fs/exfat/cache.c
> create mode 100644 fs/exfat/debug.h
> create mode 100644 fs/exfat/dir.c
> create mode 100644 fs/exfat/exfat.h
> create mode 100644 fs/exfat/exfat_fs.h
> create mode 100644 fs/exfat/fatent.c
> create mode 100644 fs/exfat/file.c
> create mode 100644 fs/exfat/inode.c
> create mode 100644 fs/exfat/namei.c
> create mode 100644 fs/exfat/super.c
> create mode 100644 fs/exfat/upcase.c

Also have you considered to to re-use fs/fat sources instead? It is
possible or there is nothing in fs/fat which could be reused or
refactored/extracted?

> diff --git a/fs/exfat/super.c b/fs/exfat/super.c
> new file mode 100644
> index 000000000000..0705dab3c3fc
> --- /dev/null
> +++ b/fs/exfat/super.c
...
> +/* inits internal info from on-disk boot sector*/
> +static int exfat_init_from_boot(struct super_block *sb, struct exfat_boot *boot,
> +				u64 bytes_per_volume, u32 *root_lcn)
> +{
...
> +	if (boot->fats != 1) {
> +		hint = "This version of exfat driver does not support TexFat";
> +		goto out;
> +	}

Are you going to add support also for TexFAT? Or at least for more two
FAT tables (like is used in FAT32)?

-- 
Pali Rohár
pali.rohar@...il.com

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ