Add support for password hash versioning
authorMichael Marley <michael@michaelmarley.com>
Sat, 7 Feb 2015 20:40:23 +0000 (15:40 -0500)
committerMichael Marley <michael@michaelmarley.com>
Sun, 8 Feb 2015 13:55:58 +0000 (08:55 -0500)
commit5924533c6d0f9777d38c01ed7e1510a55db2b876
tree7dcea231d05a7a5773986e2fe759cad1bee84642
parent53211b31038dac1726bb768dce4ae4dda1090cd3
Add support for password hash versioning

Previously, Quassel would always use an unsalted SHA1 hash.  This
patch introduces a version field for the password, allowing for
using a better hash.  (No new hash is added yet.)  Users will be
automatically upgraded to the newest hash whenever they login or
change their passwords.

This is implemented by adding a new integer field to hold the hash
version in the DB.  Additionally, the password field in PostgreSQL
has been expanded to a TEXT field, allowing larger hash values to
be stored in the future.  The password hashing code has also been
refactored to make it easier to introduce new hashes without
fooling around in the DB driver code.
183 files changed:
src/core/SQL/PostgreSQL/16/insert_quasseluser.sql [deleted file]
src/core/SQL/PostgreSQL/16/select_authuser.sql [deleted file]
src/core/SQL/PostgreSQL/16/update_userpassword.sql [deleted file]
src/core/SQL/PostgreSQL/17/delete_backlog_by_uid.sql [moved from src/core/SQL/PostgreSQL/16/delete_backlog_by_uid.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/delete_backlog_for_buffer.sql [moved from src/core/SQL/PostgreSQL/16/delete_backlog_for_buffer.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/delete_backlog_for_network.sql [moved from src/core/SQL/PostgreSQL/16/delete_backlog_for_network.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/delete_buffer_for_bufferid.sql [moved from src/core/SQL/PostgreSQL/16/delete_buffer_for_bufferid.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/delete_buffers_by_uid.sql [moved from src/core/SQL/PostgreSQL/16/delete_buffers_by_uid.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/delete_buffers_for_network.sql [moved from src/core/SQL/PostgreSQL/16/delete_buffers_for_network.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/delete_identity.sql [moved from src/core/SQL/PostgreSQL/16/delete_identity.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/delete_ircservers_for_network.sql [moved from src/core/SQL/PostgreSQL/16/delete_ircservers_for_network.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/delete_network.sql [moved from src/core/SQL/PostgreSQL/16/delete_network.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/delete_networks_by_uid.sql [moved from src/core/SQL/PostgreSQL/16/delete_networks_by_uid.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/delete_nicks.sql [moved from src/core/SQL/PostgreSQL/16/delete_nicks.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/delete_quasseluser.sql [moved from src/core/SQL/PostgreSQL/16/delete_quasseluser.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/insert_buffer.sql [moved from src/core/SQL/PostgreSQL/16/insert_buffer.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/insert_identity.sql [moved from src/core/SQL/PostgreSQL/16/insert_identity.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/insert_message.sql [moved from src/core/SQL/PostgreSQL/16/insert_message.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/insert_network.sql [moved from src/core/SQL/PostgreSQL/16/insert_network.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/insert_nick.sql [moved from src/core/SQL/PostgreSQL/16/insert_nick.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/insert_quasseluser.sql [new file with mode: 0644]
src/core/SQL/PostgreSQL/17/insert_sender.sql [moved from src/core/SQL/PostgreSQL/16/insert_sender.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/insert_server.sql [moved from src/core/SQL/PostgreSQL/16/insert_server.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/insert_user_setting.sql [moved from src/core/SQL/PostgreSQL/16/insert_user_setting.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/migrate_write_backlog.sql [moved from src/core/SQL/PostgreSQL/16/migrate_write_backlog.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/migrate_write_buffer.sql [moved from src/core/SQL/PostgreSQL/16/migrate_write_buffer.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/migrate_write_identity.sql [moved from src/core/SQL/PostgreSQL/16/migrate_write_identity.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/migrate_write_identity_nick.sql [moved from src/core/SQL/PostgreSQL/16/migrate_write_identity_nick.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/migrate_write_ircserver.sql [moved from src/core/SQL/PostgreSQL/16/migrate_write_ircserver.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/migrate_write_network.sql [moved from src/core/SQL/PostgreSQL/16/migrate_write_network.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/migrate_write_quasseluser.sql [moved from src/core/SQL/PostgreSQL/16/migrate_write_quasseluser.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/migrate_write_sender.sql [moved from src/core/SQL/PostgreSQL/16/migrate_write_sender.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/migrate_write_usersetting.sql [moved from src/core/SQL/PostgreSQL/16/migrate_write_usersetting.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_authuser.sql [new file with mode: 0644]
src/core/SQL/PostgreSQL/17/select_bufferByName.sql [moved from src/core/SQL/PostgreSQL/16/select_bufferByName.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_bufferExists.sql [moved from src/core/SQL/PostgreSQL/16/select_bufferExists.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_buffer_by_id.sql [moved from src/core/SQL/PostgreSQL/16/select_buffer_by_id.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_buffer_lastseen_messages.sql [moved from src/core/SQL/PostgreSQL/16/select_buffer_lastseen_messages.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_buffer_markerlinemsgids.sql [moved from src/core/SQL/PostgreSQL/16/select_buffer_markerlinemsgids.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_buffers.sql [moved from src/core/SQL/PostgreSQL/16/select_buffers.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_buffers_for_network.sql [moved from src/core/SQL/PostgreSQL/16/select_buffers_for_network.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_checkidentity.sql [moved from src/core/SQL/PostgreSQL/16/select_checkidentity.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_connected_networks.sql [moved from src/core/SQL/PostgreSQL/16/select_connected_networks.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_identities.sql [moved from src/core/SQL/PostgreSQL/16/select_identities.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_internaluser.sql [moved from src/core/SQL/PostgreSQL/16/select_internaluser.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_messages.sql [moved from src/core/SQL/PostgreSQL/16/select_messages.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_messagesAll.sql [moved from src/core/SQL/PostgreSQL/16/select_messagesAll.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_messagesAllNew.sql [moved from src/core/SQL/PostgreSQL/16/select_messagesAllNew.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_messagesNewerThan.sql [moved from src/core/SQL/PostgreSQL/16/select_messagesNewerThan.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_messagesRange.sql [moved from src/core/SQL/PostgreSQL/16/select_messagesRange.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_networkExists.sql [moved from src/core/SQL/PostgreSQL/16/select_networkExists.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_network_awaymsg.sql [moved from src/core/SQL/PostgreSQL/16/select_network_awaymsg.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_network_usermode.sql [moved from src/core/SQL/PostgreSQL/16/select_network_usermode.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_networks_for_user.sql [moved from src/core/SQL/PostgreSQL/16/select_networks_for_user.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_nicks.sql [moved from src/core/SQL/PostgreSQL/16/select_nicks.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_persistent_channels.sql [moved from src/core/SQL/PostgreSQL/16/select_persistent_channels.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_senderid.sql [moved from src/core/SQL/PostgreSQL/16/select_senderid.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_servers_for_network.sql [moved from src/core/SQL/PostgreSQL/16/select_servers_for_network.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_user_setting.sql [moved from src/core/SQL/PostgreSQL/16/select_user_setting.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/select_userid.sql [moved from src/core/SQL/PostgreSQL/16/select_userid.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/setup_000_quasseluser.sql [moved from src/core/SQL/PostgreSQL/16/setup_000_quasseluser.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/setup_010_sender.sql [moved from src/core/SQL/PostgreSQL/16/setup_010_sender.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/setup_020_identity.sql [moved from src/core/SQL/PostgreSQL/16/setup_020_identity.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/setup_030_identity_nick.sql [moved from src/core/SQL/PostgreSQL/16/setup_030_identity_nick.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/setup_040_network.sql [moved from src/core/SQL/PostgreSQL/16/setup_040_network.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/setup_050_buffer.sql [moved from src/core/SQL/PostgreSQL/16/setup_050_buffer.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/setup_060_backlog.sql [moved from src/core/SQL/PostgreSQL/16/setup_060_backlog.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/setup_070_coreinfo.sql [moved from src/core/SQL/PostgreSQL/16/setup_070_coreinfo.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/setup_080_ircservers.sql [moved from src/core/SQL/PostgreSQL/16/setup_080_ircservers.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/setup_090_backlog_idx.sql [moved from src/core/SQL/PostgreSQL/16/setup_090_backlog_idx.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/setup_100_user_setting.sql [moved from src/core/SQL/PostgreSQL/16/setup_100_user_setting.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/setup_110_alter_sender_seq.sql [moved from src/core/SQL/PostgreSQL/16/setup_110_alter_sender_seq.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/setup_120_alter_messageid_seq.sql [moved from src/core/SQL/PostgreSQL/16/setup_120_alter_messageid_seq.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/update_backlog_bufferid.sql [moved from src/core/SQL/PostgreSQL/16/update_backlog_bufferid.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/update_buffer_lastseen.sql [moved from src/core/SQL/PostgreSQL/16/update_buffer_lastseen.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/update_buffer_markerlinemsgid.sql [moved from src/core/SQL/PostgreSQL/16/update_buffer_markerlinemsgid.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/update_buffer_name.sql [moved from src/core/SQL/PostgreSQL/16/update_buffer_name.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/update_buffer_persistent_channel.sql [moved from src/core/SQL/PostgreSQL/16/update_buffer_persistent_channel.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/update_buffer_set_channel_key.sql [moved from src/core/SQL/PostgreSQL/16/update_buffer_set_channel_key.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/update_identity.sql [moved from src/core/SQL/PostgreSQL/16/update_identity.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/update_network.sql [moved from src/core/SQL/PostgreSQL/16/update_network.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/update_network_connected.sql [moved from src/core/SQL/PostgreSQL/16/update_network_connected.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/update_network_set_awaymsg.sql [moved from src/core/SQL/PostgreSQL/16/update_network_set_awaymsg.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/update_network_set_usermode.sql [moved from src/core/SQL/PostgreSQL/16/update_network_set_usermode.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/update_user_setting.sql [moved from src/core/SQL/PostgreSQL/16/update_user_setting.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/update_username.sql [moved from src/core/SQL/PostgreSQL/16/update_username.sql with 100% similarity]
src/core/SQL/PostgreSQL/17/update_userpassword.sql [new file with mode: 0644]
src/core/SQL/PostgreSQL/17/upgrade_000_alter_quasseluser_add_passwordversion.sql [new file with mode: 0644]
src/core/SQL/SQLite/17/insert_quasseluser.sql [deleted file]
src/core/SQL/SQLite/17/select_authuser.sql [deleted file]
src/core/SQL/SQLite/17/update_userpassword.sql [deleted file]
src/core/SQL/SQLite/18/delete_backlog_by_uid.sql [moved from src/core/SQL/SQLite/17/delete_backlog_by_uid.sql with 100% similarity]
src/core/SQL/SQLite/18/delete_backlog_for_buffer.sql [moved from src/core/SQL/SQLite/17/delete_backlog_for_buffer.sql with 100% similarity]
src/core/SQL/SQLite/18/delete_backlog_for_network.sql [moved from src/core/SQL/SQLite/17/delete_backlog_for_network.sql with 100% similarity]
src/core/SQL/SQLite/18/delete_buffer_for_bufferid.sql [moved from src/core/SQL/SQLite/17/delete_buffer_for_bufferid.sql with 100% similarity]
src/core/SQL/SQLite/18/delete_buffers_by_uid.sql [moved from src/core/SQL/SQLite/17/delete_buffers_by_uid.sql with 100% similarity]
src/core/SQL/SQLite/18/delete_buffers_for_network.sql [moved from src/core/SQL/SQLite/17/delete_buffers_for_network.sql with 100% similarity]
src/core/SQL/SQLite/18/delete_identity.sql [moved from src/core/SQL/SQLite/17/delete_identity.sql with 100% similarity]
src/core/SQL/SQLite/18/delete_ircservers_for_network.sql [moved from src/core/SQL/SQLite/17/delete_ircservers_for_network.sql with 100% similarity]
src/core/SQL/SQLite/18/delete_network.sql [moved from src/core/SQL/SQLite/17/delete_network.sql with 100% similarity]
src/core/SQL/SQLite/18/delete_networks_by_uid.sql [moved from src/core/SQL/SQLite/17/delete_networks_by_uid.sql with 100% similarity]
src/core/SQL/SQLite/18/delete_nicks.sql [moved from src/core/SQL/SQLite/17/delete_nicks.sql with 100% similarity]
src/core/SQL/SQLite/18/delete_quasseluser.sql [moved from src/core/SQL/SQLite/17/delete_quasseluser.sql with 100% similarity]
src/core/SQL/SQLite/18/insert_buffer.sql [moved from src/core/SQL/SQLite/17/insert_buffer.sql with 100% similarity]
src/core/SQL/SQLite/18/insert_identity.sql [moved from src/core/SQL/SQLite/17/insert_identity.sql with 100% similarity]
src/core/SQL/SQLite/18/insert_message.sql [moved from src/core/SQL/SQLite/17/insert_message.sql with 100% similarity]
src/core/SQL/SQLite/18/insert_network.sql [moved from src/core/SQL/SQLite/17/insert_network.sql with 100% similarity]
src/core/SQL/SQLite/18/insert_nick.sql [moved from src/core/SQL/SQLite/17/insert_nick.sql with 100% similarity]
src/core/SQL/SQLite/18/insert_quasseluser.sql [new file with mode: 0644]
src/core/SQL/SQLite/18/insert_sender.sql [moved from src/core/SQL/SQLite/17/insert_sender.sql with 100% similarity]
src/core/SQL/SQLite/18/insert_server.sql [moved from src/core/SQL/SQLite/17/insert_server.sql with 100% similarity]
src/core/SQL/SQLite/18/insert_user_setting.sql [moved from src/core/SQL/SQLite/17/insert_user_setting.sql with 100% similarity]
src/core/SQL/SQLite/18/migrate_read_backlog.sql [moved from src/core/SQL/SQLite/17/migrate_read_backlog.sql with 100% similarity]
src/core/SQL/SQLite/18/migrate_read_buffer.sql [moved from src/core/SQL/SQLite/17/migrate_read_buffer.sql with 100% similarity]
src/core/SQL/SQLite/18/migrate_read_identity.sql [moved from src/core/SQL/SQLite/17/migrate_read_identity.sql with 100% similarity]
src/core/SQL/SQLite/18/migrate_read_identity_nick.sql [moved from src/core/SQL/SQLite/17/migrate_read_identity_nick.sql with 100% similarity]
src/core/SQL/SQLite/18/migrate_read_ircserver.sql [moved from src/core/SQL/SQLite/17/migrate_read_ircserver.sql with 100% similarity]
src/core/SQL/SQLite/18/migrate_read_network.sql [moved from src/core/SQL/SQLite/17/migrate_read_network.sql with 100% similarity]
src/core/SQL/SQLite/18/migrate_read_quasseluser.sql [moved from src/core/SQL/SQLite/17/migrate_read_quasseluser.sql with 100% similarity]
src/core/SQL/SQLite/18/migrate_read_sender.sql [moved from src/core/SQL/SQLite/17/migrate_read_sender.sql with 100% similarity]
src/core/SQL/SQLite/18/migrate_read_usersetting.sql [moved from src/core/SQL/SQLite/17/migrate_read_usersetting.sql with 100% similarity]
src/core/SQL/SQLite/18/select_authuser.sql [new file with mode: 0644]
src/core/SQL/SQLite/18/select_bufferByName.sql [moved from src/core/SQL/SQLite/17/select_bufferByName.sql with 100% similarity]
src/core/SQL/SQLite/18/select_bufferExists.sql [moved from src/core/SQL/SQLite/17/select_bufferExists.sql with 100% similarity]
src/core/SQL/SQLite/18/select_buffer_by_id.sql [moved from src/core/SQL/SQLite/17/select_buffer_by_id.sql with 100% similarity]
src/core/SQL/SQLite/18/select_buffer_lastseen_messages.sql [moved from src/core/SQL/SQLite/17/select_buffer_lastseen_messages.sql with 100% similarity]
src/core/SQL/SQLite/18/select_buffer_markerlinemsgids.sql [moved from src/core/SQL/SQLite/17/select_buffer_markerlinemsgids.sql with 100% similarity]
src/core/SQL/SQLite/18/select_buffers.sql [moved from src/core/SQL/SQLite/17/select_buffers.sql with 100% similarity]
src/core/SQL/SQLite/18/select_buffers_for_merge.sql [moved from src/core/SQL/SQLite/17/select_buffers_for_merge.sql with 100% similarity]
src/core/SQL/SQLite/18/select_buffers_for_network.sql [moved from src/core/SQL/SQLite/17/select_buffers_for_network.sql with 100% similarity]
src/core/SQL/SQLite/18/select_checkidentity.sql [moved from src/core/SQL/SQLite/17/select_checkidentity.sql with 100% similarity]
src/core/SQL/SQLite/18/select_connected_networks.sql [moved from src/core/SQL/SQLite/17/select_connected_networks.sql with 100% similarity]
src/core/SQL/SQLite/18/select_identities.sql [moved from src/core/SQL/SQLite/17/select_identities.sql with 100% similarity]
src/core/SQL/SQLite/18/select_internaluser.sql [moved from src/core/SQL/SQLite/17/select_internaluser.sql with 100% similarity]
src/core/SQL/SQLite/18/select_messages.sql [moved from src/core/SQL/SQLite/17/select_messages.sql with 100% similarity]
src/core/SQL/SQLite/18/select_messagesAll.sql [moved from src/core/SQL/SQLite/17/select_messagesAll.sql with 100% similarity]
src/core/SQL/SQLite/18/select_messagesAllNew.sql [moved from src/core/SQL/SQLite/17/select_messagesAllNew.sql with 100% similarity]
src/core/SQL/SQLite/18/select_messagesNewerThan.sql [moved from src/core/SQL/SQLite/17/select_messagesNewerThan.sql with 100% similarity]
src/core/SQL/SQLite/18/select_messagesNewestK.sql [moved from src/core/SQL/SQLite/17/select_messagesNewestK.sql with 100% similarity]
src/core/SQL/SQLite/18/select_networkExists.sql [moved from src/core/SQL/SQLite/17/select_networkExists.sql with 100% similarity]
src/core/SQL/SQLite/18/select_network_awaymsg.sql [moved from src/core/SQL/SQLite/17/select_network_awaymsg.sql with 100% similarity]
src/core/SQL/SQLite/18/select_network_usermode.sql [moved from src/core/SQL/SQLite/17/select_network_usermode.sql with 100% similarity]
src/core/SQL/SQLite/18/select_networks_for_user.sql [moved from src/core/SQL/SQLite/17/select_networks_for_user.sql with 100% similarity]
src/core/SQL/SQLite/18/select_nicks.sql [moved from src/core/SQL/SQLite/17/select_nicks.sql with 100% similarity]
src/core/SQL/SQLite/18/select_persistent_channels.sql [moved from src/core/SQL/SQLite/17/select_persistent_channels.sql with 100% similarity]
src/core/SQL/SQLite/18/select_servers_for_network.sql [moved from src/core/SQL/SQLite/17/select_servers_for_network.sql with 100% similarity]
src/core/SQL/SQLite/18/select_user_setting.sql [moved from src/core/SQL/SQLite/17/select_user_setting.sql with 100% similarity]
src/core/SQL/SQLite/18/select_userid.sql [moved from src/core/SQL/SQLite/17/select_userid.sql with 100% similarity]
src/core/SQL/SQLite/18/setup_000_quasseluser.sql [moved from src/core/SQL/SQLite/17/setup_000_quasseluser.sql with 100% similarity]
src/core/SQL/SQLite/18/setup_010_sender.sql [moved from src/core/SQL/SQLite/17/setup_010_sender.sql with 100% similarity]
src/core/SQL/SQLite/18/setup_020_network.sql [moved from src/core/SQL/SQLite/17/setup_020_network.sql with 100% similarity]
src/core/SQL/SQLite/18/setup_030_buffer.sql [moved from src/core/SQL/SQLite/17/setup_030_buffer.sql with 100% similarity]
src/core/SQL/SQLite/18/setup_040_buffer_idx.sql [moved from src/core/SQL/SQLite/17/setup_040_buffer_idx.sql with 100% similarity]
src/core/SQL/SQLite/18/setup_050_buffer_cname_idx.sql [moved from src/core/SQL/SQLite/17/setup_050_buffer_cname_idx.sql with 100% similarity]
src/core/SQL/SQLite/18/setup_060_backlog.sql [moved from src/core/SQL/SQLite/17/setup_060_backlog.sql with 100% similarity]
src/core/SQL/SQLite/18/setup_070_coreinfo.sql [moved from src/core/SQL/SQLite/17/setup_070_coreinfo.sql with 100% similarity]
src/core/SQL/SQLite/18/setup_080_ircservers.sql [moved from src/core/SQL/SQLite/17/setup_080_ircservers.sql with 100% similarity]
src/core/SQL/SQLite/18/setup_090_backlog_idx.sql [moved from src/core/SQL/SQLite/17/setup_090_backlog_idx.sql with 100% similarity]
src/core/SQL/SQLite/18/setup_100_backlog_idx2.sql [moved from src/core/SQL/SQLite/17/setup_100_backlog_idx2.sql with 100% similarity]
src/core/SQL/SQLite/18/setup_110_buffer_user_idx.sql [moved from src/core/SQL/SQLite/17/setup_110_buffer_user_idx.sql with 100% similarity]
src/core/SQL/SQLite/18/setup_120_user_setting.sql [moved from src/core/SQL/SQLite/17/setup_120_user_setting.sql with 100% similarity]
src/core/SQL/SQLite/18/setup_130_identity.sql [moved from src/core/SQL/SQLite/17/setup_130_identity.sql with 100% similarity]
src/core/SQL/SQLite/18/setup_140_identity_nick.sql [moved from src/core/SQL/SQLite/17/setup_140_identity_nick.sql with 100% similarity]
src/core/SQL/SQLite/18/update_backlog_bufferid.sql [moved from src/core/SQL/SQLite/17/update_backlog_bufferid.sql with 100% similarity]
src/core/SQL/SQLite/18/update_buffer_lastseen.sql [moved from src/core/SQL/SQLite/17/update_buffer_lastseen.sql with 100% similarity]
src/core/SQL/SQLite/18/update_buffer_markerlinemsgid.sql [moved from src/core/SQL/SQLite/17/update_buffer_markerlinemsgid.sql with 100% similarity]
src/core/SQL/SQLite/18/update_buffer_name.sql [moved from src/core/SQL/SQLite/17/update_buffer_name.sql with 100% similarity]
src/core/SQL/SQLite/18/update_buffer_persistent_channel.sql [moved from src/core/SQL/SQLite/17/update_buffer_persistent_channel.sql with 100% similarity]
src/core/SQL/SQLite/18/update_buffer_set_channel_key.sql [moved from src/core/SQL/SQLite/17/update_buffer_set_channel_key.sql with 100% similarity]
src/core/SQL/SQLite/18/update_identity.sql [moved from src/core/SQL/SQLite/17/update_identity.sql with 100% similarity]
src/core/SQL/SQLite/18/update_network.sql [moved from src/core/SQL/SQLite/17/update_network.sql with 100% similarity]
src/core/SQL/SQLite/18/update_network_connected.sql [moved from src/core/SQL/SQLite/17/update_network_connected.sql with 100% similarity]
src/core/SQL/SQLite/18/update_network_set_awaymsg.sql [moved from src/core/SQL/SQLite/17/update_network_set_awaymsg.sql with 100% similarity]
src/core/SQL/SQLite/18/update_network_set_usermode.sql [moved from src/core/SQL/SQLite/17/update_network_set_usermode.sql with 100% similarity]
src/core/SQL/SQLite/18/update_user_setting.sql [moved from src/core/SQL/SQLite/17/update_user_setting.sql with 100% similarity]
src/core/SQL/SQLite/18/update_username.sql [moved from src/core/SQL/SQLite/17/update_username.sql with 100% similarity]
src/core/SQL/SQLite/18/update_userpassword.sql [new file with mode: 0644]
src/core/SQL/SQLite/18/upgrade_000_alter_quasseluser_add_passwordversion.sql [new file with mode: 0644]
src/core/postgresqlstorage.cpp
src/core/sql.qrc
src/core/sqlitestorage.cpp
src/core/storage.cpp
src/core/storage.h