summaryrefslogtreecommitdiffstats
path: root/sysconfig
Commit message (Expand)AuthorAgeFilesLines
* use new pppdMichael K. Johnson1999-08-132-4/+7
* take advantage of userpeerdnsMichael K. Johnson1999-08-042-0/+34
* fix typoBill Nottingham1999-08-021-1/+1
* first try at basic integrated wvdial supportMichael K. Johnson1999-07-281-8/+19
* take out some code that's never run...Bill Nottingham1999-07-261-21/+0
* *** empty log message ***Bill Nottingham1999-07-261-3/+4
* speedup fixes for ifup-aliases from David Harris (dharris@drh.net)Bill Nottingham1999-07-262-7/+372
* um, can't 'return' from a shell scriptBill Nottingham1999-06-211-1/+1
* remove commented-out linuxconf support ;)r4-21Bill Nottingham1999-06-182-52/+10
* comment out linuxconf supportBill Nottingham1999-06-172-35/+38
* add routes after aliasesBill Nottingham1999-06-141-2/+1
* fix so it does aliases in orderBill Nottingham1999-06-141-15/+9
* typor4-13Matt Wilson1999-04-181-1/+1
* remove 2.0 kernel supportBill Nottingham1999-04-122-12/+3
* check for 2.0 kernels before doing some stuffBill Nottingham1999-04-082-3/+11
* fix check for non-existent devicesBill Nottingham1999-04-071-2/+2
* ifup-ipx ./_ confusion fixedMichael K. Johnson1999-04-061-3/+4
* run ifup-local as appropriateErik Troan1999-04-061-0/+4
* fix for $PARENTDEVNAMEBill Nottingham1999-04-051-1/+1
* fix channel bondingBill Nottingham1999-04-011-1/+1
* fix test for 2.0/2.2 kernelBill Nottingham1999-03-291-1/+1
* don't run linuxconf if /usr isn't mountedBill Nottingham1999-03-192-2/+4
* set macaddr before bootpBill Nottingham1999-03-191-2/+5
* don't set hostname on ppp/slip (kills X)Bill Nottingham1999-03-181-1/+3
* Exit the script if pump fails. Doh.Bill Nottingham1999-03-171-0/+1
* fix for CHATPID (bug #1343)Bill Nottingham1999-03-161-1/+1
* add routes to non-local subnets if they aren't already thereBill Nottingham1999-03-151-1/+3
* changes from ultrapenguin (bash2 stuff)Bill Nottingham1999-03-151-2/+12
* pump actually works nowErik Troan1999-03-102-9/+4
* updated for pumpErik Troan1999-03-101-46/+10
* outdated by pumpErik Troan1999-03-101-19/+0
* *** empty log message ***Bill Nottingham1999-02-251-5/+5
* more changes for sysconfig/initBill Nottingham1999-02-251-4/+11
* add default /etc/sysconfig/initBill Nottingham1999-02-221-0/+12
* fix kernel-2.2 double net routes, remove '-x' from ifdhcpc-doneBill Nottingham1999-02-102-2/+3
* bill is a moron. also, fix ifup-aliases for bash2r3-84Bill Nottingham1999-02-051-1/+1
* random fixes from bugzilla: setsysfont only if font defined; do hwclockBill Nottingham1999-02-031-1/+1
* Explicitly force RX escape char negotiation if ESCAPECHARS = no (#519).Jeff Johnson1999-01-251-0/+2
* bootpc: 2.2 kernels complain about broadcast and netmask on ifup.Jeff Johnson1999-01-251-1/+7
* Bug #205 sez':Jeff Johnson1998-12-061-1/+1
* linuxconf ipalias fix; work with both old and new linuxconfr3-79Michael K. Johnson1998-11-101-2/+8
* fix long-standing bug and work with (currently vaporware) newer ps versionsMichael K. Johnson1998-07-071-1/+1
* Invert logic for ESCAPECHARS=yes.Jeff Johnson1998-07-071-1/+1
* Always "cd /etc/sysconfig/network-scripts" before sourcing network_functions.Jeff Johnson1998-07-0710-11/+13
* Bug report:Jeff Johnson1998-07-071-0/+8
* Fix bug track problems (#677, #731, #734, E-mail).Jeff Johnson1998-06-212-5/+4
* update to linuxconf 1.11r8 capabilities.Michael K. Johnson1998-05-033-2/+50
* linuxconf supportr3-56Michael K. Johnson1998-05-023-12/+56
* plip cleanupDonnie Barnes1998-04-301-1/+1
* moved adding /etc/resolv.conf search path to normal reverse name lookupr3-52Erik Troan1998-04-051-0/+4
>{ int i; for (i = 0; i < sindex; ++i) if (perf_set.stack[i] == pindex) { perf_print_state (M_INFO); msg (M_FATAL, "PERF: push_perf_index %s failed", metric_names [pindex]); } perf_set.stack[sindex] = pindex; perf_set.stack_len = newlen; } else msg (M_FATAL, "PERF: push_perf_index: stack push error"); } static void pop_perf_index (void) { const int newlen = get_stack_index (-1); if (newlen >= 0) { perf_set.stack_len = newlen; } else msg (M_FATAL, "PERF: pop_perf_index: stack pop error"); } static void state_must_be (const struct perf *p, const int wanted) { if (p->state != wanted) msg (M_FATAL, "PERF: bad state actual=%d wanted=%d", p->state, wanted); } static void update_sofar (struct perf *p) { struct timeval current; ASSERT (!gettimeofday (&current, NULL)); p->sofar += (double) tv_subtract (&current, &p->start, 600) / 1000000.0; tv_clear (&p->start); } static void perf_start (struct perf *p) { state_must_be (p, PS_INITIAL); ASSERT (!gettimeofday (&p->start, NULL)); p->sofar = 0.0; p->state = PS_METER_RUNNING; } static void perf_stop (struct perf *p) { state_must_be (p, PS_METER_RUNNING); update_sofar (p); p->sum += p->sofar; if (p->sofar > p->max) p->max = p->sofar; p->count += 1.0; p->sofar = 0.0; p->state = PS_INITIAL; } static void perf_interrupt (struct perf *p) { state_must_be (p, PS_METER_RUNNING); update_sofar (p); p->state = PS_METER_INTERRUPTED; } static void perf_resume (struct perf *p) { state_must_be (p, PS_METER_INTERRUPTED); ASSERT (!gettimeofday (&p->start, NULL)); p->state = PS_METER_RUNNING; } void perf_push (int type) { struct perf *prev; struct perf *cur; ASSERT (SIZE(metric_names) == PERF_N); push_perf_index (type); prev = get_perf (-2); cur = get_perf (-1); ASSERT (cur); if (prev) perf_interrupt (prev); perf_start (cur); } void perf_pop (void) { struct perf *prev; struct perf *cur; prev = get_perf (-2); cur = get_perf (-1); ASSERT (cur); perf_stop (cur); if (prev) perf_resume (prev); pop_perf_index (); } void perf_output_results (void) { int i; msg (M_INFO, "LATENCY PROFILE (mean and max are in milliseconds)"); for (i = 0; i < PERF_N; ++i) { struct perf *p = &perf_set.perf[i]; if (p->count > 0.0) { const double mean = p->sum / p->count; msg (M_INFO, "%s n=%.0f mean=%.3f max=%.3f", metric_names[i], p->count, mean*1000.0, p->max*1000.0); } } } static void perf_print_state (int lev) { struct gc_arena gc = gc_new (); int i; msg (lev, "PERF STATE"); msg (lev, "Stack:"); for (i = 0; i < perf_set.stack_len; ++i) { const int j = perf_set.stack[i]; const struct perf *p = &perf_set.perf[j]; msg (lev, "[%d] %s state=%d start=%s sofar=%f sum=%f max=%f count=%f", i, metric_names[j], p->state, tv_string (&p->start, &gc), p->sofar, p->sum, p->max, p->count); } gc_free (&gc); } #else static void dummy(void) {} #endif