Skip to content

Commit

Permalink
Merge branch 'develop'
Browse files Browse the repository at this point in the history
  • Loading branch information
cyfdecyf committed Mar 15, 2013
2 parents 0d7304f + 29d78c2 commit 6e34d27
Show file tree
Hide file tree
Showing 4 changed files with 27 additions and 6 deletions.
6 changes: 3 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
PREFIX := shadowsocks
LOCAL := $(GOPATH)/bin/$(PREFIX)-local
SERVER := $(GOPATH)/bin/$(PREFIX)-server
CGO := CGO_ENABLED=0
CGO := CGO_ENABLED=1

all: $(LOCAL) $(SERVER) $(TEST)

Expand All @@ -14,10 +14,10 @@ clean:

# -a option is needed to ensure we disabled CGO
$(LOCAL): shadowsocks/*.go cmd/$(PREFIX)-local/*.go
cd cmd/$(PREFIX)-local; $(CGO) go install -a
cd cmd/$(PREFIX)-local; $(CGO) go install

$(SERVER): shadowsocks/*.go cmd/$(PREFIX)-server/*.go
cd cmd/$(PREFIX)-server; $(CGO) go install -a
cd cmd/$(PREFIX)-server; $(CGO) go install

local: $(LOCAL)

Expand Down
10 changes: 8 additions & 2 deletions cmd/shadowsocks-local/local.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ import (
"os"
"path"
"strconv"
"time"
)

var debug ss.DebugLog
Expand All @@ -31,6 +32,10 @@ const (
socksCmdConnect = 1
)

func init() {
rand.Seed(time.Now().Unix())
}

func handShake(conn net.Conn) (err error) {
const (
idVer = 0
Expand Down Expand Up @@ -215,7 +220,7 @@ func connectToServer(serverId int, rawaddr []byte, addr string) (remote *ss.Conn
remote, err = ss.DialWithRawAddr(rawaddr, se.server, se.cipher.Copy())
if err != nil {
log.Println("error connecting to shadowsocks server:", err)
const maxFailCnt = 50
const maxFailCnt = 30
if servers.failCnt[serverId] < maxFailCnt {
servers.failCnt[serverId]++
}
Expand All @@ -231,11 +236,12 @@ func connectToServer(serverId int, rawaddr []byte, addr string) (remote *ss.Conn
// some probability according to its fail count, so we can discover recovered
// servers.
func createServerConn(rawaddr []byte, addr string) (remote *ss.Conn, err error) {
const baseFailCnt = 20
n := len(servers.srvCipher)
skipped := make([]int, 0)
for i := 0; i < n; i++ {
// skip failed server, but try it with some probability
if servers.failCnt[i] > 0 && rand.Intn(servers.failCnt[i]+1) != 0 {
if servers.failCnt[i] > 0 && rand.Intn(servers.failCnt[i]+baseFailCnt) != 0 {
skipped = append(skipped, i)
continue
}
Expand Down
15 changes: 15 additions & 0 deletions script/set-version.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
#!/bin/bash

cd "$( dirname "${BASH_SOURCE[0]}" )/.."

if [ $# != 1 ]; then
echo "Usage: $0 <version>"
exit 1
fi

version=$1
#echo $version

sed -i -e "s,\(\tversion \+= \)\".*\"$,\1\"$version\"," shadowsocks/util.go
sed -i -e "s/Version:.*$/Version: $version-1/" deb/DEBIAN/control

2 changes: 1 addition & 1 deletion script/upload.sh
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ upload() {
upload "$version OS X Client 64bit" bin/shadowsocks-local-mac64-$version.gz
upload "$version Linux Client 32bit" bin/shadowsocks-local-linux32-$version.gz
upload "$version Linux Client 64bit" bin/shadowsocks-local-linux64-$version.gz
upload "$version Windows Client 32bit" bin/shadowsocks-local-win64-$version.zip
upload "$version Windows Client 64bit" bin/shadowsocks-local-win64-$version.zip
upload "$version Windows Client 32bit" bin/shadowsocks-local-win32-$version.zip

upload "$version Linux Server 32bit" bin/shadowsocks-server-linux32-$version.gz
Expand Down

0 comments on commit 6e34d27

Please sign in to comment.