Mikio Hara | 25668b9 | 2014-03-04 09:26:56 +0900 | [diff] [blame] | 1 | // Copyright 2014 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. |
| 4 | |
| 5 | // +build freebsd,amd64 |
| 6 | |
| 7 | package syscall |
| 8 | |
| 9 | import "unsafe" |
| 10 | |
Mikio Hara | 69275ee | 2015-02-10 12:24:11 +0900 | [diff] [blame] | 11 | func (any *anyMessage) parseRouteMessage(b []byte) *RouteMessage { |
| 12 | p := (*RouteMessage)(unsafe.Pointer(any)) |
| 13 | return &RouteMessage{Header: p.Header, Data: b[rsaAlignOf(int(unsafe.Offsetof(p.Header.Rmx))+SizeofRtMetrics):any.Msglen]} |
| 14 | } |
Yuval Pavel Zholkover | 4a29150 | 2015-12-05 07:28:25 +0000 | [diff] [blame] | 15 | |
| 16 | func (any *anyMessage) parseInterfaceMessage(b []byte) *InterfaceMessage { |
| 17 | p := (*InterfaceMessage)(unsafe.Pointer(any)) |
| 18 | return &InterfaceMessage{Header: p.Header, Data: b[int(unsafe.Offsetof(p.Header.Data))+int(p.Header.Data.Datalen) : any.Msglen]} |
| 19 | } |