[Raw Msg Headers][Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: LIBNIS in zmailer
- To: Arkadiusz Miskiewicz <misiek@misiek.eu.org>
- Subject: Re: LIBNIS in zmailer
- From: Matti Aarnio <mea@nic.funet.fi>
- Date: Mon, 30 Aug 1999 23:30:37 +0300
- Cc: zmailer@nic.funet.fi
- In-Reply-To: <19990830161514.A28097@admin.misiek.eu.org>; from Arkadiusz Miskiewicz on Mon, Aug 30, 1999 at 04:15:15PM +0200
- References: <19990830161514.A28097@admin.misiek.eu.org>
On Mon, Aug 30, 1999 at 04:15:15PM +0200, Arkadiusz Miskiewicz wrote:
> Hi,
> I just tried to compile zmailer-2.99.52-pre1 (from CVS)
> and:
> [misiek@linstar zmailer-2.99.52-pre1]$ grep ROUTER_LIB router/Makefile
> ROUTER_LIB= -lcrypt -ldb -lgdbm -Lyes/lib -lldap -llber yes -lresolv
> ^^^^^^^^^ ^^^
> $(CC) $(CFLAGS) -o $@.x $(OBJS) version.o $(LIB) $(ROUTER_LIB)
>
> When I compile without --with-yp and --with-yp-lib then everything
> is ok. (problems with $LIBNIS ?)
A mistake at configure.in test writeup. Both tests
were in fact the same.. A fix is coming in.
> Also:
> cc -O2 -mpentium -w -DHAVE_CONFIG_H -I./../../include -I../../include -I../.. -o mailbox mailbox.o version.o lock.o sieve.o -L../../libs -lta -lzm -lzc -lcrypt -lresolv
> mailbox.o: In function `deliver':
> mailbox.o(.text+0x19a2): undefined reference to `checkmbsize'
> collect2: ld returned 1 exit status
> make[2]: *** [mailbox] Error 1
>
> In what library is function checkmbsize() on Linux ?
extern int checkmbsize __((const char *uname,
const char *host, const char *user,
size_t cursize, struct passwd *pw));
/* external procedure checkmbsize() accepts user name, "host"
name as on routing result, "user" part of routed data,
and current mailbox size. It should return 0 if it is OK
to write to the mailbox, or non-zero if `mailbox full'
condition encountered. The procedure itself is not included
in ZMailer distribution; you need to write it yourself and
modify the Makefile to pass -DCHECK_MB_SIZE to the compiler
and to link with the object containing your custom
checkmbsize() procedure. == <crosser@average.org> */
> ./configure \
> --prefix=%{_libdir}/zmailer \
> --with-postoffice=/var/spool/postoffice \
> --with-rmailpath=%{_bindir}/rmail \
> --with-nntpserver=news \
> --with-system-malloc \
this 'malloc' is the default
> --with-mailshare=/etc/mail \
> --with-zconfig=no \
> --with-mailbin=%{_libdir}/zmailer \
> --with-mailvar=/etc/mail \
> --with-ta-mmap \
I am not sure that Linux would do 'ta-mmap'
quite so well -- or that it would make sense
at a *generic* server. It does make sense
at major list hubs feeding actual fanout
servers, but not at final fanouts, for example.
The main problem is that munmap() seems
to throw away all mapped pages from memory
in several architectures, even when said
pages have other mapping presenses in the
system processes -- and at final munmap(),
it throws away all pages of the file, thus
doing a disfavour for file page cache, which
might otherwise get them back soon...
A final note: I haven't benchmarked that
possible performance degradation...
> --includedir=%{_includedir} \
> --with-whoson \
That library has heavy autodetect code, and as such,
the dirprefix parameter can be pretty much omitted.
> --with-ldap-prefix \
Whoops, '--help' gives misleading advice.
This one must have a value -- the prefix,
e.g. =/usr (Otherwise you get: -Lyes/lib ... )
> --with-openssl \
Huh ?? Not --with-openssl-prefix=/... ??
I bet the OpenSSL is autodetected in your environment
without that one..
> --with-ipv6 \
> --with-mailbox=/var/mail \
> --with-mboxquotacheck \
For weird ISP users, not your average standard-issue
UNIX system stuff. (Tell me, how to pre-analyze
approach of quota limit in your favourite platform,
and I could cook up something...)
Most UNIXes (none?) don't have syscall to find out
how much quota space is free at a given filesystem
with e.g. given euid.
> --with-yp \
> --with-yp-lib='-lyp'
> --
> Arkadiusz Mi¶kiewicz http://www.misiek.eu.org/
> PLD/Linux [IPv6 enabled] http://www.pld.org.pl/
--
/Matti Aarnio <mea@nic.funet.fi>