diff options
author | Sergey Poznyakoff <gray@gnu.org.ua> | 2009-05-25 23:52:32 +0300 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org.ua> | 2009-05-25 23:52:32 +0300 |
commit | 558a5b14c77602a3e416cd37e1e9bb4685967370 (patch) | |
tree | 1e3683960711fdd49c7da0df08a8b2623057b635 /movemail | |
parent | cbdb11e15c5c46c7e68602fde5de16bcd6ed4842 (diff) | |
download | mailutils-558a5b14c77602a3e416cd37e1e9bb4685967370.tar.gz mailutils-558a5b14c77602a3e416cd37e1e9bb4685967370.tar.bz2 |
* include/mailutils/secret.h: New file.
* include/mailutils/types.hin (mu_secret_t): New type.
* include/mailutils/auth.h (mu_ticket_destroy): Remove 2nd arg (owner).
(mu_ticket_ref, mu_ticket_unref): New functions.
(mu_ticket_set_destroy): New function.
(mu_ticket_set_pop): Remove.
(mu_ticket_get_cred, mu_ticket_set_get_cred): New functions.
(mu_ticket_get_data): Return data pointer.
(mu_ticket_set_secret, mu_ticket_set_plain): New functions.
(mu_wicket_create): Remove 2nd arg.
(mu_wicket_set_filename, mu_wicket_get_filename): Remove.
(mu_wicket_set_ticket): Remove.
(mu_wicket_get_ticket): Change proto.
(mu_wicket_set_destroy, mu_wicket_set_data)
(mu_wicket_get_data, mu_wicket_set_get_ticket): New functions.
(mu_file_wicket_create): New function.
* include/mailutils/mailutils.h: Include secret.h
[MU_COMPAT]: Remove.
* include/mailutils/url.h (mu_url_sget_passwd, mu_url_aget_passwd)
(mu_url_get_passwd)
(mu_url_get_secret): New function.
* libproto/include/auth0.h: Rewrite.
* libproto/include/imap0.h (struct _f_imap): Replace passwd with
mu_secret_t secret.
* libproto/include/url0.h (struct _mu_url): Replace passwd with
mu_secret_t secret.
(_get_passwd): Replace with _get_secret
* mailbox/secret.c: New function.
* mailbox/Makefile.am (libmailutils_la_SOURCES): Add secret.c.
* mailbox/ticket.c: Rewrite from scratch.
* mailbox/wicket.c: Rewrite from scratch.
* libproto/imap/folder.c: Rewrite using mu_secret_t.
* libproto/pop/mbox.c: Rewrite using mu_secret_t.
* libproto/mailer/prog.c, libproto/mailer/sendmail.c,
mailbox/auth.c, mailbox/url.c, movemail/movemail.c: Reflect changes
to ticket/wicket system.
* mailbox/mbx_default.c: Use new mu_wicket_t functions.
* python/libmu_py/auth.c (api_wicket_get_filename)
(api_wicket_set_filename): Remove. Not applicable any more.
* python/libmu_py/url.c (api_url_get_passwd): Temporarly
commented out.
* include/mailutils/Makefile.am (pkginclude_HEADERS): Add secret.h.
* examples/url-parse.c: Use mu_secret_t calls.
* imap4d/namespace.c: Minor changes.
* libmu_auth/pam.c: Likewise.
Diffstat (limited to 'movemail')
-rw-r--r-- | movemail/movemail.c | 33 |
1 files changed, 12 insertions, 21 deletions
diff --git a/movemail/movemail.c b/movemail/movemail.c index f3004ca90..30bfa9c74 100644 --- a/movemail/movemail.c +++ b/movemail/movemail.c @@ -1,5 +1,6 @@ /* GNU Mailutils -- a suite of utilities for electronic mail - Copyright (C) 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. + Copyright (C) 2003, 2005, 2006, 2007, 2008, + 2009 Free Software Foundation, Inc. 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 @@ -161,34 +162,24 @@ lock_mailbox (mu_mailbox_t mbox) } -/* A password ticket: returns the cleantext password. */ -void -password_destroy (mu_ticket_t t) -{ - char *p = mu_ticket_get_owner (t); - free (p); -} - -int -password_pop (mu_ticket_t t, mu_url_t u, const char *challenge, char **ppwd) -{ - char *p = mu_ticket_get_owner (t); - *ppwd = strdup (p); - return 0; -} - void attach_passwd_ticket (mu_mailbox_t mbx, char *passwd) { mu_folder_t folder = NULL; mu_authority_t auth = NULL; - char *p = strdup (passwd); + mu_secret_t secret; mu_ticket_t t; int rc; + + rc = mu_secret_create (&secret, passwd, strlen (passwd)); + if (rc) + { + mu_error ("mu_secret_create: %s", mu_strerror (rc)); + exit (1); + } - mu_ticket_create (&t, p); - mu_ticket_set_destroy (t, password_destroy, p); - mu_ticket_set_pop (t, password_pop, p); + mu_ticket_create (&t, NULL); + mu_ticket_set_secret (t, secret); if ((rc = mu_mailbox_get_folder (mbx, &folder))) die (mbx, _("mu_mailbox_get_folder failed"), rc); |