From ebfd0ba17e0d4b220725018d16e294e8e22a1745 Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Thu, 15 Jan 2015 20:51:39 +0000 Subject: Move Unix domain socket and access control stuff to s6. Move seekablepipe to s6-portable-utils. Version: 2.0.1.0, release candidate --- src/libs6net/s6net_accessrules_backend_cdb.c | 38 ---------------------------- 1 file changed, 38 deletions(-) delete mode 100644 src/libs6net/s6net_accessrules_backend_cdb.c (limited to 'src/libs6net/s6net_accessrules_backend_cdb.c') diff --git a/src/libs6net/s6net_accessrules_backend_cdb.c b/src/libs6net/s6net_accessrules_backend_cdb.c deleted file mode 100644 index e75f755..0000000 --- a/src/libs6net/s6net_accessrules_backend_cdb.c +++ /dev/null @@ -1,38 +0,0 @@ -/* ISC license. */ - -#include -#include -#include -#include -#include -#include -#include - -s6net_accessrules_result_t s6net_accessrules_backend_cdb (char const *key, unsigned int keylen, void *data, s6net_accessrules_params_t *params) -{ - struct cdb *c = data ; - unsigned int execbase, n ; - uint16 envlen, execlen ; - register int r = cdb_find(c, key, keylen) ; - if (r < 0) return S6NET_ACCESSRULES_ERROR ; - else if (!r) return S6NET_ACCESSRULES_NOTFOUND ; - n = cdb_datalen(c) ; - if ((n < 5U) || (n > 8197U)) return (errno = EINVAL, S6NET_ACCESSRULES_ERROR) ; - if (!stralloc_readyplus(¶ms->exec, n)) return S6NET_ACCESSRULES_ERROR ; - execbase = params->exec.len ; - if (cdb_read(c, params->exec.s + execbase, n, cdb_datapos(c)) < 0) return S6NET_ACCESSRULES_ERROR ; - if (params->exec.s[execbase] == 'D') return S6NET_ACCESSRULES_DENY ; - else if (params->exec.s[execbase] != 'A') return S6NET_ACCESSRULES_NOTFOUND ; - uint16_unpack_big(params->exec.s + execbase + 1U, &envlen) ; - if ((envlen > 4096U) || (envlen+5U > n)) return (errno = EINVAL, S6NET_ACCESSRULES_ERROR) ; - uint16_unpack_big(params->exec.s + execbase + 3 + envlen, &execlen) ; - if ((execlen > 4096U) || (5U + envlen + execlen != n)) return (errno = EINVAL, S6NET_ACCESSRULES_ERROR) ; - if (!stralloc_catb(¶ms->env, params->exec.s + execbase + 3U, envlen)) return S6NET_ACCESSRULES_ERROR ; - byte_copy(params->exec.s + execbase, execlen, params->exec.s + execbase + 5U + envlen) ; - if (execlen) - { - params->exec.len += execlen ; - params->exec.s[params->exec.len++] = 0 ; - } - return S6NET_ACCESSRULES_ALLOW ; -} -- cgit v1.3.1