xref: /freebsd/usr.sbin/ppp/defs.h (revision 6b4579784c45018506c8d7b93e89341111022c9f)
1af57ed9fSAtsushi Murai /*
2af57ed9fSAtsushi Murai  *	    Written by Toshiharu OHNO (tony-o@iij.ad.jp)
3af57ed9fSAtsushi Murai  *
4af57ed9fSAtsushi Murai  *   Copyright (C) 1993, Internet Initiative Japan, Inc. All rights reserverd.
5af57ed9fSAtsushi Murai  *
6af57ed9fSAtsushi Murai  * Redistribution and use in source and binary forms are permitted
7af57ed9fSAtsushi Murai  * provided that the above copyright notice and this paragraph are
8af57ed9fSAtsushi Murai  * duplicated in all such forms and that any documentation,
9af57ed9fSAtsushi Murai  * advertising materials, and other materials related to such
10af57ed9fSAtsushi Murai  * distribution and use acknowledge that the software was developed
11af57ed9fSAtsushi Murai  * by the Internet Initiative Japan.  The name of the
12af57ed9fSAtsushi Murai  * IIJ may not be used to endorse or promote products derived
13af57ed9fSAtsushi Murai  * from this software without specific prior written permission.
14af57ed9fSAtsushi Murai  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
15af57ed9fSAtsushi Murai  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
16af57ed9fSAtsushi Murai  * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
17af57ed9fSAtsushi Murai  *
1897d92980SPeter Wemm  * $FreeBSD$
19af57ed9fSAtsushi Murai  *
20af57ed9fSAtsushi Murai  *	TODO:
21af57ed9fSAtsushi Murai  */
22af57ed9fSAtsushi Murai 
233bf710a4SBrian Somers /* Check the following definitions for your machine environment */
2453c9f6c0SAtsushi Murai #ifdef __FreeBSD__
25a8d7acdcSBrian Somers # define  MODEM_LIST	"/dev/cuaa1\0/dev/cuaa0"	/* name of tty device */
2653c9f6c0SAtsushi Murai #else
2710a91a42SBrian Somers # ifdef __OpenBSD__
28a8d7acdcSBrian Somers #  define MODEM_LIST	"/dev/cua01\0/dev/cua00"	/* name of tty device */
2910a91a42SBrian Somers # else
30a8d7acdcSBrian Somers #  define MODEM_LIST	"/dev/tty01\0/dev/tty00"	/* name of tty device */
3153c9f6c0SAtsushi Murai # endif
3210a91a42SBrian Somers #endif
33a8d7acdcSBrian Somers #define NMODEMS		2
3475240ed1SBrian Somers 
35dd7e2610SBrian Somers #define _PATH_PPP	"/etc/ppp"
36dd7e2610SBrian Somers 
371384bd27SBrian Somers #define TUN_NAME	"tun"
381384bd27SBrian Somers #define TUN_PREFIX	(_PATH_DEV TUN_NAME)	/* /dev/tun */
39565e35e5SBrian Somers 
40af57ed9fSAtsushi Murai #define MODEM_SPEED	B38400	/* tty speed */
41af57ed9fSAtsushi Murai #define	SERVER_PORT	3000	/* Base server port no. */
4275240ed1SBrian Somers #define	MODEM_CTSRTS	1	/* Default (true): use CTS/RTS signals */
43abff9baeSBrian Somers #define	RECONNECT_TIMEOUT 3	/* Default timer for carrier loss */
44e718d1d7SBrian Somers #define	DIAL_TIMEOUT	30	/* Default and Max random time to redial */
45e718d1d7SBrian Somers #define	DIAL_NEXT_TIMEOUT 3	/* Default Hold time to next number redial */
46e6923505SBrian Somers #define SCRIPT_LEN 512		/* Size of login/dial/hangup scripts */
47e6923505SBrian Somers #define LINE_LEN SCRIPT_LEN 	/* Size of lines */
48e6923505SBrian Somers #define DEVICE_LEN SCRIPT_LEN	/* Size of individual devices */
4958330d7bSBrian Somers #define AUTHLEN 100 		/* Size of authname/authkey */
50972a1bcfSBrian Somers #define CHAPDIGESTLEN 100	/* Maximum chap digest */
51972a1bcfSBrian Somers #define CHAPCHALLENGELEN 48	/* Maximum chap challenge */
52b6e82f33SBrian Somers #define MAXARGS 40		/* How many args per config line */
53ab886ad0SBrian Somers #define NCP_IDLE_TIMEOUT 180	/* Drop all links */
546f8e9f0aSBrian Somers #define CHOKED_TIMEOUT 120	/* Delete queued packets w/ blocked tun */
551ae349f5Scvs2svn 
5614593dfdSBrian Somers #define MIN_LQRPERIOD 2		/* Minimum LQR frequency */
5714593dfdSBrian Somers #define DEF_LQRPERIOD 30	/* Default LQR frequency */
583a2e4f62SBrian Somers #define MIN_FSMRETRY 3		/* Minimum FSM retry frequency */
59cd9647a1SBrian Somers #define DEF_FSMRETRY 3		/* FSM retry frequency */
60479508cfSBrian Somers #define DEF_FSMTRIES 5		/* Default max retries */
61479508cfSBrian Somers #define DEF_FSMAUTHTRIES 3	/* Default max auth retries */
62af57ed9fSAtsushi Murai 
63af57ed9fSAtsushi Murai #define	CONFFILE 	"ppp.conf"
6494b3022eSBrian Somers #define	LINKUPFILE 	"ppp.linkup"
6594b3022eSBrian Somers #define	LINKDOWNFILE 	"ppp.linkdown"
66af57ed9fSAtsushi Murai #define	SECRETFILE	"ppp.secret"
67af57ed9fSAtsushi Murai 
68368aee2bSBrian Somers #define	EX_SIG		-1
69af57ed9fSAtsushi Murai #define	EX_NORMAL	0
70af57ed9fSAtsushi Murai #define	EX_START	1
71af57ed9fSAtsushi Murai #define	EX_SOCK		2
72af57ed9fSAtsushi Murai #define	EX_MODEM	3
73af57ed9fSAtsushi Murai #define	EX_DIAL		4
74af57ed9fSAtsushi Murai #define	EX_DEAD		5
75af57ed9fSAtsushi Murai #define	EX_DONE		6
76af57ed9fSAtsushi Murai #define	EX_REBOOT	7
77af57ed9fSAtsushi Murai #define	EX_ERRDEAD	8
78af57ed9fSAtsushi Murai #define	EX_HANGUP	10
79af57ed9fSAtsushi Murai #define	EX_TERM		11
806d14e2a8SJordan K. Hubbard #define EX_NODIAL	12
816d14e2a8SJordan K. Hubbard #define EX_NOLOGIN	13
82af57ed9fSAtsushi Murai 
83565e35e5SBrian Somers /* physical::type values (OR'd in bundle::phys_type) */
84dd0645c5SBrian Somers #define PHYS_NONE		0
8581358fa3SBrian Somers #define PHYS_INTERACTIVE	1  /* Manual link */
8681358fa3SBrian Somers #define PHYS_AUTO		2  /* Dial-on-demand link */
8781358fa3SBrian Somers #define	PHYS_DIRECT		4  /* Incoming link, deleted when closed */
8881358fa3SBrian Somers #define	PHYS_DEDICATED		8  /* Dedicated link */
8981358fa3SBrian Somers #define	PHYS_DDIAL		16 /* Dial immediately, stay connected */
9081358fa3SBrian Somers #define PHYS_BACKGROUND		32 /* Dial immediately, deleted when closed */
91f6a4e748SBrian Somers #define PHYS_FOREGROUND		64 /* Pseudo mode, same as background */
92f6a4e748SBrian Somers #define PHYS_ALL		127
9353c9f6c0SAtsushi Murai 
945b78bdf8SBrian Somers /* flags passed to findblank() and MakeArgs() */
955b78bdf8SBrian Somers #define PARSE_NORMAL	0
965b78bdf8SBrian Somers #define PARSE_REDUCE	1
975b78bdf8SBrian Somers #define PARSE_NOHASH	2
985b78bdf8SBrian Somers 
996b457978SBrian Somers #define ROUNDUP(x) ((x) ? (1 + (((x) - 1) | (sizeof(long) - 1))) : sizeof(long))
1006b457978SBrian Somers 
10175240ed1SBrian Somers extern void randinit(void);
1026f384573SBrian Somers extern ssize_t fullread(int, void *, size_t);
103dd0645c5SBrian Somers extern const char *mode2Nam(int);
104dd0645c5SBrian Somers extern int Nam2mode(const char *);
10526baedc5SBrian Somers extern struct in_addr GetIpAddr(const char *);
1065d9e6103SBrian Somers extern int SpeedToInt(speed_t);
1075d9e6103SBrian Somers extern speed_t IntToSpeed(int);
1081bbd8362SBrian Somers extern char *findblank(char *, int);
109abab7303SBrian Somers extern int MakeArgs(char *, char **, int, int);
110