Cygwin: Allow to build without experimental AF_UNIX code by default

Introduce __WITH_AF_UNIX preprocessor flag to enable the new code

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
This commit is contained in:
Corinna Vinschen
2018-06-26 16:31:17 +02:00
parent 17918cc6a6
commit 6c55be9dbb
8 changed files with 36 additions and 1 deletions

View File

@@ -951,7 +951,11 @@ path_conv::check (const char *src, unsigned opt,
return;
}
fileattr = sym.fileattr;
#ifdef __WITH_AF_UNIX
dev.parse ((sym.pflags & PATH_REP) ? FH_UNIX : FH_LOCAL);
#else
dev.parse (FH_LOCAL);
#endif /* __WITH_AF_UNIX */
dev.setfs (1);
path_flags = sym.pflags;
goto out;
@@ -2370,6 +2374,7 @@ check_reparse_point_target (HANDLE h, bool remote, PREPARSE_DATA_BUFFER rp,
if (check_reparse_point_string (psymbuf))
return PATH_SYMLINK | PATH_REP;
}
#ifdef __WITH_AF_UNIX
else if (rp->ReparseTag == IO_REPARSE_TAG_CYGUNIX)
{
PREPARSE_GUID_DATA_BUFFER rgp = (PREPARSE_GUID_DATA_BUFFER) rp;
@@ -2377,6 +2382,7 @@ check_reparse_point_target (HANDLE h, bool remote, PREPARSE_DATA_BUFFER rp,
if (memcmp (CYGWIN_SOCKET_GUID, &rgp->ReparseGuid, sizeof (GUID)) == 0)
return PATH_SOCKET | PATH_REP;
}
#endif /* __WITH_AF_UNIX */
return 0;
}