Messages in this thread |  | | | Subject | Re: [PATCH 00/13] drivers: hv: kvp | | From | Ben Hutchings <> | | Date | Sun, 22 Jul 2012 03:50:58 +0100 |
| |
On Tue, 2012-07-03 at 15:24 +0000, KY Srinivasan wrote: > > -----Original Message----- > > From: Ben Hutchings [mailto:ben@decadent.org.uk] > > Sent: Monday, July 02, 2012 3:57 PM > > To: KY Srinivasan > > Cc: Olaf Hering; Greg KH; apw@canonical.com; devel@linuxdriverproject.org; > > virtualization@lists.osdl.org; linux-kernel@vger.kernel.org; > > netdev@vger.kernel.org > > Subject: Re: [PATCH 00/13] drivers: hv: kvp > > > > On Mon, Jul 02, 2012 at 03:22:25PM +0000, KY Srinivasan wrote: > > > > > > > > > > -----Original Message----- > > > > From: Olaf Hering [mailto:olaf@aepfle.de] > > > > Sent: Thursday, June 28, 2012 10:24 AM > > > > To: KY Srinivasan > > > > Cc: Greg KH; apw@canonical.com; devel@linuxdriverproject.org; > > > > virtualization@lists.osdl.org; linux-kernel@vger.kernel.org > > > > Subject: Re: [PATCH 00/13] drivers: hv: kvp > > > > > > > > On Tue, Jun 26, KY Srinivasan wrote: > > > > > > > > > > From: Greg KH [mailto:gregkh@linuxfoundation.org] > > > > > > The fact that it was Red Hat specific was the main part, this should be > > > > > > done in a standard way, with standard tools, right? > > > > > > > > > > The reason I asked this question was to make sure I address these > > > > > issues in addition to whatever I am debugging now. I use the standard > > > > > tools and calls to retrieve all the IP configuration. As I look at > > > > > each distribution the files they keep persistent IP configuration > > > > > Information is different and that is the reason I chose to start with > > > > > RedHat. If there is a standard way to store the configuration, I will > > > > > do that. > > > > > > > > > > > > KY, > > > > > > > > instead of using system() in kvp_get_ipconfig_info and kvp_set_ip_info, > > > > wouldnt it be easier to call an external helper script which does all > > > > the distribution specific work? Just define some API to pass values to > > > > the script, and something to read values collected by the script back > > > > into the daemon. > > > > > > On the "Get" side I mostly use standard commands/APIs to get all the > > information: > > > > > > 1) IP address information and subnet mask: getifaddrs() > > > 2) DNS information: Parsing /etc/resolv.conf > > > 3) /sbin/ip command for all the routing information > > > > If you're interested in the *current* configuration then (1) and (3) > > are OK but you should really use the rtnetlink API. > > > > However, I suspect that Hyper-V assumes that current and persistent > > configuration are the same thing, which is obviously not true in > > general on Linux. But if NetworkManager is running then you can > > assume they are. > > I am only interested in the currently active information. Why do you > recommend the use of rtnetlink API over the "ip" command. If I am not > mistaken, the ip command uses netlink to get the information. [...]
'Screen-scraping' the output of administrative tools is not good practice. It may be the best you can do when writing a shell script, but for a C program it's generaly less reliable and often more difficult than using the underlying C API.
Ben.
-- Ben Hutchings 73.46% of all statistics are made up. [unhandled content-type:application/pgp-signature] |  |