Date: Mon, 07 Nov 2005 10:27:23 -0800 From: Maksim Yevmenkin <maksim.yevmenkin@savvis.net> To: Yar Tikhiy <yar@comp.chem.msu.su> Cc: freebsd-bluetooth@freebsd.org, freebsd-rc@freebsd.org, Panagiotis Astithas <past@ebs.gr> Subject: Re: [RFC] rc.d integration for the bluetooth subsystem Message-ID: <436F9C8B.1000300@savvis.net> In-Reply-To: <20051105113503.GA13863@comp.chem.msu.su> References: <4357CEA5.1000308@savvis.net> <4357D9E2.6010701@ebs.gr> <4367E346.4080106@savvis.net> <20051102111709.GD2465@comp.chem.msu.su> <20051102161311.GA8499@odin.ac.hmc.edu> <43690365.60909@savvis.net> <20051102190655.GA3961@odin.ac.hmc.edu> <436A6649.7000602@savvis.net> <20051103203217.GA30685@odin.ac.hmc.edu> <436BE02D.2020404@savvis.net> <20051105113503.GA13863@comp.chem.msu.su>
next in thread | previous in thread | raw e-mail | index | archive | help
Yar Tikhiy wrote: > On Fri, Nov 04, 2005 at 02:26:53PM -0800, Maksim Yevmenkin wrote: > >>All, >> >>please find next revision of bluetooth-rc stuff at >> >>http://people.freebsd.org/~emax/bluetooth-rc-1.diff.txt >> >>in this revision i have moved all bluetooth configuration files under >>/etc/bluetooth. bluetooth.device.sample is now called 'default.conf' and >>file that contain device specific overrides called '$dev.conf' (i.e. >>'ubt0.conf'). >> >>so, '/etc/rc.d/bluetooth start $dev' does the following >> >>1) sets hardwired defaults (for backward compatibility) >> >>2) reads up /etc/bluetooth/default.conf (if any) >> >>3) reads up /etc/bluetooth/$dev.conf (if any) >> >>4) starts the stack >> >>even though /etc/bluetooth/{default,$dev}.conf are not exactly shell >>scripts they are still kinda like shell scripts :) these files should >>follow sh(1) syntax to set the variable, comments etc. >> >>the parser in bluetooth_read_conf() is very simple and value of a >>variable is still used in sh(1) eval. so one must be careful when >>editing these files. > > What about simplifying the inner parser code even more: > > case "$_line" in > ''|\#*) > ;; > *) > if expr "$_line" : "[a-zA-Z0-9_]*="; then > eval "${_namespace}${_line}" > else > ${logger} "Unable to parse line \"$_line\" in $_file" > return 1 > fi > ;; > esac sure. only need to if expr "$_line" : "[a-zA-Z0-9_]*=" > /dev/null 2>&1 ; then ... fi i do not really have any objection to this. since i already pass the value through eval i might as well pass the entire line. > BTW, couldn't just err() or warn() be used instead of ${logger}? i guess they could > And AFAIK stdin to a while loop can be redirected w/o enclosing > the loop in braces. sure, but it looked more clear (to me anyway) this way :) so does this look like something? http://people.freebsd.org/~emax/bluetooth-rc-2.diff.txt any other comments, suggestions, objections? please speak. thanks, max
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?436F9C8B.1000300>