Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 16 Mar 2009 18:11:34 -0400
From:      Cipta H <ciphwn@gmail.com>
To:        Tim Kientzle <kientzle@freebsd.org>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: writing libnetstat for Summer of Code 2009
Message-ID:  <13b997e60903161511p70ee2252qf6d594dae13e4ec@mail.gmail.com>
In-Reply-To: <49BEC656.50702@freebsd.org>
References:  <13b997e60903160716x21881adfma588c32551c36e6f@mail.gmail.com> <21C1FF9D-4CDA-4476-9F11-3DE281279C1A@freebsd.org> <13b997e60903161141j8faaf7frd6ce9b1423b40164@mail.gmail.com> <49BEA2BC.6000405@delphij.net> <13b997e60903161213t320252dbg56e96335e79f7eb9@mail.gmail.com> <49BEC656.50702@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Mar 16, 2009 at 5:36 PM, Tim Kientzle <kientzle@freebsd.org> wrote:
> Many people consider top-posting to be rude. =A0FYI.
> My comments below, where they belong.
>
> Cipta H wrote:
>>
>> Thanks for the reply, Xin. I'm aware of something called sysctl, and if
>> I am accepted to work on this project, my main task is to ensure all liv=
e
>> network data will come from sysctl, but the only XML I know of is the
>> markup language. Perhaps someone more knowledgeable can point me
>> to the right resource? Thanks in advance.
>>
>> Cipta
>>
>> On Mon, Mar 16, 2009 at 3:04 PM, Xin LI <delphij@delphij.net> wrote:
>>
>>> I'm not very sure but I think Rui is referring XML like the GEOM
>>> subsystem has used (perhaps to have the kernel expose the statistics
>>> data with XML and the userland part of the library parse and return the
>>> result)?
>
> There are two different issues:
> =A0* Kernel <-> userland communications
> =A0* library <-> client program communications
>
> There is ample precedent for the former to use sysctl
> interfaces that return XML from the kernel that is then
> parsed in userland. =A0In particular, this makes it much
> easier to extend in the future, as long as the proposed
> libnetstat library ignores data it doesn't understand.
> (In the past, many tools parsed in-kernel data
> structures to obtain this kind of information, which is
> prone to breakage whenever the kernel changes. =A0Making
> this so that kernel and tools can evolve more independently
> is a major goal here.)
>
> For the latter, some kind of opaque C structure
> makes sense, since that simplifies the client programs.
>
> So really this breaks down into two very different
> tasks:
> =A0* Designing and implementing a sysctl that returns
> =A0 network statistics as an XML blob
> =A0* Designing and implementing a C library that knows
> =A0 how to fetch the XML blob, parse it, and return
> =A0 data to client programs.
>
> Does this make more sense now?
>
> Tim
>

Yes, it does, Tim, thank you so much. I'll be sure to look into
sysctl.h and study its ability to return XML. I will also contact
Robert about this project once I finish gathering more info.
Thank you all for answering my questions.

Cipta

P.S. Sorry about top-posting. I'll be sure to remember it from
now on.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?13b997e60903161511p70ee2252qf6d594dae13e4ec>