Blame view

mail/envelope.c 1.44 KB
1
/* GNU Mailutils -- a suite of utilities for electronic mail
2
   Copyright (C) 2009, 2010 Free Software Foundation, Inc.
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32

   GNU Mailutils is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
   the Free Software Foundation; either version 3, or (at your option)
   any later version.

   GNU Mailutils is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.

   You should have received a copy of the GNU General Public License
   along with GNU Mailutils.  If not, see <http://www.gnu.org/licenses/>. */

#include "mail.h"

/*
 * env[elope] [msglist]
 */

int
print_envelope (msgset_t *mspec, mu_message_t msg, void *data)
{
  int status;
  mu_envelope_t env = NULL;
  const char *sender = NULL, *date = NULL;

  status = mu_message_get_envelope (msg, &env);
  if (status)
    {
33 34
      mu_error (_("%lu: Cannot get envelope"),
		(unsigned long) mspec->msg_part[0]);
35 36 37 38 39 40
    }
  else
    {
      mu_envelope_sget_sender (env, &sender);
      mu_envelope_sget_date (env, &date);
      if (data)
41 42
	mu_printf ("%s ", (char*) data);
      mu_printf ("%s %s", sender, date);
43 44 45 46 47 48 49 50 51 52
    }
  return 0;
}

int
mail_envelope (int argc, char **argv)
{
  return util_foreach_msg (argc, argv, MSG_NODELETED|MSG_SILENT,
			   print_envelope, NULL);
}