Dynamically proxy broadway traffic
- From: Daniel Kasak <d j kasak dk gmail com>
- To: GTK-Perl List <gtk-perl-list gnome org>
- Subject: Dynamically proxy broadway traffic
- Date: Fri, 16 Sep 2016 15:10:55 +1000
Hi all.
This question is mildly off-topic, but on the other hand I assume it
would also be of great interest to people here. I'm trying to set up a
reverse proxy for broadway ( gtk's html5 backend ) traffic. The idea
is:
1) The browser hits a login page, which is regular html. After a login
is successful, a new broadwayd process is launched, and a new instance
of a gtk app is launched. The port that broadway is running on is
stored in a hash "somewhere", and a cookie is set containing the key.
2) The browser is redirected to the reverse proxy. The proxy inspects
the request ( eg passes it to HTTP::Request ) and pulls out the key.
It then checks in the broadway mapping hash to see if this is a valid
key/port. If so, it proxies all traffic from this browser to the
correct port; if not, they're redirected to the login page.
All of this could then sit behind an nginx https proxy, providing
secure access for multiple remote clients to gtk+ apps :)
I've implemented part 1. For part 2, I've been trying to figure out
how to adapt the code:
http://cpansearch.perl.org/src/PEVANS/IO-Async-0.70/examples/tcp-proxy.pl
This code ( it's very concise ) actually works perfectly for proxying
broadway traffic ... to a static port. I've been trying to get my head
around how I'd intercept the 1st bit of traffic - unfortunately, the
way this example code is written, the connection to the backend is
opened before we start reading. Can anyone see how to do this? Am I
approaching it the right by ( ie using this example code )? Maybe
there's an easier way?
Dan
[Date Prev][
Date Next] [Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]