aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFiles
2009-05-03Minor change.Sergey Poznyakoff2
* NEWS: Update. * .gitignore: Update.
2009-05-02Add an alternative implementation of the greylist function.Sergey Poznyakoff8
* mfd/bi_db.m4: Add a new implementation of the greylist function, proposed by Con Tassios. In this implementation, the database keeps the time the greylisting period is set to expire, rather than the time the greylisting was activated. This allows to implement is_greylisted function. The implementation to use is selected by #pragma greylist. * tests/greylist-ct.at: New file. Testcase for Con Tassios style greylist. * tests/Makefile.am (TESTSUITE_AT): Add greylist-ct.at. * tests/greylist.at: Update. * tests/testsuite.at: Include greylist-ct.at. * tests/etc/greylist-ct.rc: New file. * tests/etc/Makefile.am (RCFILES): Add greylist-ct.rc. * THANKS: Fix alphabetical ordering.
2009-05-02Implement token bucket filter.Ben McKeegan7
* mfd/tbf_rate.c: New file. * gnulib.modules: Add inttypes. * mfd/Makefile.am (mailfromd_SOURCES): Add tbf_rate.c. * mfd/bi_other.m4 (tbf_rate): New function. * mfd/mailfromd.h (tbf_rate_format): New global. * mfd/main.c (db_format_setup): Set tbf_rate_format.
2009-04-19Version 5.0.92Sergey Poznyakoff2
2009-04-19Do not use RFC822 filter.Sergey Poznyakoff4
* mfd/bi_sa.m4 (write_822): New function to replace MU's "rfc822" filter, which is a pile of junk (sorry). Improves performance, besides. (spamd_send_stream): Use write_822 instead of the filter. See above. * mfd/engine.c: Fix comment. * mfd/mailfromd.h (mem_search): New proto. * mfd/prog.c (env_capture_write): Use mem_search.
2009-04-18Version 5.0.91Sergey Poznyakoff2
2009-04-18Fix CRLF/LF inconsistencies. Fix bug in SAVEEX/RESTEX.Sergey Poznyakoff8
* mfd/prog.c (instr_restex): Bugfix. Use pop to restore catch addresses. This also fixes the resulting tos value. * mfd/bi_body.m4 (current_message): Use mf_stream_to_message * mfd/bi_sa.m4 (spamd_send_stream): Return int. Recode delimiters to "\r\n". (sa): Check return from spamd_send_stream. Adjust reported stream size. (clamav): Check return from spamd_send_stream. * mfd/bi_sieve.m4 [MAILUTILS_VERSION_NUMBER < 1290]: Remove * mfd/mailfromd.h (env_get_line_count, mf_stream_to_message): New functions. * mfd/prog.c (struct eval_environ.line_count): New member. (env_get_line_count): New function. (env_capture_start): Init eval_environ.line_count (env_capture_write): Recode "\r\n" -> "\r". Update eval_environ.line_count. * mtasim/mtasim.c (send_body): New function. (smtp): Use CRLF as line terminator in message body. * pmult/pmult.c (collect_headers): strip off \r's.
2009-04-09Document #pragma dbpropSergey Poznyakoff2
2009-04-09Fix strict callout method.Sergey Poznyakoff1
* mfd/engine.c (check_mx_records): Propagate mf_failure, mf_temp_failure, and mf_not_found returns to the caller. (method_strict): Dismiss return mf_not_found from check_mx_records, if there were no MXs.
2009-04-08The `dbprop' pragma allows to define database properties.Sergey Poznyakoff11
* mfd/Makefile.am (mailfromd_SOURCES): Add pragma.c * mfd/pragma.c: New file. * mfd/bi_db.m4: New pragma `dbprop'. (dbmap, dbget, dbput, dbdel): take database properties from dbprop settings. (dbfirst): Open database for reading only. * mfd/gram.y (pragma_regex, pragma_option, pragma_stacksize) (pragma_database): Rewrite to match new pragma interface. (pragma_setup): New function. * mfd/mailfromd.h (SYM_PRAGMA): New symbol type. (install_pragma, lookup_pragma): New protos. (parse_pragma): Arg is const. * mfd/main.c (main): Call pragma_setup. * mfd/snarf.m4 (MF_PRAGMA): New define. * mfd/symtab.c ((install_pragma, lookup_pragma): New functions. * .gitignore, tests/.gitignore: Update.
2009-03-19BugfixCon Tassios1
* mfd/bi_db.m4 (greylist): Initialize greylist_seconds_left for expired records.
2009-03-13Finish migration to Git.Sergey Poznyakoff19
* Makefile.am (dist-hook): Create ChangeLog. (ChangeLog): New rule. * NEWS, README-alpha, README-hacking: Update * gnulib.modules: Add gitlog-to-changelog * ChangeLog: Rename to ChangeLog.svn * tests/hasmx.at, tests/hostname.at, tests/ismx.at, tests/poll.at, tests/poll01.at, tests/poll02.at, tests/poll03.at, tests/rescname.at, tests/resolve.at, tests/testsuite.at: Skip tests if the network is down.
2009-03-13Add .gitignoresSergey Poznyakoff13
2009-03-12Fix the current_message function and subprocess handling in mtasim.Sergey Poznyakoff11
* mtasim/mtasim.c (stop_mailfromd): Wait for the mailfromd child to terminate and analyze its return status. * mfd/bi_msg.m4 (bi_drop_current_message): New function. * mfd/prog.c (env_capture_start): Call bi_drop_current_message if the capture stream already exists (i.e. when starting processing 2nd or later message in a session). * mfd/msg.h (bi_drop_current_message): New prototype. * gacopyz/server.c (srv_connect): Retry attempts to connect if they fail with ECONNREFUSED. Implement 5-second timeout. * tests/testsuite.at (MAILFROMD_OPTIONS): New define. (AT_MTA_TEST): Pass MAILFROMD_OPTIONS to mtasim invocation. (AT_WITH_MAILFROMD_OPTIONS): New macro. Include curmsg.at. * tests/curmsg.at: New file * tests/etc/Makefile.am (RCFILES): Add size.rc * tests/etc/size.rc: New file git-svn-id: file:///svnroot/mailfromd/trunk@1779 7a8a7f39-df28-0410-adc6-e0d955640f24
2009-03-11Minor fixes.Sergey Poznyakoff1
* mfd/prog.c (env_get_macro, instr_symbol): Minor fixes (env_capture_start): Seek to 0 after truncating the stream. Mailutils should know better and do it automatically. git-svn-id: file:///svnroot/mailfromd/trunk@1778 7a8a7f39-df28-0410-adc6-e0d955640f24
2009-03-10BugfixesSergey Poznyakoff5
* mfd/prog.c (env_capture_start): Do not create the stream if it already exists. Bug reported by Con Tassios. * mfd/bi_sieve.m4 (sieve): Don't free unexistend Sieve machines. * THANKS: Update * NEWS: Update git-svn-id: file:///svnroot/mailfromd/trunk@1777 7a8a7f39-df28-0410-adc6-e0d955640f24
2009-02-20Raise version number to 5.0.90Sergey Poznyakoff2
git-svn-id: file:///svnroot/mailfromd/trunk@1776 7a8a7f39-df28-0410-adc6-e0d955640f24
2009-02-20BugfixSergey Poznyakoff2
* mfd/bi_io.m4 (write): Fix spurious runtime exceptions, raised if the third argument was not given. git-svn-id: file:///svnroot/mailfromd/trunk@1775 7a8a7f39-df28-0410-adc6-e0d955640f24
2009-02-20Minor changesSergey Poznyakoff2
* mfd/engine.c (mlfi_envfrom, mlfi_envrcpt): Fix second argument, so that it does not include $1. * THANKS: Update. * mflib/sa.mf (sa_format_report_header): Improve formatting. git-svn-id: file:///svnroot/mailfromd/trunk@1774 7a8a7f39-df28-0410-adc6-e0d955640f24
2009-02-19Minor changesSergey Poznyakoff4
* mfd/engine.c (mlfi_envfrom, mlfi_envrcpt): Fix second argument, so that it does not include $1. * THANKS: Update. * mflib/sa.mf (sa_format_report_header): Improve formatting. git-svn-id: file:///svnroot/mailfromd/trunk@1773 7a8a7f39-df28-0410-adc6-e0d955640f24
2009-02-18BugfixSergey Poznyakoff7
* mfd/gram.y (state_parms): Fix number of arguments to envfrom and envrcpt. Bug reported by Patrick Dalais <patrick@depari.co.za>. * tests/fromargs.at, tests/rcptargs.at: New tests. * tests/testsuite.at, tests/Makefile.am: Add new tests. * tests/etc/ack.rc: Increase stack allocation. git-svn-id: file:///svnroot/mailfromd/trunk@1772 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-12-26Version 5.0Sergey Poznyakoff7
* configure.ac, NEWS: Version 5.0. * doc/mailfromd.texi, doc/pies.texi, doc/pmult.texi: Update. * doc/Makefile.am (check-builtins): Account for MF_DEFUN_VARARGS_NO_PROM. git-svn-id: file:///svnroot/mailfromd/trunk@1771 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-12-16Fix sprintf, accidentally broken on 2008-07-14.Sergey Poznyakoff7
* mfd/symtab.c (va_builtin_install): Initialize flags to 0. (va_builtin_install_ex): Remove capture and varargs, replace them with flags. * mfd/snarf.m4 (__mf_defun,MF_DEFUN_VARARGS): Reflect changes to va_builtin_install_ex. (MF_DEFUN_VARARGS_NO_PROM): New defun. * mfd/gram.y (cast_arg_list): Add 4th argument, controlling argument type promotion. * mfd/drivers.c (code_type_builtin): Use builtin.flags. * mfd/mailfromd.h (MFD_BUILTIN_*): New defines. (struct builtin): Remove capture and varargs, replace them with flags. * mfd/bi_sprintf.m4: Define sprintf as MF_DEFUN_VARARGS_NO_PROM. git-svn-id: file:///svnroot/mailfromd/trunk@1770 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-12-01UpdateSergey Poznyakoff1
git-svn-id: file:///svnroot/mailfromd/trunk@1769 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-12-01UpdateSergey Poznyakoff3
git-svn-id: file:///svnroot/mailfromd/trunk@1768 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-12-01Documentation and minor fixes.Sergey Poznyakoff1
* pies/pies.c, pies/progman.c, pies/meta1gram.y, pies/pies.h, pies/meta1lex.l: Normalize output redirection terminology, fix the debug levels. * pmult/pmult.c: Fix error message * doc/pies.texi: Document the configuration. git-svn-id: file:///svnroot/mailfromd/trunk@1767 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-12-01Documentation and minor fixes.Sergey Poznyakoff8
* pies/pies.c, pies/progman.c, pies/meta1gram.y, pies/pies.h, pies/meta1lex.l: Normalize output redirection terminology, fix the debug levels. * pmult/pmult.c: Fix error message * doc/pies.texi: Document the configuration. git-svn-id: file:///svnroot/mailfromd/trunk@1766 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-28Add const qualifiers to gacopyz_getsymval, gacopyz_replace_body andSergey Poznyakoff9
derived functions. git-svn-id: file:///svnroot/mailfromd/trunk@1765 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-28Bugfixes/improvements.Sergey Poznyakoff7
* doc/mailfromd.texi: Document replbody. Use @WRITEME where appropriate. * doc/rendition.texi (WRITEME): New macro. (UNREVISED): Reword. * doc/pies.texi, doc/smap.texi: Use @WRITEME * doc/Makefile.am (check-writeme): New rule. (all-check-docs): Depend on check-writeme. * mfd/bi_body.m4 (replbody): Can be used in any handler. * NEWS: Rearrange material. git-svn-id: file:///svnroot/mailfromd/trunk@1764 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-27Emulate Sendmail behavior for SMFIR_REPLBODY.Sergey Poznyakoff2
* pmult/pmult.c (struct pmult_priv_data): New members hdrbuf and body_itr. Remove body_off. (pmult_append_body_chunk): Set bucket size to PMILTER_CHUNK_SIZE. (pmult_clear): Free new pmult_priv_data members. (pmult_free): Call pmult_clear first. (pmult_eom): Initialize pmult_priv_data members for eventual body replacement. (pmult_msg_rplc): First send headers, then body. git-svn-id: file:///svnroot/mailfromd/trunk@1763 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-27Minor changes.Sergey Poznyakoff2
* pmult/pmult.c: Remove obsolete comment. * mfd/engine.c (run_msgmod): Ensure the message for gacopyz_replace_body has \r\n endings. git-svn-id: file:///svnroot/mailfromd/trunk@1762 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-25Initial implementation of body replacement.Sergey Poznyakoff6
* mfd/engine.c (run_msgmod): Handle body_repl * mfd/gram.y (msgmod_opcode_str): Likewise. * mfd/mailfromd.h (enum msgmod_opcode): New constant body_repl. * mfd/bi_body.m4 (replbody): New function (proof-of-concept). * pmult/pmult.c (struct pmult_priv_data): New fields body_off, body_chunks. (pmult_append_body_chunk): New function. (cb_reply): Handle SMFIR_REPLBODY (pmult_std_reply): Likewise. (pmult_clear): Destroy body_chunks (pmult_eom): Request body replacement if body_chunks is not NULL. (pmult_msg_rplc,pmult_msg_rplc_stat): New functions. (pmilter): Register pmult_msg_rplc and pmult_msg_rplc_stat. git-svn-id: file:///svnroot/mailfromd/trunk@1761 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-21Pies: ensure all prereqs are started in right order before starting a ↵Sergey Poznyakoff5
dependency. * pies/pies.c (component_cfg_param): New statement settle-timeout. * pies/progman.c (recompute_alarm): New static; (prog_start): Start the component only if all of its prerequisites are running. (progman_recompute_alarm): New function. (progman_start): Reset recompute_alarm to 0. (check_stopping): New function. (progman_wake_sleeping): Handle also status_stopping and status_enabled. Recompute alarm before leaving. (prog_start_prerequisites): Return 0 or 1 depending on whether all prerequisites have been started. (prog_stop): Raise recompute_alarm for stopping components. (progman_cleanup): Force status_enabled before attepmting to start a component. (progman_cleanup): Add a \n after debugging message. Run progman_wake_sleeping unlsess expect_term is set. * pies/meta1gram.y (translate_node_list): Force settle-timeout = 1. * pies/pies.h (struct component.settle_timeout): New member. git-svn-id: file:///svnroot/mailfromd/trunk@1760 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-21Improve pies.Sergey Poznyakoff5
* pies/pies.c (main): New options --force, --dump-prereq and --dump-depmap. Refuse to start if another instance is already running. (pies_check_status): New function. (pies_status): Rewrite using pies_check_status. * pies/progman.c (component_fixup_depend): Bugfix: move mu_list_append off the conditional. (progman_dump_prereq, progman_dump_depmap): New functions. * pies/meta1gram.y (yyerror): Return 0. * pies/pies.h (progman_dump_prereq, progman_dump_depmap): New protos. (meta1_parser_set_debug, meta1lex, meta1error) (meta1parse): Likewise. git-svn-id: file:///svnroot/mailfromd/trunk@1759 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-21Improve pies.Sergey Poznyakoff2
* pies/progman.c (print_dep): New function. (progman_build_depmap): Call print_dep to facilitate fixing cyclic dependencies. (prog_start_prerequisites): Fix debugging output. Remove spurious second loop (was it a typo or copy-paste leftover?) (prog_stop_dependents): Fix debugging output. (progman_dump_stats): Avoid race conditions between running and querying instances. git-svn-id: file:///svnroot/mailfromd/trunk@1758 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-17Add pies.texi and smap.texiSergey Poznyakoff5
git-svn-id: file:///svnroot/mailfromd/trunk@1757 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-17Document and improve pmult.Sergey Poznyakoff6
* pmult/pmult.c (debug_level): Remove. (struct pmult_priv_data): Remove debug. Use pmult_debug instead. (macro_trans): Define Sendmail compatibility macros cn_issuer and cn_subject. (builtin_macros): Fix typo in "multiplexer". (define_macros): Rewrite. The "define-macros" statement takes exactly two arguments, each of which can be either a string or a list of strings. * doc/values.texi, doc/mailfromd.texi, doc/pmult.texi: Update. * doc/Makefile.am (check-fixmes): Scan all texinfo documents. git-svn-id: file:///svnroot/mailfromd/trunk@1756 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-17Fix handling of retranslators.Sergey Poznyakoff1
* pies/pies.c (main): Call progman_build_depmap and progman_create_sockets before starting up components. * pies/progman.c (struct prog): New member `retr'. (destroy_prog): New function. (retr_tag): Change signature. Fix erroneous condition for xalloc_die. (register_retr): Return prog. Make static. Initialize idx with -1. (update_retr): Register retranslator, if necessary. (progman_register_retranslators): Remove. (register_prog0): 2nd argument: index. (register_prog): Do not create socket at once. (prog_start): Remove debugging fprintf. (progman_accept): Update call to register_prog0. (progman_create_sockets): New function. (progman_start): Remove calls to progman_register_retranslators and progman_build_depmap. They must be done only once. (prog_stop_retranslators): New function. (prog_stop_dependents): Call prog_stop_retranslators. (progman_cleanup): Remove dangling retranslators. * pies/pies.h (progman_create_sockets): New prototype. git-svn-id: file:///svnroot/mailfromd/trunk@1755 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-17Fix handling of retranslators.Sergey Poznyakoff3
* pies/pies.c (main): Call progman_build_depmap and progman_create_sockets before starting up components. * pies/progman.c (struct prog): New member `retr'. (destroy_prog): New function. (retr_tag): Change signature. Fix erroneous condition for xalloc_die. (register_retr): Return prog. Make static. Initialize idx with -1. (update_retr): Register retranslator, if necessary. (progman_register_retranslators): Remove. (register_prog0): 2nd argument: index. (register_prog): Do not create socket at once. (prog_start): Remove debugging fprintf. (progman_accept): Update call to register_prog0. (progman_create_sockets): New function. (progman_start): Remove calls to progman_register_retranslators and progman_build_depmap. They must be done only once. (prog_stop_retranslators): New function. (prog_stop_dependents): Call prog_stop_retranslators. (progman_cleanup): Remove dangling retranslators. * pies/pies.h (progman_create_sockets): New prototype. git-svn-id: file:///svnroot/mailfromd/trunk@1754 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-16Improve pies.Sergey Poznyakoff4
* pies/pies.h (create_socket): Change proto to 3 arguments. * pies/socket.c (create_socket): Take two additional arguments. Allow to configure ownership and mode of created UNIX sockets. * pies/progman.c (register_prog, prog_start): Update calls to create_socket. git-svn-id: file:///svnroot/mailfromd/trunk@1753 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-16Implement ctype functions.Sergey Poznyakoff6
* mfd/bi_ctype.m4: New function. * mfd/Makefile.am (inc_DATA): Add bi_ctype.m4. * doc/Makefile.am (check-builtins): Update source sed expression. * doc/mailfromd.texi, NEWS: Document ctype functions. git-svn-id: file:///svnroot/mailfromd/trunk@1752 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-15Improve handling of program privileges.Sergey Poznyakoff8
* lib/libmf.h (struct mf_privs): New data type. (get_user_groups, mf_priv_setup, mf_epriv_setup): New prototypes. * lib/userprivs.c (get_user_groups, mf_priv_setup) (mf_epriv_setup): New functions. * smap/smap.c: If user is specified, switch to effective uid/gid, in order for msrv to create files with right privileges, on one hand, and to be able to create pidfile in root-owned directories (e.g. /var/run), on the other hand. This requires todays snapshot of Mailutils. * pies/pies.h (struct pies_privs_data): Remove (struct component): Change type of `privs' to struct mf_privs. (priv_setup): Remove. * pies/pies.c: Use mf_priv* stuff to manipulate privileges. * pies/progman.c: Likewise. * pies/meta1gram.y (list): allow for trailing comma. git-svn-id: file:///svnroot/mailfromd/trunk@1751 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-13Bugfix.Sergey Poznyakoff2
* mfd/bi_string.m4 (index) (rindex): Third argument (start index) can equal string length. git-svn-id: file:///svnroot/mailfromd/trunk@1750 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-13Bugfix.Sergey Poznyakoff2
* pies/Makefile.am (LDADD): Add MF_PROCTITLE_LIBS git-svn-id: file:///svnroot/mailfromd/trunk@1749 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-13Bugfix.Sergey Poznyakoff3
* lib/proctitle.c (mf_proctitle_format): * pies/progman.c (progman_register_retranslators): Register retranslators only for retr_syslog. (open_retranslator): Do not prepend program name to the proctitle. It is done automatically by the library. * lib/proctitle.c: Declare environ. Define __progname if not defined in libc. (mf_proctitle_init): Set __progname. (mf_proctitle_format): Prepend program name to the proctitle. git-svn-id: file:///svnroot/mailfromd/trunk@1748 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-13Implement file output redirection.Sergey Poznyakoff8
* pies/pies.h (enum retr_type): New constants. (struct retranslator): New type. (struct component): Change type of retr to struct retranslator. All uses updated. * pies/pies.c (_cb_retr): Takes two arguments: redirection type and file name or syslog priority. (make_full_name): New function. (component_verify): Check retr file names. * pies/progman.c (redirect_to_file): New function. (open_retranslator): Handle file redirects. (prog_start): Open /dev/null in wronly mode. * pies/meta1gram.y (create_retr_node): New function. (translate_node_list): Create default "stderr" statement. git-svn-id: file:///svnroot/mailfromd/trunk@1747 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-13Implement setproctitle functionality for pies.Sergey Poznyakoff11
* am: New directory. * am/aggr.m4, am/debug.m4: New files (from acinclude.m4) * am/proctitle.m4: New file. * acinclude.m4: Removed. * configure.ac: Call MF_PROCTITLE. * lib/libmf.h (mf_proctitle_format): New prototype. * lib/proctitle.c: New file. * lib/Makefile.am (libmf_a_SOURCES): Add proctitle.c. * Makefile.am (ACLOCAL_AMFLAGS): Add -I am * pies/pies.c (main): Call mf_proctitle_init. * pies/progman.c (retr_tag): Rewrite in a safer way. (open_retranslator): Set program title in child. git-svn-id: file:///svnroot/mailfromd/trunk@1746 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-13Allow to complement existing components (useful for MeTA1 includes).Sergey Poznyakoff3
* pies/pies.c (component_verify): New function. (component_section_parser): Call component_verify. (_cm_include_meta1): Reduce the tree at once. (parse_meta1_conf): Not needed any more. * pies/progman.c (progman_register_retranslators): New function. (pies/progman.c): Do not register retranslators: wait until the entire config is parsed and do that in progman_start. (progman_start): Call progman_register_retranslators. git-svn-id: file:///svnroot/mailfromd/trunk@1745 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-12Optonal semicolon after a simple statementSergey Poznyakoff1
git-svn-id: file:///svnroot/mailfromd/trunk@1744 7a8a7f39-df28-0410-adc6-e0d955640f24
2008-11-12Implement dependencies/prerequisites in MeTA1.Sergey Poznyakoff5
* pies/pies.c (component_cfg_param): Rename "depend" to "prerequisites". Add new keyword "dependents". (pies_cfg_param): New keyword "limits". * pies/progman.c (struct prog): Rename "depend" to "prereq". (prog_start_dependencies): Rename to prog_start_prerequisites (register_prog0): Do not fill prereq. This will be done later, when all dependencies are resolved. (prog_rebuild_prerequisites): New function. (prog_start): Per-component limitis override system-wide ones. (component_fixup_depend, fixup_prerequisites) (rebuild_prerequisites): New functions. (progman_build_depmap): Call fixup_prerequisites and rebuild_prerequisites. (prog_stop_dependent): Rename to prog_stop_dependents. * pies/meta1gram.y: Implement restart_dependencies. * pies/pies.h (struct component): Rename "depend" to "prereq". Add new member "depend". (pies_limits): New extern. git-svn-id: file:///svnroot/mailfromd/trunk@1743 7a8a7f39-df28-0410-adc6-e0d955640f24

Return to:

Send suggestions and report system problems to the System administrator.