Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 4ba22b5

Browse files
committed
Added unicode support also to Oracle connector - see #184.
1 parent e98b049 commit 4ba22b5

1 file changed

Lines changed: 9 additions & 1 deletion

File tree

plugins/dbms/oracle/connector.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,16 @@
2727
except ImportError, _:
2828
pass
2929

30+
import os
31+
32+
from lib.core.convert import utf8encode
3033
from lib.core.data import logger
3134
from lib.core.exception import sqlmapConnectionException
3235

3336
from plugins.generic.connector import Connector as GenericConnector
3437

38+
os.environ["NLS_LANG"] = ".AL32UTF8"
39+
3540
class Connector(GenericConnector):
3641
"""
3742
Homepage: http://cx-oracle.sourceforge.net/
@@ -46,6 +51,9 @@ def __init__(self):
4651
def connect(self):
4752
self.initConnection()
4853
self.__dsn = cx_Oracle.makedsn(self.hostname, self.port, self.db)
54+
self.__dsn = utf8encode(self.__dsn)
55+
self.user = utf8encode(self.user)
56+
self.password = utf8encode(self.password)
4957

5058
try:
5159
self.connector = cx_Oracle.connect(dsn=self.__dsn, user=self.user, password=self.password, mode=cx_Oracle.SYSDBA)
@@ -68,7 +76,7 @@ def fetchall(self):
6876

6977
def execute(self, query):
7078
try:
71-
self.cursor.execute(query)
79+
self.cursor.execute(utf8encode(query))
7280
except (cx_Oracle.DatabaseError), msg:
7381
logger.log(8, msg)
7482
except cx_Oracle.InternalError, msg:

0 commit comments

Comments
 (0)