extern.h revision 56668
11592Srgrimes/*-
21592Srgrimes * Copyright (c) 1992, 1993
31592Srgrimes *	The Regents of the University of California.  All rights reserved.
41592Srgrimes *
51592Srgrimes * Redistribution and use in source and binary forms, with or without
61592Srgrimes * modification, are permitted provided that the following conditions
71592Srgrimes * are met:
81592Srgrimes * 1. Redistributions of source code must retain the above copyright
91592Srgrimes *    notice, this list of conditions and the following disclaimer.
101592Srgrimes * 2. Redistributions in binary form must reproduce the above copyright
111592Srgrimes *    notice, this list of conditions and the following disclaimer in the
121592Srgrimes *    documentation and/or other materials provided with the distribution.
131592Srgrimes * 3. All advertising materials mentioning features or use of this software
141592Srgrimes *    must display the following acknowledgement:
151592Srgrimes *	This product includes software developed by the University of
161592Srgrimes *	California, Berkeley and its contributors.
171592Srgrimes * 4. Neither the name of the University nor the names of its contributors
181592Srgrimes *    may be used to endorse or promote products derived from this software
191592Srgrimes *    without specific prior written permission.
201592Srgrimes *
211592Srgrimes * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
221592Srgrimes * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
231592Srgrimes * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
241592Srgrimes * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
251592Srgrimes * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
261592Srgrimes * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
271592Srgrimes * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
281592Srgrimes * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
291592Srgrimes * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
301592Srgrimes * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
311592Srgrimes * SUCH DAMAGE.
321592Srgrimes *
331592Srgrimes *	@(#)extern.h	8.2 (Berkeley) 4/4/94
3450476Speter * $FreeBSD: head/libexec/ftpd/extern.h 56668 2000-01-27 09:28:38Z shin $
351592Srgrimes */
361592Srgrimes
371592Srgrimesvoid	blkfree __P((char **));
381592Srgrimeschar  **copyblk __P((char **));
391592Srgrimesvoid	cwd __P((char *));
401592Srgrimesvoid	delete __P((char *));
411592Srgrimesvoid	dologout __P((int));
421592Srgrimesvoid	fatal __P((char *));
4329140Stgvoid    ftpd_logwtmp __P((char *, char *, char *));
441592Srgrimesint	ftpd_pclose __P((FILE *));
451592SrgrimesFILE   *ftpd_popen __P((char *, char *));
461592Srgrimeschar   *getline __P((char *, int, FILE *));
471592Srgrimesvoid	lreply __P((int, const char *, ...));
481592Srgrimesvoid	makedir __P((char *));
491592Srgrimesvoid	nack __P((char *));
501592Srgrimesvoid	pass __P((char *));
511592Srgrimesvoid	passive __P((void));
5256668Sshinvoid	long_passive __P((char *, int));
531592Srgrimesvoid	perror_reply __P((int, char *));
541592Srgrimesvoid	pwd __P((void));
551592Srgrimesvoid	removedir __P((char *));
561592Srgrimesvoid	renamecmd __P((char *, char *));
571592Srgrimeschar   *renamefrom __P((char *));
581592Srgrimesvoid	reply __P((int, const char *, ...));
591592Srgrimesvoid	retrieve __P((char *, char *));
601592Srgrimesvoid	send_file_list __P((char *));
6113139Speter#ifdef OLD_SETPROCTITLE
621592Srgrimesvoid	setproctitle __P((const char *, ...));
6313139Speter#endif
641592Srgrimesvoid	statcmd __P((void));
651592Srgrimesvoid	statfilecmd __P((char *));
661592Srgrimesvoid	store __P((char *, char *, int));
671592Srgrimesvoid	upper __P((char *));
681592Srgrimesvoid	user __P((char *));
691592Srgrimesvoid	yyerror __P((char *));
7017433Spstint	yyparse __P((void));
7117433Spst#if defined(SKEY) && defined(_PWD_H_) /* XXX evil */
7219018Sachechar   *skey_challenge __P((char *, struct passwd *, int));
7317433Spst#endif
7425165Sdavidnint	ls_main __P((int, char **));
7556668Sshin
7656668Sshinstruct sockaddr_in;
7756668Sshinstruct sockaddr_in6;
7856668Sshinunion sockunion {
7956668Sshin	struct sockinet {
8056668Sshin		u_char	si_len;
8156668Sshin		u_char	si_family;
8256668Sshin		u_short	si_port;
8356668Sshin	} su_si;
8456668Sshin	struct	sockaddr_in  su_sin;
8556668Sshin	struct	sockaddr_in6 su_sin6;
8656668Sshin};
8756668Sshin#define	su_len		su_si.si_len
8856668Sshin#define	su_family	su_si.si_family
8956668Sshin#define	su_port		su_si.si_port
90