From 3b0f8d2ed641ceeded11c0d3f253b0cacbf00880 Mon Sep 17 00:00:00 2001 From: Brian Somers Date: Fri, 3 Apr 1998 19:21:56 +0000 Subject: o Move struct lcp and struct ccp into struct link. o Remove bundle2lcp(), bundle2ccp() and bundle2link(). They're too resource-hungry and we have `owner pointers' to do their job. o Make our FSM understand LCPs that are always ST_OPENED (with a minimum code that != 1). o Send FSM code rejects for invalid codes. o Make our bundle fsm_parent deal with multiple links. o Make timer diagnostics pretty and allow access via ~t in `term' mode (not just when logging debug) and `show timers'. Only show timers every second in debug mode, otherwise we get too many diagnostics to be useful (we probably still do). Also, don't restrict ~m in term mode to depend on debug logging. o Rationalise our bundles' phases. o Create struct mp (multilink protocol). This is both an NCP and a type of struct link. It feeds off other NCPs for output, passing fragmented packets into the queues of available datalinks. It also gets PROTO_MP input, reassembles the fragments into ppp frames, and passes them back to the HDLC layer that the fragments were passed from. ** It's not yet possible to enter multilink mode :-( ** o Add `set weight' (requires context) for deciding on a links weighting in multilink mode. Weighting is simplistic (and probably badly implemented) for now. o Remove the function pointers in struct link. They ended up only applying to physical links. o Configure our tun device with an MTU equal to the MRU from struct mp's LCP and a speed equal to the sum of our link speeds. o `show {lcp,ccp,proto}' and `set deflate' now have optional context and use ChooseLink() to decide on which `struct link' to use. This allows behaviour as before when in non-multilink mode, and allows access to the MP logical link in multilink mode. o Ignore reconnect and redial values when in -direct mode and when cleaning up. Always redial when in -ddial or -dedicated mode (unless cleaning up). o Tell our links to `staydown' when we close them due to a signal. o Remove remaining `#ifdef SIGALRM's (ppp doesn't function without alarms). o Don't bother strdup()ing our physical link name. o Various other cosmetic changes. --- usr.sbin/ppp/timer.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'usr.sbin/ppp/timer.h') diff --git a/usr.sbin/ppp/timer.h b/usr.sbin/ppp/timer.h index e8df9b9387c7..d664f3c5b29a 100644 --- a/usr.sbin/ppp/timer.h +++ b/usr.sbin/ppp/timer.h @@ -15,16 +15,17 @@ * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. * - * $Id: timer.h,v 1.4 1997/12/28 21:55:05 brian Exp $ + * $Id: timer.h,v 1.5 1998/01/21 02:15:30 brian Exp $ * * TODO: */ -#define TICKUNIT 100000 /* Unit in usec */ -#define SECTICKS (1000000/TICKUNIT) +#define TICKUNIT 100000 /* usec's per Unit */ +#define SECTICKS (1000000/TICKUNIT) /* Units per second */ struct pppTimer { int state; + const char *name; u_long rest; /* Ticks to expire */ u_long load; /* Initial load value */ void (*func)(void *); /* Function called when timer is expired */ @@ -40,7 +41,7 @@ struct pppTimer { extern void StartTimer(struct pppTimer *); extern void StopTimer(struct pppTimer *); extern void TermTimerService(void); -extern void ShowTimers(void); +extern void ShowTimers(int LogLevel); #ifdef SIGALRM extern void nointr_sleep(u_int); -- cgit v1.3