From fe9b9df9eb91d64ec96ad58fe61b84f5d93eb2be Mon Sep 17 00:00:00 2001 From: midipix Date: May 03 2020 05:10:41 +0000 Subject: nt32|nt64: abi upgrade: properly support NTFS directory entries. Following musl commit 614c9e7b1eecb71c5718c34f1724e8758cbe3c27, it is now possible to support NTFS directory entries consisting of 255 utf-16 characters of the (little-endian) form zzzzyyyy yyxxxxxx, of which the respective utf-8 representation form is 1110zzzz 10yyyyyy 10xxxxxx. Paired with psxscl commit 26192ddd4a7b9100f97825982697d8a918563fe9, and introduces a pre-alpha abi upgrade. --- diff --git a/arch/nt32/bits/dirent.h b/arch/nt32/bits/dirent.h new file mode 100644 index 0000000..254db40 --- /dev/null +++ b/arch/nt32/bits/dirent.h @@ -0,0 +1,11 @@ +#define _DIRENT_HAVE_D_RECLEN +#define _DIRENT_HAVE_D_OFF +#define _DIRENT_HAVE_D_TYPE + +struct dirent { + ino_t d_ino; + off_t d_off; + unsigned short d_reclen; + unsigned char d_type; + char d_name[766]; +}; diff --git a/arch/nt32/bits/limits.h b/arch/nt32/bits/limits.h index edbbe29..e1cc3a1 100644 --- a/arch/nt32/bits/limits.h +++ b/arch/nt32/bits/limits.h @@ -9,6 +9,8 @@ #define LLONG_MAX __LLONG_MAX #endif -#define _MIDIPIX_ABI 20170101 -#define _MIDIPIX_XFI 20170101 -#define _MIDIPIX_GDI 20170101 +#define NAME_MAX 765 + +#define _MIDIPIX_ABI 20200501 +#define _MIDIPIX_XFI 20200501 +#define _MIDIPIX_GDI 20200501 diff --git a/arch/nt64/bits/dirent.h b/arch/nt64/bits/dirent.h new file mode 100644 index 0000000..254db40 --- /dev/null +++ b/arch/nt64/bits/dirent.h @@ -0,0 +1,11 @@ +#define _DIRENT_HAVE_D_RECLEN +#define _DIRENT_HAVE_D_OFF +#define _DIRENT_HAVE_D_TYPE + +struct dirent { + ino_t d_ino; + off_t d_off; + unsigned short d_reclen; + unsigned char d_type; + char d_name[766]; +}; diff --git a/arch/nt64/bits/limits.h b/arch/nt64/bits/limits.h index 43a769a..b873a4e 100644 --- a/arch/nt64/bits/limits.h +++ b/arch/nt64/bits/limits.h @@ -9,6 +9,8 @@ #define LLONG_MAX __LLONG_MAX #endif -#define _MIDIPIX_ABI 20170101 -#define _MIDIPIX_XFI 20170101 -#define _MIDIPIX_GDI 20170101 +#define NAME_MAX 765 + +#define _MIDIPIX_ABI 20200501 +#define _MIDIPIX_XFI 20200501 +#define _MIDIPIX_GDI 20200501