-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathmain.go
36 lines (28 loc) · 897 Bytes
/
main.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package main
import (
"flag"
"fmt"
"log"
)
func main() {
host := flag.String("n", "", "Host name prikazan u linkovima na lokalne resurse")
netInterface := flag.String("i", "", "Network interface that the server binds to")
port := flag.Int("p", 70, "Port za kojeg se veže server")
rootdir := flag.String("d", "", "Root direktorij iz kojeg se poslužuje sadržaj (zadana vrijednost je trenutni radni directory)")
logfile := flag.String("l", "", "Datoteka u koju se bilježe zahtjevi klijenata (opcionalno)")
ipv4 := flag.Bool("4", false, "Koristi samo IPv4")
ipv6 := flag.Bool("6", false, "Koristi samo IPv6")
flag.Parse()
network := "tcp"
if *ipv4 {
network = "tcp4"
} else if *ipv6 {
network = "tcp6"
}
srv, _ := NewServer(*host, *netInterface, *port, network, *rootdir, *logfile)
fmt.Println(srv.Address())
err := srv.Serve()
if err != nil {
log.Fatal(err)
}
}