summaryrefslogtreecommitdiffstats
path: root/usr.sbin
diff options
context:
space:
mode:
Diffstat (limited to 'usr.sbin')
-rw-r--r--usr.sbin/config/config.y13
-rw-r--r--usr.sbin/config/lang.l4
2 files changed, 14 insertions, 3 deletions
diff --git a/usr.sbin/config/config.y b/usr.sbin/config/config.y
index c95ede9..94b3c34 100644
--- a/usr.sbin/config/config.y
+++ b/usr.sbin/config/config.y
@@ -9,15 +9,17 @@
%token CONFIG
%token CPU
%token DEVICE
+%token NODEVICE
%token ENV
%token EQUALS
%token HINTS
%token IDENT
%token MAXUSERS
-%token NODEVICE
%token PROFILE
%token OPTIONS
+%token NOOPTION
%token MAKEOPTIONS
+%token NOMAKEOPTION
%token SEMICOLON
%token INCLUDE
@@ -136,8 +138,12 @@ Config_spec:
} |
OPTIONS Opt_list
|
+ NOOPTION Save_id
+ = { rmopt(&opt, $2); } |
MAKEOPTIONS Mkopt_list
|
+ NOMAKEOPTION Save_id
+ = { rmopt(&mkopt, $2); } |
IDENT ID
= { ident = $2; } |
System_spec
@@ -248,7 +254,10 @@ Device_spec:
} |
NODEVICE Dev
= {
- rmopt(&opt, devopt($2));
+ char *s = devopt($2);
+
+ rmopt(&opt, s);
+ free(s);
/* and the device part */
rmdev($2);
} ;
diff --git a/usr.sbin/config/lang.l b/usr.sbin/config/lang.l
index 6884bd1..e5c0c98 100644
--- a/usr.sbin/config/lang.l
+++ b/usr.sbin/config/lang.l
@@ -67,16 +67,18 @@ struct kt {
{ "config", CONFIG },
{ "cpu", CPU },
{ "device", DEVICE },
+ { "nodevice", NODEVICE },
{ "env", ENV },
{ "hints", HINTS },
{ "ident", IDENT },
{ "machine", ARCH }, /* MACHINE is defined in /sys/param.h */
{ "makeoptions", MAKEOPTIONS },
+ { "nomakeoption", NOMAKEOPTION },
{ "maxusers", MAXUSERS },
- { "nodevice", NODEVICE },
{ "profile", PROFILE },
{ "option", OPTIONS },
{ "options", OPTIONS },
+ { "nooption", NOOPTION },
{ "include", INCLUDE },
{ 0, 0 },
};
OpenPOWER on IntegriCloud