/**
  * Returns driver-specific connection options
  *
  * @param array $dsn DSN parameters
  *
  * @return array Connection options
  */
 protected function dsn_options($dsn)
 {
     $result = parent::dsn_options($dsn);
     if (!empty($dsn['key'])) {
         $result[PDO::MYSQL_ATTR_SSL_KEY] = $dsn['key'];
     }
     if (!empty($dsn['cipher'])) {
         $result[PDO::MYSQL_ATTR_SSL_CIPHER] = $dsn['cipher'];
     }
     if (!empty($dsn['cert'])) {
         $result[PDO::MYSQL_ATTR_SSL_CERT] = $dsn['cert'];
     }
     if (!empty($dsn['capath'])) {
         $result[PDO::MYSQL_ATTR_SSL_CAPATH] = $dsn['capath'];
     }
     if (!empty($dsn['ca'])) {
         $result[PDO::MYSQL_ATTR_SSL_CA] = $dsn['ca'];
     }
     // Always return matching (not affected only) rows count
     $result[PDO::MYSQL_ATTR_FOUND_ROWS] = true;
     // Enable AUTOCOMMIT mode (#1488902)
     $result[PDO::ATTR_AUTOCOMMIT] = true;
     return $result;
 }