def METHOD_NAME(self, connection):
    # determine FreeTDS first.   can't issue SQL easily
    # without getting unicode_statements/binds set up.
    pyodbc = self.dbapi
    dbapi_con = connection.connection
    _sql_driver_name = dbapi_con.getinfo(pyodbc.SQL_DRIVER_NAME)
    self.freetds = bool(re.match(r".*libtdsodbc.*\.so", _sql_driver_name
                                 ))
    self.easysoft = bool(re.match(r".*libessqlsrv.*\.so", _sql_driver_name
                                  ))
    if self.freetds:
        self.freetds_driver_version = dbapi_con.getinfo(
            pyodbc.SQL_DRIVER_VER)
    self.supports_unicode_statements = (
        not util.py2k or
        (not self.freetds and not self.easysoft)
    )
    if self._user_supports_unicode_binds is not None:
        self.supports_unicode_binds = self._user_supports_unicode_binds
    elif util.py2k:
        self.supports_unicode_binds = (
            not self.freetds or self.freetds_driver_version >= '0.91'
        ) and not self.easysoft
    else:
        self.supports_unicode_binds = True
    # run other initialization which asks for user name, etc.
    super(PyODBCConnector, self).METHOD_NAME(connection)