[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Lynx-dev] ..on SOCKS5 support
From: |
Steffen Nurpmeso |
Subject: |
Re: [Lynx-dev] ..on SOCKS5 support |
Date: |
Mon, 09 Sep 2019 15:43:59 +0200 |
User-agent: |
s-nail v14.9.15-44-g32f0d949 |
Thomas Dickey wrote in <20190908105750.qc3ut2e3rkrswfm4@prl-debianold-64\
.jexium-island.net>:
|On Sun, Sep 08, 2019 at 01:26:51AM +0200, Steffen Nurpmeso wrote:
|> Hello Thomas Dickey.
|>
|> Thomas Dickey wrote in <20190907195941.c2gqjhnuj2pp44az@prl-debianold-64\
|> .jexium-island.net>:
|>|On Sat, Sep 07, 2019 at 08:51:26PM +0200, Steffen Nurpmeso wrote:
|>|> I was forced to use lynx via SOCKS5 proxy, which i never did
|>|> before. To my surprise that did not work, it needs an additional
|>|> library. That increased the surprise, because all one needs for
|>|> SOCKS5 support, even including the DNS lookup, is to hook
|>|> connect(2) -- that is how i did it, as easy as [1]. And in fact
|>|
|>|That's changed over time - there's no standard/portable implementation
|>|of socks5, and (the last time I looked...) none of the extent versions
|>|corresponded to what lynx worked with long ago :-)
|>
|> Well.. i do not know about the history of implementations. What
|> i do know is that my implementation is for SOCKS5, which is RFC
|> 1928 from March 1996. It is a nice and small RFC :)
|
|something to read...
Yes, that i know. Nine pages here.
|>|> i became inspired by Gaetan Bisson's usocks-06.c, which can be
|>|> used via $LD_PRELOAD, and which got me going. I will attach it.
|>|>
|>|> Wouldn't it be much nicer if there would be a -socks=[HOST]:PORT
|>|> command line argument and a simple, always compiled in, wrapper
|>|> around connect, just the way i do it (in [1])?
|>|
|>|that's a thought...
|>
|> It would be really nice. When i implemented it i tested via
|>
|> $ ssh -D 10000 USER@HOST
|> $ mailx -Ssocks-proxy-USER@HOST=localhost:10000
|>
|> But it must be said, when using OpenSSH's -D in a session where
|> firefox bombs its multiple dozens of concurrent connections here
|> i had to restart the ssh twice already today, because of being
|> totally stuck. It might be caused by the weak wireless
|> connectivity that i have, but i am about to ask ssh for what to
|> do. (ControlMaster is in use.)
|>
|>|> Just in case i find time and the mentioned way seems interesting,
|>|> is there somewhere the current development code can be loaded
|>|> from?
|>|>
|>|> [1] https://git.sdaoden.eu/cgit/s-nail.git/tree/src/mx/net-socket.c#n\
|>|> 48\
|>|> 5
|>|
|>|I put snapshots here, as I make development changes:
|>|
|>| https://github.com/ThomasDickey/lynx-snapshots
|>
|> Yes, i know. (But we know this git mirror sometimes lags behind,
|> no, not for lynx in particular but for example vile and mawk
|> i track via this mirror, and just a couple of days ago you seem to
|> have pushed something to mawk with a six months delay. I am not
|> complaining or something, and maybe it had to mature, i did not
|> look. It is just that this mirror lags behind reality sometimes.)
|
|yes (for the former, I'd overlooked that -- also vttest, which you didn't
|mention -- for the latter I had begun a more ambitious set of changes \
|but got
|stuck with the yacc grammar bug, and on moving on to more urgent fixes \
|forgot
|to push the completed ones out until I was reminded). At the moment I'm
|working on xterm, and have to review/whatever a change for dialog whenever
|patch #349 is completed.
|
|It's not an automatic mirror; I have scripts for several stages (with
|some testing/review at each stage). Offhand
|
| release-foo (for local staging/packaging)
| build-all-foo (test-builds, review logs, install packages)
| tag-foo (adds the rcs label)
| * release-all-foo (repeat release-foo, but adds cross-compiled \
| binaries)
| * upload-foo
| * update-ftp-links (website maintenance)
| * rsync-myftp
| * upload-mirror
| r2g foo (exports to git, using rcs label added above)
| push2github foo
| * email announcements (completing the upload-foo step)
|
|The interim labels (no upload-foo, etc) are to verify fixes for bug \
|reports.
|I marked the "real release" steps with "*", above. Counting all of the
|steps, I have a few hundred "foo" scripts (perhaps I should write a script
|to count them).
That leaves me speechless.
|>|but don't accept pull-requests -- see
|>|
|>| https://invisible-island.net/personal/git-exports.html
|>
|> That i knew too already, but thanks for the link. I am not at
|> github myself, so a pull request would not happen, rather a patch
|> for discussion here on this ML. Note that i hate autotools, this
|> would be very hard. The rest is complicated rather due to the
|> lynx context only.
|
|sounds good: if someone wants to do a pull request, I end up by
|cloning the repo temporarily, and constructing a diff/patch.
|
|That doesn't happen often...
|
|> Pretty much so it seems, but i will try. How about
|> -socks5-proxy=HOST -> STRING, parsed the first time we enter
|> HtDoConnect() (or where in main()?), and a special my_connect() as
|> a replacement for the connect(2)s in there, which looks out for
|> the global socks5_proxy (address stored locally in the file after
|> initial parse was successful?), and connects through it instead of
|> the default. It is pretty much a jungle here ;). But does this
|
|lots of ifdefs :-)
|
|> sound acceptible somehow? Maybe i find some time next Tuesday or
|> Wednesday?
|
|I don't see any real problems in going in that direction
|(except of course that it wouldn't work readily with the Windows port).
Yes, i have no idea of Windows at all. (Except having had the
Cygwin source code to have a look sometimes, to not end in total
dead ends shall i ever port to it.)
|If you have something that works reasonably well on one of the BSDs,
|making it more portable (adding configure checks, command-line options,
|etc.) is fairly routine.
That is BSD socket code + read(2) + write(2).
I will throw an eye as soon as possible, and report back then, ok?
Ciao from Germany,
--steffen
|
|Der Kragenbaer, The moon bear,
|der holt sich munter he cheerfully and one by one
|einen nach dem anderen runter wa.ks himself off
|(By Robert Gernhardt)
- [Lynx-dev] ..on SOCKS5 support, Steffen Nurpmeso, 2019/09/07
- Re: [Lynx-dev] ..on SOCKS5 support, Steffen Nurpmeso, 2019/09/07
- Re: [Lynx-dev] ..on SOCKS5 support, Thomas Dickey, 2019/09/07
- Re: [Lynx-dev] ..on SOCKS5 support, Steffen Nurpmeso, 2019/09/07
- Re: [Lynx-dev] ..on SOCKS5 support, Thomas Dickey, 2019/09/08
- Re: [Lynx-dev] ..on SOCKS5 support,
Steffen Nurpmeso <=
- Re: [Lynx-dev] ..on SOCKS5 support, Thomas Dickey, 2019/09/10
- Re: [Lynx-dev] ..on SOCKS5 support, Steffen Nurpmeso, 2019/09/11
- Re: [Lynx-dev] ..on SOCKS5 support, Steffen Nurpmeso, 2019/09/14
- Re: [Lynx-dev] ..on SOCKS5 support, Steffen Nurpmeso, 2019/09/14
- Re: [Lynx-dev] ..on SOCKS5 support, Thomas Dickey, 2019/09/15
- Re: [Lynx-dev] ..on SOCKS5 support, Thorsten Glaser, 2019/09/15
- Re: [Lynx-dev] ..on SOCKS5 support, Mouse, 2019/09/15
- Re: [Lynx-dev] ..on SOCKS5 support, Thorsten Glaser, 2019/09/15
- Re: [Lynx-dev] ..on SOCKS5 support, Mouse, 2019/09/16
- Re: [Lynx-dev] ..on SOCKS5 support, Thomas Dickey, 2019/09/16