]> git.ozlabs.org Git - ppp.git/blobdiff - pppd/options.c
Large patch from Frank Cusack <fcusack@fcusack.com> to add proper
[ppp.git] / pppd / options.c
index acba28965b1032917aecad3a5fd2c3f1351b55ed..3779b289419ca491fb8baeedb26d07053ec5a367 100644 (file)
@@ -17,7 +17,7 @@
  * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  */
 
-#define RCSID  "$Id: options.c,v 1.80 2001/03/12 22:56:12 paulus Exp $"
+#define RCSID  "$Id: options.c,v 1.82 2002/03/01 14:39:18 dfs Exp $"
 
 #include <ctype.h>
 #include <stdio.h>
@@ -623,6 +623,12 @@ process_option(opt, cmd, argv)
        *(bool *)(opt->addr) = v;
        if (opt->addr2 && (opt->flags & OPT_A2COPY))
            *(bool *)(opt->addr2) = v;
+       else if (opt->addr2 && (opt->flags & OPT_A2CLR))
+           *(bool *)(opt->addr2) = 0;
+       else if (opt->addr2 && (opt->flags & OPT_A2CLRB))
+           *(u_char *)(opt->addr2) &= ~v;
+       if (opt->addr3 && (opt->flags & OPT_A3OR))
+           *(u_char *)(opt->addr3) |= v;
        break;
 
     case o_int:
@@ -1496,7 +1502,7 @@ loadplugin(argv)
        warn("Warning: plugin %s has no version information", arg);
     } else if (strcmp(vers, VERSION) != 0) {
        option_error("Plugin %s is for pppd version %s, this is %s",
-                    vers, VERSION);
+                    arg, vers, VERSION);
        goto errclose;
     }
     info("Plugin %s loaded.", arg);