From owner-freebsd-net@FreeBSD.ORG Tue Jun 22 23:12:04 2010 Return-Path: Delivered-To: net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B8210106566B for ; Tue, 22 Jun 2010 23:12:04 +0000 (UTC) (envelope-from pali.gabor@googlemail.com) Received: from mail-bw0-f54.google.com (mail-bw0-f54.google.com [209.85.214.54]) by mx1.freebsd.org (Postfix) with ESMTP id 417B18FC17 for ; Tue, 22 Jun 2010 23:12:03 +0000 (UTC) Received: by bwz17 with SMTP id 17so35329bwz.13 for ; Tue, 22 Jun 2010 16:12:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:received:received:sender:message-id:date:from :organization:user-agent:mime-version:to:subject:x-enigmail-version :content-type:content-transfer-encoding; bh=MeATj/RK9jSdIXzSfSWdgSYEU0i3NOp5oqxukLSmf/o=; b=dMkPtGy3PzrjgJSWYDHiCq4xUY2sFoopEhMIGGiHzfmMdAQMmo6GxWLWfvYdBcGmHB avT50mncS79r3VOavTGJc674WXYBxS2GP8qWUmN3yHBhjDs+UH/sXLSctjij7AxCFC61 xy1qDwcV1epCFGQiSqGVvBPkL/DVkMLYItWqE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=sender:message-id:date:from:organization:user-agent:mime-version:to :subject:x-enigmail-version:content-type:content-transfer-encoding; b=fvzBmaefYOC8icRH1qwX0BIF9yc/HYrhB+7ZeKVPrrdqb+/XFwQvLwSgI4qVZyulgr CAvXcz2hKId5T3/+A1ZTwBllvltWwZLaSN7w2vBjczXenJTNYzocTSYJn3RXyn9XIFPg gKbcTHvmiNh9Y1nEXmHGGB41QP9zqiAr0fZf0= Received: by 10.204.3.198 with SMTP id 6mr4820452bko.205.1277247012168; Tue, 22 Jun 2010 15:50:12 -0700 (PDT) Received: from [129.16.199.244] (dhcp-199-244.nomad.chalmers.se [129.16.199.244]) by mx.google.com with ESMTPS id z17sm11114988bkx.36.2010.06.22.15.50.11 (version=SSLv3 cipher=RC4-MD5); Tue, 22 Jun 2010 15:50:11 -0700 (PDT) Sender: =?UTF-8?B?UMOBTEkgR8OhYm9yIErDoW5vcw==?= Message-ID: <4C213D07.6020203@FreeBSD.org> Date: Wed, 23 Jun 2010 00:45:27 +0200 From: Gabor PALI Organization: The FreeBSD Project User-Agent: Mozilla/5.0 (X11; U; FreeBSD amd64; en-US; rv:1.9.1.9) Gecko/20100331 Thunderbird/3.0.4 MIME-Version: 1.0 To: net@freebsd.org X-Enigmail-Version: 1.0.1 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: Subject: [RFC] Changes in stat structures X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Jun 2010 23:12:04 -0000 Hello, I would like to integrate my Google Summer of Code project from the last year [1]. In brief, it was about converting netstat(1) into a library and providing a relatively clean API to access various networking statistics available in the kernel. The project is far from being complete, and it needs review but I decided to split my large patch into smaller pieces and add the results continuously to the FreeBSD src/ repository, otherwise it might vanish. I do not have a src/ commit bit, thus I am also looking for a sponsor for my changes who approves or commits them. My plan of integration is simple: apply the necessary modifications to the kernel, add the sysctl export routines and data structures, add the library (called libnetstat(3)), then adapt and add applications (netstat(1), bsnmpd(1), nettop(1), etc.) to use it. This way I could get some review and continue the development of this library in an interactive style. The first piece of this set is available on my FreeBSD homepage as a separate patch [2], which technically proposes to a "standardization" for the counter values so they could be accessed from both 32-bit and 64-bit environments without problems (via kvm(3) or sysctl(3)). However, I do not know too much about the potential consequences or how such a change should be handled in the tree. For more information (and the complete patch), see the project's wiki page [3]. Any feedback is appreciated. Nothing is carved into stone, I am very open to comments :) Thank you! Cheers, :g [1] http://wiki.freebsd.org/PGJSoC2009 [2] http://people.freebsd.org/~pgj/libnetstat/libnetstat-sys.latest.diff [3] http://wiki.freebsd.org/LibNetstat