RFC: sysctl -f filename
Hiroki Sato
hrs at FreeBSD.org
Sat Dec 1 16:51:14 UTC 2012
Hi,
I would like comments about the attached patch for sysctl(8) to add a
new option "-f filename". It supports reading of a file with
key=value lines.
As you probably know, we already have /etc/sysctl.conf and it is
processed by rc.d/sysctl shell script in a line-by-line basis. The
problem I want to fix is a confusing syntax of /etc/sysctl.conf. The
file supports a typical configuration file syntax but problematic in
some cases. For example:
kern.coredump=1
works well in /etc/sysctl.conf, but
kern.coredump="1"
does not work. Similarly, it is difficult to use whitespaces and "#"
in the value:
OK: kern.domainname=domain\ name\ with\ spaces
NG: kern.domainname="domain name with spaces"
NG: kern.domainname=domain\ name\ including\ #\ character
NG: kern.domainname=domain\ name\ including\ \#\ character
The attached patch solves them, and in addition it displays an error
message with a line number if there is something wrong in the file
like this:
% cat -n /etc/sysctl.conf
...
10 kern.coredump=1
11 kern.coredump2=1
...
% /etc/rc.d/sysctl start
sysctl: kern.coredump at line 10: Operation not permitted
sysctl: unknown oid 'kern.coredump2' at line 11
# /etc/rc.d/sysctl start
kern.coredump: 1 -> 1
sysctl: unknown oid 'kern.coredump2' at line 11
Any comments are welcome.
-- Hiroki
-------------- next part --------------
A non-text attachment was scrubbed...
Name: sysctl_20121201-1.diff
Type: text/x-patch
Size: 10892 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-current/attachments/20121202/908254b9/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-current/attachments/20121202/908254b9/attachment.sig>
More information about the freebsd-current
mailing list