From 5635f7273a8d19207cac430c28d602e9cd6eb2f9 Mon Sep 17 00:00:00 2001 From: Alejandro Mery Date: Thu, 31 Jul 2008 13:55:21 -0400 Subject: [PATCH] unscd: Added unscd 0.33 - A reliable replacement for Glibc's nscd --- base/unscd/unscd.cache | 16 +++++++++++++ base/unscd/unscd.conf | 26 +++++++++++++++++++++ base/unscd/unscd.desc | 53 ++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 95 insertions(+) create mode 100644 base/unscd/unscd.cache create mode 100644 base/unscd/unscd.conf create mode 100644 base/unscd/unscd.desc diff --git a/base/unscd/unscd.cache b/base/unscd/unscd.cache new file mode 100644 index 000000000..cdd2ed162 --- /dev/null +++ b/base/unscd/unscd.cache @@ -0,0 +1,16 @@ + +[TIMESTAMP] 1217526813 Thu Jul 31 13:53:33 2008 +[BUILDTIME] 0 (5) +[SIZE] 0.04 MB, 8 files + +[DEP] bash +[DEP] binutils +[DEP] coreutils +[DEP] diffutils +[DEP] fhs +[DEP] findutils +[DEP] gawk +[DEP] gcc +[DEP] glibc +[DEP] grep +[DEP] sed diff --git a/base/unscd/unscd.conf b/base/unscd/unscd.conf new file mode 100644 index 000000000..11e19961e --- /dev/null +++ b/base/unscd/unscd.conf @@ -0,0 +1,26 @@ +# --- SDE-COPYRIGHT-NOTE-BEGIN --- +# This copyright note is auto-generated by ./scripts/Create-CopyPatch. +# +# Filename: package/.../unscd/unscd.conf +# Copyright (C) 2008 The OpenSDE Project +# +# More information can be found in the files COPYING and README. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; version 2 of the License. A copy of the +# GNU General Public License can be found in the file COPYING. +# --- SDE-COPYRIGHT-NOTE-END --- + +srctar=none +makeopt= +makeinstopt= + +unscd_make() +{ + local source=$( match_source_file -p $pkg ) + + $CC -Os -o $pkg "$source" +} +hook_add premake 5 'unscd_make' +hook_add postmake 5 'cp -v $pkg $root$sbindir/' diff --git a/base/unscd/unscd.desc b/base/unscd/unscd.desc new file mode 100644 index 000000000..4adf6d307 --- /dev/null +++ b/base/unscd/unscd.desc @@ -0,0 +1,53 @@ +[COPY] --- SDE-COPYRIGHT-NOTE-BEGIN --- +[COPY] This copyright note is auto-generated by ./scripts/Create-CopyPatch. +[COPY] +[COPY] Filename: package/.../unscd/unscd.desc +[COPY] Copyright (C) 2008 The OpenSDE Project +[COPY] +[COPY] More information can be found in the files COPYING and README. +[COPY] +[COPY] This program is free software; you can redistribute it and/or modify +[COPY] it under the terms of the GNU General Public License as published by +[COPY] the Free Software Foundation; version 2 of the License. A copy of the +[COPY] GNU General Public License can be found in the file COPYING. +[COPY] --- SDE-COPYRIGHT-NOTE-END --- + +[I] A reliable replacement for Glibc's nscd + +[T] Nscd is a daemon that provides a cache for the most common name service +[T] requests. +[T] +[T] As designed, nscd is a multithreaded program which calls NSS libraries. +[T] These libraries are not part of libc, they may be provided +[T] by third-party projects (samba, ldap, you name it). +[T] Thus nscd cannot be sure that libraries it calls do not have memory +[T] or file descriptor leaks and other bugs. +[T] +[T] Since nscd is multithreaded program with single shared cache, +[T] any resource leak in any NSS library has cumulative effect. +[T] Even if an NSS library leaks a file descriptor 0.01% of the time, +[T] this will make nscd crash or hang after some time. +[T] +[T] Of course bugs in NSS .so modules should be fixed, but meanwhile +[T] we do want nscd which does not crash or lock up. +[T] +[T] unscd is a single-threaded server process which offloads all NSS +[T] lookups to worker children (not threads, but fully independent +[T] processes). Cache hits are handled by parent. Only cache misses +[T] start worker children. This design is immune against resource leaks +[T] and hangs in NSS libraries. It is also many times smaller and it +[T] emulates glibc nscd pretty closely. + +[U] http://busybox.net/~vda/unscd + +[A] Denys Vlasenko +[M] Alejandro Mery + +[C] extra/tool + +[L] GPL +[S] Stable +[V] 0.33 +[P] X -----5---9 800.000 + +[D] 1227523892 nscd-0.33.c http://busybox.net/~vda/unscd/