1. 26 Jun, 2019 1 commit
    • Peter Bloomfield's avatar
      address: rename add to append · 95f00e88
      Peter Bloomfield authored
      to make sure that addrs are in the same order as in the
      address-book, for address-books that support multiple addrs per
      address.
      
      * libbalsa/address-book-extern.c (lbe_load_cb):
      * libbalsa/address-book-gpe.c (gpe_read_attr):
      * libbalsa/address-book-ldap.c
      (libbalsa_address_book_ldap_get_address):
      * libbalsa/address-book-ldif.c (address_new_prefill):
      * libbalsa/address-book-rubrica.c (extract_net):
      * libbalsa/address-book-vcard.c
      (libbalsa_address_book_vcard_parse_address):
      * libbalsa/address.c (libbalsa_address_append_addr):
      * libbalsa/address.h:
      * libbalsa/rfc2445.c (cal_address_2445_to_lbaddress):
      * libbalsa/rfc6350.c (rfc6350_eval_line):
      * src/store-address.c (store_address_add_address):
      95f00e88
  2. 24 Jun, 2019 2 commits
    • Peter Bloomfield's avatar
      address: Remove libbalsa_address_get_addr_list() · 7d5c5f08
      Peter Bloomfield authored
      Second and final step in keeping address->addr_list private.
      
      * libbalsa/address.c (libbalsa_address_get_n_addrs),
      (libbalsa_address_get_nth_addr): new functions to provide access
        to the addr-list;
      * libbalsa/address-book-extern.c
      (libbalsa_address_book_externq_add_address):
      * libbalsa/address-book-gpe.c (gpe_read_address):
      * libbalsa/address-book-ldif.c (lbab_ldif_write_addresses):
      * libbalsa/address-book-osmo.c
      (libbalsa_address_book_osmo_alias_complete):
      * libbalsa/address-book-rubrica.c (lbab_rubrica_load_xml),
      (lbab_insert_address_node), (extract_cards), (extract_net):
      * libbalsa/address-book-text.c (lbab_text_load_file):
      * libbalsa/address-book-vcard.c (lbab_vcard_write_addresses):
      * libbalsa/address.h:
      * libbalsa/rfc6350.c (rfc6350_parse_from_stream):
      * src/ab-main.c (bab_load_cb):
      * src/ab-window.c (balsa_ab_window_load_cb): Use them.
      7d5c5f08
    • Peter Bloomfield's avatar
      address: Remove libbalsa_address_set_addr_list() · dbb3e04f
      Peter Bloomfield authored
      Step 1 in keeping address->addr_list private.
      
      * libbalsa/address-book-ldif.c (address_new_prefill): use
      libbalsa_address_add_addr() instead;
      * libbalsa/address-book-rubrica.c (extract_cards),
      (extract_net): ditto;
      * libbalsa/address-book-vcard.c
      (libbalsa_address_book_vcard_parse_address): ditto;
      * libbalsa/address.c: remove it;
      * libbalsa/address.h: ditto.
      dbb3e04f
  3. 23 Jun, 2019 4 commits
    • Peter Bloomfield's avatar
      Address edit widget: cosmetics · 6e43475a
      Peter Bloomfield authored
      * libbalsa/address.c (lba_addr_list_widget): put the GtkTreeView
        in a GtkFrame;
        (libbalsa_address_set_edit_entries),
        (libbalsa_address_get_edit_widget),
        (libbalsa_address_new_from_edit_entries): use gtk_bin_get_child()
        to get the GtkTreeView from the GtkFrame.
      6e43475a
    • Peter Bloomfield's avatar
      address-book-rubrica: Do not crash on bad card · 8624ab42
      Peter Bloomfield authored
      Do not crash if a card has multiple "Net" elements
      
      * libbalsa/address-book-rubrica.c (extract_cards): Call
        libbalsa_address_set_addr_list() only once, even when a card has
        multiple "Net" elements.
      
      The parser seems to expect only a single "Net" element, possibly
      containing more than one "Uri" element. If there are more than one, it
      calls libbalsa_address_set_addr_list() more than once with the same
      list, which leads to a use-after-free. This patch simply collects all
      e-mail addresses from all "Net" elements and calls
      libbalsa_address_set_addr_list() once.
      8624ab42
    • Peter Bloomfield's avatar
      Revert 156e9fd8 · 29b18103
      Peter Bloomfield authored
      There's a better fix, to follow…
      29b18103
    • Peter Bloomfield's avatar
      address-book-rubrica: Do not crash on bad card · 156e9fd8
      Peter Bloomfield authored
      Do not crash if a card has multiple "Net" sections.
      
      * libbalsa/address-book-rubrica.c (extract_cards): Ignore all
        but the first non-empty "Net" section.
      
      If we call libbalsa_address_set_addr_list() and then call it again with
      either the same list or an extended list, we free all the e-mail
      addresses from the first call, and then free the list before setting it.
      Only bad things can follow!
      156e9fd8
  4. 22 Jun, 2019 4 commits
  5. 19 Jun, 2019 1 commit
  6. 18 Jun, 2019 1 commit
  7. 16 Jun, 2019 1 commit
  8. 13 Jun, 2019 3 commits
  9. 12 Jun, 2019 2 commits
    • Peter Bloomfield's avatar
      gmime-gpgme-signature: Fix the build · fc8b695c
      Peter Bloomfield authored
      gpgme-signature: Build with -Wignored-qualifiers
      
      libbalsa/gmime-gpgme-signature.[ch]: In
      "const gpgme_key_t g_mime_gpgme_sigstat_key(…)", the "const" qualifier is
      ignored; drop it.
      
      Because gpgme_key_t is defined by
      
      typedef struct _gpgme_key *gpgme_key_t;
      
      it cannot be usefully constified. If it had been defined by
      
      typedef struct _gpgme_key gpgme_key_t;
      
      then "const gpgme_key_t *key" would have given read-only access to the
      key. But as it is, "const gpgme_key_t key" defines a variable to which
      no key can be assigned!
      fc8b695c
    • Peter Bloomfield's avatar
      meson.build: add -Wignored-qualifiers · 8bbf6eba
      Peter Bloomfield authored
      Add -Wignored-qualifiers to the extra warnings when building from git.
      8bbf6eba
  10. 11 Jun, 2019 1 commit
  11. 10 Jun, 2019 6 commits
  12. 09 Jun, 2019 2 commits
    • Piotr Drąg's avatar
      Update Polish translation · 9a3814a9
      Piotr Drąg authored
      9a3814a9
    • Peter Bloomfield's avatar
      Declare LibBalsaVfs final · 933d1955
      Peter Bloomfield authored
      Use G_DECLARE_FINAL_TYPE to declare LibBalsaVfs
      
      Make the object private, and move the members of
      LibBalsaVfsPriv into LibBalsaVfs; as a final
      type, it does not need a private struct.
      
      * libbalsa/files.c (libbalsa_icon_finder):
      * libbalsa/libbalsa-vfs.c (libbalsa_vfs_class_init),
        (libbalsa_vfs_init), (libbalsa_vfs_finalize),
        (libbalsa_vfs_new_from_uri), (libbalsa_vfs_append),
        (libbalsa_vfs_dir_append), (libbalsa_vfs_get_folder),
        (libbalsa_vfs_get_uri), (libbalsa_vfs_get_uri_utf8),
        (libbalsa_vfs_get_basename_utf8), (libbalsa_vfs_get_mime_type),
        (libbalsa_vfs_get_charset), (libbalsa_vfs_get_text_attr),
        (libbalsa_vfs_get_size), (libbalsa_vfs_create_stream),
        (libbalsa_vfs_file_exists), (libbalsa_vfs_is_regular_file),
        (libbalsa_vfs_file_unlink), (libbalsa_vfs_launch_app),
        (libbalsa_vfs_launch_app_for_body), (gio_add_vfs_menu_item),
        (libbalsa_vfs_fill_menu_by_content_type),
        (libbalsa_vfs_mime_button):
      * libbalsa/libbalsa-vfs.h:
      933d1955
  13. 08 Jun, 2019 4 commits
    • Peter Bloomfield's avatar
      Declare LibBalsaServerCfg final · 799277e9
      Peter Bloomfield authored
      Use G_DECLARE_FINAL_TYPE to declare LibBalsaServerCfg
      
      Make the object private, and move the members of
      LibBalsaServerCfgPrivate into LibBalsaServerCfg; as a final
      type, it does not need a private struct.
      
      * libbalsa/server-config.c (libbalsa_server_cfg_new),
        (libbalsa_server_cfg_valid), (libbalsa_server_cfg_add_check),
        (libbalsa_server_cfg_add_entry), (libbalsa_server_cfg_add_item),
        (libbalsa_server_cfg_add_row), (libbalsa_server_cfg_get_name),
        (libbalsa_server_cfg_assign_server), (libbalsa_server_cfg_init),
        (on_server_cfg_changed):
      * libbalsa/server-config.h:
      799277e9
    • Peter Bloomfield's avatar
      Declare LibBalsaSmtpServer final · cf459eb1
      Peter Bloomfield authored
      Use G_DECLARE_FINAL_TYPE to declare LibBalsaSmtpServer
      
      The object was already private.
      
      * libbalsa/smtp-server.c (libbalsa_smtp_server_finalize),
      (libbalsa_smtp_server_class_init), (libbalsa_smtp_server_init):
      * libbalsa/smtp-server.h:
      cf459eb1
    • Peter Bloomfield's avatar
      Declare LibBalsaImapServer final · 20494f10
      Peter Bloomfield authored
      Use G_DECLARE_FINAL_TYPE to declare LibBalsaImapServer
      
      The object was already private.
      
      * libbalsa/imap-server.c (libbalsa_imap_server_set_username),
      (libbalsa_imap_server_set_host), (libbalsa_imap_server_class_init),
      (libbalsa_imap_server_finalize):
      * libbalsa/imap-server.h:
      20494f10
    • Peter Bloomfield's avatar
      Declare LibBalsaServer derivable · 74c669c2
      Peter Bloomfield authored
      Use G_DECLARE_DERIVABLE_TYPE to declare LibBalsaServer
      and provide and use the necessary getters and setters.
      
      * libbalsa/folder-scanners.c (libbalsa_scanner_imap_tree):
      * libbalsa/imap-server.c (libbalsa_imap_server_set_username),
      (libbalsa_imap_server_set_host), (libbalsa_imap_server_init),
      (is_info_cb), (lb_imap_server_info_new),
      (libbalsa_imap_server_new_from_config), (handle_connection_error),
      (libbalsa_imap_server_get_handle),
      (libbalsa_imap_server_get_handle_with_user),
      (libbalsa_imap_server_subscriptions):
      * libbalsa/mailbox_imap.c (get_header_cache_path),
      (get_cache_name_pair), (libbalsa_mailbox_imap_reconnect),
      (libbalsa_imap_url), (libbalsa_mailbox_imap_add_messages),
      (libbalsa_mailbox_imap_messages_copy):
      * libbalsa/mailbox_pop3.c (libbalsa_mailbox_pop3_init),
      (libbalsa_mailbox_pop3_startup), (update_msg_list),
      (libbalsa_mailbox_pop3_check):
      * libbalsa/send.c (lbs_check_reachable_cb),
      (lbs_process_queue_init_session):
      * libbalsa/server-config.c (libbalsa_server_cfg_new),
      (libbalsa_server_cfg_assign_server), (server_cfg_security_widget):
      * libbalsa/server.c (libbalsa_server_class_init),
      (libbalsa_server_init), (libbalsa_server_finalize),
      (libbalsa_server_set_password), (lbs_get_password),
      (libbalsa_server_real_set_username),
      (libbalsa_server_real_set_host),
      (libbalsa_server_load_security_config), (store_password_libsecret),
      (load_password_libsecret), (erase_password_libsecret),
      (libbalsa_server_load_config), (libbalsa_server_save_config),
      (libbalsa_server_get_auth), (libbalsa_server_get_cert_pass),
      (libbalsa_server_test_can_reach_full),
      (libbalsa_server_test_can_reach), (libbalsa_server_get_host),
      (libbalsa_server_get_user), (libbalsa_server_get_cert_file),
      (libbalsa_server_get_protocol), (libbalsa_server_get_password),
      (libbalsa_server_get_cert_passphrase),
      (libbalsa_server_get_security),
      (libbalsa_server_get_try_anonymous),
      (libbalsa_server_get_client_cert),
      (libbalsa_server_get_remember_password),
      (libbalsa_server_get_remember_cert_passphrase),
      (libbalsa_server_set_protocol), (libbalsa_server_set_cert_file),
      (libbalsa_server_set_security),
      (libbalsa_server_set_try_anonymous),
      (libbalsa_server_set_remember_password),
      (libbalsa_server_set_client_cert),
      (libbalsa_server_set_remember_cert_passphrase):
      * libbalsa/server.h:
      * libbalsa/smtp-server.c (libbalsa_smtp_server_init),
      74c669c2
  14. 06 Jun, 2019 6 commits
  15. 05 Jun, 2019 2 commits