All notable changes to this project will be documented in this file. The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Add homebrew instructions.
- Route traffic by linux user.
- Add nat-like method using nftables instead of iptables.
- 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).
- Remove Python 2.6 from automatic tests.
- 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.
The "I should have done a git pull" first release.
- Order first by port range and only then by swidth
- 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).
- 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.
- Fix readthedocs versioning.
- Don't crash on ENETUNREACH.
- Various bug fixes.
- Improvements to BSD and OSX support.
- 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.
- Accidentally switched LGPL2 license with GPL2 license in 0.77.1 - now fixed.
- Use semantic versioning. http://semver.org/
- Update GPL 2 license text.
- New release to fix PyPI.
- Various bug fixes.
- Fix Documentation.
- Add fix for MacOS X issue.
- Add support for OpenBSD.
- Add option to disable IPv6 support.
- Update documentation.
- Move documentation, including man page, to Sphinx.
- Use setuptools-scm for automatic versioning.
- Revert change that broke sshuttle entry point.
- Add CHANGES.rst file.
- Numerous bug fixes.
- Python 3.5 fixes.
- PF fixes, especially for BSD.