Re: [PATCH 4/7] Cygwin: remove some 32-bit only path conversion functions

2022-05-29 Thread Jon Turney

On 26/05/2022 20:17, Ken Brown wrote:

Patch attached.


If it were me writing this, perhaps I would add something in the cygwin 
API documentation near the modern replacements, saying "The obsolete 
functions XYZ only existed for x86 Cygwin and have been removed.".  But 
perhaps that's not really worthwhile.


I looked the rest of this patch set over and didn't see any problems.



[PATCH 4/7] Cygwin: remove some 32-bit only path conversion functions

2022-05-26 Thread Ken Brown

Patch attached.From 1dd3291b22a72edc234b89e55b5bee9ebcc3f158 Mon Sep 17 00:00:00 2001
From: Ken Brown 
Date: Tue, 24 May 2022 10:20:23 -0400
Subject: [PATCH 4/7] Cygwin: remove some 32-bit only path conversion functions

---
 winsup/cygwin/include/sys/cygwin.h | 23 -
 winsup/cygwin/path.cc  | 64 --
 winsup/testsuite/winsup.api/cygload.cc |  2 -
 3 files changed, 89 deletions(-)

diff --git a/winsup/cygwin/include/sys/cygwin.h 
b/winsup/cygwin/include/sys/cygwin.h
index 0c3c2d65d..4923caacb 100644
--- a/winsup/cygwin/include/sys/cygwin.h
+++ b/winsup/cygwin/include/sys/cygwin.h
@@ -20,29 +20,6 @@ extern "C" {
 
 #define _CYGWIN_SIGNAL_STRING "cYgSiGw00f"
 
-#ifdef __i386__
-/* DEPRECATED INTERFACES.  These are restricted to MAX_PATH length.
-   Don't use in modern applications.  They don't exist on x86_64. */
-extern int cygwin_win32_to_posix_path_list (const char *, char *)
-  __attribute__ ((__deprecated__));
-extern int cygwin_win32_to_posix_path_list_buf_size (const char *)
-  __attribute__ ((__deprecated__));
-extern int cygwin_posix_to_win32_path_list (const char *, char *)
-  __attribute__ ((__deprecated__));
-extern int cygwin_posix_to_win32_path_list_buf_size (const char *)
-  __attribute__ ((__deprecated__));
-extern int cygwin_conv_to_win32_path (const char *, char *)
-  __attribute__ ((__deprecated__));
-extern int cygwin_conv_to_full_win32_path (const char *, char *)
-  __attribute__ ((__deprecated__));
-extern int cygwin_conv_to_posix_path (const char *, char *)
-  __attribute__ ((__deprecated__));
-extern int cygwin_conv_to_full_posix_path (const char *, char *)
-  __attribute__ ((__deprecated__));
-#endif /* __i386__ */
-
-/* Use these interfaces in favor of the above. */
-
 /* Possible 'what' values in calls to cygwin_conv_path/cygwin_create_path. */
 enum
 {
diff --git a/winsup/cygwin/path.cc b/winsup/cygwin/path.cc
index 98f7aa1db..bd3ffdce6 100644
--- a/winsup/cygwin/path.cc
+++ b/winsup/cygwin/path.cc
@@ -4029,40 +4029,6 @@ cygwin_create_path (cygwin_conv_path_t what, const void 
*from)
   return to;
 }
 
-#ifdef __i386__
-
-extern "C" int
-cygwin_conv_to_win32_path (const char *path, char *win32_path)
-{
-  return cygwin_conv_path (CCP_POSIX_TO_WIN_A | CCP_RELATIVE, path, win32_path,
-  MAX_PATH);
-}
-
-extern "C" int
-cygwin_conv_to_full_win32_path (const char *path, char *win32_path)
-{
-  return cygwin_conv_path (CCP_POSIX_TO_WIN_A | CCP_ABSOLUTE, path, win32_path,
-  MAX_PATH);
-}
-
-/* This is exported to the world as cygwin_foo by cygwin.din.  */
-
-extern "C" int
-cygwin_conv_to_posix_path (const char *path, char *posix_path)
-{
-  return cygwin_conv_path (CCP_WIN_A_TO_POSIX | CCP_RELATIVE, path, posix_path,
-  MAX_PATH);
-}
-
-extern "C" int
-cygwin_conv_to_full_posix_path (const char *path, char *posix_path)
-{
-  return cygwin_conv_path (CCP_WIN_A_TO_POSIX | CCP_ABSOLUTE, path, posix_path,
-  MAX_PATH);
-}
-
-#endif /* __i386__ */
-
 /* The realpath function is required by POSIX:2008.  */
 
 extern "C" char *
@@ -4211,36 +4177,6 @@ env_PATH_to_posix (const void *win32, void *posix, 
size_t size)
 size, ENV_CVT));
 }
 
-#ifdef __i386__
-
-extern "C" int
-cygwin_win32_to_posix_path_list_buf_size (const char *path_list)
-{
-  return conv_path_list_buf_size (path_list, true);
-}
-
-extern "C" int
-cygwin_posix_to_win32_path_list_buf_size (const char *path_list)
-{
-  return conv_path_list_buf_size (path_list, false);
-}
-
-extern "C" int
-cygwin_win32_to_posix_path_list (const char *win32, char *posix)
-{
-  return_with_errno (conv_path_list (win32, posix, MAX_PATH,
-CCP_WIN_A_TO_POSIX | CCP_RELATIVE));
-}
-
-extern "C" int
-cygwin_posix_to_win32_path_list (const char *posix, char *win32)
-{
-  return_with_errno (conv_path_list (posix, win32, MAX_PATH,
-CCP_POSIX_TO_WIN_A | CCP_RELATIVE));
-}
-
-#endif /* __i386__ */
-
 extern "C" ssize_t
 cygwin_conv_path_list (cygwin_conv_path_t what, const void *from, void *to,
   size_t size)
diff --git a/winsup/testsuite/winsup.api/cygload.cc 
b/winsup/testsuite/winsup.api/cygload.cc
index ad4599666..faad5ce0e 100644
--- a/winsup/testsuite/winsup.api/cygload.cc
+++ b/winsup/testsuite/winsup.api/cygload.cc
@@ -152,8 +152,6 @@ cygwin::connector::connector (const char *dll)
   // Pick up the function pointers for the basic infrastructure.
   get_symbol ("__errno", _errno);
   get_symbol ("strerror", _strerror);
-  get_symbol ("cygwin_conv_to_full_posix_path", _conv_to_full_posix_path);
-  get_symbol ("cygwin_conv_to_full_win32_path", _conv_to_full_win32_path);
 
   // Note that you need to be running an interruptible cygwin function if
   // you want to receive signals.  You can use the standard signal()
-- 
2.36.1