Skip to content

Releases: Jigsaw-Code/outline-ss-server

[BROKEN] v1.2.0

27 Aug 14:16
13f8610

Choose a tag to compare

[BROKEN] v1.2.0 Pre-release
Pre-release

Features:

  • Protection against replays of server data
  • Version flag and metric

Changelog

1c62281 Add SetSaltGenerator
ff277dc Add build_info metric
777815a Add comments on entropy check
64c3a21 Add documentation on probing defenses
cfd8e00 Add license headers
bda76c7 Clarify probability claims
ba08144 Make TCP code more readable
43fb8a9 Make tests pass under the race detector
8495c76 Merge branch 'master' into bemasc-blocksalt
cf963fa Merge pull request #74 from Jigsaw-Code/bemasc-race
40eab64 Merge pull request #75 from Jigsaw-Code/fortuna-read
60d0292 Merge pull request #76 from Jigsaw-Code/fortuna-version
13f8610 Merge pull request #78 from Jigsaw-Code/bemasc-blocksalt
20a6cc7 Merge pull request #79 from Jigsaw-Code/bemasc-race
62e89ea Move entropy check into MakeCipherEntry
f820bb2 Move to a gRPC-style interface
3938bf1 Record server salts
1236943 Remove data race in the benchmarks due to logging
2f30fe4 Remove multi-Serve capability
b447202 Remove unused field from fakeAEAD
463afb0 Rename ERR_REPLAY and add a test
5c265e8 Respond to comments and various improvements
958c818 Restructure salt size validity checks
78d6b15 Revert "Restructure salt size validity checks"
91d3f3b Review feedback
25cbc2f Switch to HMAC-SHA1 and HKDF-SHA1
1c6ebb5 Use the shadowsocks cipher to mark the salt

v1.1.8

28 Jul 21:59
b3fb4cc

Choose a tag to compare

Changelog

0e5ffbf Concatenate header and first upstream payload
b31f9e7 Fix client-to-proxy location metrics for UDP
7dee86c Merge pull request #70 from Jigsaw-Code/bemasc-udp-location
b3fb4cc Merge pull request #73 from Jigsaw-Code/bemasc-lazy2
0e9dba0 Relax comment and tighten tests
753b772 Remove temporary allocation, short timeout, add a test
2c8fbca Reorganize deferred metrics reporting

v1.1.7

07 Jul 18:23
196a0a1

Choose a tag to compare

  • Change to first server data packet size to make it not predictable.

Changelog

7687d0a Coalesce the salt and the first message
de20fbe Expand comment
196a0a1 Merge pull request #69 from Jigsaw-Code/bemasc-salt

v1.1.6

07 Jul 02:46
f193d21

Choose a tag to compare

  • Memory optimization: replace summaries with histograms in the Prometheus metrics.

Changelog

f193d21 Merge pull request #68 from Jigsaw-Code/bemasc-summary
7cb116c Remove Summaries and reorganize cipher search
4620437 Use a runtime consistency check instead of a list

v1.1.5

11 Jun 22:01
e44f4cc

Choose a tag to compare

This release significantly reduces memory consumption by reducing how long UDP associations live

  • Close DNS associations when we receive a response
  • Use 17s timeout instead of 5min for DNS associations

Changelog

529ab38 Improve names and comments
e44f4cc Merge pull request #66 from Jigsaw-Code/bemasc-dns
58db43a Merge pull request #67 from Jigsaw-Code/bemasc-writerto
d22d0ff Move timeout logic to a PacketConn wrapper
4018ff6 Optimize NAT for DNS
53a63a7 Refactor shadowsocksReader
a7c2a26 Simplify and separate concerns

v1.1.4

29 May 03:22
570c900

Choose a tag to compare

Fixes infinite loop on v1.1.3

Changelog

570c900 Merge pull request #65 from Jigsaw-Code/bemasc-revert
524c75a Revert "Remove unused variable"

v1.1.3 [broken]

28 May 00:32
22267e6

Choose a tag to compare

This release adds memory improvements:

  • In-place encryption for UDP, cutting the UDP memory usage in almost half.
  • Removes allocations from debug logging that happened even when debug logging was disabled.

We also switch the UDP NAT behavior to outbound refresh, as specified by RFC 4787.

Changelog

2056b04 Add comments referencing RFC 4787
e1bee24 Avoid debug logging related memory allocations
d250918 Fix flaky test
20deb0d Improve comments
47cc464 Merge pull request #59 from Jigsaw-Code/bemasc-flaky
1c53423 Merge pull request #60 from Jigsaw-Code/bemasc-udp-debug
a9cd4e4 Merge pull request #62 from Jigsaw-Code/bemasc-udp-buffer
7252ab2 Merge pull request #63 from Jigsaw-Code/bemasc-udp-location
22267e6 Merge pull request #64 from Jigsaw-Code/bemasc-outbound
b6e7da8 Move geoip check before net.ListenPacket
ae2cba7 Remove unused variable
4a1f7ac Switch to NAT outbound refresh
727e42c Use in-place encryption for downstream UDP
fcc4c3c Use logger.Debugf directly inside the if-block

v1.1.2

19 May 19:23
b0d9c47

Choose a tag to compare

User visible changes:

  • Memory improvement: Client location is now stored in the NAT map rather than looked up for every UDP packet. This saves unnecessary memory allocations.

Changelog

8c69318 Add a comment explaining the client location cache
00ad61a Add benchmarks for the metrics functions
83414d4 Add build status image
b69ba1d Don't remove install instructions
48a5ef8 Fix a race in the replay integration test
80f6edd Merge pull request #56 from Jigsaw-Code/bemasc-metrics-bench
f6622da Merge pull request #57 from Jigsaw-Code/bemasc-udp-location
b0d9c47 Merge pull request #58 from Jigsaw-Code/bemasc-build
3376a68 Rename function, move submodule, and update README
6b97239 Store client location in the NAT map
0f03e39 Update build instructions and add Travis CI

v1.1.1

14 May 22:14
e7dec26

Choose a tag to compare

Improvements to memory consumption and upgraded dependencies

Changelog

a92e4a2 Add a server close by the TCP echo test server
9c5e578 Add client-server integration tests
a41e18e Change IP check function names
2e03f7c Clarification based on comments
959dc13 Cleanup based on review comments
4d78853 Merge pull request #51 from Jigsaw-Code/bemasc-integration-tests
631fec8 Merge pull request #53 from Jigsaw-Code/bemasc-reader
a613e7b Merge pull request #54 from Jigsaw-Code/bemasc-cast
e7dec26 Merge pull request #55 from Jigsaw-Code/fortuna-deps
ce83321 Remove an allocation in shadowsocksReader.Read
10c8c3f Rename to "byteWrapper"
98261b0 Rename to "checkAllowedIP"
3751e47 Replace allowAllIPs with a configurable IP policy
976c71a Reuse a bytes.Reader in shadowsocksWriter
d95413a Split test cipher and test secret generation
30dd74e Upgrade dependencies

v1.1.0

28 Feb 22:32
77d104c

Choose a tag to compare

The main feature of version 1.1.0 is the protection against replay attacks with the --replay_history flag.

Changelog

6fbc31c Ensure thread safety on cipher updates
54009c8 Fix linter errors and minor readability fixes
8221309 Fix metrics and add test
fdd445a Merge pull request #45 from Jigsaw-Code/bemasc-threading
249dc3e Merge pull request #48 from Jigsaw-Code/bemasc-cleanup
77d104c Merge pull request #50 from Jigsaw-Code/fortuna-fix
7e24626 Split debugLogID into UDP and TCP versions
2859196 Use Update instead of Swap