diff options
author | Sergey Poznyakoff <gray@gnu.org.ua> | 2007-03-02 11:07:09 +0000 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org.ua> | 2007-03-02 11:07:09 +0000 |
commit | 77ccebf98a1fe81ffd9d91695d66d980258057ab (patch) | |
tree | e6b9541eda406d911750cd64474db87e4ca52ec1 | |
parent | fbe9d1e5da160f2a049d2d62071b515091c67893 (diff) | |
parent | c73834a5b157f4e53360af35b623a03c28ef9955 (diff) | |
download | mailfromd-release_3_1_2.tar.gz mailfromd-release_3_1_2.tar.bz2 |
Release 3.1.2release_3_1_2
git-svn-id: file:///svnroot/mailfromd/tags/release_3_1_2@1279 7a8a7f39-df28-0410-adc6-e0d955640f24
71 files changed, 2002 insertions, 8048 deletions
@@ -1,416 +1,31 @@ -2007-03-02 Sergey Poznyakoff <gray@gnu.org.ua> - - * src/symtab.c (function_install): Init statemask - * src/gram.y: Fix builtin context checks. Implement function - context checks. - * src/mailfromd.h (struct function): New member `statemask' - * src/Makefile.am: Exempt mtasim from installcheck - * testsuite/mailfromd/functx.exp: New testcase - * testsuite/mailfromd/DISTFILES: Add functx.exp - * testsuite/etc/Makefile.am: Add sa*.rc - * testsuite/etc/sa01.rc, testsuite/etc/sa02.rc, - testsuite/etc/sa03.rc, testsuite/etc/sa04.rc: New files. - - * NEWS: Update - - Start implementing test MTA simulator. - - * src/mtasim.c: New file - * src/gram.y: Minor fixes - * src/main.c: New option --gacopyz-debug - * src/Makefile.am: Build nullmta - * gacopyz/io.c: New file - * gacopyz/server.c: New file - * gacopyz/gacopyz.h, gacopyz/gacopyz_priv.h, gacopyz/log.c, - gacopyz/gacopyz.c, gacopyz/Makefile.am: Start implementing server - code. - -2007-02-21 Sergey Poznyakoff <gray@gnu.org.ua> - - * src/spf.c (spf_data): Add mech - (parse_record): Always allocate expr_space - * src/bi_spf.m4 (update_spf_vars): Bugfix - * src/prog.c (instr_backref): Allow to reference optional groups - * src/Makefile.am (noinst_HEADERS): Add spf.h - - * src/lex.l: New built-in macro __statedir__ - * NEWS: Update - * src/mailfrom.h: Finally renamed to - * src/mailfromd.h: this - - Affected files: - - * src/symtab.c, src/mu_dbm.c, src/engine.c, src/snarf.m4, - src/dnscache.c, src/gram.y, src/dnsbase.c, src/dns.c, src/db.c, - src/spf.c, src/spf.h, src/cache.c, src/optab.opc, src/prog.c, - src/mf-status.mfi, src/main.c, src/Makefile.am, src/rate.c - -2007-02-20 Sergey Poznyakoff <gray@gnu.org.ua> - - * src/gram.y (constdecl): Return NULL. Fixes coredump if const is - used within a code block. - 2007-02-19 Sergey Poznyakoff <gray@gnu.org.ua> + * doc/mailfromd.texi: Fix typos * src/mailfrom.h (node_type_noop): New node type - * src/gram.y: Allow declarations of initialized variables. - (print_node) <node_type_return>: Fix coredump on void returns - (optimize_node): Fix coredump on `if 0 <expr>' - * NEWS: Update - - * src/spf.c: Change handling of modifiers. - - * src/dnsbase.c, src/spf.c, src/dns.h, src/spf.h, - bi_spf.m4: Change calling convention for the interface - functions (spf_query_t, spf_answer_t); fix IP address comparisons; - implement builtin spf variables - -2007-02-18 Sergey Poznyakoff <gray@gnu.org.ua> - - * src/spf.c: Implement all modifiers, improve debugging. - -2007-02-17 Sergey Poznyakoff <gray@gnu.org.ua> - - * src/dnsbase.c (_getmx, dns_get_mx_records): ttl can be NULL - * src/spf.c: Implement all mechanisms - - * src/spf.c, src/spf.h: Templates for SPF support - * src/bi_spf.m4: Interface definitions for SPF support - * src/dns.c: Move generic DNS calls to dnsbase.c. Retain only - interface calls. - * src/dnsbase.c, src/dns.h: Generic DNS support - - * src/mailfrom.h: Move generic DNS declarations to dns.h - * src/engine.c, src/bi_dns.m4, src/prog.c: Rename freemx to - dns_freemx - * src/main.c: Fix warning message wording - * src/Makefile.am: Add new sources - * bootstrap (MODLIST): Add memrchr + * src/gram.y (print_node): Handle node_type_noop. + Fix coredump on processing void returns + (code_node): Handle node_type_noop. + (optimize_node): Fix coredumps on optimizing code + like `if 0 do_something fi' 2007-02-11 Sergey Poznyakoff <gray@gnu.org.ua> + * src/prog.c, src/main.c: Remove leftover uses of error * gacopyz/trans.awk: Always quote /dev/stderr -2007-02-08 Sergey Poznyakoff <gray@gnu.org.ua> - - Move version control under SVN. Remove .cvsignore files. - CVS copy kept around for references. - -2007-01-24 Sergey Poznyakoff <gray@gnu.org.ua> - - * doc/mailfromd.texi: Update - * src/gram.y: Change deprecation warning. - - * gacopyz/proc.c (gacopyz_cleanup_conn): Print debugging message; - Do not display spurious 'signal 15' messages - * src/engine.c (mailfromd_daemon): Improve logging - - * src/main.c: Hide deprecated command line options +2007-01-02 Sergey Poznyakoff <gray@gnu.org.ua> - * src/bi_vars.m4 (builtin_post_setup): Use string_alloc to - allocate literals - * src/mailfrom.h (DEFAULT_FROM_ADDRESS): New define - * src/main.c: Use DEFAULT_FROM_ADDRESS - - * src/gram.y: Store xlat tables in the data segment. - * src/prog.c: Likewise - * src/mailfrom.h (struct switch_stmt): Additional fields to help - code generation - * src/opcodes (XLAT, XLATS): instruction data has 2 words - * src/optab.opc (scan_code): Remove special handling for xlat(s) - - Create a relocatable code. Fixup relocatable references before - entering the working mode. - - * src/optab.opc: New file - * src/optab.oph: New file - * src/opcode.awk: New file - * src/opcodes: New file - * src/Makefile.am: Add optab.opc, optab.oph, opcode.awk - * src/gram.y: Use code_op instead of code_instr - * src/mailfrom.h (instr_*): Remove prototypes. - (code_op, fixup_code): New prototypes. - * src/main.c (main): Call fixup code - * src/mf-status.mfi: Indicate c mode for emacs. - * src/prog.c (prog): Remove static qualifier - (code_op): New function - (dump_*): Change number of arguments - (optab,find_op): Remove - (dump_code): Rewrite using scan_code - (fixup_code): New function - (print_code): Rewrite using dump_code - * src/prog.h (struct optab): New data type - (scan_code): New function - (prog): extern decl - -2007-01-22 Sergey Poznyakoff <gray@gnu.org.ua> + * src/engine.c, doc/mailfromd.texi: Sync with the trunk + * src/gram.y (code_node): code instr_svalidate after dereferencing + a string variable. + * src/prog.c (instr_svalidate): Restore function * NEWS: Update - * doc/mailfromd.texi: Update - * etc/mailfromd.rc: Remove pragma option mailfrom and ehlo - * src/gram.y,src/symtab.c: Use parse_warning where appropriate - * src/lex.l, src/mailfrom.h (parse_warning) - (parse_warning_locus): New functions - * src/main.c: Print informative warning messages where - (pragma or command line option) ehlo or mailfrom is used - -2007-01-21 Sergey Poznyakoff <gray@gnu.org.ua> - - * NEWS: Update - * doc/mailfromd.texi: Update - * src/bi_vars.m4 (builtin_post_setup): smtp_domain and - postmaster_email removed. - * src/gram.y: Bugfix - * src/main.c (smtp_domain,postmaster_email): Remove - --ehlo and --mailfrom deprecated - - * gacopyz/context.c (smfi_setpriv, smfi_getpriv): Rename to - gacopyz_* - * gacopyz/gacopyz.h (gacopyz_setpriv, gacopyz_getpriv): New - functions. - * src/bi_other.m4, src/bi_sa.m4: Minor fixes. - * src/db.c (db_format_enumerate, db_format_install) - (db_format_lookup): New functions - * src/dns.c (_resolve_ipstr): Always copy ipstr to namebuf - * src/engine.c (MLFIPRIV): Remove unused macro. Use gacopyz_ - calls instead of smfi_ ones, except for initialization functions. - * src/gram.y: Provide for deferred variable initialization (to - initialize variables from the command line). - * src/lex.l (free_string_space, mf_strdup): New functions - * src/mailfrom.h (struct old_header_node.name): const - (SYM_DB_FORMAT): Remove macro - (free_symbols,defer_initialize_variable,free_string_space) - (db_format_enumerate): New functions. - * src/main.c (options, parse_opt): New option -v - (mailfromd_expire, mailfromd_compact) - (mailfromd_show_defaults): Use db_format_enumerate instead of - symbol_enumerate - (main): Free symbol and string space after compiling the script. - * src/prog.c (env_reference): Minor enhancement - (env_set_variable): Fix call to mu_error - * src/symtab.c (union symentry): Remove v.db - (free_symbols): New function - (db_format_install, db_format_lookup): Remove. Reimplement in db.c - * testsuite/mailfromd/catch.exp: Update invocations of mailfromd - -2007-01-19 Sergey Poznyakoff <gray@gnu.org.ua> - - * doc/mailfromd.texi: Update - * src/prog.c (struct optab): Fix opname for instr_asgn - (env_final_gc): Bugfix - - * doc/Makefile.am (check-exceptions): Fix rule - * doc/mailfromd.texi: Update - * src/gram.y (asgn:): Remove erroneous flag assignement - (branch:): Warn about legacy constant usage only once - (LOCUS_EQ): Moved to mailfrom.h - (code_node): Restore svalidate - synch with 3.1 branch. - Call MARK_LOCUS under node_type_result - * src/lex.l: Warn about legacy constant usage only once - Implement #error. - - * etc/mailfromd.rc: Update - * src/main.c (main): Remove call to builtin_post_setup. - * src/prog.c (instr_variable): Print more trace info - (instr_svalidate): Restore - synch with 3.1 branch. - -2007-01-18 Sergey Poznyakoff <gray@gnu.org.ua> - - * src/gram.y: Do not compile autogenerated functions at once. - Expand unprefixed named constants only when a value is expected - * src/lex.l: Likewise - * src/mailfrom.h (struct stmtlist): New data type - -2007-01-17 Sergey Poznyakoff <gray@gnu.org.ua> - - * NEWS: Update - * configure.ac: Raise patchlevel to 91 - * doc/mailfromd.texi: Update - * src/Makefile.am (status.mfh, mf-status.c): New built sources - * src/mfstat.awk: New file - * src/status.mfi: New file - * src/mf-status.mfi: New file - * src/mailfrom.h, src/bi_dns.m4 (mf_resolve): Rename to mf_noresolve - * src/gram.y (string: STRING): Fix incorrect argument to parse_error - (parse_program): Remove call to post_parse - (branch: WHEN): Issue deprecation warning if &const is used. - (string_to_stat, mf_status_str): Defined in separate source - * src/lex.l (lex_setup): Change default include path - Issue deprecation warning if &const is used. - Allow to use constants both in the program text and in literals - * src/prog.c (string_off,string_count): Removed. Relocation table - is used instead. - * src/prog.h (post_parse): Remove - * testsuite/etc/catch.rc: Include <status.mfh>, do not use &const. - * testsuite/etc/catch01.rc: Likewise - * testsuite/etc/hasmx.rc: Likewise - * testsuite/etc/poll-1.rc: Likewise - * testsuite/etc/poll.rc: Likewise - * testsuite/lib/mailfromd.exp: Update include path - -2007-01-14 Sergey Poznyakoff <gray@gnu.org.ua> - - * src/gram.y, src/lex.l, src/mailfrom.h, src/prog.c: Store - locus.file in the dataseg. - - * src/gram.y: Implement const declarations - * src/lex.l: Likewise - * src/mailfrom.h: Likewise - * src/symtab.c: Likewise - * src/main.c: Minor change - * src/prog.c: Minor change - -2007-01-13 Sergey Poznyakoff <gray@gnu.org.ua> - - * gacopyz/gacopyz.h (GACOPYZ_VBUFSIZE): New define - (gacopyz_format_vbuf): New decl - * gacopyz/log.c (VBUFSIZE): Rename to GACOPYZ_VBUFSIZE - (format_vbuf): Rename to gacopyz_format_vbuf; make extern - * src/bi_mail.m4, src/bi_sa.m4, src/bi_system.m4, src/cache.c, - src/dns.c, src/dnscache.c, src/engine.c, src/main.c, - src/rate.c: Minor fixes - * src/bi_vars.m4 (builtin_post_setup): Change initialization of - ehlo_domain and mailfrom_address. - * src/gram.y, src/mailfrom.h, src/prog.c, src/symtab.c: Use - literals instead of string pointers. - Each string reference in the resulting program should point - within the current stack or data space (except for the values of - Sendmail macros). - * src/lex.l (string_alloc,string_finish): Return literal - -2007-01-06 Sergey Poznyakoff <gray@gnu.org.ua> - - * src/bi_vars.m4 (builtin_post_setup): Change initialization of - ehlo_domain and mailfrom_address built-in variables. - * src/gram.y: Put string values initially assigned to the - variables into the data segment. Redo its planning. - Process only variables marked as volatile (built-in) or as - referenced. - (builtin_variable_install): Initialize flags. - (vardecl): Remove initialization of var->off - (externdecl): Change declaration. - (initialize_variable,ensure_initialized_variable) - (dataseg_layout): New functions - * src/prog.c: Redo data segment initialization and handling. - (dataseg,datasize,dataseg_reloc,dataseg_reloc_count): New - variables - (struct eval_environ.var): Rename to dataseg - * src/prog.h (B2STACK): New macro (moved from prog.c) - (variable_declared_p,declare_variable): Removed - (ensure_initialized_variable): New function - (dataseg,datasize,dataseg_reloc,dataseg_reloc_count): New externs - -2007-01-04 Sergey Poznyakoff <gray@gnu.org.ua> - - * TODO: Update - * src/engine.c (smtp_last_received): Remove superfluous - conditional - (method_strict,method_standard): Set last_poll_* variables to "", - not NULL - * src/gram.y: First build the entire tree, than compile it at - once. - Fix varaible shadowing. - Reorganize lexical tie-ins. - * src/lex.l: New keyword `const'. - (parse_error,parse_error_locus): Increase buffer size to 512. - * src/mailfrom.h (enum lexical_context): New data type. - (struct catch_node.context): New field - (struct progdecl, struct funcdecl): New data types. - (enum node_type): Add new types: node_type_funcdecl and - node_type_progdecl. - (struct node.v): New members progdecl and funcdecl - (VAR_REFERENCED): New macros - (struct variable): New fields next and owner - (variable_replace): New function - * src/symtab.c (init_variable): New function - (variable_install): Use init_variable - (variable_replace): New function - * testsuite/etc/shadow.rc: New file - * testsuite/etc/Makefile.am (RCFILES): Add shadow.rc - * testsuite/mailfromd/shadow.exp: New file - * testsuite/mailfromd/DISTFILES: Add shadow.exp - -2006-12-27 Sergey Poznyakoff <gray@gnu.org.ua> - - * doc/mailfromd.texi: Fix typo - -2006-12-25 Sergey Poznyakoff <gray@gnu.org.ua> - - * configure.ac: Do not quote DEFAULT_LOG_FACILITY - * NEWS: update - * src/bi_string.m4 (unfold) new function - * src/engine.c (check_on_host): Issue RSET if the previous MAIL - FROM returned 4xx - (mlfi_helo): Push malloced copy of helohost - * src/main.c (option_deprecated): mark as warning. - -2006-12-21 Sergey Poznyakoff <gray@gnu.org.ua> - - * NEWS: Update - * src/bi_string.m4 (message_header_decode, message_header_encode): - New functions. - -2006-12-15 Sergey Poznyakoff <gray@gnu.org.ua> - - * NEWS: Update - * TODO: Update - * doc/mailfromd.texi: Update the description of resolve and the - code of match_dnsbl and match_rhsbl - * src/bi_dns.m4 (resolve): Take an optional second argument - * src/dns.c (is_ipaddr): Stricter check - (struct loop_data.atype): New member - (cnameloop): Return the type of obtained answer in atype - (_resolve_ipstr): Additional argument: domain to look up into. If - not NULL, the ipstr is not reversed - (resolve_ipstr_domain): New function - (resolve_ipstr): Rewrite using resolve_ipstr_domain - (_resolve_hostname): Convert IP to string if gotten T_A. All - callers updated. - * src/lex.l: Allow `==' as well as `=' - * src/mailfrom.h (resolve_ipstr_domain): New function - - * src/main.c (switch_to_privs): Refuse to run as root - * doc/mailfromd.texi: Fix typo. - * bi_io.m4, db.c, dnscache.c, engine.c, gram.y, lex.l, main.c, - prog.c: Capitalize diagnostic messages - -2006-12-14 Sergey Poznyakoff <gray@gnu.org.ua> - - * NEWS: Update - * configure.ac: New configuration variable DEFAULT_LOG_FACILITY - * doc/mailfromd.texi: Update - * src/main.c (main): Set log_facility. - - * src/lex.l: Allow any amount of whitespace between the function - name and the opening parenthesis. - * src/lex.l: Fix the previous patch - * src/gram.y: Revert accidental commit + * configure.ac: Version 3.1.2 2006-12-13 Sergey Poznyakoff <gray@gnu.org.ua> - Synchronization with 3.1 branch: - - * NEWS, configure.ac: Version 3.1.90 - * doc/mailfromd.texi: Fix typo - * src/bi_sa.m4 (spamd_send_stream): Assume captured stream already - has \r in front of each \n - (clamav): always shutdown data stream as a fd-style stream. - * src/dns.c (_resolve_ipstr): First argument is const - (resolve_ipstr,resolve_hostname): First argument is const - * src/dnscache.c (parse_value,dns_make_key) - (dns_cache_get,dns_cache_put): keystr is const - * src/gram.y (optimize_node): Fix typo that caused correct - `matches' conditions to be rejected (e.g. strip_domain_part.mf) - * src/mailfrom.h (resolve_ipstr,resolve_hostname): First argument - is const - (dns_cache_get,dns_cache_put): keystr is const - * src/snarf.m4 (MF_BEGIN_TEMP_SPACE): Do not terminate with a - semicolon, since the statement is supposed to be used in argument - declarations. - -2006-12-13 Sergey Poznyakoff <gray@gnu.org.ua> - - * NEWS: Update + * NEWS, configure.ac: Version 3.1.1 * doc/mailfromd.texi: Fix typo * src/bi_sa.m4 (spamd_send_stream): Assume captured stream already has \r in front of each \n @@ -5,69 +5,18 @@ See the end of file for copying conditions. Please send mailfromd bug reports to <bug-mailfromd@gnu.org.ua> -Version 3.1.91, CVS +Version 3.1.2, 2007-03-02 -* New command line option -v (--variable) allows to alter initial value of a -global variable, e.g: - - mailfromd -v ehlo_domain=mydomain.org - -The old way of assigning values to the globals from the command line -(by prefixing an assignment with a percent sign) is discontinued. - -* Pragmatic options `mailfrom' and `ehlo' - -Both options create ambiguities in the language and are therefore -deprecated. They are still understood but a deprecation warning is -issued when the parser sees them. To update your scripts: - -Change - #pragma option mailfrom @var{value} -to - set mailfrom_address @var{value} - -Change - #pragma option ehlo @var{value} -to - set ehlo_domain @var{value} - -* Code generation redone to decrease memory requirements and make compiled -code self-sufficient. - -* New statement `const' defines a named constant, e.g.: - - const n 10 - const s "String" - - if ($f != %s) - ... - fi - -* It is allowed to initialize variables in declarations. - -For example, instead of - - number x - set x 1 - -you can write - - number x 1 +Bugfixes: -* Built-in macro __statedir__ - -New built-in macro `__statedir__' expands to the name of the default -program state directory. - -* Bugfixes -** Fix coredumps on printing void returns with --dump-tree -** Fix coredumps on optimising conditionals like +* Fix coredumps on dereferencing an undefined variable. +* Fix coredumps on printing void return nodes with --dump-tree. +* Fix coredumps on optimising conditionals like if 0 do_something fi - |