diff options
author | Thomas E. Dickey <dickey@invisible-island.net> | 2000-10-19 02:12:18 -0400 |
---|---|---|
committer | Thomas E. Dickey <dickey@invisible-island.net> | 2000-10-19 02:12:18 -0400 |
commit | c16270eee5ad3c6a3b992a9684ff8bd60e60de96 (patch) | |
tree | 315811c044186ad53341546f98584a8aba59d2a4 /WWW/Library/Implementation | |
parent | cdccafb64b871f95ed58d79aa83bb438140f5e57 (diff) | |
download | lynx-snapshots-c16270eee5ad3c6a3b992a9684ff8bd60e60de96.tar.gz |
snapshot of project "lynx", label v2-8-4dev_11
Diffstat (limited to 'WWW/Library/Implementation')
-rw-r--r-- | WWW/Library/Implementation/HTFTP.c | 20 | ||||
-rw-r--r-- | WWW/Library/Implementation/HTTCP.c | 5 | ||||
-rw-r--r-- | WWW/Library/Implementation/HTTelnet.c | 3 | ||||
-rw-r--r-- | WWW/Library/Implementation/LYLeaks.h | 2 |
4 files changed, 24 insertions, 6 deletions
diff --git a/WWW/Library/Implementation/HTFTP.c b/WWW/Library/Implementation/HTFTP.c index 91cbc282..82c8ccbf 100644 --- a/WWW/Library/Implementation/HTFTP.c +++ b/WWW/Library/Implementation/HTFTP.c @@ -729,6 +729,7 @@ PRIVATE int get_connection ARGS2( /* Get node name: */ + CTRACE((tfp, "get_connection(%s)\n", arg)); { char *p1 = HTParse(arg, "", PARSE_HOST); char *p2 = strrchr(p1, '@'); /* user? */ @@ -960,9 +961,17 @@ PRIVATE int get_connection ARGS2( CTRACE((tfp, "HTFTP: Treating as MSDOS (Unix emulation) server.\n")); } else if (strncmp(response_text+4, "VMS", 3) == 0) { - server_type = VMS_SERVER; + char *tilde = strstr(arg, "/~"); use_list = TRUE; - CTRACE((tfp, "HTFTP: Treating as VMS server.\n")); + if (tilde != 0 + && tilde[2] != 0 + && strstr(response_text+4, "MadGoat") != 0) { + server_type = UNIX_SERVER; + CTRACE((tfp, "HTFTP: Treating VMS as UNIX server.\n")); + } else { + server_type = VMS_SERVER; + CTRACE((tfp, "HTFTP: Treating as VMS server.\n")); + } } else if ((strncmp(response_text+4, "VM/CMS", 6) == 0) || (strncmp(response_text+4, "VM ", 3) == 0)) { @@ -3253,6 +3262,7 @@ PUBLIC int HTFTPLoad ARGS4( { char *cp1, *cp2; BOOL included_device = FALSE; + BOOL found_tilde = FALSE; /** Accept only Unix-style filename **/ if (strchr(filename, ':') != NULL || strchr(filename, '[') != NULL) { @@ -3415,8 +3425,10 @@ PUBLIC int HTFTPLoad ARGS4( goto listen; } /** Otherwise, go to appropriate directory and doctor filename **/ - if (!strncmp(filename, "/~", 2)) + if (!strncmp(filename, "/~", 2)) { filename += 2; + found_tilde = TRUE; + } CTRACE((tfp, "check '%s' to translate x/y/ to [.x.y]\n", filename)); if (!included_device && (cp = strchr(filename, '/')) != NULL && @@ -3443,7 +3455,7 @@ PUBLIC int HTFTPLoad ARGS4( } filename = cp1+1; } else { - if (!included_device) { + if (!included_device && !found_tilde) { filename += 1; } } diff --git a/WWW/Library/Implementation/HTTCP.c b/WWW/Library/Implementation/HTTCP.c index bc696abd..673e4727 100644 --- a/WWW/Library/Implementation/HTTCP.c +++ b/WWW/Library/Implementation/HTTCP.c @@ -152,6 +152,9 @@ PUBLIC int HTioctl ARGS3( set_errno(EBADF); return -1; } +#ifndef UCX$C_IOCTL +#define UCX$C_IOCTL TCPIP$C_IOCTL +#endif ioctl_desc.opt = UCX$C_IOCTL; ioctl_desc.len = sizeof(struct comm); ioctl_desc.addr = &ioctl_comm; @@ -1528,6 +1531,8 @@ PRIVATE void get_host_details NOARGS */ if (strchr(hostname,'.') == NULL) { /* Not full address */ domain_name = getenv("UCX$BIND_DOMAIN"); + if (domain_name == NULL) + domain_name = getenv("TCPIP$BIND_DOMAIN"); if (domain_name != NULL) { StrAllocCat(hostname, "."); StrAllocCat(hostname, domain_name); diff --git a/WWW/Library/Implementation/HTTelnet.c b/WWW/Library/Implementation/HTTelnet.c index 4c16139f..9f5f3a14 100644 --- a/WWW/Library/Implementation/HTTelnet.c +++ b/WWW/Library/Implementation/HTTelnet.c @@ -406,7 +406,8 @@ PRIVATE int remote_session ARGS2(char *, acc_method, char *, host) do_system(command); return HT_NO_DATA; /* Ok - it was done but no data */ } - else if (getenv("UCX$DEVICE") != NULL) { + else if (getenv("UCX$DEVICE") != NULL + || getenv("TCPIP$DEVICE") != NULL) { if (login_protocol == rlogin) { HTSprintf0(&command, "RLOGIN%s%s %s %s", user ? "/USERNAME=" : "", diff --git a/WWW/Library/Implementation/LYLeaks.h b/WWW/Library/Implementation/LYLeaks.h index fc2a0dc0..fe995fb6 100644 --- a/WWW/Library/Implementation/LYLeaks.h +++ b/WWW/Library/Implementation/LYLeaks.h @@ -46,7 +46,7 @@ ** LY_FIND_LEAKS_EXTENDED is defined. - kw */ -/* Undefine this to get no inproved HTSprintf0/HTSprintf tracking: */ +/* Undefine this to get no improved HTSprintf0/HTSprintf tracking: */ #define LY_FIND_LEAKS_EXTENDED /* |