Post Reply 
Proxomitron Reborn
May. 10, 2019, 08:59 AM
Post: #181
RE: Proxomitron Reborn
Now let's play with URL matching. I'm testing with 4604R, and curl to avoid cache issue.

Situation 1: With below entry in the bypass list:

Code:
www.proxomitron.cn/utf8_howto.html

Run
Code:
curl -k --proxy 127.0.0.1:8080 http://www.proxomitron.cn/utf8_howto.html

Get us
Code:
BlockList 303: in Bypass-List, line 23

+++GET 303+++
GET /utf8_howto.html HTTP/1.1
Host: www.proxomitron.cn
User-Agent: curl/7.55.1
Accept: */*
Connection: keep-alive

+++RESP 303+++
HTTP/1.1 200 OK
Date: Fri, 10 May 2019 08:19:06 GMT
Server: Apache
Last-Modified: Mon, 08 Apr 2019 04:44:21 GMT
ETag: "1e64-585fd7d793f9f"
Accept-Ranges: bytes
Content-Length: 7780
Vary: Accept-Encoding
Content-Type: text/html
+++CLOSE 303+++

Run
Code:
curl -k --proxy 127.0.0.1:8080 https://www.proxomitron.cn/utf8_howto.html

Get us
Code:
+++GET 304+++
CONNECT / HTTP/1.1
Host: www.proxomitron.cn:443
User-Agent: curl/7.55.1
Proxy-Connection: Keep-Alive
Referer: https://slashdot.org/search/referrer-karma.php?q=Big+Bang
BlockList 304: in Bypass-List, line 23

+++SSL:GET 304+++
SSL cipher TLSv1.2 AES256-GCM-SHA384 (256 bits)
GET /utf8_howto.html HTTP/1.1
Host: www.proxomitron.cn
User-Agent: curl/7.55.1
Accept: */*
Connection: keep-alive

+++SSL:RESP 304+++
SSL cipher TLSv1.2 ECDHE-RSA-AES128-GCM-SHA256 (128 bits)
HTTP/1.1 200 OK
Date: Fri, 10 May 2019 08:19:41 GMT
Server: Apache
Last-Modified: Mon, 08 Apr 2019 04:44:21 GMT
ETag: "1e64-585fd7d793f9f"
Accept-Ranges: bytes
Content-Length: 7780
Content-Type: text/html
+++CLOSE 304+++

The same entry bypass both http and https.

Situation 2: With below entry in the bypass list:

Code:
www.proxomitron.cn/

Run
Code:
curl -k --proxy 127.0.0.1:8080 http://www.proxomitron.cn/utf8_howto.html

Get us
Code:
BlockList 313: in Bypass-List, line 23

+++GET 313+++
GET /utf8_howto.html HTTP/1.1
Host: www.proxomitron.cn
User-Agent: curl/7.55.1
Accept: */*
Connection: keep-alive

+++RESP 313+++
HTTP/1.1 200 OK
Date: Fri, 10 May 2019 08:37:03 GMT
Server: Apache
Last-Modified: Mon, 08 Apr 2019 04:44:21 GMT
ETag: "1e64-585fd7d793f9f"
Accept-Ranges: bytes
Content-Length: 7780
Vary: Accept-Encoding
Content-Type: text/html
+++CLOSE 313+++

Run
Code:
curl -k --proxy 127.0.0.1:8080 https://www.proxomitron.cn/utf8_howto.html

Get us
Code:
BlockList 314: in Bypass-List, line 23

+++SSL 314:+++
SSL Pass-Thru: CONNECT https://www.proxomitron.cn/
+++CLOSE 314+++

The same entry bypass both http and https, but please notice the difference on https bypass.

Situation 3: With below entry in the bypass list:

Code:
www.proxomitron.cn:443/utf8_howto.html

or

Code:
www.proxomitron.cn:443/

or

Code:
www.proxomitron.cn:

And run the above same 2 curl commands, you will see both http and https are not bypassed (the intention) and are filtered instead.

I'm good with Situation 1&2 and I indeed like that one entry bypass both http and https.

Some thoughts:
  • Situation 3 is not inline with the old practice (I think it's time to move ahead with the new syntax)
  • Bypassing local.ptron is not inline with Situation 1&2 (I hope this could be improved)
Add Thank You Quote this message in a reply
May. 10, 2019, 06:58 PM (This post was last modified: May. 11, 2019 01:36 AM by mizzmona.)
Post: #182
RE: Proxomitron Reborn
Loving all this, but unable to absorb the minutiae. My head's swimming, I must find more time...

But as to this:

(Apr. 26, 2019 05:06 PM)JJoe Wrote:  To bypass "local.ptron:" and maintain a 'catch-all' for nonexistent ports my bypass list needs

Code:
line 21: local.ptron:&$RDIR(https://local.ptron:8443)
line 22: /

Yes, that is one excellent workaround.

I did amend mine to include an actual check for the protocol for the https bypass, tho...

Code:
local.ptron:&$URL(https)$RDIR(https://local.ptron:8443)
/

Probably overcautious(?), but what the hey.

If that needs changing at some point, a heads-up would be appreciated.
Add Thank You Quote this message in a reply
May. 11, 2019, 01:49 AM
Post: #183
RE: Proxomitron Reborn
For now local.ptron/ bypass http and local.ptron: bypass https.

I hope it could be changed to be in line with common hosts entries, which is to let local.ptron/ bypass BOTH http and https.

And to redirect the connection to the correct port for https too, just like how it is now for http.

For example, http://local.ptron:XXX/Gradient.gif always works no matter what XXX is because it will always be handled by the internal HTTP server. I want https://local.ptron:XXX/Gradient.gif always works too.

Just my thoughts.
Add Thank You Quote this message in a reply
[-] The following 2 users say Thank You to whenever for this post:
mizzmona, referrer
May. 11, 2019, 04:44 AM (This post was last modified: May. 11, 2019 05:07 AM by whenever.)
Post: #184
RE: Proxomitron Reborn
Wondering if this could be fixed:

Quote:Prox doesn't inflate documents with content-types that are "filter-forced".

Link: https://www.prxbx.com/forums/showthread.php?tid=347
Related: https://www.prxbx.com/forums/showthread.php?tid=1628

Might related:
  • https://www.prxbx.com/forums/showthread.php?tid=1707
  • https://www.prxbx.com/forums/showthread.php?tid=1711

@mizzmona, you might remember this because you were involved in a similar discussion on Yahoo Groups (gone now).
Add Thank You Quote this message in a reply
May. 11, 2019, 05:10 AM
Post: #185
RE: Proxomitron Reborn
More pending bugs (sorry I haven't checked if they still exist in the reborn version yet, just want to bring them up):

$GET() omits the following semicolon
https://www.prxbx.com/forums/showthread.php?tid=1834

a positional var lives between different filters
https://www.prxbx.com/forums/showthread.php?tid=1678
Add Thank You Quote this message in a reply
May. 11, 2019, 10:15 AM
Post: #186
RE: Proxomitron Reborn
(May. 11, 2019 04:44 AM)whenever Wrote:  Wondering if this could be fixed:

Quote:Prox doesn't inflate documents with content-types that are "filter-forced".

Link: https://www.prxbx.com/forums/showthread.php?tid=347
Related: https://www.prxbx.com/forums/showthread.php?tid=1628

Might related:
  • https://www.prxbx.com/forums/showthread.php?tid=1707
  • https://www.prxbx.com/forums/showthread.php?tid=1711

@mizzmona, you might remember this because you were involved in a similar discussion on Yahoo Groups (gone now).

Oh yes, I remember that! Seems a long time ago, another life, another world...

It's not gone. The thread was broken into three parts. The first and third links are to opening and closing posts, the bulk's in the middle:

https://groups.yahoo.com/neo/groups/prox...pics/16534
https://groups.yahoo.com/neo/groups/prox...pics/16537
https://groups.yahoo.com/neo/groups/prox...pics/16582

-------------

Man, but Y!G's "search" really, really sucks. Finally gave up and just scrolled through the past ...whew.

Flowers, opening
meet wind and rain;
Human life
is full of partings.

-hpguru

(oh yeah, right there)
Add Thank You Quote this message in a reply
May. 12, 2019, 04:18 AM
Post: #187
RE: Proxomitron Reborn
I'm very busy (again, not surprisingly...) so haven't had time to look at the posts since my last reply in detail, but this
(May. 11, 2019 05:10 AM)whenever Wrote:  $GET() omits the following semicolon
https://www.prxbx.com/forums/showthread.php?tid=1834
is actually a feature which I thought was mentioned in the docs that Scott wrote, but maybe not. All commands may have 1(one) optional semicolon after the closing parenthesis; if you want an actual verbatim semicolon to follow, then use one of the methods described in that thread or add another one.

The reason I say it is deliberate, is because there is code for this in the function that parses all commands, to consume one semicolon if it follows:
Code:
if(**pstr == ';')
     (*pstr)++;
Add Thank You Quote this message in a reply
May. 12, 2019, 07:43 PM
Post: #188
RE: Proxomitron Reborn
(May. 12, 2019 04:18 AM)amy Wrote:  All commands may have 1(one) optional semicolon after the closing parenthesis; if you want an actual verbatim semicolon to follow, then use one of the methods described in that thread or add another one.

The reason I say it is deliberate, is because there is code for this in the function that parses all commands, to consume one semicolon if it follows:
Code:
if(**pstr == ';')
     (*pstr)++;

Oh my, thank you, now that is interesting. In Match or Replace.

That definitely looks intentional, so I can't help but think we're missing something useful that could otherwise be done with it.

Have you noticed anything else in the code re semicolons explicitly?
Add Thank You Quote this message in a reply
May. 12, 2019, 08:01 PM
Post: #189
RE: Proxomitron Reborn
Hm, another possibility is that perhaps commands originally included it -- $CMD(); -- but then Scott decided against it and just missed deleting that last remnant?

Wonder how long it's been there.
Add Thank You Quote this message in a reply
Jun. 07, 2019, 07:45 PM (This post was last modified: Jun. 07, 2019 09:52 PM by kelendral.)
Post: #190
RE: Proxomitron Reborn
(Jun. 22, 2018 05:36 AM)JJoe Wrote:  Provide for Brotli and HPACK.
I'd like to second the request for support of Brotli.

@amy, THANK YOU!!! Really, I was getting annoyed with trying to correct some issues on a page that the *monkey* Browser Extension/Addons would not work well with. I knew I could fix it in Proxomitron but I had given up Proxomitron some years ago. I stopped in the forum though to see if anyone had come up with a some alternatives to the ones I had been using/trying for the past few years. To my surprise I saw your Recovering Source thread and this one. It is so nice to have that icon in the tray again.
Thank you for the work rebuilding and enhancing Proxomitron into Proxomitron Reborn!
Add Thank You Quote this message in a reply
Sep. 14, 2019, 12:28 AM
Post: #191
RE: Proxomitron Reborn
Recently got into this program again and just wanted to say the work done to help update/fix it is greatly appreciated. Dunno what it is about this thing... maybe it's the features, maybe it's the default rainbow flashy GUI, I just don't know... but I always seem to come back to playing with this thing every few years. :P
Add Thank You Quote this message in a reply
Sep. 16, 2019, 03:08 AM
Post: #192
RE: Proxomitron Reborn
I've been insanely busy with other things, just letting everyone know I haven't forgotten, and it's good to see others getting more use out of Proxomitron again Smile!
(Jun. 07, 2019 07:45 PM)kelendral Wrote:  
(Jun. 22, 2018 05:36 AM)JJoe Wrote:  Provide for Brotli and HPACK.
I'd like to second the request for support of Brotli.
Any specific reasons?

Once I have some more time I'll work on the feature requests/fixes that have accumulated here, for the next version (4.6.0.5).
Add Thank You Quote this message in a reply
[-] The following 2 users say Thank You to amy for this post:
mizzmona, usr
Oct. 10, 2019, 08:10 PM (This post was last modified: Oct. 10, 2019 08:10 PM by mizzmona.)
Post: #193
RE: Proxomitron Reborn
A feature request...

If a filter goes into an infinite loop, there's currently no quick way to stop that (unless you've added something for it?) short of bringing up the Windows Task Manager and killing the Proxomitron outright.

If there was an on-demand function to kill all filter processing immediately using a new button or a special key-press or just adding it to the Abort's function, that would be very nice.
Add Thank You Quote this message in a reply
Oct. 19, 2019, 10:37 AM
Post: #194
RE: Proxomitron Reborn
Please add:

Name new blocklist as file name instead of "NewItem".

Breaking connections through SendMessage - to do it without emulating mouse input to press 'abort' button.
Add Thank You Quote this message in a reply
Dec. 26, 2019, 01:07 AM (This post was last modified: Dec. 26, 2019 01:09 AM by amy.)
Post: #195
RE: Proxomitron Reborn
Merry Christmas! Proxomitron Reborn 4.6.0.5 has been released!

Changes in this version:
- Fix clearing of replacement stack
This is a fix for the https://www.prxbx.com/forums/showthread....4#pid19634 . Note that this is a behaviour change, but one that should be relatively risk-free since it seemed unlikely existing filters would rely on such a behaviour.

- Remove 2/4GB size limits on upload/download
Now you can download large files through The Proxomitron without problem. Thanks to use of 64-bit content length calculation, the limit is now 8 or 16EB, sadly I do not have the time nor space to test that!

- Allow multiple instances when run from different directories
Proxomitron will now reactive and reload the configuration of an existing instance only if it has the same full path. Otherwise it will start a new instance. For example, C:\Proxy1\proxo.exe and C:\Proxy2\proxo.exe can both be run, and invoking them again will cause the corresponding one's configuration to be reloaded. If you then run a C:\Proxy3\proxo.exe, it will start a new instance. It remains your responsibility to ensure that the instances do not attempt to listen on the same port or otherwise conflict. This will not affect those running a single instance.

- Allow more ciphers/protocols from SSL server side
Helps improve compatibility with older browsers.

- Fix certificate generation dialog on Win9x
Another compatibility fix.

- Fix crash when certificate generation fails
Minor but annoying bug, if in the very rare circumstance that it fails to generate a certificate (e.g. existing proxcert.pem is read-only), then it will not crash.

- Name new blocklist as file name instead of NewItem
A small feature request, which seemed safe to do as I doubt anyone was relying on NewItem being the name.

- Add Ctrl+A to filter test dialog input/output editboxes
Another small feature request.

- Make filter testing request and URL configurable
The existing Proxomitron always tested filters with a request of
Code:
GET http://www.Shonen.Knife.com/Naoko/Michie/Atsuko/kappa.ex.cgi?jackalope HTTP/1.1
which you can see if you use e.g. \u in the replace section. That is still the default but you can now change it to your needs when testing filters.

Due to limited time I was not able to accommodate all feature requests, however it may also be because your request was sufficiently vague or complex that I wasn't sure exactly how to implement it. However I still have a record of them (as does this thread) and may continue pursuing them in the future.
Add Thank You Quote this message in a reply
[-] The following 8 users say Thank You to amy for this post:
mizzmona, whenever, referrer, thypentacle, DullFace, usr, Callahan, defconnect
Post Reply 


Forum Jump: