pagekite-0.5.9.3/ 0000755 0000000 0000000 00000000000 13232067643 013423 5 ustar root root 0000000 0000000 pagekite-0.5.9.3/pagekite.egg-info/ 0000755 0000000 0000000 00000000000 13232067643 016706 5 ustar root root 0000000 0000000 pagekite-0.5.9.3/pagekite.egg-info/top_level.txt 0000644 0000000 0000000 00000000011 13232067643 021430 0 ustar root root 0000000 0000000 pagekite
pagekite-0.5.9.3/pagekite.egg-info/dependency_links.txt 0000644 0000000 0000000 00000000001 13232067643 022754 0 ustar root root 0000000 0000000
pagekite-0.5.9.3/pagekite.egg-info/requires.txt 0000644 0000000 0000000 00000000027 13232067643 021305 0 ustar root root 0000000 0000000 SocksipyChain >= 2.0.15 pagekite-0.5.9.3/pagekite.egg-info/PKG-INFO 0000644 0000000 0000000 00000001462 13232067643 020006 0 ustar root root 0000000 0000000 Metadata-Version: 1.0
Name: pagekite
Version: 0.5.9.3
Summary: PageKite makes localhost servers visible to the world.
Home-page: http://pagekite.org/
Author: Bjarni R. Einarsson
Author-email: bre@pagekite.net
License: AGPLv3+
Description: PageKite is a system for running publicly visible servers (generally
web servers) on machines without a direct connection to the Internet,
such as mobile devices or computers behind restrictive firewalls.
PageKite works around NAT, firewalls and IP-address limitations by
using a combination of tunnels and reverse proxies.
Natively supported protocols: HTTP, HTTPS
Any other TCP-based service, including SSH and VNC, may be exposed
as well to clients supporting HTTP Proxies.
Platform: UNKNOWN
pagekite-0.5.9.3/pagekite.egg-info/SOURCES.txt 0000644 0000000 0000000 00000003550 13232067643 020575 0 ustar root root 0000000 0000000 COPYING
HTTPD-PLAN.txt
MANIFEST.in
Makefile
README.md
TODO.md
UI.txt
__main__.py
droiddemo.py
pagekite_gtk.py
pk
setup.cfg
setup.py
doc/CREDITS.txt
doc/DEV-HOWTO.md
doc/HISTORY.txt
doc/MANPAGE.md
doc/README.md
doc/REMOTEUI.md
doc/header.txt
doc/lapcat.1
doc/pagekite.1
etc/init.d/pagekite.debian
etc/init.d/pagekite.fedora
etc/logrotate.d/pagekite.debian
etc/logrotate.d/pagekite.fedora
etc/pagekite.d/10_account.rc
etc/pagekite.d/20_frontends.rc
etc/pagekite.d/80_httpd.rc.sample
etc/pagekite.d/80_sshd.rc.sample
etc/pagekite.d/accept.acl.sample
etc/sysconfig/pagekite.fedora
gui/background.jpg
gui/dreki.png
gui/icons-127/pk-active.png
gui/icons-127/pk-idle.png
gui/icons-127/pk-traffic.png
gui/icons-16/pk-active.png
gui/icons-16/pk-idle.png
gui/icons-16/pk-traffic.png
pagekite/__init__.py
pagekite/__main__.py
pagekite/android.py
pagekite/common.py
pagekite/compat.py
pagekite/dropper.py
pagekite/httpd.py
pagekite/logging.py
pagekite/logparse.py
pagekite/manual.py
pagekite/pk.py
pagekite/yamond.py
pagekite.egg-info/PKG-INFO
pagekite.egg-info/SOURCES.txt
pagekite.egg-info/dependency_links.txt
pagekite.egg-info/requires.txt
pagekite.egg-info/top_level.txt
pagekite/proto/__init__.py
pagekite/proto/conns.py
pagekite/proto/filters.py
pagekite/proto/parsers.py
pagekite/proto/proto.py
pagekite/proto/selectables.py
pagekite/ui/__init__.py
pagekite/ui/basic.py
pagekite/ui/nullui.py
pagekite/ui/remote.py
rpm/pagekite.init
rpm/pagekite.logrotate
rpm/pagekite.sysconfig
rpm/rpm-install.sh
rpm/rpm-post.sh
rpm/rpm-preun.sh
rpm/rpm-setup.sh
scripts/blackbox-test.sh
scripts/breeder.py
scripts/installer.sh
scripts/lapcat
scripts/mk-dropper.sh
scripts/mk-self-signed.sh
scripts/pagekite
scripts/pagekite_gtk
scripts/pagekite_test.py.old
scripts/pkvnc
scripts/vipagekite
scripts/legacy-testing/pagekite-0.3.21.py
scripts/legacy-testing/pagekite-0.4.6a.py
scripts/legacy-testing/pagekite-0.5.6d.py pagekite-0.5.9.3/__main__.py 0000755 0000000 0000000 00000001001 13232067545 015511 0 ustar root root 0000000 0000000 #!/usr/bin/env python
import os
import runpy
PKG = 'pagekite'
try:
run_globals = runpy.run_module(PKG, run_name='__main__', alter_sys=True)
executed = os.path.splitext(os.path.basename(run_globals['__file__']))[0]
if executed != '__main__': # For Python 2.5 compatibility
raise ImportError('Incorrectly executed %s instead of __main__' %
executed)
except ImportError:
# For Python 2.6 compatibility
runpy.run_module('%s.__main__' % PKG, run_name='__main__', alter_sys=True)
pagekite-0.5.9.3/HTTPD-PLAN.txt 0000644 0000000 0000000 00000004500 13232067545 015577 0 ustar root root 0000000 0000000 ## How the HTTPD is designed ##
The pagekite.py HTTPD does:
1. XML-RPC for anything to do with controlling pagekite.py, so the
interface can be shared between an AJAX Web-UI and a normal GUI,
or even accessed remotely. Look into serving CORS headers to allow
direct integration with pagekite.net/home/.
2. Static file server.
3. Embedded static files (for the default UI).
4. /vars.txt for monitoring. Make optional?
5. Access controls for backends.
### Sharing files ###
Aside from the embedded static stuff, the served static content should
be dynamically created at runtime (but persisted to disk?).
Should support arbitrary http://vhost/path -> /local/fs/path mappings.
### Access controls ###
Shared files and directories *could* have access controls based on:
* One-off passwords
* Username/password pairs
* OpenID, Facebook connect, Twitter
* Autogenerated obscure URLs
* Guest IP address
* SSL certificates
* Time (files could expire)
* Access counts (files could expire)
* Banning/allowing bot traffic
### Access controls for backends ###
We should be able to limit access to backend resources using some/all of
the above methods. Granting access should/could become an interactive
process.
### Presenting human readable log info ###
The HTTP UI should give human readable information about visits to a site.
This means adding visual cues such as grouping, pictures and colors so it
is easy to see that the same person is browsing your site.
It should be possible to use clever mapping of IP addresses to colors, to
make networks more recognizable:
For example: a.b.c.d => rgb( (a+b+d)/3, (b+c+d)/3, (c+a+d)/3)
def ip2rgb(ip):
# This basically gives each /24 it own hue, and then uses the final octet
# to tune the brightness. We avoid pitch-black and very bright colors.
o = [int(p) for p in ip.split('.')]
v = 55+( (19*o[3] + o[3]) % 180)
return '#%2.2x%2.2x%2.2x' % ( (v*o[0])/256, (v*o[1])/256, (v*o[2])/256 )
for ip in ['10.1.2.3', '10.0.0.100', '127.0.0.1', '255.255.255.255',
'178.79.140.143', '69.164.211.158', '173.230.155.164',
'192.168.1.100', '192.168.1.1', '192.168.1.200', '192.168.1.56']:
print ('%s'
) % (ip2rgb(ip), ip)
10.1.2.3 => #030103
192.168.1.1 => #5a2a30
127.0.0.1 => #200020
pagekite-0.5.9.3/gui/ 0000755 0000000 0000000 00000000000 13232067643 014207 5 ustar root root 0000000 0000000 pagekite-0.5.9.3/gui/background.jpg 0000644 0000000 0000000 00000015340 13232067545 017034 0 ustar root root 0000000 0000000 JFIF H H C !"$"$ C +" M !1AQa"Tq#2d4BRbers&3U6CEt ? ;m̾JEp-ddAp[us/ko `Kne*}P`+o|\ꄪdZ ۫kJ@_T
_0%W2*ZW m̾JEp-ddAp[us/ko `Kne*}P`+o|\ꄪdZ ۫kJ@_T
_0%W2*ZW m̾JEp-ddAp[us/ko `Kne*}P`+o|\ꄪdZ ]U1 OT] 2f* ? W~b AAUߘ ,b0 c =PPUw+o ! T] 2f* ? W~b AAUߘ ,b0 c =PPUw+o ! T] 2f* ? W~b AAUߘ -- & > a@)0PP& > a@)0PP& > a@)0PP& > a@)0PP& > a@)0PP&`.@=PY~;@_T,
J/n`
OT_%E 0'/gh[3IQe @-I z Ae RTY~ =Ps Rzv)*, )=PY~;@_T,
J/n`
OT_
e.h,ހAEhzP @zY;i@&Yd^Pf@[7 d7e{iAlރe.h=݀B籭{= f]v=tܮ
+PS uN}먼N9*Y;i@&Yd^Pf@[7 d7e{iAlރe.h,ހAEhzP @zY;i@&YXK(_-AT8l JXK(_-AT8l Kat ٔTǁU7#9\+R P
9 Ɖ cdfc9
+\jS++0ͷ(-%Rl,
Y`U/ _E %Rl,
Y`U/ _E %Rl, A` ( Q u'fR,6*+]rgMF*+T Uj 9r9G&'-+0KyLǣڴrbe%fjD , X
A` -ޠ VrkMF/Mo'&R+~+9mZjo >5 Fj`s9G5hJ6;R=8!@ W QU E@U ET TT P TT QP[ ZvgNm`Iٞi5?UqA* A* TssVLO2ҳ
l~(sq0{sVLLGmG5TT P TT QP ǝcU] GrTF_{vɸy*jqK @
*
* ( R ) !@VvkMF/OvkNm`cUUVUUZ P s{VLOlfD7a1YIlz^s !@.r5-TkUZ"bb&+fUUkS: @9fE2،GjaNYhڭ[OolF#صE ( E R
. B!HP ) ) RvkMF/Ovi!6&5UUj ;