| // Copyright 2017 The Go Authors. All rights reserved. | |
| // Use of this source code is governed by a BSD-style | |
| // license that can be found in the LICENSE file. | |
| package socket | |
| import ( | |
| "encoding/binary" | |
| "unsafe" | |
| ) | |
| // NativeEndian is the machine native endian implementation of ByteOrder. | |
| var NativeEndian binary.ByteOrder | |
| func init() { | |
| i := uint32(1) | |
| b := (*[4]byte)(unsafe.Pointer(&i)) | |
| if b[0] == 1 { | |
| NativeEndian = binary.LittleEndian | |
| } else { | |
| NativeEndian = binary.BigEndian | |
| } | |
| } |