Skip to content

Latest commit

 

History

History
315 lines (252 loc) · 8.35 KB

CHANGES.rst

File metadata and controls

315 lines (252 loc) · 8.35 KB

Change log

Release notes now moved to https://github.com/sshuttle/sshuttle/releases/

These are the old release notes.

1.0.5 - 2020-12-29

Added

  • IPv6 support in nft method.
  • Intercept DNS requests sent by systemd-resolved.
  • Set default tmark.
  • Fix python2 server compatibility.
  • Python 3.9 support.

Fixed

  • Change license text to LGPL-2.1
  • Fix #494 sshuttle caught in infinite select() loop.
  • Include sshuttle version in verbose output.
  • Add psutil as dependency in setup.py
  • When subnets and excludes are specified with hostnames, use all IPs.
  • Update/document client's handling of IPv4 and IPv6.
  • Update sdnotify.py documentation.
  • Allow no remote to work.
  • Make prefixes in verbose output more consistent.
  • Make nat and nft rules consistent; improve rule ordering.
  • Make server and client handle resolv.conf differently.
  • Fix handling OSError in FirewallClient#__init__
  • Refactor automatic method selection.

Removed

  • Drop testing of Python 3.5

1.0.4 - 2020-08-24

Fixed

  • Allow Mux() flush/fill to work with python < 3.5
  • Fix parse_hostport to always return string for host.
  • Require -r/--remote parameter.
  • Add missing package in OpenWRT documentation.
  • Fix doc about --listen option.
  • README: add Ubuntu.
  • Increase IP4 ttl to 63 hops instead of 42.
  • Fix formatting in installation.rst

1.0.3 - 2020-07-12

Fixed

  • Ask setuptools to require Python 3.5 and above.
  • Add missing import.
  • Fix formatting typos in usage docs

1.0.2 - 2020-06-18

Fixed

  • Leave use of default port to ssh command.
  • Remove unwanted references to Python 2.7 in docs.
  • Replace usage of deprecated imp.
  • Fix connection with @ sign in username.

1.0.1 - 2020-06-05

Fixed

  • Errors in python long_documentation.

1.0.0 - 2020-06-05

Added

  • Python 3.8 support.
  • sshpass support.
  • Auto sudoers file (#269).
  • option for latency control buffer size.
  • Docs: FreeBSD'.
  • Docs: Nix'.
  • Docs: openwrt'.
  • Docs: install instructions for Fedora'.
  • Docs: install instructions for Arch Linux'.
  • Docs: 'My VPN broke and need a solution fast'.

Removed

  • Python 2.6 support.
  • Python 2.7 support.

Fixed

  • Remove debug message for getpeername failure.
  • Fix crash triggered by port scans closing socket.
  • Added "Running as a service" to docs.
  • Systemd integration.
  • Trap UnicodeError to handle cases where hostnames returned by DNS are invalid.
  • Formatting error in CHANGES.rst
  • Various errors in documentation.
  • Nftables based method.
  • Make hostwatch locale-independent (#379).
  • Add tproxy udp port mark filter that was missed in #144, fixes #367.
  • Capturing of local DNS servers.
  • Crashing on ECONNABORTED.
  • Size of pf_rule, which grew in OpenBSD 6.4.
  • Use prompt for sudo, not needed for doas.
  • Arch linux installation instructions.
  • tests for existing PR-312 (#337).
  • Hyphen in hostname.
  • Assembler import (#319).

0.78.5 - 2019-01-28

Added

  • doas support as replacement for sudo on OpenBSD.
  • Added ChromeOS section to documentation (#262)
  • Add --no-sudo-pythonpath option

Fixed

  • Fix forwarding to a single port.
  • Various updates to documentation.
  • Don't crash if we can't look up peername
  • Fix missing string formatting argument
  • Moved sshuttle/tests into tests.
  • Updated bandit config.
  • Replace path /dev/null by os.devnull.
  • Added coverage report to tests.
  • Fixes support for OpenBSD (6.1+) (#282).
  • Close stdin, stdout, and stderr when using syslog or forking to daemon (#283).
  • Changes pf exclusion rules precedence.
  • Fix deadlock with iptables with large ruleset.
  • docs: document --ns-hosts --to-ns and update --dns.
  • Use subprocess.check_output instead of run.
  • Fix potential deadlock condition in nft_get_handle.
  • auto-nets: retrieve routes only if using auto-nets.

0.78.4 - 2018-04-02

Added

  • Add homebrew instructions.
  • Route traffic by linux user.
  • Add nat-like method using nftables instead of iptables.

Changed

  • Talk to custom DNS server on pod, instead of the ones in /etc/resolv.conf.
  • Add new option for overriding destination DNS server.
  • Changed subnet parsing. Previously 10/8 become 10.0.0.0/8. Now it gets parsed as 0.0.0.10/8.
  • Make hostwatch find both fqdn and hostname.
  • Use versions of python3 greater than 3.5 when available (e.g. 3.6).

Removed

  • Remove Python 2.6 from automatic tests.

Fixed

  • Fix case where there is no --dns.
  • [pf] Avoid port forwarding from loopback address.
  • Use getaddrinfo to obtain a correct sockaddr.
  • Skip empty lines on incoming routes data.
  • Just skip empty lines of routes data instead of stopping processing.
  • [pf] Load pf kernel module when enabling pf.
  • [pf] Test double restore (ipv4, ipv6) disables only once; test kldload.
  • Fixes UDP and DNS proxies binding to the same socket address.
  • Mock socket bind to avoid depending on local IPs being available in test box.
  • Fix no value passed for argument auto_hosts in hw_main call.
  • Fixed incorrect license information in setup.py.
  • Preserve peer and port properly.
  • Make --to-dns and --ns-host work well together.
  • Remove test that fails under OSX.
  • Specify pip requirements for tests.
  • Use flake8 to find Python syntax errors or undefined names.
  • Fix compatibility with the sudoers file.
  • Stop using SO_REUSEADDR on sockets.
  • Declare 'verbosity' as global variable to placate linters.
  • Adds 'cd sshuttle' after 'git' to README and docs.
  • Documentation for loading options from configuration file.
  • Load options from a file.
  • Fix firewall.py.
  • Move sdnotify after setting up firewall rules.
  • Fix tests on Macos.

0.78.3 - 2017-07-09

The "I should have done a git pull" first release.

Fixed

  • Order first by port range and only then by swidth

0.78.2 - 2017-07-09

Added

  • Adds support for tunneling specific port ranges (#144).
  • Add support for iproute2.
  • Allow remote hosts with colons in the username.
  • Re-introduce ipfw support for sshuttle on FreeBSD with support for --DNS option as well.
  • Add support for PfSense.
  • Tests and documentation for systemd integration.
  • Allow subnets to be given only by file (-s).

Fixed

  • Work around non tabular headers in BSD netstat.
  • Fix UDP and DNS support on Python 2.7 with tproxy method.
  • Fixed tests after adding support for iproute2.
  • Small refactoring of netstat/iproute parsing.
  • Set started_by_sshuttle False after disabling pf.
  • Fix punctuation and explain Type=notify.
  • Move pytest-runner to tests_require.
  • Fix warning: closed channel got=STOP_SENDING.
  • Support sdnotify for better systemd integration.
  • Fix #117 to allow for no subnets via file (-s).
  • Fix argument splitting for multi-word arguments.
  • requirements.rst: Fix mistakes.
  • Fix typo, space not required here.
  • Update installation instructions.
  • Support using run from different directory.
  • Ensure we update sshuttle/version.py in run.
  • Don't print python version in run.
  • Add CWD to PYTHONPATH in run.

0.78.1 - 2016-08-06

  • Fix readthedocs versioning.
  • Don't crash on ENETUNREACH.
  • Various bug fixes.
  • Improvements to BSD and OSX support.

0.78.0 - 2016-04-08

  • Don't force IPv6 if IPv6 nameservers supplied. Fixes #74.
  • Call /bin/sh as users shell may not be POSIX compliant. Fixes #77.
  • Use argparse for command line processing. Fixes #75.
  • Remove useless --server option.
  • Support multiple -s (subnet) options. Fixes #86.
  • Make server parts work with old versions of Python. Fixes #81.

0.77.2 - 2016-03-07

  • Accidentally switched LGPL2 license with GPL2 license in 0.77.1 - now fixed.

0.77.1 - 2016-03-07

  • Use semantic versioning. http://semver.org/
  • Update GPL 2 license text.
  • New release to fix PyPI.

0.77 - 2016-03-03

  • Various bug fixes.
  • Fix Documentation.
  • Add fix for MacOS X issue.
  • Add support for OpenBSD.

0.76 - 2016-01-17

  • Add option to disable IPv6 support.
  • Update documentation.
  • Move documentation, including man page, to Sphinx.
  • Use setuptools-scm for automatic versioning.

0.75 - 2016-01-12

  • Revert change that broke sshuttle entry point.

0.74 - 2016-01-10

  • Add CHANGES.rst file.
  • Numerous bug fixes.
  • Python 3.5 fixes.
  • PF fixes, especially for BSD.