xref: /openbsd-src/usr.bin/ftp/extern.h (revision b2ea75c1b17e1a9a339660e7ed45cd24946b230e)
1 /*	$OpenBSD: extern.h,v 1.20 2000/06/21 19:22:54 itojun Exp $	*/
2 /*	$NetBSD: extern.h,v 1.17 1997/08/18 10:20:19 lukem Exp $	*/
3 
4 /*
5  * Copyright (C) 1997 and 1998 WIDE Project.
6  * All rights reserved.
7  *
8  * Redistribution and use in source and binary forms, with or without
9  * modification, are permitted provided that the following conditions
10  * are met:
11  * 1. Redistributions of source code must retain the above copyright
12  *    notice, this list of conditions and the following disclaimer.
13  * 2. Redistributions in binary form must reproduce the above copyright
14  *    notice, this list of conditions and the following disclaimer in the
15  *    documentation and/or other materials provided with the distribution.
16  * 3. Neither the name of the project nor the names of its contributors
17  *    may be used to endorse or promote products derived from this software
18  *    without specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND
21  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23  * ARE DISCLAIMED.  IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE
24  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30  * SUCH DAMAGE.
31  */
32 
33 /*-
34  * Copyright (c) 1994 The Regents of the University of California.
35  * All rights reserved.
36  *
37  * Redistribution and use in source and binary forms, with or without
38  * modification, are permitted provided that the following conditions
39  * are met:
40  * 1. Redistributions of source code must retain the above copyright
41  *    notice, this list of conditions and the following disclaimer.
42  * 2. Redistributions in binary form must reproduce the above copyright
43  *    notice, this list of conditions and the following disclaimer in the
44  *    documentation and/or other materials provided with the distribution.
45  * 3. All advertising materials mentioning features or use of this software
46  *    must display the following acknowledgement:
47  *	This product includes software developed by the University of
48  *	California, Berkeley and its contributors.
49  * 4. Neither the name of the University nor the names of its contributors
50  *    may be used to endorse or promote products derived from this software
51  *    without specific prior written permission.
52  *
53  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
54  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
55  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
56  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
57  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
58  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
59  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
60  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
61  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
62  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
63  * SUCH DAMAGE.
64  *
65  *	@(#)extern.h	8.3 (Berkeley) 10/9/94
66  */
67 
68 #include <sys/types.h>
69 
70 void    abort_remote __P((FILE *));
71 void    abortpt __P((int));
72 void    abortrecv __P((int));
73 void    abortsend __P((int));
74 void	account __P((int, char **));
75 void	alarmtimer __P((int));
76 int	another __P((int *, char ***, const char *));
77 int	auto_fetch __P((int, char **, char *));
78 void	blkfree __P((char **));
79 void	cd __P((int, char **));
80 void	cdup __P((int, char **));
81 void	changetype __P((int, int));
82 void	cmdabort __P((int));
83 void	cmdscanner __P((int));
84 int	command __P((const char *, ...));
85 #ifndef SMALL
86 unsigned char complete __P((EditLine *, int));
87 void	controlediting __P((void));
88 #endif /* !SMALL */
89 int	confirm __P((const char *, const char *));
90 FILE   *dataconn __P((const char *));
91 void	delete __P((int, char **));
92 void	disconnect __P((int, char **));
93 void	do_chmod __P((int, char **));
94 void	do_umask __P((int, char **));
95 void	domacro __P((int, char **));
96 char   *domap __P((char *));
97 void	doproxy __P((int, char **));
98 char   *dotrans __P((char *));
99 int     empty __P((fd_set *, int));
100 int	foregroundproc __P((void));
101 void	get __P((int, char **));
102 struct cmd *getcmd __P((const char *));
103 int	getit __P((int, char **, int, const char *));
104 int	getreply __P((int));
105 int	globulize __P((char **));
106 char   *gunique __P((const char *));
107 void	help __P((int, char **));
108 char   *hookup __P((char *, char *));
109 void	idle __P((int, char **));
110 int     initconn __P((void));
111 void	intr __P((void));
112 int	isurl __P((const char *));
113 void	list_vertical __P((StringList *));
114 void	lcd __P((int, char **));
115 int	login __P((const char *, char *, char *));
116 void	lostpeer __P((void));
117 void	lpwd __P((int, char **));
118 void	ls __P((int, char **));
119 void	mabort __P((int));
120 void	macdef __P((int, char **));
121 void	makeargv __P((void));
122 void	makedir __P((int, char **));
123 void	mdelete __P((int, char **));
124 void	mget __P((int, char **));
125 void	mls __P((int, char **));
126 void	modtime __P((int, char **));
127 void	mput __P((int, char **));
128 char   *onoff __P((int));
129 void	newer __P((int, char **));
130 void	page __P((int, char **));
131 void    progressmeter __P((int));
132 char   *prompt __P((void));
133 void	proxabort __P((int));
134 void    proxtrans __P((const char *, const char *, const char *));
135 void    psabort __P((int));
136 void	psummary __P((int));
137 void    pswitch __P((int));
138 void    ptransfer __P((int));
139 void	put __P((int, char **));
140 void	pwd __P((int, char **));
141 void	quit __P((int, char **));
142 void	quote __P((int, char **));
143 void	quote1 __P((const char *, int, char **));
144 void    recvrequest __P((const char *, const char *, const char *,
145 	    const char *, int, int));
146 void	reget __P((int, char **));
147 char   *remglob __P((char **, int, char **));
148 off_t	remotesize __P((const char *, int));
149 time_t	remotemodtime __P((const char *, int));
150 void	removedir __P((int, char **));
151 void	renamefile __P((int, char **));
152 void    reset __P((int, char **));
153 void	restart __P((int, char **));
154 void	rmthelp __P((int, char **));
155 void	rmtstatus __P((int, char **));
156 int	ruserpass __P((const char *, char **, char **, char **));
157 void    sendrequest __P((const char *, const char *, const char *, int));
158 void	setascii __P((int, char **));
159 void	setbell __P((int, char **));
160 void	setbinary __P((int, char **));
161 void	setcase __P((int, char **));
162 void	setcr __P((int, char **));
163 void	setdebug __P((int, char **));
164 void	setedit __P((int, char **));
165 void	setepsv4 __P((int, char **));
166 void	setform __P((int, char **));
167 void	setftmode __P((int, char **));
168 void	setgate __P((int, char **));
169 void	setglob __P((int, char **));
170 void	sethash __P((int, char **));
171 void	setnmap __P((int, char **));
172 void	setntrans __P((int, char **));
173 void	setpassive __P((int, char **));
174 void	setpeer __P((int, char **));
175 void	setport __P((int, char **));
176 void	setpreserve __P((int, char **));
177 void	setprogress __P((int, char **));
178 void	setprompt __P((int, char **));
179 void	setrunique __P((int, char **));
180 void	setstruct __P((int, char **));
181 void	setsunique __P((int, char **));
182 void	settenex __P((int, char **));
183 void	settrace __P((int, char **));
184 void	setttywidth __P((int));
185 void	settype __P((int, char **));
186 void	setverbose __P((int, char **));
187 void	shell __P((int, char **));
188 void	site __P((int, char **));
189 void	sizecmd __P((int, char **));
190 char   *slurpstring __P((void));
191 void	status __P((int, char **));
192 void	syst __P((int, char **));
193 int	togglevar __P((int, char **, int *, const char *));
194 void	usage __P((void));
195 void	user __P((int, char **));
196 
197 
198 extern jmp_buf	abortprox;
199 extern int	abrtflag;
200 extern struct	cmd cmdtab[];
201 extern FILE    *cout;
202 extern int	data;
203 extern char    *home;
204 extern jmp_buf	jabort;
205 extern int	proxy;
206 extern char	reply_string[];
207 extern off_t	restart_point;
208 extern int	NCMDS;
209 
210 extern char *__progname;		/* from crt0.o */
211 
212