alejolp/hammerofthor

[NOT-AN-ISSUE] Hice un aporte para dar soporte a Chrome en Mac OS X [Y probablemente Ubuntu]

Opened this issue · 8 comments

Qué tal, esto acá está más que desubicado pero no se me ocurrió otro lugar 
dónde ponerlo :)

Resulta que yo uso mucho más Chrome que Firefox y entonces me vi en la 
necesidad de hacer que HoT funcione con Chrome en OS X (mi sistema operativo). 
La idea no fue hacer funcionar Chrome en sí con el proxy ya que Chrome por 
default utiliza la configuración del sistema en todo lo referente a proxies. 
Más bien mi idea era hacer que todas las llamadas del sistema operativo fueran 
interceptadas por HoT. Para eso hice el cambio adecuado en HoT y luego 
configuré el proxy del sistema para apuntar a HoT.

Lo que hice fue, basándome en la definición del protocolo SOCKS5 
(http://www.faqs.org/rfcs/rfc1928.html), hacer que HoT pueda responder a los 
pedidos que usen ADRESS_TYPE del tipo domain-name (que son los que envía OS 
X). 
Tené en cuenta que Python no es mi lenguaje "fuerte" (cada línea me costó 
hoooras de escribir :P), asi que probablemente veas cosas para mejorar, pero 
bueno, anda :)

Gracias por haber escrito este software, a mi se me había ocurrido exactamente 
la misma solución pero no tenía idea de cómo implementarla.

Avisame de cualquier corrección que creas conveniente!!

En el attach:
Te mando todo el método _handleData, mis cambios arrancan a partir del FIXME 
que dice
"#FIXME: Solo Socks v5, comando CONNECT y conexiones IPv4 o DomainName"

Original issue reported on code.google.com by dam...@gmail.com on 18 Oct 2010 at 1:12

Attachments:

Cualquier cosa, mail: d 4 m 1 4 r -en- gmail  com [sacándole espacios y 
reemplazando los números por letras :) (4=a, 1 = i)]

Original comment by dam...@gmail.com on 18 Oct 2010 at 1:26

Gracias por el reporte! Al contrario, este es el lugar indicado para tu 
pequeño patch. Recien estoy llegando de un viaje, en estos días lo reviso y 
lo subo al repositorio.

Original comment by alejolp on 18 Oct 2010 at 4:36

  • Changed state: Accepted
  • Added labels: Type-Enhancement
  • Removed labels: Type-Defect
Hi! Sorry for my bad english, It would be awsome to have HoT con chrome. I use 
it as my main browser in ubuntu. could you extend the functonality to chrome in 
some way, using a proxy extension ,etc. Thanks!
and thanks for your script, it solved my ISP problems!! , it is VERY usefull
Cheers

Original comment by marcosf...@gmail.com on 18 Oct 2010 at 6:47

@marcosfede,

Thanks on your feedback. Check out Issue #1 for more information.

Original comment by alejolp on 18 Oct 2010 at 12:16

@damiar,

Hay una version experimental con soporte para SOCKS v4 en el SVN. Podés 
probarla?

Original comment by alejolp on 18 Oct 2010 at 10:14

Probe  este parche y funciona perfecto en OSX

Original comment by nicolas....@gmail.com on 18 Oct 2010 at 10:45

@alejolp:
Probé en Ubuntu la versión del SVN con Chromium y funcionó muy bien. La 
forma de probarlo fue abriendo Google Images y buscando algo (al scrollear se 
disparan muchos requests). Todas las imágenes se vieron lo más bien.

Intenté hacer que HOT funcione con SOCKS4 en OSX tratando de hacer que Chrome 
usara un proxy diferente del que usa el resto del sistema (ya que OSX sólo 
soporta Socks5), no solo no pude sino que es endiabladamente complicado 
intentar hacer que Chrome haga tal cosa: hay que crear un script que sirva de 
launcher de Chrome (ya que no es posible abrir una app pasándole argumentos 
directamente en Mac, siempre que hay que hacerlo agregando un nivel de 
indirección con un script adicional), y así y todo no pareció darme bolilla 
(sin mencionar el hecho de que Chrome no fue capaz de cargar mi user profile). 
De todas formas, no tiene sentido hacer que Chrome utilice Socks4 cuando en 
realidad utiliza el proxy del sistema (IMHO).

Ví que hiciste un refactor importante en el código, quedó mejor modularizado 
y agregar mi cambio va a ser relativamente más sencillo, asi que si llegás a 
necesitar ayuda o algo chiflá :D 

@nicolas.reb buenísimo que te haya servido!! Eso significa que entonces la 
implementación va a ayudar a todos los maceros que hay dando vueltas (que 
tienen exáctamente el mismo problema que los que usan Linux).

Un saludo!

Original comment by dam...@gmail.com on 19 Oct 2010 at 12:52

Gracias loco muy bueno tu aporte, el de ambos.
Yo postie la version con la modificación en el Foro de Mac Users Group de 
Argentina con una explicacion de como instalarlo para que puedan navegar. Ya 
que la mayoria de los usuarios no tiene el know How para hacerlo solo.
Se pasaron. Saludos

@ alejolp vas a poner la version del SVN (que vi que esta mucho mejor) con el 
parche de OSX como estable??
asi digo que lo bajen directamente de aca y no que usen el que arme yo.

Saludos

Original comment by nicolas....@gmail.com on 20 Oct 2010 at 4:04