[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[leafnode-list] [ANNOUNCE] leafnode-2.0b8_ma1



-----BEGIN PGP SIGNED MESSAGE-----

I've finally managed to merge 2.0b5_ma7½, 2.0b6 official, 2.0b7
official, 2.0b8 official and my changes to 2.0b6 and b7 into a new
version, it's called leafnode-2.0b8_ma1. It's back to PCRE 2.x for now,
it does not yet have stdio replacements or new lockfile schemes or
anything.

This is a resynchronisation release. 

Please test this one hard, especially local groups that I don't use and
cannot test therefore ATM.


It's available at:

http://mandree.home.pages.de/leafnode/testing/

252k leafnode-pcre-2.0b8_ma1.tar.bz2
  4k leafnode-pcre-2.0b8_ma1.tar.bz2.sig

304k leafnode-pcre-2.0b8_ma1.tar.gz
  4k leafnode-pcre-2.0b8_ma1.tar.gz.sig


Changes due for the next ma* releases (not necessarily in TODO):

- - change ln_log to restore the old domain verbosity
  (no/server/group/article/NNTP), the current ERROR/INFO/NOTICE scheme
  is not too good.

- - junk stdio and use vstreams or something own

- - implement a list module and iterators, possibly filters, and drop all
  those readdir loops, they can better be done in a single function
  (cuts code size big time)

- - finally fix the locking


However. Here's the changelog. It's not really a changelog (that's in
ChangeLog.ma, but I am discontinuing that since sometimes, changes are
dropped during merges), but shows the differences between 2.0b8 and
2.0b8_ma1. The functionality does not differ much, the implementation
does, mostly changes for maintainability.

2001-01-15  Matthias Andree  <matthias.andree@xxxxxx>

NOTE: this changelog part covers all changes I have made to leafnode
2.0b5 through 2.0b8 (at least what is left of it).

REMOVED FILES:
	config.c 		generated file (Makefile.in)
	pcre/chartables.c 	generated file (Makefile)

REMOVED FILES FROM CVS TREE:
	README	  	generated by Makefile.in and lynx
	configure 	generated by autoconf
	makerpm.sh 	replaced by leafnode.spec.in
	critmem.c	split into its pieces

NEW FILES:
	genconfigparam_data.awk
	
CHANGES:

Makefile.in:
	- know SED, BZIP2, LINKPCRELIB, CRYPTLIB
	- heed srcdir in CFLAGS
	- LIBDIR now uses sysconfdir as per configure.in changes
  MAJOR	- reformat MANSRC, SRCFILES, MANFILES, LIBFILES, HDRFILES,
	  PROGRAMS, EXTRASRC, EXTRAGENSRC and document these
	- introduce ALLSOURCES (holds all source variables' contents)
  MAJOR	- use .c.o and .o rules (increase maintainability)
	- pass C/LD/CPPFLAGS to PCRE Makefile
	- use b_sortnl as minimalistic sort for configuration parameters
  MAJOR	- generate some sources of tables or autoconfig data: config.c 
	  (autoconf), config_defs.h, configparam_data.c (config.table)
  MAJOR	- install and dist targets are much more compact (better
	  maintainable, easier to understand)
	- dist also generates .tar.bz2 if bzip2 is found along $PATH
	- new target: distcheck (tries to build outside source and make a
	  dist)
	- remove patch target
	- add targets to automate config/autoconf/autoheader
	- build leafnode.spec from leafnode.spec.in rather than with a
	  strange shell script
	- add automatic dependencies

TODO:
        - flood it

acconfig.h:
	- introduce HAVE_GETLINE and HAVE_INET_NTOP

activutil.c:
	- use critmem and ln_log
	- fix helpfindgroup types to long

applyfilter.c:
	- use critmem and ln_log
	- remove global variable verbose

artutil.c:
	- use critmem and ln_log
	
config.h.in:
	- automatic changes by autoheader: 
          - add uid_t, gid_t, HAVE_GETLINE, HAVE_GETTEXT 
	  - remove HAVE_AP_CONFIG_H, HAVE_LIBCRYPT, HAVE_LIBPCRE

configure.in:
	- set LYNX=no if not found
	- set GZIP to false if not found
	- set BZIP2 to false if not found
	- cache GCC options after checking them individually
	- change all AC_CACHE_VAL to AC_CACHE_CHECK (makes things shorter and
	  better maintainable)
	- add AC_TYPE_UID_T
	- automatic sysconfdir override to /etc/leafnode, replaces 
	  --with-confdir
	- put crypt linkage hints into CRYPTLIB rather than LIBS (only for 
	  nntpd)
	- add pcre linkage hints to LINKPCRELIB rather than LIBS	
	- streamline PCRE feature detection
	- use AC_REPLACE_FUNCS(getline inet_ntop)

configutil.c:
  MAJOR - switch to bsearch rather than endless strcmp loops (smaller and 
	  faster)
  MAJOR - groupinfo has a new syntax (see ChangeLog.ma)
	- use critmem, ln_log
	- add avoidxover
	- replace strtol by get_long (better error checking)
	- warn when encountering unknown configuration parameter
	- drop RLIMIT_CORE fiddling, this does not belong into programs
	  and never worked for me anyways

fetchnews.c:
	- use critmem, ln_log and get
	- switch some opendir to log_open_spool_dir
	- switch sscanf ... %ld to get_long
	- resurrect STAT in ismsgidonserver (less traffic on slow links), 
	  try HEAD if STAT does not give a proper answer
	- add delposted prototype
	- switch if getarticle control into ? : operator
	- drop explicit == NULL or != NULL comparisons
	- getfirstlast: switch n to long, use get_long
	- clean up posting function
	- do not fork and detach in debugmode
	- if forking fails, fixxover runs non-detached (comes for free with 
	  preceding change)

filterutil.c:
	- use critmem, ln_log

getaline.c:
	- use ln_log

leafnode.h:
	- define BLOCKSIZE
	- drop LOG_NEWS and stuff
	- add include <dirent.h>
	- add enum xoverfields
	- add freexover
	- add GZIP
	- add avoidxover
	- define FQDN_SIZE
	- drop critmalloc/critrealloc
	- add check_allnum_minus, cuttab from strutil.c
	- add log_open_dir, log_open_spool_dir from dirutil.c
	- add inet_ntop

localutil.c:
	- use critmem, ln_log

miscutil.c:
	- use critmem, ln_log and ugid
	- drop BLOCKSIZE (-> leafnode.h)
	- put required directories into a struct
	- fix initvars to use ugid library (encapsulate OS differences)

nntpd.c:
	- use critmem, ln_log, get
	- drop sockaddr_union
	- drop printf for escaping
	- use xover data in NEWNEWS (supposed to be faster)
	- fix POST without body (leafnode now emits error even if the 
	  single-dot line comes before the blank line that separates header 
	  and body)
SECURITY- use snprintf into 800 character buffer for Message-ID generation
	  (used to be sprintf)
	- fix boolean-used variables to NOT be explicitly compared against 
	  FALSE (bad style)

vsnprintf.c:
	- fix prototype in mcatch
	- move ret = n + 1 to actual return

xoverutil.c:
	- use critmem, ln_log
	- move sys/types.h and sys/stat.h up
	- init lineend anew each time
	- cast fchmod argument to mode_t
	- implement freexover

- -- 
Matthias Andree
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.4 (GNU/Linux)
Comment: Processed by Mailcrypt 3.5.5 and Gnu Privacy Guard <http://www.gnupg.org/>

iQCVAwUBOmObUidEoB0mv1ypAQFrMAP+JI77ZGM/5xNGIqNdMcHFioB1xwF3TTHH
wQRRfdlcyodtfRAXAjm8PX175YCWNrZQch9vXtqszP5cXFIpNpIJePZ5fuuB9IFy
ec5vZ5MyObFYIECRquJMUM8P4CyobeKItTwqlco0HYbNEUTTYnzoM0gXhiutXPHU
H6p07BXngbo=
=7oWQ
-----END PGP SIGNATURE-----

-- 
leafnode-list@xxxxxxxxxxxxxxxxxxxxxxxxxxxx -- mailing list for leafnode
To unsubscribe, send mail with "unsubscribe" in the subject to the list