Mercurial
annotate gara/main.go @ 93:be91a73d801a
[MrJuneJune] Updated my website.
| author | June Park <parkjune1995@gmail.com> |
|---|---|
| date | Fri, 02 Jan 2026 18:02:22 -0800 |
| parents | c2706ffb442b |
| children |
| rev | line source |
|---|---|
|
42
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
1 package main |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
2 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
3 import ( |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
4 "fmt" |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
5 "bytes" |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
6 "net" |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
7 ) |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
8 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
9 type Client struct { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
10 name string |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
11 conn net.Conn |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
12 message []byte |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
13 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
14 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
15 var clients map[string]Client = make(map[string]Client) |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
16 var allowedCharacters = map[byte]bool{ |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
17 'a': true, 'b': true, 'c': true, 'd': true, 'e': true, |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
18 'f': true, 'g': true, 'h': true, 'i': true, 'j': true, |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
19 'k': true, 'l': true, 'm': true, 'n': true, 'o': true, |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
20 'p': true, 'q': true, 'r': true, 's': true, 't': true, |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
21 'u': true, 'v': true, 'w': true, 'x': true, 'y': true, 'z': true, |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
22 'A': true, 'B': true, 'C': true, 'D': true, 'E': true, |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
23 'F': true, 'G': true, 'H': true, 'I': true, 'J': true, |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
24 'K': true, 'L': true, 'M': true, 'N': true, 'O': true, |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
25 'P': true, 'Q': true, 'R': true, 'S': true, 'T': true, |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
26 'U': true, 'V': true, 'W': true, 'X': true, 'Y': true, 'Z': true, |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
27 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
28 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
29 func IsChacterAllowed(chars []byte) bool { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
30 for _, b := range chars { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
31 if !allowedCharacters[b] { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
32 return false |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
33 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
34 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
35 return true |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
36 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
37 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
38 func ResetClient(client Client) { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
39 ResetClientMessage(client) |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
40 delete(clients, client.conn.RemoteAddr().String()) |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
41 client.conn.Close() |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
42 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
43 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
44 func ResetClientMessage(client Client) { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
45 for i := range client.message { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
46 client.message[i] = 0 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
47 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
48 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
49 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
50 func Loggers(value string) { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
51 fmt.Println(value) |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
52 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
53 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
54 func SendString(client Client, value string) { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
55 fmt.Println("Notifying User: ", client.name) |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
56 client.conn.Write(([]byte)(value+"\n")) |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
57 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
58 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
59 func SendToAll(currentClient Client) { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
60 for key, client := range clients { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
61 if currentClient.conn.RemoteAddr().String() == key { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
62 continue |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
63 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
64 formattedMessage := fmt.Sprintf("%v: %v", currentClient.name, (string)(currentClient.message)) |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
65 SendString(client, formattedMessage) |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
66 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
67 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
68 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
69 func HandleConnection(conn net.Conn) { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
70 client := Client{name: "unknown", conn: conn, message: make([]byte, 100)} |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
71 defer ResetClient(client) |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
72 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
73 SendString(client, "Hello good sir. What is your name?(less than 100 character and no special characters)\n") |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
74 for { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
75 _, err := conn.Read(client.message) |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
76 if err != nil { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
77 SendString(client, "Something went wrong. Try again.") |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
78 continue |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
79 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
80 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
81 for i := 0; i < len(client.message) - 1; i++ { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
82 if (string)(client.message[i:i+2]) == "\r\n" { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
83 client.name = (string)(client.message[:i]) |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
84 break; |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
85 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
86 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
87 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
88 if !IsChacterAllowed(([]byte)(client.name)) { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
89 SendString(client, "Only allow alphabets.") |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
90 continue |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
91 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
92 if client.name[0] == (byte)('\r') { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
93 continue |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
94 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
95 ResetClientMessage(client) |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
96 break |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
97 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
98 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
99 clients[client.conn.RemoteAddr().String()] = client |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
100 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
101 // Hnadle all messages. |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
102 for { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
103 err_n := 0 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
104 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
105 if err_n > 10 { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
106 break; |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
107 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
108 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
109 _, err := conn.Read(client.message) |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
110 if err != nil { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
111 Loggers("Something went wrong") |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
112 err_n += 1 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
113 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
114 if bytes.Equal(([]byte)("close"), client.message[:5]) { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
115 break |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
116 } else { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
117 fmt.Println("Working....") |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
118 SendToAll(client) |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
119 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
120 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
121 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
122 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
123 func main() { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
124 PORT := ":4200"; |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
125 server_conn, err := net.Listen("tcp", PORT) |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
126 fmt.Println("Running on ", server_conn.Addr().String()) |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
127 |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
128 if err != nil { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
129 Loggers("Couldn't run the server") |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
130 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
131 for { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
132 conn, err := server_conn.Accept() |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
133 if err != nil { |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
134 Loggers("Couldn't accept a client") |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
135 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
136 go HandleConnection(conn) |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
137 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
138 } |
|
c2706ffb442b
[Gara] Peer to peer chat terminal app using go.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
139 |