1 // Copyright 2009 The Go Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file.
11 type portTest struct {
18 var porttests = []portTest{
19 {"tcp", "echo", 7, true},
20 {"tcp", "discard", 9, true},
21 {"tcp", "systat", 11, true},
22 {"tcp", "daytime", 13, true},
23 {"tcp", "chargen", 19, true},
24 {"tcp", "ftp-data", 20, true},
25 {"tcp", "ftp", 21, true},
26 {"tcp", "telnet", 23, true},
27 {"tcp", "smtp", 25, true},
28 {"tcp", "time", 37, true},
29 {"tcp", "domain", 53, true},
30 {"tcp", "finger", 79, true},
32 {"udp", "echo", 7, true},
33 {"udp", "tftp", 69, true},
34 {"udp", "bootpc", 68, true},
35 {"udp", "bootps", 67, true},
36 {"udp", "domain", 53, true},
37 {"udp", "ntp", 123, true},
38 {"udp", "snmp", 161, true},
39 {"udp", "syslog", 514, true},
41 {"--badnet--", "zzz", 0, false},
42 {"tcp", "--badport--", 0, false},
45 func TestLookupPort(t *testing.T) {
46 for i := 0; i < len(porttests); i++ {
48 if port, err := LookupPort(tt.netw, tt.name); port != tt.port || (err == nil) != tt.ok {
49 t.Errorf("LookupPort(%q, %q) = %v, %s; want %v",
50 tt.netw, tt.name, port, err, tt.port)