455aabc3f8
o The FSM layering is now more sane. o Move a lot of the NCP stuff into our ipcpstate rather than having it in the bundle, including control of the configured IP addresses. We don't need hacks like the global `linkup' variable any more as the FSM decides when our ppp.link* files get run. This is going to eventually be configurable based on FSM events anyway. o Fix a few inconsistencies when both sides require authentication. o We now have "Ppp..." and "PPp" prompts, reflecting authentication and network phase. We don't print loads of spurious prompts as we change phases any more. o Our phase is part of the bundle now. o Fix a bug where the FSM wasn't calling LayerFinish. o Close the FSM down correctly with a signal rather than slamming it down as if the line was dropped (the undocumented ``down'' command is still available though). o Remove the forgotten `tunno' variable and fix references to it.
64 lines
1.8 KiB
C
64 lines
1.8 KiB
C
/*
|
|
* Written by Toshiharu OHNO (tony-o@iij.ad.jp)
|
|
*
|
|
* Copyright (C) 1993, Internet Initiative Japan, Inc. All rights reserverd.
|
|
*
|
|
* Redistribution and use in source and binary forms are permitted
|
|
* provided that the above copyright notice and this paragraph are
|
|
* duplicated in all such forms and that any documentation,
|
|
* advertising materials, and other materials related to such
|
|
* distribution and use acknowledge that the software was developed
|
|
* by the Internet Initiative Japan. The name of the
|
|
* IIJ may not be used to endorse or promote products derived
|
|
* from this software without specific prior written permission.
|
|
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
|
|
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
|
|
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
|
*
|
|
* $Id: command.h,v 1.12.2.1 1998/02/02 19:32:04 brian Exp $
|
|
*
|
|
* TODO:
|
|
*/
|
|
|
|
struct cmdtab;
|
|
|
|
struct cmdargs {
|
|
struct cmdtab const *cmd;
|
|
int argc;
|
|
char const *const *argv;
|
|
const void *data;
|
|
struct bundle *bundle;
|
|
};
|
|
|
|
struct cmdtab {
|
|
const char *name;
|
|
const char *alias;
|
|
int (*func) (struct cmdargs const *);
|
|
u_char lauth;
|
|
const char *helpmes;
|
|
const char *syntax;
|
|
const void *args;
|
|
};
|
|
|
|
#define VAR_AUTHKEY 0
|
|
#define VAR_DIAL 1
|
|
#define VAR_LOGIN 2
|
|
#define VAR_AUTHNAME 3
|
|
#define VAR_DEVICE 4
|
|
#define VAR_ACCMAP 5
|
|
#define VAR_PHONE 6
|
|
#define VAR_HANGUP 7
|
|
#ifdef HAVE_DES
|
|
#define VAR_ENC 8
|
|
#endif
|
|
|
|
extern struct in_addr ifnetmask;
|
|
extern int aft_cmd;
|
|
|
|
extern int SetVariable(struct cmdargs const *);
|
|
extern void Prompt(struct bundle *);
|
|
extern int IsInteractive(int);
|
|
extern void InterpretCommand(char *, int, int *, char ***);
|
|
extern void RunCommand(struct bundle *, int, char const *const *, const char *);
|
|
extern void DecodeCommand(struct bundle *, char *, int, const char *);
|