Age | Commit message (Collapse) | Author | Files |
|
* configure.ac: Build libmailutils/datetime/Makefile.am
* include/mailutils/datetime.h (mu_datetime_julianday)
(mu_datetime_dayofweek,mu_datetime_dayofyear)
(mu_datetime_year_days): New protos.
* libmailutils/Makefile.am (SUBDIRS): Add datetime
(libmailutils_la_LIBADD): Add libdatetime.la
* libmailutils/base/Makefile.am (libbase_la_SOURCES): Remove date.c
and strftime.c.
* libmailutils/base/date.c: Remove.
* libmailutils/base/strftime.c: Move to libmailutils/datetime
* libmailutils/datetime/Makefile.am: New file.
* libmailutils/datetime/dow.c: New file.
* libmailutils/datetime/doy.c: New file.
* libmailutils/datetime/jd.c: New file.
* libmailutils/datetime/scantime.c: New file.
* libmailutils/datetime/streamftime.c: New file.
* libmailutils/datetime/tab.c: New file.
* libmailutils/datetime/unixtime.c: New file.
* libmailutils/datetime/utcoff.c: New file.
* libmailutils/datetime/yd.c: New file.
* libmailutils/tests/scantime.at: Fix yday numbers.
|
|
Additionally, do not typedef mu_timezone, leave it in struct namespace.
|
|
|
|
* libmailutils/base/date.c (mu_scan_datetime): Handle optional
blocks (%[ %| %], alternatives %( %| %), "any character"
wildcards (%?) and strict character matches (%\C). Return
MU_ERR_FORMAT on errors in format string.
Compute tm->tm_yday.
* libmailutils/diag/errors (MU_ERR_FORMAT): New error code.
* libmailutils/tests/scantime.c: Print yday. Print input line with
diagnostic messages.
* libmailutils/tests/scantime.at: Add more tests.
* include/mailutils/util.h (MU_DATETIME_RFC822): Split into two
formats: MU_DATETIME_FORM_RFC822, for output formatting, and
MU_DATETIME_SCAN_RFC822 for input scanning. All uses changed.
|
|
* imap4d/util.c (util_parse_internal_date): Use MU_DATETIME_INTERNALDATE
format.
* include/mailutils/util.h (MU_DATETIME_IMAP_SEARCH): Rename to
MU_DATETIME_INTERNALDATE (previous incorrect definition removed).
(MU_DATETIME_RFC822): New format.
* libmailutils/address/address.c: Accessors for local_part and
domain invalidate email field.
(validate_email): New static function.
(mu_address_sget_email): Reconstruct email, if necessary.
(mu_address_format_string): Likewise.
* libmailutils/base/date.c (mu_c_streamftime): Allow for %$ specifier
for compatibility with mu_scan_datetime.
(mu_scan_datetime): Use %$ to idicate optional end of string.
* libmailutils/tests/scantime.at: Update.
* libproto/imap/fetch.c (_fill_response): Use MU_DATETIME_RFC822 format.
* mu/imap.c (fetch_response_printer): Print subject.
|
|
* include/mailutils/stream.h (mu_fixed_memory_stream_create): New proto.
* libmailutils/stream/memory_stream.c
(mu_fixed_memory_stream_create): New function.
* include/mailutils/util.h (mu_parse_imap_date_time)
(mu_parse_ctime_date_time): Remove.
(mu_scan_datetime): New proto.
(mu_strftime): Remove const from the last arg.
(MU_DATETIME_FROM,MU_DATETIME_IMAP)
(MU_DATETIME_IMAP_SEARCH,MU_DATETIME_INTERNALDATE): New defines.
* libmailutils/base/strftime.c: New file.
* libmailutils/base/Makefile.am (libbase_la_SOURCES): Add strftime.c.
* libmailutils/base/date.c (mu_scan_datetime): New function.
* libmailutils/base/mutil.c (mu_strftime): Remove.
* libmailutils/tests/scantime.at: New file.
* libmailutils/tests/scantime.c: New file.
* libmailutils/tests/Makefile.am (noinst_PROGRAMS): Add scantime.
(TESTSUITE_AT): Add scantime.at.
* libmailutils/tests/strftime.c (main): Call mu_set_program_name.
* libmailutils/tests/testsuite.at: Include scantime.at
* libmu_sieve/actions.c (mime_create_reason): Use mu_c_streamftime.
* imap4d/fetch.c (_frt_internaldate): Use mu_scan_datetime.
* imap4d/util.c (util_parse_internal_date): Likewise.
* libmu_scm/mu_message.c (mu-message-get-envelope-date): Likewise.
* libproto/imap/fetch.c (_date_mapper): Likewise.
* mail/from.c (hdr_date): Use mu_scan_datetime.
|
|
* include/mailutils/util.h (mu_c_streamftime): New prototype.
* libmailutils/base/date.c (mu_c_streamftime): New function.
* libmailutils/tests/.gitignore: Update.
* libmailutils/tests/strftime.at: New test script.
* libmailutils/tests/strftime.c: New test program.
* libmailutils/tests/Makefile.am (noinst_PROGRAMS): Add strftime.
(TESTSUITE_AT): Add strftime.at.
* libmailutils/tests/testsuite.at: Include strftime.at.
|
|
INTERNALDATE now includes a meaningful timezone information (it
used to return +0000).
Date searches disregard the time and timezone of the INTERNALDATE
or Date: header, as mandated by RFC 3501.
* libmailutils/base/date.c (mu_parse_ctime_date_time): In the absence
of TZ in ctime strings, return local time zone.
* imap4d/io.c (imap4d_tokbuf_getline): Kill trailing whitespace.
* imap4d/util.c (adjust_tm): New function.
(util_parse_internal_date)
(util_parse_822_date)
(util_parse_ctime_date): Take three arguments, the third one controlling
what information to return. All uses updated.
* imap4d/fetch.c (_frt_internaldate): Return meaningful timezone.
If all else fails, use local TZ.
* imap4d/imap4d.h (datetime_parse_mode): New enum.
(util_parse_internal_date)
(util_parse_822_date)
(util_parse_ctime_date): Change signature.
* imap4d/search.c (parse_simple_key)
(_header_date,cond_before,cond_on,cond_since): Use datetime_date_only mode.
* testsuite/spool/search.mbox: New file.
* testsuite/spool/DISTFILES: Add search.mbox
* imap4d/testsuite/lib/imap4d.exp (imap4d_start): New option -mbox.
* imap4d/testsuite/imap4d/search.exp: Rewrite.
* imap4d/testsuite/imap4d/create.exp: Account for TZ part in internaldate
strings, which may vary.
* imap4d/testsuite/imap4d/fetch.exp: Likewise.
* imap4d/testsuite/imap4d/list.exp: List the new mailbox.
|
|
Happy GNU year!
|
|
* libmailutils/base/mutil.c (mu_hex2ul, mu_hexstr2ul): Move to string/hexstr.c.
(mu_get_homedir, mu_get_full_path)
(mu_expand_path_pattern): Move to base/filename.c.
(mu_getcwd): Move to base/getcwd.c.
(mu_tilde_expansion): Move to base/tilde.c
(mu_cpystr): Move to string/cpystr.c.
(mu_get_host_name): Move to base/hostname.c.
(mu_set_user_email,mu_set_user_email_domain)
(mu_get_user_email_domain,mu_aget_user_email_domain)
(mu_get_user_email,mu_normalize_path): Move to base/usremail.c.
(mu_tempfile,mu_tempname): Move to base/tempfile.c.
(mu_spawnvp): Move to base/spawnvp.c.
(mu_qualify_link,mu_unroll_symlink): Move to base/symlink.c.
(mu_rfc2822_references,mu_rfc2822_msg_id)
(mu_rfc2822_in_reply_to): Move to base/msgid.c.
(mu_strcasestr): Move to string/cstrcasestr.c.
(mu_string_unfold): Move to string/unfold.c.
(mu_true_answer_p): Move to string/trueans.c.
(mu_scheme_autodetect_p): Move to base/schemeauto.c.
(mu_fd_wait): Move to base/fdwait.c.
(mu_set_default_fallback,mu_decode_filter): Move to filter/decode.c.
(__argp_base_name): Move to lib/argp_base.c.
* libmailutils/base/fdwait.c: New file.
* libmailutils/base/filename.c: New file.
* libmailutils/base/getcwd.c: New file.
* libmailutils/base/hostname.c: New file.
* libmailutils/base/msgid.c: New file.
* libmailutils/base/schemeauto.c: New file.
* libmailutils/base/spawnvp.c: New file.
* libmailutils/base/symlink.c: New file.
* libmailutils/base/tempfile.c: New file.
* libmailutils/base/tilde.c: New file.
* libmailutils/base/usremail.c: New file.
* libmailutils/base/Makefile.am: Add new files.
* libmailutils/filter/decode.c: New file.
* libmailutils/filter/Makefile.am: Add new files.
* libmailutils/string/cpystr.c: New file.
* libmailutils/string/cstrcasestr.c: New file.
* libmailutils/string/hexstr.c: New file.
* libmailutils/string/trueans.c: New file.
* libmailutils/string/unfold.c: New file.
* libmailutils/string/Makefile.am: Add new files.
* lib/argp_base.c: New file.
* lib/Makefile.am: Add new files.
* include/mailutils/io.h: Include stdarg.h
* include/mailutils/mutil.h: Rename to util.h. Reorder prototypes
and declarations in logical groups. All uses changed.
* include/mailutils/cstr.h (mu_strcasestr): New proto, moved from
include/mailutils/mutil.h.
|
|
|
|
* configure.ac (AC_CONFIG_FILES): Add libmailutils/ subdirs.
* include/mailutils/Makefile.am: Update references to libmailutils.
* po/POTFILES.in: Likewise.
* libmailutils/.gitignore: Update.
* libmailutils/Makefile.am: Use convenience libraries in subdirs.
* libmailutils/string/Makefile.am: New file.
* libmailutils/cstrcasecmp.c: Move to libmailutils/string.
* libmailutils/cstrlower.c: Likewise.
* libmailutils/cstrupper.c: Likewise.
* libmailutils/strltrim.c: Likewise.
* libmailutils/strskip.c: Likewise.
* libmailutils/stripws.c: Likewise.
* libmailutils/strrtrim.c: Likewise.
* libmailutils/asnprintf.c: Likewise.
* libmailutils/asprintf.c: Likewise.
* libmailutils/muctype.c: Likewise.
* libmailutils/vasnprintf.c: Likewise.
* libmailutils/mkfilename.c: Likewise.
* libmailutils/stream/Makefile.am: New file.
* libmailutils/dbgstream.c: Move to libmailutils/stream.
* libmailutils/file_stream.c: Likewise.
* libmailutils/fltstream.c: Likewise.
* libmailutils/iostream.c: Likewise.
* libmailutils/mapfile_stream.c: Likewise.
* libmailutils/memory_stream.c: Likewise.
* libmailutils/message_stream.c: Likewise.
* libmailutils/prog_stream.c: Likewise.
* libmailutils/rdcache_stream.c: Likewise.
* libmailutils/socket_stream.c: Likewise.
* libmailutils/stdio_stream.c: Likewise.
* libmailutils/stream.c: Likewise.
* libmailutils/stream_printf.c: Likewise.
* libmailutils/stream_vprintf.c: Likewise.
* libmailutils/streamcpy.c: Likewise.
* libmailutils/streamref.c: Likewise.
* libmailutils/tcp.c: Likewise.
* libmailutils/temp_file_stream.c: Likewise.
* libmailutils/xscript-stream.c
* libmailutils/cfg/Makefile.am: New file.
* libmailutils/cfg/.gitignore: New file.
* libmailutils/cfg_driver.c: Move to libmailutils/cfg/driver.c.
* libmailutils/cfg_format.c: Move to libmailutils/cfg/format.c.
* libmailutils/cfg_lexer.l: Move to libmailutils/cfg/lexer.l.
* libmailutils/cfg_parser.y: Move to libmailutils/cfg/parser.y.
* libmailutils/gocs.c: Move to libmailutils/cfg/gocs.c.
* libmailutils/diag/Makefile.am: New file.
* libmailutils/diag/.gitignore: New file.
* libmailutils/debug.c: Move to libmailutils/diag.
* libmailutils/diag.c: Likewise.
* libmailutils/gdebug.c: Likewise.
* libmailutils/errors: Likewise.
* libmailutils/muerrno.cin: Likewise.
* libmailutils/syslog.c: Likewise.
* libmailutils/dbgstderr.c: Likewise.
* libmailutils/dbgsyslog.c: Likewise.
* libmailutils/address/Makefile.am: New file.
* libmailutils/address.c: Move to libmailutils/address.
* libmailutils/parse822.c: Likewise.
* libmailutils/mailbox/Makefile.am: New file.
* libmailutils/mailbox.c: Move to libmailutils/mailbox.
* libmailutils/mbx_default.c: Likewise.
* libmailutils/mbxitr.c: Likewise.
* libmailutils/attribute.c: Likewise.
* libmailutils/body.c: Likewise.
* libmailutils/envelope.c: Likewise.
* libmailutils/folder.c: Likewise.
* libmailutils/hdritr.c: Likewise.
* libmailutils/header.c: Likewise.
* libmailutils/message.c: Likewise.
* libmailutils/msgscan.c: Likewise.
* libmailutils/mailer/Makefile.am: New file.
* libmailutils/mailer.c: Move to libmailutils/mailer.
* libmailutils/progmailer.c: Likewise.
* libmailutils/mime/Makefile.am: New file.
* libmailutils/attachment.c: Move to libmailutils/mime.
* libmailutils/mime.c: Likewise.
* libmailutils/mimehdr.c: Likewise.
* libmailutils/server/Makefile.am: New file.
* libmailutils/acl.c: Move to libmailutils/server.
* libmailutils/server.c: Likewise.
* libmailutils/msrv.c: Likewise.
* libmailutils/ipsrv.c: Likewise.
* libmailutils/auth/Makefile.am: New file.
* libmailutils/auth.c: Move to libmailutils/auth.
* libmailutils/mu_auth.c: Likewise.
* libmailutils/system.c: Likewise.
* libmailutils/base/Makefile.am: New file.
* libmailutils/base/.gitignore: New file.
* libmailutils/alloc.c: Move to libmailutils/base.
* libmailutils/amd.c: Likewise.
* libmailutils/argcv.c: Likewise.
* libmailutils/assoc.c: Likewise.
* libmailutils/daemon.c: Likewise.
* libmailutils/date.c: Likewise.
* libmailutils/fgetpwent.c: Likewise.
* libmailutils/freeitem.c: Likewise.
* libmailutils/getpass.c: Likewise.
* libmailutils/iterator.c: Likewise.
* libmailutils/kwd.c: Likewise.
* libmailutils/list.c: Likewise.
* libmailutils/listlist.c: Likewise.
* libmailutils/locale.c: Likewise.
* libmailutils/locker.c: Likewise.
* libmailutils/mailcap.c: Likewise.
* libmailutils/md5.c: Likewise.
* libmailutils/monitor.c: Likewise.
* libmailutils/munre.c: Likewise.
* libmailutils/mutil.c: Likewise.
* libmailutils/nls.c: Likewise.
* libmailutils/nullrec.c: Likewise.
* libmailutils/observer.c: Likewise.
* libmailutils/opool.c: Likewise.
* libmailutils/parsedate.y: Likewise.
* libmailutils/permstr.c: Likewise.
* libmailutils/property.c: Likewise.
* libmailutils/registrar.c: Likewise.
* libmailutils/refcount.c: Likewise.
* libmailutils/rfc2047.c: Likewise.
* libmailutils/sha1.c: Likewise.
* libmailutils/secret.c: Likewise.
* libmailutils/ticket.c: Likewise.
* libmailutils/url.c: Likewise.
* libmailutils/vartab.c: Likewise.
* libmailutils/version.c: Likewise.
* libmailutils/wicket.c: Likewise.
|