summaryrefslogtreecommitdiffstats
path: root/src/appl/gssftp/ftp/ftp_var.h
diff options
context:
space:
mode:
authorDanilo Almeida <dalmeida@mit.edu>2001-07-24 01:07:16 +0000
committerDanilo Almeida <dalmeida@mit.edu>2001-07-24 01:07:16 +0000
commit226d2461a7ddf2384faad5c20284fa80c5430ea6 (patch)
tree810f544e8e03967ab4449a44cdf60030bb42fe7c /src/appl/gssftp/ftp/ftp_var.h
parent27dee9d9f20638ec3de1170262ac1ba583776b1d (diff)
downloadkrb5-226d2461a7ddf2384faad5c20284fa80c5430ea6.tar.gz
krb5-226d2461a7ddf2384faad5c20284fa80c5430ea6.tar.xz
krb5-226d2461a7ddf2384faad5c20284fa80c5430ea6.zip
* Makefile.in, cmds.c, ftp.c, ftp_var.h, getpass.c, glob.c,
main.c, ruserpass.c, secure.c, secure.h: Quick and dirty Win32 port. Changes include using sockets more portably; changing the method of getting username, home directory, and temporary filenames; adding password reading code for Win32; directory enumeration via FindNextFile() rather than readdir(); removing OUT labels (which appear to cause problems with MSVC++ 6.0). Since ANSI C, assume we have stdarg.h. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@13628 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/appl/gssftp/ftp/ftp_var.h')
-rw-r--r--src/appl/gssftp/ftp/ftp_var.h38
1 files changed, 35 insertions, 3 deletions
diff --git a/src/appl/gssftp/ftp/ftp_var.h b/src/appl/gssftp/ftp/ftp_var.h
index 67b187c015..ee02ed3140 100644
--- a/src/appl/gssftp/ftp/ftp_var.h
+++ b/src/appl/gssftp/ftp/ftp_var.h
@@ -33,6 +33,33 @@
* @(#)ftp_var.h 5.9 (Berkeley) 6/1/90
*/
+#ifdef _WIN32
+#include <windows.h>
+#endif
+
+#ifdef _WIN32
+int fclose_socket(FILE* f);
+FILE* fdopen_socket(SOCKET s, char* mode);
+#define FCLOSE_SOCKET(f) fclose_socket(f)
+#define FDOPEN_SOCKET(s, mode) fdopen_socket(s, mode)
+#define SOCKETNO(fd) _get_osfhandle(fd)
+#define PERROR_SOCKET(str) do { errno = SOCKET_ERRNO; perror(str); } while(0)
+#else
+#define FCLOSE_SOCKET(f) fclose(f)
+#define FDOPEN_SOCKET(s, mode) fdopen(s, fd)
+#define SOCKETNO(fd) (fd)
+#define PERROR_SOCKET(str) perror(str)
+#endif
+
+#ifdef _WIN32
+typedef void (*sig_t)(int);
+typedef void sigtype;
+#else
+#define sig_t my_sig_t
+#define sigtype krb5_sigtype
+typedef sigtype (*sig_t)();
+#endif
+
/*
* FTP global variables.
*/
@@ -74,7 +101,13 @@ extern int passivemode; /* passive mode enabled */
extern char *altarg; /* argv[1] with no shell-like preprocessing */
extern char ntin[17]; /* input translation table */
extern char ntout[17]; /* output translation table */
+#ifdef _WIN32
+#ifndef MAXPATHLEN
+#define MAXPATHLEN MAX_PATH
+#endif
+#else
#include <sys/param.h>
+#endif
extern char mapin[MAXPATHLEN]; /* input map template */
extern char mapout[MAXPATHLEN]; /* output map template */
extern int clevel; /* command channel protection level */
@@ -134,12 +167,11 @@ extern char macbuf[4096];
#endif
extern char *tail();
-extern int errno;
+#ifndef _WIN32
extern char *mktemp();
+#endif
-#if (defined(STDARG) || (defined(__STDC__) && ! defined(VARARGS))) || defined(HAVE_STDARG_H)
extern int command(char *, ...);
-#endif
#ifndef PROTOTYPE
#define PROTOTYPE(x) x