[Libreoffice-commits] core.git: 2 commits - connectivity/source
Lionel Elie Mamane
lionel at mamane.lu
Tue Dec 17 03:16:46 PST 2013
connectivity/source/drivers/hsqldb/HUser.cxx | 15 +++++++++++----
1 file changed, 11 insertions(+), 4 deletions(-)
New commits:
commit edbbc471bcd9db9b366c32e9d16d965460cd3960
Author: Lionel Elie Mamane <lionel at mamane.lu>
Date: Tue Dec 17 12:14:15 2013 +0100
HSQLDB: correct syntax of change password from MySQL to HSQLDB
Change-Id: Iacf60c456912f2e38c7a082e48c45164e79c1097
diff --git a/connectivity/source/drivers/hsqldb/HUser.cxx b/connectivity/source/drivers/hsqldb/HUser.cxx
index 0dfcd2c..e1c2a75 100644
--- a/connectivity/source/drivers/hsqldb/HUser.cxx
+++ b/connectivity/source/drivers/hsqldb/HUser.cxx
@@ -272,10 +272,13 @@ void SAL_CALL OHSQLUser::changePassword( const OUString& /*oldPassword*/, const
Reference<XDatabaseMetaData> xMeta = m_xConnection->getMetaData();
- OUString sAlterPwd = "SET PASSWORD FOR " +
- ::dbtools::quoteName(xMeta->getIdentifierQuoteString(), m_Name) +
- "@\"%\" = PASSWORD('" + newPassword + "')";
+ if( m_Name != xMeta->getUserName() )
+ {
+ ::dbtools::throwGenericSQLException("HSQLDB can only change password of the current user.", *this);
+ }
+ OUString sAlterPwd = "SET PASSWORD " +
+ ::dbtools::quoteName(xMeta->getIdentifierQuoteString(), newPassword);
Reference<XStatement> xStmt = m_xConnection->createStatement();
if ( xStmt.is() )
commit 9203ae338fdbcaf614be8436172e05a24fd7d754
Author: Lionel Elie Mamane <lionel at mamane.lu>
Date: Tue Dec 17 12:00:46 2013 +0100
HSQLDB: quote usernames
Change-Id: I8384920bc55dafb2cc6581fe82f38d4e2659cc3d
diff --git a/connectivity/source/drivers/hsqldb/HUser.cxx b/connectivity/source/drivers/hsqldb/HUser.cxx
index 297591e..0dfcd2c 100644
--- a/connectivity/source/drivers/hsqldb/HUser.cxx
+++ b/connectivity/source/drivers/hsqldb/HUser.cxx
@@ -229,7 +229,7 @@ void SAL_CALL OHSQLUser::grantPrivileges( const OUString& objName, sal_Int32 obj
Reference<XDatabaseMetaData> xMeta = m_xConnection->getMetaData();
OUString sGrant = "GRANT " + sPrivs +
" ON " + ::dbtools::quoteTableName(xMeta,objName,::dbtools::eInDataManipulation) +
- " TO " + m_Name;
+ " TO " + ::dbtools::quoteName(xMeta->getIdentifierQuoteString(), m_Name);
Reference<XStatement> xStmt = m_xConnection->createStatement();
if(xStmt.is())
@@ -255,7 +255,7 @@ void SAL_CALL OHSQLUser::revokePrivileges( const OUString& objName, sal_Int32 ob
Reference<XDatabaseMetaData> xMeta = m_xConnection->getMetaData();
OUString sGrant = "REVOKE " + sPrivs +
" ON " + ::dbtools::quoteTableName(xMeta,objName,::dbtools::eInDataManipulation) +
- " FROM " + m_Name;
+ " FROM " + ::dbtools::quoteName(xMeta->getIdentifierQuoteString(), m_Name);
Reference<XStatement> xStmt = m_xConnection->createStatement();
if(xStmt.is())
@@ -269,8 +269,12 @@ void SAL_CALL OHSQLUser::changePassword( const OUString& /*oldPassword*/, const
{
::osl::MutexGuard aGuard(m_aMutex);
checkDisposed(OUser_BASE_RBHELPER::rBHelper.bDisposed);
+
+ Reference<XDatabaseMetaData> xMeta = m_xConnection->getMetaData();
+
OUString sAlterPwd = "SET PASSWORD FOR " +
- m_Name + "@\"%\" = PASSWORD('" + newPassword + "')";
+ ::dbtools::quoteName(xMeta->getIdentifierQuoteString(), m_Name) +
+ "@\"%\" = PASSWORD('" + newPassword + "')";
Reference<XStatement> xStmt = m_xConnection->createStatement();
More information about the Libreoffice-commits
mailing list