Age | Commit message (Collapse) | Author | Files |
|
* doc/Commit (gray_print_section): Output anchors before
chapter/section/etc. titles, so that the heading menu in
monolithic document works properly.
|
|
* doc/Makefile.am (manual.tar.bz2, man-tar): New rules.
(manual): Mark as phony.
* doc/gendocs_template: Upgrade for the new webpage style.
* doc/mailfromd.texi: Minor changes.
* doc/Config: New file.
|
|
* NEWS, configure.ac: Raise version number.
|
|
* mfd/main.c (parse_opt): Add missing break.
(cb_include_path): Fix use of improper variable
in MU_CFG_LIST branch.
* am/aggr.m4 (IU_CHECK_MEMBER): Remove improper use of dnl.
* doc/Makefile.am (check-builtins, check-mflib): Do not
split sed expressions over multiple lines: Makefile format
cannot handle it properly.
* doc/mailfromd.texi: Update.
* bootstrap: Do not apply `silentize' to gnu/gnulib.mk. Latest
gnulib takes care of it itself.
|
|
|
|
* mfd/drivers.c (struct loop_stack): Replace `begjmp' with `nxtjmp'.
(enter_loop): Reflect this.
(code_type_next): Likewise.
(code_type_loop): Rewrite jump fixup for `next' chain.
* tests/next01.at, tests/next02.at: New testcases.
* tests/Makefile.am: Add next01.at and next02.at
* tests/testsuite.at: Likewise.
* NEWS, doc/mailfromd.texi: Update
|
|
* mfd/bi_getpw.m4: New file.
* mfd/Makefile.am (M4_FILES): Add bi_getpw.m4
* doc/Makefile.am (check-builtins): Take into
account @deftypefnx
* NEWS, doc/mailfromd.texi: Update
|
|
* mfd/bi_io.m4 (read): Add terminating zero.
* mflib/match_dnsbl.mf (match_dnsbl): Return
0 if address is not resolved.
* mflib/sockmap.mf (sockmap_single_lookup): Fix typo.
|
|
* configure.ac (PMULT_COND): New condition
(ENABLE_PMULT): Rename subst variable.
* pmult/Makefile.am: Remove subst variable.
* Makefile.am (SUBDIRS): Include pmult conditionally
(ChangeLog rule): Improve formatting.
* NEWS: Improve wording.
|
|
* mfd/bi_dns.m4 (dns_getname): Missed call to MF_OBSTACK_BEGIN.
* mfd/prog.c (runtime_stack_trace): Prevent coredump on arriving to
pc == 0.
|
|
* mfd/bi_db.m4 (db_prop_lookup): Fix conditional.
Reported by Jan Rafaj.
|
|
* doc/mailfromd.texi: Document e_eof.
* mfd/Makefile.am (status.mfh): Define dependencies.
* mfd/bi_io.m4 (read_stream_delim): Return number of
bytes read.
(read, getdelim, getline): Raise e_eof on EOF.
* mfd/mailfromd.h (mfe_eof): New exception code.
* tests/eof.at: New testcase.
* tests/Makefile.am (TESTSUITE_AT): Add eof.at
* tests/testsuite.at (MF_RUN_TEXT): New define.
Include eof.at.
|
|
* configure.ac: Check for struct pmilter_S.pmfi_fdmax
* doc/pmult.texi: Document new pmult configuration statements.
* pmult/pmult.c: Make pmilter.pmfi_fdmax configurable.
|
|
* pies/pies.c (main): Change main loop to do..while,
otherwise a signal arriving before entering the loop
might cause the program to terminate.
* pmult/pmult.c (internal_macro_p): New function.
(collect_stage_symbols): Do not report internal
macros as untranslatable.
* mfd/gram.y (register_macro): Copy macro name to
allocated storage.
|
|
* mfd/engine.c (child_start): modify program title.
* mfd/main.c (environ): extern.
|
|
* pies/pies.h (MAX_RETURN_CODE): Remove.
(STATUS_SIG_BIT, STATUS_CODE): New defines
(struct action): New fields next, nstat, status, command.
(struct component): Keep singly-linked list of termination
actions.
* pies/progman.c (run_command): New function.
(progman_cleanup): Redo iteration over termination actions.
* pies/pies.c (return_code_cfg_param): Pass offsets in
struct component.
(create_action): Accept signal numbers (SIG.* or SIG\+[0-9]+)
in tag.
(return_code_section_parser): Update.
(pies_check_status): Set *pid before returning pies_status_stale.
* doc/pies.texi: Document changes.
* NEWS: Updated.
|
|
* mfd/bi_io.m4 (struct io_stream): Add cleanup and cleanup_data.
(close_stream): Use those members.
(read_stream_line): Remove.
(read_stream_delim): New function.
(open_program_stream): Add the `env' argument.
(open_file_stream): Likewise.
(open_parsed_inet_stream, open_inet_stream): New functions.
(alloc_streams): Update declaration of opf and the call thereof.
(open): Prefix @ in first argument designates the connection URL.
(read,getdelim): New functions.
* mflib/Makefile.am (inc_DATA): Add sockmap.mf
* mflib/sockmap.mf: New function.
* doc/mailfromd.texi: Document new functions.
* NEWS: Update.
|
|
* mfd/main.c (main): Call mf_proctitle_init
* mfd/engine.c (mlfi_connect, mlfi_helo, mlfi_envfrom)
(mlfi_envrcpt, mlfi_data, mlfi_header, mlfi_eoh)
(mlfi_body, mlfi_eom)
(mlfi_abort, mlfi_close): Call mf_proctitle_format to reflect
the program state in the ps output.
* NEWS: Update.
|
|
* pmult/pmult.c (client_block_begin): Set default
logmask to '>info'
(pmult_connect): Close gsrv if pmult_std_reply fails.
This fixes FD leak.
* gacopyz/gacopyz.c, mfd/dns.h, mfd/dnsbase.c,
mfd/engine.c, mtasim/mtasim.c, pmult/pmult.c: Add typecasts between
signed/unsigned char*.
|
|
* configure.ac, NEWS: Version 5.1.91
* pmult/pmult.c: Bugfix
|
|
* configure.ac: Check for pmilter_S.pmfi_thrmax_[sh]. Requires
28/0009-pmilter-configurable-maxthr.diff.
* pmult/pmult.c: New configuration statements: max-threads-soft
and max-threads-hard.
* pies/pies.c (_cm_include_meta1): Fix coredump on syntax errors
in meta1.conf.
|
|
* NEWS: Update.
* etc/mailfromd.rc: Use localdomain to determine the domain
name.
Remove the `#error' statement. Hopefully, this file can be
used as is.
* mfd/bi_gethostname.m4 (gethostname): Add an optional argument.
* mfd/gram.y: Handle function declarations with only optional
arguments, e.g.: func foo(; string bar)
(mailfromd_test): Add missing env_init calls.
* mfd/lex.l: Remove trailing newline before displaying the
`#error' diagnostics.
* mflib/localdomain.mf: New file.
* mflib/Makefile.am (inc_DATA): Add localdomain.mf.
* mflib/safedb.mf4 (safedb_verbose): New variable.
(safedbmap, safedbdel): New function.
(safedbget, safedbput): Verbosely print exceptions caught if
safedb_verbose is set.
|
|
* mfd/bi_mudebug.m4: New file.
* mfd/Makefile.am (M4_FILES): Add bi_mudebug.m4
* NEWS, doc/mailfromd.texi: Update.
|
|
* elisp/Makefile.am (LISPSRC): Add obfemail-mode.el
* elisp/mfl-mode.el (mfl-mode): Fix docstring.
* THANKS: Use obfemail mode to encode emails.
|
|
|
|
* bootstrap (silent_rules_prog): Preserve leading
whitespace verbatim, when inserting the AM_V variables.
Suggested by Ralf Wildenhues.
Optionally insert the definitions of
AM_DEFAULT_VERBOSITY, AM_V_GEN and AM_V_at: useful for
po/Makefile.in.in
(silentize): New function.
(slurp): Call silentize
Call silentize on po/Makefile.in.in.
* doc/Makefile.am, etc/Makefile.am,
pies/Makefile.am, pmult/Makefile.am,
tests/Makefile.am, tests/etc/Makefile.am: Add silent rule markers.
|
|
* bootstrap (slurp): Convert gnulib Makefile.am to
support silent rules.
* configure.ac (AM_INIT_AUTOMAKE): Add silent-rules.
Enable silent rules by default.
* gacopyz/Makefile.am, mfd/Makefile.am: Add silent rules markers.
|
|
* mfd/mu_dbm.c (mu_dbm_errcall_fcn): Fix arguments for BDBv4.
|
|
* am/gcc.m4: New file.
* configure.ac: Raise autotools requirements to 2.63/1.11
Call MF_GCC_QUIRKS.
* gacopyz/gacopyz.c (ctx_free): Change return type.
|
|
* NEWS: Update.
* configure.ac: Version 5.1.90
New option --with-geoip
(GEOIP_LIBS): New AC_SUBST
* doc/mailfromd.texi: Document geoip functions.
* mfd/bi_geoip.m4: New file.
* mfd/Makefile.am (M4_FILES): Add bi_geoip.m4
(LDADD): Add GEOIP_LIBS.
* mfd/mailfromd.h (pp_define): New function.
* mfd/main.c (pp_define): New function.
* mfd/snarf.m4 (MF_DEFINED, MF_OPTVAL): Fix error diagnostics.
(MF_COND): New macro.
(MF_INIT): Handle MF_COND sources.
|
|
|
|
|
|
* mfd/bi_db.m4: Fix comment.
* pies/progman.c: Use _exit in child processes. This
is a work over a fault in MU design: it registers
the pidfile removal function via atexit.
|
|
* doc/mailfromd.texi: Fix declaration of `uname'
* mtasim/mtasim.c: Fix handling of header continuation.
When sending headers and body to the milter, consistently
use \r\n line terminators.
|
|
|
|
* NEWS, configure.ac: Update.
* mfd/prog.c (env_free_captured): env->bi_priv_array can be NULL.
|
|
* NEWS, doc/mailfromd.texi: Update.
* mfd/drivers.c (print_type_result, mark_type_result)
(optimize_type_result, code_type_result): Rewrite.
* mfd/gram.y: Rewrite action rules.
* mfd/lex.l (CODE,XCODE): Remove.
* mfd/opcodes (RESULT): Takes one immediate parameter.
(instr_result): Get arguments from stack.
|
|
* mfd/bi_gethostname.m4: New file.
* NEWS, doc/mailfromd.texi: Update.
* mfd/Makefile.am (M4_FILES): Add bi_gethostname.m4.
* mfd/bi_system.m4 (uname): New function.
* mfd/prog.c (heap_obstack_cancel, heap_obstack_base): New function.
* mfd/prog.h: Likewise.
* mfd/snarf.m4 (MF_OBSTACK_BASE, MF_OBSTACK_CANCEL): New defuns.
* mtasim/mtasim.c (stop_mailfromd): Reset signal handler before
doing kill, so that waitpid works on hosts with BSD signal semantics.
|
|
* mfd/bi_curhdr.m4: New file: implementation of
current header functions.
* mfd/Makefile.am (M4_FILES): Add bi_curhdr.m4
* mfd/bi_mbox.m4 (mailbox_open): Work over MU lossage.
* mfd/bi_msg.m4 (bi_drop_current_message): Remove.
(drop_current_message): New function.
* mfd/mailfromd.h (env_reposition): New prototype.
* mfd/msg.h (bi_drop_current_message): Remove.
* mfd/prog.c (struct eval_environ.reposition): New member.
(env_reposition): New function. Work over MU lossage.
(env_capture_start): Call env_free_captured to release any
module private captured data.
Reset env->reposition to 0.
(env_capture_write): If env->reposition is set, move
stream pointer to the end of stream.
(struct builtin_priv.free_capture): New member.
(builtin_priv_register): Take 3 arguments.
(env_free_captured): New function.
* mfd/prog.h (builtin_priv_register): Update proto.
* mfd/snarf.m4 (MF_DECLARE_DATA): Get at most 3 arguments.
* NEWS, doc/mailutils.texi: Document new functions.
* tests/etc/hdr.mts: New file (message transfer session).
* tests/etc/hdr2.mts: Likewise.
* tests/etc/Makefile.am (EXTRA_DIST): Add new files.
* tests/hdr-all.at: New testcase.
* tests/hdr-cap.at: New testcase.
* tests/hdr-count.at: New testcase.
* tests/hdr-gete.at: New testcase.
* tests/hdr-getn.at: New testcase.
* tests/hdr-itr.at: New testcase.
* tests/hdr-mul.at: New testcase.
* tests/Makefile.am (TESTSUITE_AT): Add new testcase.
* tests/atlocal.in (TESTDIR): New variable.
* tests/testsuite.at (MTASIM_DEFS): New define.
(AT_MTA_TEST): Rename to AT_MTA_TEST_FILTER. All uses
updated.
(AT_MTA_TEST_SCRIPT,AT_MTA_TEST_FILTER_SCRIPT): New defines.
Include new testcases.
* tests/arg.at, tests/curmsg.at, tests/numrcpt.at,
tests/reject.at, tests/tempfail.at: Updated.
|
|
|
|
* NEWS: Document Milter v.6 support.
* doc/mailfromd.texi: Likewise.
* doc/smap.texi: Document smap.
|
|
* mfd/drivers.c (code_type_funcdecl): Exmask handling
and jump fixups are handled within codegen.
(code_type_progdecl): Update call to codegen.
* mfd/gram.y (codegen): Take an extra argument specifying
the exception mask to handle. Unless it is zero, code
saveex/restex pair around the main code. This makes sure
local allocations do not disturb exception handling code.
Also, take care of jump fixup here.
(mailfromd_test): Fix bug in numeric argument passing.
* mfd/prog.c (instr_saveex): Provide additional debugging
diagnostics (temporary).
(dump_saveex): Fix retrieving of the exmask (seftover
from earlier version).
(instr_memstk, instr_xmemstk, instr_deref)
(instr_ston, instr_ntos, instr_cmp)
(instr_logand, instr_logor, instr_logxor)
(instr_add, instr_sub, instr_mul)
(instr_div, instr_regex, instr_regcomp)
(instr_funcall): Make sure PC and stack adjustments
occur after outputting trace info.
|
|
* pmult/pmult.c (define_single_macro): Check for table overflow.
(collect_stage_symbols, collect_symlists): New functions.
(pmult_negotiate) [HAVE_SM_PMFI_SETMACS]: Call collect_symlists.
|
|
* gacopyz/stagenames.c: New file.
* gacopyz/Makefile.am (libgacopyz_a_SOURCES): Add stagenames.c.
* gacopyz/gacopyz.c (gacopyz_context_loop): Free req_macros.
(gacopyz_addrcpt_par): rename to gacopyz_add_rcpt_par.
* gacopyz/gacopyz.h (SM_LM_VRS_MAJOR, SM_LM_VRS_MAJOR)
(SM_LM_VRS_PLVL, GACOPYZ_SM_MKVER): New macros.
(macro_index): Rename to gacopyz_stage. All uses updated.
(smfi_version): New proto.
(gacopyz_addrcpt_par): rename to gacopyz_add_rcpt_par.
(gacopyz_stage_name): New declaration.
(gacopyz_srv_get_required_macros): New proto.
(gacopyz_srv_set_version, gacopyz_srv_set_protocol)
(gacopyz_srv_set_actions): 2nd argument is unsigned long.
* gacopyz/server.c (struct gacopyz_srv): New member req_macros.
(gacopyz_srv_get_required_macros): New function.
(gacopyz_srv_destroy): Free req_macros.
(gacopyz_srv_negotiate): Read macros.
* mfd/gram.y (milter_state_name): Removed. Use gacopyz_stage_name instead.
* mtasim/mtasim.c: New options: --gacopyz-log, --milter-proto, --milter-acts.
* doc/mtasim.texi, doc/mailfromd.texi: Update.
|
|
* gacopyz/stagenames.c: New file.
* gacopyz/Makefile.am (libgacopyz_a_SOURCES): Add stagenames.c.
* gacopyz/gacopyz.c (gacopyz_context_loop): Free req_macros.
(gacopyz_addrcpt_par): rename to gacopyz_add_rcpt_par.
* gacopyz/gacopyz.h (SM_LM_VRS_MAJOR, SM_LM_VRS_MAJOR)
(SM_LM_VRS_PLVL, GACOPYZ_SM_MKVER): New macros.
(macro_index): Rename to gacopyz_stage. All uses updated.
(smfi_version): New proto.
(gacopyz_addrcpt_par): rename to gacopyz_add_rcpt_par.
(gacopyz_stage_name): New declaration.
(gacopyz_srv_get_required_macros): New proto.
(gacopyz_srv_set_version, gacopyz_srv_set_protocol)
(gacopyz_srv_set_actions): 2nd argument is unsigned long.
* gacopyz/server.c (struct gacopyz_srv): New member req_macros.
(gacopyz_srv_get_required_macros): New function.
(gacopyz_srv_destroy): Free req_macros.
(gacopyz_srv_negotiate): Read macros.
* mfd/gram.y (milter_state_name): Removed. Use gacopyz_stage_name instead.
* mtasim/mtasim.c: New options: --gacopyz-log, --milter-proto, --milter-acts.
* doc/mtasim.texi, doc/mailfromd.texi: Update.
|
|
* gacopyz/Makefile.am (trans.h): Pass -vheader_file
argument to the trans.awk script.
* gacopyz/dummy.c (smfilter): Update initialization.
* gacopyz/gacopyz.c (trans_fixup): New function.
(convert_sfsistat): Handle new codes.
(make_optneg_buf): New function.
(send_reply): Handle SMFIP_NR_* flags.
Update SMFIC_OPTNEG case.
(shan_optneg): Implement milter 1.0 (proto 6)
(gacopyz_context_loop): Call trans_fixup.
(ok_to_send): Use the negotiated aflags.
(gacopyz_addrcpt_par, gacopyz_chgfrom)
(gacopyz_setsymlist): New functions.
* gacopyz/gacopyz.h (GACOPYZ_VERSION_MAJOR): Raise to 2.
(SMFI_VERSION): Set to 0x01000000
(SMFI_PROT_VERSION, SMFI_PROT_VERSION_MIN): New defines.
(SMFIR_ADDRCPT_PAR, SMFIR_CHGFROM): New defines.
(SMFIP_NR_HDR, SMFIP_SKIP, SMFIP_RCPT_REJ): New defines.
(SMFIP_NR_CONN, SMFIP_NR_HELO, SMFIP_NR_MAIL)
(SMFIP_NR_RCPT, SMFIP_NR_DATA, SMFIP_NR_UNKN)
(SMFIP_NR_EOH, SMFIP_NR_BODY, SMFIP_HDR_LEADSPC)
(SMFI_DEFAULT_PROT, SMFIF_CHGFROM)
(SMFIF_ADDRCPT_PAR): New defines.
(SMFIS_NOREPLY, SMFIS_SKIP, SMFIS_ALL_OPTS): New constants.
(enum macro_index): New data type, from gacopyz_priv.h
(SMFIM_CONNECT, SMFIM_HELO, SMFIM_ENVFROM)
(SMFIM_ENVRCPT, SMFIM_DATA, SMFIM_EOM)
(SMFIM_EOH): New defines.
(struct gacopyz_milter_descr): New member: xxfi_negotiate
(smfi_addrcpt_par, smfi_chgfrom, smfi_setsymlist)
(gacopyz_addrcpt_par, gacopyz_setsymlist)
(gacopyz_chgfrom): New protos.
* gacopyz/gacopyz_priv.h (struct macro_assoc): Rename flags to pflags.
New members: aflags, version, mta_pflags, req_macros.
* gacopyz/server.c (struct gacopyz_srv): Remove flags.
(struct gacopyz_srv.version, acts, proto): Change type.
(gacopyz_srv_create): Change defaults.
(gacopyz_srv_negotiate): Rewrite.
* gacopyz/smfi.c (smfi_addrcpt_par, smfi_chgfrom)
(smfi_setsymlist): New functions.
* gacopyz/trans.awk (END): Print the state_nr_mask array.
* mfd/bi_db.m4: Add missing includes.
* mfd/engine.c: Implement mlfi_negotiate.
* mfd/gram.y (register_macro): Arrange stored macros by
gacopyz macro index. All uses updated.
(get_stage_macro_string): New function.
* mfd/mailfromd.h (get_stage_macro_string): New proto.
(check_tbf_rate): Add proto.
|
|
|
|
* NEWS: Update.
* doc/mailfromd.texi: Reorder material.
* doc/upgrade.texi: New file.
* doc/fdl.texi, doc/gacopyz.texi, doc/strftime.texi: Move
sectioning commands to the main source.
* etc/mailfromd.rc: Reflect recent changes.
* mfd/lex.l: Change semantics of __statedir__
and __preproc__. Introduce __defstatedir__ and
__defpreproc__.
|
|
* NEWS, configure.ac: Raise patchlevel to 93.
* doc/mailfromd.texi: Document new features.
* mfd/tbf_rate.c (tbf_rate_format_struct): Change dbid to
`tbf'.
|
|
* mfd/bi_other.m4 (rate): Add second optional
parameter: a threshold.
* mfd/mailfromd.h (get_rate): Change prototype.
* mfd/rate.c (get_rate): Take two more parameters:
threshold and interval. Return rate as long.
Do not increment the hit counters if the observed
rate is higher than the threshold.
Expire the record if no mails were sent during a
time longer than `interval' seconds.
* mflib/rateok.mf: New file.
* mflib/Makefile.am (inc_DATA): Add rateok.
* NEWS: Update
|