Skip to content

Commit 0d2c2e1

Browse files
committed
ipv6: update example for the use of dual stack listener
Updates golang/go#13612. Change-Id: Ic139b6f862a2a24d549bd1f502299a7eac2f0e38 Reviewed-on: https://go-review.googlesource.com/17799 Reviewed-by: Ian Lance Taylor <[email protected]>
1 parent ba406c5 commit 0d2c2e1

File tree

2 files changed

+10
-8
lines changed

2 files changed

+10
-8
lines changed

ipv6/doc.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@
130130
// // error handling
131131
// }
132132
// dst := &net.UDPAddr{IP: group, Port: 1024}
133-
// wcm := ipv6.ControlMessage{TrafficClass: DiffServCS7, HopLimit: 1}
133+
// wcm := ipv6.ControlMessage{TrafficClass: 0xe0, HopLimit: 1}
134134
// for _, ifi := range []*net.Interface{en0, en1} {
135135
// wcm.IfIndex = ifi.Index
136136
// if _, err := p.WriteTo(data[:n], &wcm, dst); err != nil {

ipv6/example_test.go

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import (
1616
)
1717

1818
func ExampleConn_markingTCP() {
19-
ln, err := net.Listen("tcp6", "[::]:1024")
19+
ln, err := net.Listen("tcp", "[::]:1024")
2020
if err != nil {
2121
log.Fatal(err)
2222
}
@@ -29,12 +29,14 @@ func ExampleConn_markingTCP() {
2929
}
3030
go func(c net.Conn) {
3131
defer c.Close()
32-
p := ipv6.NewConn(c)
33-
if err := p.SetTrafficClass(0x28); err != nil { // DSCP AF11
34-
log.Fatal(err)
35-
}
36-
if err := p.SetHopLimit(128); err != nil {
37-
log.Fatal(err)
32+
if c.RemoteAddr().(*net.TCPAddr).IP.To16() != nil && c.RemoteAddr().(*net.TCPAddr).IP.To4() == nil {
33+
p := ipv6.NewConn(c)
34+
if err := p.SetTrafficClass(0x28); err != nil { // DSCP AF11
35+
log.Fatal(err)
36+
}
37+
if err := p.SetHopLimit(128); err != nil {
38+
log.Fatal(err)
39+
}
3840
}
3941
if _, err := c.Write([]byte("HELLO-R-U-THERE-ACK")); err != nil {
4042
log.Fatal(err)

0 commit comments

Comments
 (0)