]> Cypherpunks repositories - gostls13.git/commitdiff
net: add example for CIDRMask
authorKevin Burke <kev@inburke.com>
Thu, 3 Nov 2016 22:34:05 +0000 (15:34 -0700)
committerBrad Fitzpatrick <bradfitz@golang.org>
Wed, 16 Nov 2016 23:25:51 +0000 (23:25 +0000)
I had trouble translating the documentation language into a subnet
- e.g. whether /31 was CIDRMask(1, 31) or CIDRMask(1, 32) or
CIDRMask(31, 32) so I thought I'd add a short example showing how to
create the right masks.

Change-Id: Ia6a6de08c5c30b6d2249b3194cced2d3c383e317
Reviewed-on: https://go-review.googlesource.com/32677
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Run-TryBot: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>

src/net/example_test.go

index 6f2f9074c1f627687ea7895b003c348bdb832fbb..d52e7f196d7659e4d83cbcc8da447bab422c28b2 100644 (file)
@@ -5,6 +5,7 @@
 package net_test
 
 import (
+       "fmt"
        "io"
        "log"
        "net"
@@ -34,3 +35,13 @@ func ExampleListener() {
                }(conn)
        }
 }
+
+func ExampleCIDRMask() {
+       // This mask corresponds to a /31 subnet
+       fmt.Println(net.CIDRMask(31, 32))
+
+       // This mask corresponds to a /64 subnet for a IPv6 mask
+       fmt.Println(net.CIDRMask(64, 128))
+       // Output: fffffffe
+       // ffffffffffffffff0000000000000000
+}