about summary refs log tree commit diff stats
path: root/WWW/Library/Implementation
diff options
context:
space:
mode:
authorThomas E. Dickey <dickey@invisible-island.net>2000-06-03 01:16:48 -0400
committerThomas E. Dickey <dickey@invisible-island.net>2000-06-03 01:16:48 -0400
commit03239fe7d0beedb4b52c96d56729d24fa0db0405 (patch)
treeab4e06ed9cdecc0f1312af802569fb3af574f45b /WWW/Library/Implementation
parentdbcd4fe595142928b3c220ccea2056987ea0a58c (diff)
downloadlynx-snapshots-03239fe7d0beedb4b52c96d56729d24fa0db0405.tar.gz
snapshot of project "lynx", label v2-8-4dev_3
Diffstat (limited to 'WWW/Library/Implementation')
-rw-r--r--WWW/Library/Implementation/HTFTP.c51
-rw-r--r--WWW/Library/Implementation/LYexit.h10
-rw-r--r--WWW/Library/Implementation/www_tcp.h10
3 files changed, 41 insertions, 30 deletions
diff --git a/WWW/Library/Implementation/HTFTP.c b/WWW/Library/Implementation/HTFTP.c
index ac5f14a1..2c01085a 100644
--- a/WWW/Library/Implementation/HTFTP.c
+++ b/WWW/Library/Implementation/HTFTP.c
@@ -145,23 +145,26 @@ PRIVATE int data_soc = -1;		/* Socket for data transfer =invalid */
 PRIVATE char *user_entered_password = NULL;
 PRIVATE char *last_username_and_host = NULL;
 
-#define GENERIC_SERVER	   0
-#define MACHTEN_SERVER	   1
-#define UNIX_SERVER	   2
-#define VMS_SERVER	   3
-#define CMS_SERVER	   4
-#define DCTS_SERVER	   5
-#define TCPC_SERVER	   6
-#define PETER_LEWIS_SERVER 7
-#define NCSA_SERVER	   8
-#define WINDOWS_NT_SERVER  9
-#define MS_WINDOWS_SERVER 10
-#define MSDOS_SERVER	  11
-#define APPLESHARE_SERVER 12
-#define NETPRESENZ_SERVER 13
-#define DLS_SERVER	  14
-
-PRIVATE int	server_type = GENERIC_SERVER;	/* the type of ftp host */
+typedef enum {
+	GENERIC_SERVER
+	, MACHTEN_SERVER
+	, UNIX_SERVER
+	, VMS_SERVER
+	, CMS_SERVER
+	, DCTS_SERVER
+	, TCPC_SERVER
+	, PETER_LEWIS_SERVER
+	, NCSA_SERVER
+	, WINDOWS_NT_SERVER
+	, WINDOWS_2K_SERVER
+	, MS_WINDOWS_SERVER
+	, MSDOS_SERVER
+	, APPLESHARE_SERVER
+	, NETPRESENZ_SERVER
+	, DLS_SERVER
+} eServerType;
+
+PRIVATE eServerType server_type = GENERIC_SERVER; /* the type of ftp host */
 PRIVATE int	unsure_type = FALSE;		/* sure about the type? */
 PRIVATE BOOLEAN use_list = FALSE;		/* use the LIST command? */
 
@@ -557,7 +560,7 @@ PRIVATE int send_cmd_2 ARGS2(char *, verb, char *, param)
  *  Some servers need an additional letter after the MACB command.
  */
 PRIVATE int set_mac_binary ARGS1(
-	int,		ServerType)
+	eServerType,	ServerType)
 {
     /* try to set mac binary mode */
     if (ServerType == APPLESHARE_SERVER ||
@@ -576,7 +579,7 @@ PRIVATE int set_mac_binary ARGS1(
  */
 
 PRIVATE void get_ftp_pwd ARGS2(
-	int *,		ServerType,
+	eServerType *,	ServerType,
 	BOOLEAN *,	UseList)
 {
 
@@ -631,7 +634,7 @@ PRIVATE void get_ftp_pwd ARGS2(
  */
 
 PRIVATE void set_unix_dirstyle ARGS2(
-	int *,		ServerType,
+	eServerType *,	ServerType,
 	BOOLEAN *,	UseList)
 {
 
@@ -994,6 +997,11 @@ PRIVATE int get_connection ARGS2(
 	    CTRACE((tfp, "HTFTP: Treating as Window_NT server.\n"));
 	    set_unix_dirstyle(&server_type, &use_list);
 
+        } else if (strncmp(response_text+4, "Windows2000", 11) == 0) {
+            server_type = WINDOWS_2K_SERVER;
+            CTRACE((tfp, "HTFTP: Treating as Window_2K server.\n"));
+            set_unix_dirstyle(&server_type, &use_list);
+
 	} else if (strncmp(response_text+4, "MS Windows", 10) == 0) {
 	    server_type = MS_WINDOWS_SERVER;
 	    use_list = TRUE;
@@ -2106,6 +2114,7 @@ PRIVATE EntryInfo * parse_dir_entry ARGS3(
 	case MACHTEN_SERVER:
 	case MSDOS_SERVER:
 	case WINDOWS_NT_SERVER:
+        case WINDOWS_2K_SERVER:
 	case APPLESHARE_SERVER:
 	case NETPRESENZ_SERVER:
 	    /*
@@ -2920,7 +2929,7 @@ PUBLIC int HTFTPLoad ARGS4(
 
 	    sprintf(command, "ftp://%d.%d.%d.%d:%d/",
 		    h0, h1, h2, h3, passive_port);
-	    status = HTDoConnect(name, "FTP", passive_port, &data_soc);
+	    status = HTDoConnect(command, "FTP data", passive_port, &data_soc);
 
 	    if (status < 0) {
 		(void) HTInetStatus(gettext("connect for data"));
diff --git a/WWW/Library/Implementation/LYexit.h b/WWW/Library/Implementation/LYexit.h
index 235b3e0b..347ee0d3 100644
--- a/WWW/Library/Implementation/LYexit.h
+++ b/WWW/Library/Implementation/LYexit.h
@@ -51,12 +51,8 @@
 /*
  *	Function declarations
  */
-extern void exit_immediately PARAMS((int status));  /* in LYMain.c */
-extern void LYexit PARAMS((int status));
-#ifdef __STDC__
-extern int LYatexit(void (*function)(void));
-#else
-extern int LYatexit();
-#endif /* __STDC__ */
+extern void exit_immediately PARAMS((int status)) GCC_NORETURN;
+extern void LYexit PARAMS((int status)) GCC_NORETURN;
+extern int LYatexit PARAMS((void (*function)(void)));
 
 #endif /* __LYEXIT_H */
diff --git a/WWW/Library/Implementation/www_tcp.h b/WWW/Library/Implementation/www_tcp.h
index 48d34f9f..adab9ab0 100644
--- a/WWW/Library/Implementation/www_tcp.h
+++ b/WWW/Library/Implementation/www_tcp.h
@@ -186,6 +186,11 @@ extern int ws_netread(int fd, char *buf, int len);
 #include <time.h>
 #include <errno.h>
 #include <direct.h>
+
+/* FIXME: someone might consider porting to winsock2.h */
+#define USE_WINSOCK_H
+
+#ifdef USE_WINSOCK_H
 #include <winsock.h>
 typedef struct sockaddr_in SockA;  /* See netinet/in.h */
 
@@ -194,7 +199,6 @@ typedef struct sockaddr_in SockA;  /* See netinet/in.h */
 #undef EAGAIN
 #endif /* _MSC_VER */
 
-#define EWOULDBLOCK          (WSABASEERR+35)	/* ADD by JH7AYN */
 #define EINPROGRESS          (WSABASEERR+36)
 #define EALREADY             (WSABASEERR+37)
 #define EISCONN              (WSABASEERR+56)
@@ -203,9 +207,11 @@ typedef struct sockaddr_in SockA;  /* See netinet/in.h */
 #define ENOTCONN             (WSABASEERR+57)
 #define ECONNRESET           (WSABASEERR+54)
 #define ETIMEDOUT             WSAETIMEDOUT	/* 1997/11/10 (Mon) */
-#define EINVAL                22
+
 #undef  SOCKET_ERRNO	/* 1997/10/19 (Sun) 18:01:46 */
 #define SOCKET_ERRNO          WSAGetLastError()
+#endif	/* USE_WINSOCK_H */
+
 #define INCLUDES_DONE
 #define TCP_INCLUDES_DONE
 #endif  /* WINDOWS */