Export to GitHub

gris - issue #10

No support for proxy servers


Posted on Aug 22, 2008 by Happy Dog

Reason: GRiS can't use the standard cocoa http libraries, because the sync is done with python.

Possible Fixes: * Grab current proxy settings and pass them through to urllib (it's unlikely that this is possible, for security reasons) * Allow GRiS-specific proxy settings. Perfectly doable, but ugly and annoying. * Somehow get http traffic going through cocoa. pyobjc would most likely work.

Comment #1

Posted on Aug 23, 2008 by Happy Dog

Turns out you can grab the proxy settings via CFProxySupport. So that would be the best option, as long as the underlying pyrfeed GoogleReader library can be supplied proxy settings somehow. But I don't have a proxy to test things out on.

Comment #2

Posted on Aug 23, 2008 by Massive Bird

is there a way I can test it for you? I don't have a direct proxy server, but I have access to one at my work laptop, where I can set up an ad-hoc connection to my Touch.

Comment #3

Posted on Aug 24, 2008 by Happy Dog

Okay, I've got a test version with proxy support. Rafael (and others), it would be great if you could test it out with your proxy and let me know if everything works.

Note: it supports "manual" proxy only - it won't work with an automatic proxy configuration URL. There's no way I'm getting into that ;)

Donwload the gris_test package: wget http://gfxmonk.sysprosoft.com/cydia/GRiS_test.deb Transfer it to your ipod / iphone: scp GRiS_test.deb root@:/tmp And install: ssh root@ cd /tmp dpkg -i GRiS_test.deb

You'll then need to respring - you can either turn your iPhone right off (not just sleep), or run: killall SpringBoard

Thanks.

Comment #4

Posted on Aug 25, 2008 by Happy Dog

update on that front: Ignore the test package, I'm suitably convinced that it has no ill effects when you're not using a proxy so I've rolled it into the main package (v0.1.7 is now availbale through my repository, and should be mirrored on BigBoss' within a day). I would still appreciate feedback on whether this actually works when using a proxy, however.

Comment #5

Posted on Aug 25, 2008 by Massive Bird

I installed the test version but it seems it's not working. With the original GRiS, when I clicked the Sync button it gives me a message "Exception: login failed" as if my login was wrong (but I'm sure it correct). With this test version, when I click the Sync button it keeps showing "Loading" forever and never quits or give errors messages.

Comment #6

Posted on Aug 25, 2008 by Massive Bird

Correction to the above comment: after about 5 minutes with the "Loading" message its stops the syncing process with the same error "Exception: login failed".

Comment #7

Posted on Aug 25, 2008 by Happy Dog

Thanks for the feedback. On the good side, it does seem to be doing something different when there is a proxy set. On the bad side, it looks like I'll have to get access to a proxy in order to figure out what on earth is going on ;)

Comment #8

Posted on Aug 25, 2008 by Massive Bird

Is it possible to create for this GRiS_test to create a log file so that you can check what's happening?

How can I go back to the original GRiS? Just install from Cydia again?

Comment #9

Posted on Aug 25, 2008 by Happy Dog

gris does create a log file, if you look in /var/mobile/GRiS/gris.native.log for "proxy", there should be some debug output there.

And yes, upgrading vis cydia should do the trick. If not, you can always follow the same procedure as comment #3 using the current "GRiS.deb" package from http://gfxmonk.sysprosoft.com/cydia/

Comment #10

Posted on Aug 26, 2008 by Happy Dog

I've now got a (tiny)proxy, and tested this out myself.

It turns out the CFProxySupport class will pretty much never divulge actual username / password for the proxy login (despite having a method to retrieve this data) - you actually need to find it through the keychain system. So that will probably take a lot longer to figure out.

Comment #11

Posted on Aug 26, 2008 by Massive Bird

I noted something intesting. It seems that my proxy authorize acces to the machine IP, so the first time I try to access internet it asks for my username and password but then it does not ask for them unitl the next day, even if use another software. Example: I open Firefox in the morning and it asksfor username and password. Later I open IE or WMP and it does not ask for them anymore.

So, I suppose this should happen like this with the Touch. If one application has already authorized my access (as it did when I opened Touch's Safari), I don't need to authorize again when opening another app. I confirmed this by removing the authentication info in WiFi settings and then opening several internet apps (maps, facebook, delicious, Twitterrific, Cydia, …). All these apps worked fine even after removing the authentication info (username and password).

Maybe proxy authentication is not the (only) problem.

Comment #12

Posted on Aug 29, 2008 by Happy Dog

(No comment was entered for this change.)

Status: Assigned

Labels:
Type-Defect Priority-Medium Component-Connectivity