X-Git-Url: http://git.ozlabs.org/?p=ppp.git;a=blobdiff_plain;f=pppd%2Foptions.c;h=1e31ed5eba41e7bbf0a5c718b881667cba8758c2;hp=223d1fa63a835bfc53b3ebbdfefc8a3faa189a41;hb=aefcf5ac90dee434d605167b6a719c58c0ffcf03;hpb=b2f8595268e72c1668eb8f2e4d942b6290266db5 diff --git a/pppd/options.c b/pppd/options.c index 223d1fa..1e31ed5 100644 --- a/pppd/options.c +++ b/pppd/options.c @@ -17,7 +17,7 @@ * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. */ -#define RCSID "$Id: options.c,v 1.84 2002/07/13 06:24:36 kad Exp $" +#define RCSID "$Id: options.c,v 1.89 2002/10/27 13:00:13 fcusack Exp $" #include #include @@ -602,6 +602,7 @@ process_option(opt, cmd, argv) int prio = option_priority; option_t *mainopt = opt; + current_option = opt->name; if ((opt->flags & OPT_PRIVFIX) && privileged_option) prio += OPRIO_ROOT; while (mainopt->flags & OPT_PRIOSUB) @@ -653,8 +654,6 @@ process_option(opt, cmd, argv) *(u_char *)(opt->addr2) &= ~v; else if (opt->addr2 && (opt->flags & OPT_A2OR)) *(u_char *)(opt->addr2) |= v; - if (opt->addr3 && (opt->flags & OPT_A3OR)) - *(u_char *)(opt->addr3) |= v; break; case o_int: @@ -677,7 +676,7 @@ process_option(opt, cmd, argv) break; case OPT_LIMITS: option_error("%s value must be%s between %d and %d", - opt->name, opt->lower_limit, opt->upper_limit); + opt->name, zok, opt->lower_limit, opt->upper_limit); break; } return 0; @@ -902,7 +901,9 @@ print_option(opt, mainopt, printer, arg) void (*oprt) __P((option_t *, void ((*)__P((void *, char *, ...))), void *)); - oprt = opt->addr2; + oprt = (void (*) __P((option_t *, + void ((*)__P((void *, char *, ...))), + void *)))opt->addr2; (*oprt)(opt, printer, arg); } else if (opt->flags & OPT_A2STRVAL) { p = (char *) opt->addr2; @@ -1499,7 +1500,7 @@ setmodir(argv) } else if (!strcmp(*argv,"out")) { maxoctets_dir = PPP_OCTETS_DIRECTION_OUT; } else if (!strcmp(*argv,"max")) { - maxoctets_dir = PPP_OCTETS_DIRECTION_MAX; + maxoctets_dir = PPP_OCTETS_DIRECTION_MAXOVERAL; } else { maxoctets_dir = PPP_OCTETS_DIRECTION_SUM; }