C code for parsing rc.conf?
Greg Shenaut
gkshenaut at ucdavis.edu
Wed Apr 14 23:29:34 PDT 2004
On Apr 14, 2004, at 5:14 PM, Tim Kientzle wrote:
> Craig Rodrigues wrote:
>> Is there a C library that comes with FreeBSD which
>> can be used to parse, append to, and validate
>> rc.conf?
>> I'd like to customize some of the settings in /etc/rc.conf
>> with my own GUI-based program. It's not too hard
>> to write something on my own, but I was wondering
>> if a reusable library existed in FreeBSD 4.x or 5.x for doing this.
>
> There was a detailed discussion of this topic about a year
> ago. Here is how to obtain the current settings from rc.conf
> from within a C program:
>
> * Clear the current environment
>
> * popen() a shell command that sources rc.conf, then
> runs printenv
>
> * read and parse the output of printenv
>
> The basic idea is to just let the shell do
> the work for you.
It's a little more awkward, but another way to do this is to use a
shell shim
along the lines of
#!/bin/sh
. /etc/whatever
exec /your/program
The shell's environment will be exported to your program's environment.
Greg Shenaut
More information about the freebsd-hackers
mailing list