2013-02-11 Sebastian Huber <sebastian.huber@embedded-brains.de>
[official-gcc.git] / libgo / go / net / port.go
blobc24f4ed5b17733da84c7a34e61f909b6ae5309d6
1 // Copyright 2012 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.
5 // Network service port manipulations
7 package net
9 // parsePort parses port as a network service port number for both
10 // TCP and UDP.
11 func parsePort(net, port string) (int, error) {
12 p, i, ok := dtoi(port, 0)
13 if !ok || i != len(port) {
14 var err error
15 p, err = LookupPort(net, port)
16 if err != nil {
17 return 0, err
20 if p < 0 || p > 0xFFFF {
21 return 0, &AddrError{"invalid port", port}
23 return p, nil