Fix CID 1596595: Resource leak
[claws.git] / src / account.h
blobd747337c17d12b9aa2279eb4e9fe8cb559b2d9b3
1 /*
2 * Claws Mail -- a GTK based, lightweight, and fast e-mail client
3 * Copyright (C) 1999-2012 Hiroyuki Yamamoto and the Claws Mail team
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 3 of the License, or
8 * (at your option) any later version.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
20 #ifndef __ACCOUNT_H__
21 #define __ACCOUNT_H__
23 #include <glib.h>
25 #include "prefs_gtk.h"
26 #include "prefs_account.h"
27 #include "folder.h"
29 typedef gint (*AccountFunc) (PrefsAccount *ac_prefs,
30 gpointer user_data);
32 typedef struct {
33 const gchar *user;
34 const gchar *server;
35 const gchar *protocol;
36 guint16 port;
38 gchar *password;
39 } PasswordRequest;
41 #define PASSWORD_GET_HOOKLIST "password_get_hooklist"
43 extern PrefsAccount *cur_account;
45 PrefsAccount *account_get_cur_account (void);
46 void account_read_config_all (void);
47 void account_write_config_all (void);
49 GList *account_find_all_from_address (GList *ac_list,
50 const gchar *address);
51 GList *account_find_all (void);
52 PrefsAccount *account_find_from_smtp_server (const gchar *address,
53 const gchar *smtp_server);
54 PrefsAccount *account_find_from_address (const gchar *address, gboolean newsgroups_ok);
55 PrefsAccount *account_find_from_id (gint id);
56 PrefsAccount *account_find_from_item (FolderItem *item);
58 void account_set_menu_only_toolbar (void);
60 GList *account_get_list (void);
62 void account_edit_open (gpointer a, gpointer b);
63 void account_add (void);
64 void account_open (PrefsAccount *ac_prefs, gboolean called_from_acc_list);
65 void account_set_as_recv_at_get_all (PrefsAccount *ac_prefs);
66 PrefsAccount *account_get_default (void);
68 void account_set_missing_folder(void);
69 FolderItem *account_get_special_folder(PrefsAccount *ac_prefs,
70 SpecialFolderItemType type);
72 PrefsAccount *account_get_reply_account (MsgInfo *msginfo,
73 gboolean reply_autosel);
74 void account_rename_path (const gchar *old_id,
75 const gchar *new_id);
76 gchar *account_get_signature_str(PrefsAccount *account);
78 gboolean password_get(const gchar *user,
79 const gchar *server,
80 const gchar *protocol,
81 guint16 port,
82 gchar **password);
84 void account_sigsep_matchlist_create (void);
85 void account_sigsep_matchlist_delete (void);
86 gboolean account_sigsep_matchlist_str_found (const gchar *str, const gchar *format);
87 gboolean account_sigsep_matchlist_nchar_found (const gchar *str, const gchar *format);
89 #endif /* __ACCOUNT_H__ */