From owner-freebsd-hackers@FreeBSD.ORG Fri Jun 20 01:03:24 2003 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D70DB37B401 for ; Fri, 20 Jun 2003 01:03:24 -0700 (PDT) Received: from heron.mail.pas.earthlink.net (heron.mail.pas.earthlink.net [207.217.120.189]) by mx1.FreeBSD.org (Postfix) with ESMTP id 49B3043FA3 for ; Fri, 20 Jun 2003 01:03:24 -0700 (PDT) (envelope-from tlambert2@mindspring.com) Received: from user-uinj93o.dialup.mindspring.com ([165.121.164.120] helo=mindspring.com) by heron.mail.pas.earthlink.net with asmtp (SSLv3:RC4-MD5:128) (Exim 3.33 #1) id 19TGrb-0002dg-00; Fri, 20 Jun 2003 01:03:15 -0700 Message-ID: <3EF2BF54.9CA3604B@mindspring.com> Date: Fri, 20 Jun 2003 01:01:24 -0700 From: Terry Lambert X-Mailer: Mozilla 4.79 [en] (Win98; U) X-Accept-Language: en MIME-Version: 1.0 To: Michael Bushkov References: <8713472442.20030619163913@rsu.ru> <3EF29B78.11DF3FA4@mindspring.com> <165845726.20030620095811@rsu.ru> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-ELNK-Trace: b1a02af9316fbb217a47c185c03b154d40683398e744b8a46ebfc45fae49656008db07585284f7ce3ca473d225a0f487350badd9bab72f9c350badd9bab72f9c cc: hackers@freebsd.org Subject: Re: nscd for freebsd X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Jun 2003 08:03:25 -0000 Michael Bushkov wrote: > Hello Terry, Hello back, [ ... ] > Ok, so if we do a daemon and call all nss_functions from it - will it > help? We'll solve all the problems with statically/dinmically linked > programs and we'll be able to make some caching, by > the way. > > We've done such work. As a start, we have implemented nss_files module, which > worked wit a special NSSD daemon. Libc communicated with them using > sockets. That decision worked quite fast and was very stable. If we > port nss_ldap (by PADL.com) and add some caching procedures, we'll > have almost a lookupd analog. Quite cool! NB: If you are strict NSS, you might be able to use the nss_ldap from FreeBSD without modification. I think this is ideal, so long as you can have multiple concurrent requests (e.g. there is at least a 64bit tag that gets given with the request and returned with the response, which can be a thread ID or other opaque data) on the same connection. This would permit the creation of *_r functions for libc with a fixed overhead which does not increase per thread per request. I think you would need to have someone work on the actual libc code to go with the daemon, as a proof of implementation, but I think it's probably exactly what the doctor ordered! I love that people do real research on things like this! 8-). Is your code under a particular license, and are there some proof of concept *_r routines, or do you need some volunteers to help you work on anything? What would help you move forward on this? Regards, -- Terry