1. 19 Oct, 2020 1 commit
    • Scott Kuhl's avatar
      Update/document client's handling of IPv4 and IPv6. · b7a29aca
      Scott Kuhl authored
      Additional comments, checks, warning messages, and diagnostic
      information is printed out when the client starts.
      
      We assume IPv4 is always present and enabled. We assume IPv6 is not
      supported when it is disabled at the command line or when it is not
      supported by the firewall method. Warn if IPv6 is disabled but the
      user specified IPv6 subnets, IPv6 DNS servers, or IPv6 excludes that
      are effectively ignored.
      
      Instead of indicating which features are on/off, we also indicate if
      features are available in the verbose output.
      
      We also more clearly print the subnets that we forward, excludes, and
      any redirected DNS servers to the terminal output.
      
      These changes should help handling bug reports and make it clearer to
      users what is happening. It should also make it more graceful when a
      user specifies a subnet/exclude with hostname that resolves to both
      IPv4 and IPv6 (but IPv6 is disabled in sshuttle).
      b7a29aca
  2. 18 Oct, 2020 4 commits
  3. 17 Oct, 2020 1 commit
    • Scott Kuhl's avatar
      When subnets and excludes are specified with hostnames, use all IPs. · 036c49e4
      Scott Kuhl authored
      The list of subnets to route over VPN and the list of subnets to
      exclude are parsed in option.py parse_subnetport(). Hostnames or IP
      addresses are supported. If a hostname was provided, only the first IP
      address was considered. This could result in some traffic not
      traversing the VPN that the user might expect should traverse it from
      the arguments passed to sshuttle.
      
      This patch makes the function handle all of the IPs if a hostname is
      provided. If a user provides a hostname with a CIDR mask, problems can
      occur and we warn the user about the issue.
      
      If the user includes a hostname with both an IPv4 and an IPv6 address,
      and the underlying method doesn't support IPv6, then this patch will
      cause sshuttle to fail. I plan to provide a future patch where failure
      won't occur if the only place IPv6 addresses appear is in the exclude
      list. In that case it should be safe to ignore the IPv6 address.
      
      This patch also changes parse_ipport() which is used by the --to-ns
      option. If the user provides a hostname here, we just use the first IP
      from the hostname and warn the user that only one is being used.
      036c49e4
  4. 10 Oct, 2020 1 commit
  5. 09 Oct, 2020 1 commit
    • Scott Kuhl's avatar
      Include sshuttle version in verbose output. · 84e43d31
      Scott Kuhl authored
      Some bug reports include verbose sshuttle output but lack the version
      that is being used. Including the sshuttle version in the output may
      make it easier to handle future bug reports.
      84e43d31
  6. 08 Oct, 2020 2 commits
  7. 06 Oct, 2020 2 commits
  8. 05 Oct, 2020 2 commits
  9. 29 Sep, 2020 1 commit
  10. 28 Sep, 2020 1 commit
  11. 15 Sep, 2020 1 commit
  12. 14 Sep, 2020 1 commit
  13. 09 Sep, 2020 1 commit
  14. 08 Sep, 2020 4 commits
  15. 07 Sep, 2020 1 commit
  16. 30 Aug, 2020 1 commit
  17. 29 Aug, 2020 1 commit
    • Joseph Barker's avatar
      Fix python2 client compatibility · ec5fb683
      Joseph Barker authored
      Python2 ignores the byte string qualification (b’foo’)  but falls over for the combination rb for this regexp. Switching the qualification to br appears to fix this and works in both python2 and python3.
      ec5fb683
  18. 28 Aug, 2020 5 commits
  19. 27 Aug, 2020 2 commits
  20. 24 Aug, 2020 1 commit
  21. 21 Aug, 2020 2 commits
  22. 18 Aug, 2020 1 commit
  23. 17 Aug, 2020 2 commits
  24. 16 Aug, 2020 1 commit