145 Commits

Author SHA1 Message Date
4c60093a06 Issue #1081: apply quirk for missing IDENTIFIED BY PASSWORD clause to MySQL 5.7.6+ only (MariaDB still includes it). Will still be an issue for newer MySQL versions. 2020-07-04 08:44:08 +02:00
1484f4d464 Follow code convention for names of private fields in user manager code 2020-07-04 08:09:22 +02:00
f13ddfc5dd Allow underscores in IP address wildcards of users, in conjunction with --skip-name-resolve on the server. Closes #1080 2020-07-03 12:12:03 +02:00
3eb3480e1c Get rid of global esc() function (which always refers to MainForm.ActiveConnection) and prefer the method's or unit's connection object instead 2020-05-10 13:41:15 +02:00
05d02627f3 Make TConnectionParameters.IsMySQL specific to MySQL only, and rename the grouped type checks to IsAnyMySQL, IsAnyMSSQL etc. This way the status bar now shows "MySQL", not "MySQL or MariaDB" 2020-02-22 09:06:37 +01:00
35e9d88f43 Issue #80: Safely accept empty default value for probably non existing server variable "skip_name_resolve" in user manager. 2019-07-29 08:30:48 +02:00
fcdf323086 Let TExtForm translate all strings on a form, to reduce the code in any FormCreate event 2019-07-21 20:12:13 +02:00
88a9e53f0d Remove remainders of DPI related code, and move TExtForm.AddSizeGrip procedure to property .HasSizeGrip. Uses TSizeGripXP instead of TSizeGripThemed, as this looks quite the same. 2019-07-21 19:44:05 +02:00
c31cae2060 Giving up on high DPI readiness - remove tweaks which mostly don't work as expected, and even differently on various computers. Instead, let Windows blur fonts. 2019-07-18 20:53:53 +02:00
92c8f62b85 High DPI:
* remove ParentFont flag from forms again (introduced in 9cdcd631454f6f9e999893ea89fcf502d994474c for #213). This just inherits from default Windows settings.
* instead, scale font size in InheritFont(), and move that to the new TExtForm class
* mark app with PerMonitorV2 support
2019-07-17 21:59:18 +02:00
2a91a13b42 Issue #677:
* drop workaround for application crash on WinXP, when loading newer libmariadb (see #79)
* raise TDbLib's own exception instead of baking an own one with less details. Probably helps in debugging: https://www.heidisql.com/forum.php?t=34044
* rename EDatabaseError to EDbError, to overcome naming conflict in DB unit
* load libpq.dll always with path, which should anyway work better than without it. See http://www.heidisql.com/forum.php?t=22514
2019-07-08 20:23:05 +02:00
4f9613b05c High DPI: fix growing window dimensions on each opening. Related to #378 2019-07-07 21:22:19 +02:00
8f9abb2d3c Fix unwanted enabling FModified flag in user manager dialog, when just switching the main tab to "Limitations", followed by a crash due to no focused user. Closes #493. 2019-05-26 19:24:46 +02:00
493138de1c Fix wrong check for valid length of hashed password in MySQL 8 and MariaDB. Predefined length of 0, 16 and 41 characters is only valid with mysql_native_password plugin enabled users.
See https://www.heidisql.com/forum.php?t=26945#p27188
2019-05-26 19:00:52 +02:00
cdb10d8005 Required code updates for recent VirtualTreeview update 2018-12-11 21:50:26 +01:00
78788641d1 Query limitations in privileges can live in the very first GRANT, so don't reset these when the second one doesn't contain these. Closes #305. 2018-11-26 16:17:15 +01:00
2da1c6bceb Don't wrap new password in PASSWORD() function, on newer MySQL servers. Closes #325. 2018-11-26 15:53:47 +01:00
9cdcd63145 Issue #213: Assign system or custom font once, to the application, and let all forms inherit that font, so there is no need to call InheritFont() for each form. 2018-10-25 19:24:45 +02:00
0e73a8cb92 Issue #213: activate ParentFont on remaining TLabel's, so their font scales like all others 2018-10-24 20:01:29 +02:00
3bcc6f4749 Quick fix for user@host combinations displayed as if they had no password: use password or authentication_string based on its content, use the first non-empty one. See https://www.heidisql.com/forum.php?t=22805 2018-05-01 09:55:46 +02:00
5a8a4af29a Rename helpers unit to apphelpers, to overcome a naming conflict with the FireMonkey unit FMX.Canvas.GPU.Helpers. Closes #102. 2018-01-22 19:48:17 +01:00
ade0bd3f44 Support multiple objects selected in user manager > add object. 2016-08-29 18:37:00 +00:00
0ec226ce47 Do not complain about empty password when SHOW GRANTS output does not include the IDENTIFIED BY clause on MySQL 5.7.6+. See http://www.heidisql.com/forum.php?t=21351 2016-06-06 17:57:28 +00:00
1ffe9d00ef User manager: Allow double quotes in SHOW GRANTS output, to support ANSI mode. See http://www.heidisql.com/forum.php?t=19757 2015-11-27 18:12:17 +00:00
d02f9822b3 User manager: Select "authentication_string" instead of "password" column on MySQL 5.7.6+. See http://www.heidisql.com/forum.php?t=18650 2015-06-28 10:25:29 +00:00
9fc3c2a3bc Overtake username and hashed password from old user when cloning a user. See http://www.heidisql.com/forum.php?t=8943 2014-03-30 05:31:34 +00:00
75695bc90a Revert previous commit and handle VIEWs exactly as we handle tables in user management, except for the icon in front of the privilege, which we detect so the user can distinct between tables and views. 2014-03-03 18:26:33 +00:00
9c5a53445b Support VIEW privileges in user manager. Seems that MySQL has 3 of it: DROP, SHOW VIEW, CREATE VIEW - but does not distinct the GRANT commands to those of TABLE grants. So, we distinct views from tables by watching out if there is a view with the relevant name. Fixes issue #2732. 2014-03-03 05:21:15 +00:00
e8990c6447 Clone hostname for a cloned user. See http://www.heidisql.com/forum.php?t=14681 2014-01-29 09:09:07 +00:00
b22fa249f2 Allow localhost users to be edited again with the usermanager, in skip-name-resolve mode - localhost still seems to be a special case. Fixes issue #3472. 2013-12-18 05:30:21 +00:00
c8e5121b66 Attempt to fix an 64bit-only access violation 2013-11-13 18:48:55 +00:00
6e608f157e Replace out-dated code which does not compile in 64bit mode in helpers.SetWindowSizeGrip. Use a TForm descendant in the new unit "extra_controls". Code parts taken from http://www.delphigroups.info/2/4/326787.html 2013-11-01 14:54:13 +00:00
438281fe5f Extend detection of requirement to name resolving in user manager, to allow netmasks. Also, "localhost" is no longer auto-resolved via libmysql.dll. Fixes issue #3205. 2013-05-30 06:05:44 +00:00
056322c488 Expect dots in database and table names, when parsing SHOW GRANTS results. See http://www.heidisql.com/forum.php?t=12640 2013-05-11 05:15:11 +00:00
b29e24b5d4 Do not complain about an empty password when having modified anything but the password of an existing user. 2012-12-08 21:36:33 +00:00
d52d304361 Adjust width of even some more controls so they fit to the translated captions (at least in German). See https://www.transifex.com/messages/view/22056/ 2012-12-08 10:56:58 +00:00
9d8b4cd83a Make more inline strings translatable. 2012-11-28 23:27:31 +00:00
f96288fce9 Translate string variables and literals in .pas files. TODO: translate constants. 2012-11-26 05:44:01 +00:00
ca1d94c87b Issue #557: Include gnugettext.pas from https://dxgettext.svn.sourceforge.net/svnroot/dxgettext/trunk/dxgettext/sample/ . And add basic code to all FormCreate events to translate their components in the future. 2012-11-10 14:28:44 +00:00
f54c3634a6 Update blank password warning in user manager after updating user with a modified password, or vice versa. Fixes issue #3001. 2012-10-27 08:23:23 +00:00
90ab0b6cf1 Refactor logic for reading and writing application and session settings:
* Introduce TAppSettings, created in dpr file
* Implement read and write methods, and replace callers of GetRegValue and MainReg.WriteInt/... with these
* Optimize read and write methods for avoiding redundant accesses to registry
* Auto-remove stored default settings from registry to avoid registry spam
* Replace synced MainForm.pref* variables with TAppSettings.Read* calls
* Move SetLocales call to dpr file
* Move MainForm.FDirname* variables to appropriate methods in helpers.pas
* Implement TQueryHistory.Create(SessionPath), reading its items within constructor
2012-08-19 10:55:08 +00:00
1858c04d82 Usermanager: Host may contain uppercase chars, it's just case sensitive, as stated on http://bugs.mysql.com/bug.php?id=19828 . Allow uppercase host names, which may cause errors when selecting such users, but as we have a exit-logic here that does not show AVs to the end user. 2012-04-06 09:03:26 +00:00
75e69ec3ab Detect --skip-name-resolve server option in usermanager, and disable users where that would cause "There is no such grant..." errors when firing "SHOW GRANTS FOR ...". On older servers there is no server variable for that detection, so as a fallback the "SHOW GRANTS FOR ..." errors are try/caught and the user node gets disabled lately. See r4101 and http://www.heidisql.com/forum.php 2012-04-01 09:30:40 +00:00
66f9ead0f0 Avoid AV when trying to focus username edit box in cases where tabCredentials is not the active tab. 2012-03-29 13:59:13 +00:00
269d3a0791 Revert r4101 - instead, do a FLUSH PRIVILEGES when the user manager dialog is opened, to ensure that non-flushed users can be edited. Users with uppercase chars in their host name cannot be edited - disable such nodes with a hint on how to manually fix that. 2012-03-27 23:17:20 +00:00
500472970a User manager: Check grants *before* tree node has focus. Could be a non-flushed user, since we just SELECT them from mysql.user. Catch such "There is no such grant defined for user" errors and disable tree node in that case. See http://www.heidisql.com/forum.php?t=10364 2012-03-24 07:40:26 +00:00
b271ea2670 Find GRANT OPTION also when SSL requirements are set. Fixes issue #2671. 2012-02-05 07:04:41 +00:00
6325d42c4b Fix enabled controls which should be disabled when no SSL option selected. 2012-01-07 09:13:13 +00:00
84d27865e2 Fix mixed up GRANT privilege in user manager, caused by errors and high complexity in regular expression. See issue #2671. Revert modification in SynRegExpr.pas again, now that we have only about 10 parentheses left. 2012-01-06 01:03:12 +00:00
aedbb997ab Support GRANT .. REQUIRE syntax in user manager with a new "SSL options" tab. Fixes issue #2671. 2012-01-05 20:44:49 +00:00