defs.h revision 44279
16059Samurai/*
26059Samurai *	    Written by Toshiharu OHNO (tony-o@iij.ad.jp)
36059Samurai *
46059Samurai *   Copyright (C) 1993, Internet Initiative Japan, Inc. All rights reserverd.
56059Samurai *
66059Samurai * Redistribution and use in source and binary forms are permitted
76059Samurai * provided that the above copyright notice and this paragraph are
86059Samurai * duplicated in all such forms and that any documentation,
96059Samurai * advertising materials, and other materials related to such
106059Samurai * distribution and use acknowledge that the software was developed
116059Samurai * by the Internet Initiative Japan.  The name of the
126059Samurai * IIJ may not be used to endorse or promote products derived
136059Samurai * from this software without specific prior written permission.
146059Samurai * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
156059Samurai * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
166059Samurai * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
176059Samurai *
1844279Sbrian * $Id: defs.h,v 1.39 1999/02/16 00:16:56 brian Exp $
196059Samurai *
206059Samurai *	TODO:
216059Samurai */
226059Samurai
2336285Sbrian/* Check the following definitions for your machine environment */
246735Samurai#ifdef __FreeBSD__
2536285Sbrian# define  MODEM_LIST	"/dev/cuaa1, /dev/cuaa0"	/* name of tty device */
266735Samurai#else
2730715Sbrian# ifdef __OpenBSD__
2836285Sbrian#  define MODEM_LIST	"/dev/cua01, /dev/cua00"	/* name of tty device */
2930715Sbrian# else
3036285Sbrian#  define MODEM_LIST	"/dev/tty01, /dev/tty00"	/* name of tty device */
3130715Sbrian# endif
326735Samurai#endif
3330715Sbrian
3436285Sbrian#define _PATH_PPP	"/etc/ppp"
3536285Sbrian
3636452Sbrian#define TUN_NAME	"tun"
3736452Sbrian#define TUN_PREFIX	(_PATH_DEV TUN_NAME)	/* /dev/tun */
3836285Sbrian
3928679Sbrian#define MODEM_SPEED	B38400	/* tty speed */
4028679Sbrian#define	SERVER_PORT	3000	/* Base server port no. */
4130715Sbrian#define	MODEM_CTSRTS	1	/* Default (true): use CTS/RTS signals */
4236285Sbrian#define	RECONNECT_TIMEOUT 3	/* Default timer for carrier loss */
4336285Sbrian#define	DIAL_TIMEOUT	30	/* Default and Max random time to redial */
4436285Sbrian#define	DIAL_NEXT_TIMEOUT 3	/* Default Hold time to next number redial */
4531070Sbrian#define SCRIPT_LEN 512		/* Size of login scripts */
4631070Sbrian#define LINE_LEN SCRIPT_LEN 	/* Size of login scripts */
4743888Sbrian#define AUTHLEN 100 		/* Size of authname/authkey */
4843313Sbrian#define CHAPDIGESTLEN 100	/* Maximum chap digest */
4943313Sbrian#define CHAPCHALLENGELEN 48	/* Maximum chap challenge */
5031343Sbrian#define MAXARGS 40		/* How many args per config line */
5138544Sbrian#define NCP_IDLE_TIMEOUT 180	/* Drop all links */
5238544Sbrian#define CHOKED_TIMEOUT 120	/* Delete queued packets w/ blocked tun */
536059Samurai
5436285Sbrian#define LINK_MINWEIGHT 20
5537549Sbrian#define MIN_LQRPERIOD 2		/* Minimum LQR frequency */
5637549Sbrian#define DEF_LQRPERIOD 30	/* Default LQR frequency */
5737210Sbrian#define MIN_FSMRETRY 3		/* Minimum FSM retry frequency */
5836285Sbrian#define DEF_FSMRETRY 3		/* FSM retry frequency */
5938174Sbrian#define DEF_REQs     5		/* This number of REQs in IRC */
6044073Sbrian#define DEF_CDDELAY  1		/* Delay before checking for carrier */
6136285Sbrian
626059Samurai#define	CONFFILE 	"ppp.conf"
6326589Sbrian#define	LINKUPFILE 	"ppp.linkup"
6426589Sbrian#define	LINKDOWNFILE 	"ppp.linkdown"
656059Samurai#define	SECRETFILE	"ppp.secret"
666059Samurai
6726858Sbrian#define	EX_SIG		-1
686059Samurai#define	EX_NORMAL	0
696059Samurai#define	EX_START	1
706059Samurai#define	EX_SOCK		2
716059Samurai#define	EX_MODEM	3
726059Samurai#define	EX_DIAL		4
736059Samurai#define	EX_DEAD		5
746059Samurai#define	EX_DONE		6
756059Samurai#define	EX_REBOOT	7
766059Samurai#define	EX_ERRDEAD	8
776059Samurai#define	EX_HANGUP	10
786059Samurai#define	EX_TERM		11
7920813Sjkh#define EX_NODIAL	12
8020813Sjkh#define EX_NOLOGIN	13
816059Samurai
8236285Sbrian/* physical::type values (OR'd in bundle::phys_type) */
8336465Sbrian#define PHYS_NONE		0
8436465Sbrian#define PHYS_INTERACTIVE	1  /* Manual link */
8536465Sbrian#define PHYS_AUTO		2  /* Dial-on-demand link */
8636465Sbrian#define	PHYS_DIRECT		4  /* Incoming link, deleted when closed */
8736465Sbrian#define	PHYS_DEDICATED		8  /* Dedicated link */
8836465Sbrian#define	PHYS_DDIAL		16 /* Dial immediately, stay connected */
8936465Sbrian#define PHYS_BACKGROUND		32 /* Dial immediately, deleted when closed */
9036465Sbrian#define PHYS_ALL		63
916059Samurai
9230715Sbrianextern void randinit(void);
9336285Sbrianextern ssize_t fullread(int, void *, size_t);
9436285Sbrianextern const char *mode2Nam(int);
9536285Sbrianextern int Nam2mode(const char *);
9644279Sbrianextern struct in_addr GetIpAddr(const char *);
97