xref: /freebsd/usr.sbin/ppp/defs.h (revision 1ae349f52c53416e04f1d038a8210f1a9fa7db2c)
11ae349f5Scvs2svn /*
21ae349f5Scvs2svn  *	    Written by Toshiharu OHNO (tony-o@iij.ad.jp)
31ae349f5Scvs2svn  *
41ae349f5Scvs2svn  *   Copyright (C) 1993, Internet Initiative Japan, Inc. All rights reserverd.
51ae349f5Scvs2svn  *
61ae349f5Scvs2svn  * Redistribution and use in source and binary forms are permitted
71ae349f5Scvs2svn  * provided that the above copyright notice and this paragraph are
81ae349f5Scvs2svn  * duplicated in all such forms and that any documentation,
91ae349f5Scvs2svn  * advertising materials, and other materials related to such
101ae349f5Scvs2svn  * distribution and use acknowledge that the software was developed
111ae349f5Scvs2svn  * by the Internet Initiative Japan.  The name of the
121ae349f5Scvs2svn  * IIJ may not be used to endorse or promote products derived
131ae349f5Scvs2svn  * from this software without specific prior written permission.
141ae349f5Scvs2svn  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
151ae349f5Scvs2svn  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
161ae349f5Scvs2svn  * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
171ae349f5Scvs2svn  *
181ae349f5Scvs2svn  * $Id: defs.h,v 1.28 1997/11/22 03:37:29 brian Exp $
191ae349f5Scvs2svn  *
201ae349f5Scvs2svn  *	TODO:
211ae349f5Scvs2svn  */
221ae349f5Scvs2svn 
231ae349f5Scvs2svn /*
241ae349f5Scvs2svn  *  Check following definitions for your machine environment
251ae349f5Scvs2svn  */
261ae349f5Scvs2svn #ifdef __FreeBSD__
271ae349f5Scvs2svn # define  MODEM_DEV		"/dev/cuaa1"	/* name of tty device */
281ae349f5Scvs2svn # define  BASE_MODEM_DEV	"cuaa1"		/* name of base tty device */
291ae349f5Scvs2svn #else
301ae349f5Scvs2svn # ifdef __OpenBSD__
311ae349f5Scvs2svn #  define MODEM_DEV		"/dev/cua01"	/* name of tty device */
321ae349f5Scvs2svn #  define BASE_MODEM_DEV	"cua01"		/* name of base tty device */
331ae349f5Scvs2svn # else
341ae349f5Scvs2svn #  define MODEM_DEV		"/dev/tty01"	/* name of tty device */
351ae349f5Scvs2svn #  define BASE_MODEM_DEV	"tty01"		/* name of base tty device */
361ae349f5Scvs2svn # endif
371ae349f5Scvs2svn #endif
381ae349f5Scvs2svn 
391ae349f5Scvs2svn #define MODEM_SPEED	B38400	/* tty speed */
401ae349f5Scvs2svn #define	SERVER_PORT	3000	/* Base server port no. */
411ae349f5Scvs2svn #define	MODEM_CTSRTS	1	/* Default (true): use CTS/RTS signals */
421ae349f5Scvs2svn #define	RECONNECT_TIMER	3	/* Default timer for carrier loss */
431ae349f5Scvs2svn #define	RECONNECT_TRIES	0	/* Default retries on carrier loss */
441ae349f5Scvs2svn #define	REDIAL_PERIOD	30	/* Default Hold time to redial */
451ae349f5Scvs2svn #define	NEXT_REDIAL_PERIOD 3	/* Default Hold time to next number redial */
461ae349f5Scvs2svn #define SCRIPT_LEN 512		/* Size of login scripts */
471ae349f5Scvs2svn #define LINE_LEN SCRIPT_LEN 	/* Size of login scripts */
481ae349f5Scvs2svn #define MAXARGS 40		/* How many args per config line */
491ae349f5Scvs2svn 
501ae349f5Scvs2svn #define	CONFFILE 	"ppp.conf"
511ae349f5Scvs2svn #define	LINKUPFILE 	"ppp.linkup"
521ae349f5Scvs2svn #define	LINKDOWNFILE 	"ppp.linkdown"
531ae349f5Scvs2svn #define	SECRETFILE	"ppp.secret"
541ae349f5Scvs2svn 
551ae349f5Scvs2svn /*
561ae349f5Scvs2svn  *  Definition of working mode
571ae349f5Scvs2svn  */
581ae349f5Scvs2svn #define MODE_INTER	1	/* Interactive mode */
591ae349f5Scvs2svn #define MODE_AUTO	2	/* Auto calling mode */
601ae349f5Scvs2svn #define	MODE_DIRECT	4	/* Direct connection mode */
611ae349f5Scvs2svn #define	MODE_DEDICATED	8	/* Dedicated line mode */
621ae349f5Scvs2svn #define	MODE_DDIAL	16	/* Dedicated dialing line mode */
631ae349f5Scvs2svn #define	MODE_ALIAS	32	/* Packet aliasing (masquerading) */
641ae349f5Scvs2svn #define MODE_BACKGROUND 64	/* Background mode. */
651ae349f5Scvs2svn 
661ae349f5Scvs2svn #define MODE_DAEMON (2|4|8|16|64)
671ae349f5Scvs2svn #define MODE_OUTGOING_DAEMON (2|8|16|64)
681ae349f5Scvs2svn 
691ae349f5Scvs2svn #define	EX_SIG		-1
701ae349f5Scvs2svn #define	EX_NORMAL	0
711ae349f5Scvs2svn #define	EX_START	1
721ae349f5Scvs2svn #define	EX_SOCK		2
731ae349f5Scvs2svn #define	EX_MODEM	3
741ae349f5Scvs2svn #define	EX_DIAL		4
751ae349f5Scvs2svn #define	EX_DEAD		5
761ae349f5Scvs2svn #define	EX_DONE		6
771ae349f5Scvs2svn #define	EX_REBOOT	7
781ae349f5Scvs2svn #define	EX_ERRDEAD	8
791ae349f5Scvs2svn #define	EX_HANGUP	10
801ae349f5Scvs2svn #define	EX_TERM		11
811ae349f5Scvs2svn #define EX_NODIAL	12
821ae349f5Scvs2svn #define EX_NOLOGIN	13
831ae349f5Scvs2svn 
841ae349f5Scvs2svn extern int mode;
851ae349f5Scvs2svn extern int BGFiledes[2];
861ae349f5Scvs2svn extern int modem;
871ae349f5Scvs2svn extern int tun_in;
881ae349f5Scvs2svn extern int tun_out;
891ae349f5Scvs2svn extern int netfd;
901ae349f5Scvs2svn 
911ae349f5Scvs2svn extern void SetLabel(const char *);
921ae349f5Scvs2svn extern const char *GetLabel(void);
931ae349f5Scvs2svn extern void randinit(void);
941ae349f5Scvs2svn extern int GetShortHost(void);
951ae349f5Scvs2svn extern void DropClient(int);
96