summaryrefslogtreecommitdiffstats
path: root/usr.bin/ncftp/open.h
diff options
context:
space:
mode:
authorache <ache@FreeBSD.org>1994-09-22 23:45:37 +0000
committerache <ache@FreeBSD.org>1994-09-22 23:45:37 +0000
commit41cb9decc65e51e29f0eb6fe06bcb3594726bd6b (patch)
tree31cb31bfb69915fc791ce9c2ec7d345124bedebf /usr.bin/ncftp/open.h
downloadFreeBSD-src-41cb9decc65e51e29f0eb6fe06bcb3594726bd6b.zip
FreeBSD-src-41cb9decc65e51e29f0eb6fe06bcb3594726bd6b.tar.gz
ncftp 1.8.5
Diffstat (limited to 'usr.bin/ncftp/open.h')
-rw-r--r--usr.bin/ncftp/open.h50
1 files changed, 50 insertions, 0 deletions
diff --git a/usr.bin/ncftp/open.h b/usr.bin/ncftp/open.h
new file mode 100644
index 0000000..7be8ccb
--- /dev/null
+++ b/usr.bin/ncftp/open.h
@@ -0,0 +1,50 @@
+/* open.h */
+
+#ifndef _open_h_
+#define _open_h_ 1
+
+/* Variables for Open() that can be changed from the command line. */
+typedef struct OpenOptions {
+ int openmode;
+ int ignore_rc;
+ unsigned int port;
+ int redial_delay;
+ int max_dials;
+ int ftpcat;
+ Hostname hostname;
+ longstring cdpath;
+ longstring colonmodepath;
+} OpenOptions;
+
+typedef struct RemoteSiteInfo {
+ int hasSIZE;
+ int hasMDTM;
+} RemoteSiteInfo;
+
+/* Open modes. */
+#define openImplicitAnon 1
+#define openImplicitUser 4
+#define openExplicitAnon 3
+#define openExplicitUser 2
+
+#define ISUSEROPEN(a) ((a==openImplicitUser)||(a==openExplicitUser))
+#define ISANONOPEN(a) (!ISUSEROPEN(a))
+#define ISEXPLICITOPEN(a) ((a==openExplicitAnon)||(a==openExplicitUser))
+#define ISIMPLICITOPEN(a) (!ISEXPLICITOPEN(a))
+
+/* ftpcat modes. */
+#define NO_FTPCAT 0
+#define FTPCAT 1
+#define FTPMORE 2
+
+/* Protos: */
+void InitOpenOptions(OpenOptions *openopt);
+int GetOpenOptions(int argc, char **argv, OpenOptions *openopt);
+int CheckForColonMode(OpenOptions *openopt, int *login_verbosity);
+int HookupToRemote(OpenOptions *openopt);
+void CheckRemoteSystemType(int);
+void ColonMode(OpenOptions *openopt);
+int Open(OpenOptions *openopt);
+int cmdOpen(int argc, char **argv);
+
+#endif /* _open_h_ */
OpenPOWER on IntegriCloud