OXIESEC PANEL
- Current Dir:
/
/
opt
/
golang
/
1.19.4
/
src
/
vendor
/
golang.org
/
x
/
net
/
route
Server IP: 191.96.63.230
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
12/01/2022 06:13:56 PM
rwxr-xr-x
📄
address.go
9.85 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
binary.go
2.78 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
empty.s
279 bytes
12/01/2022 06:13:01 PM
rw-r--r--
📄
interface.go
1.92 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
interface_announce.go
805 bytes
12/01/2022 06:13:01 PM
rw-r--r--
📄
interface_classic.go
1.63 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
interface_freebsd.go
1.9 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
interface_multicast.go
864 bytes
12/01/2022 06:13:01 PM
rw-r--r--
📄
interface_openbsd.go
2.13 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
message.go
1.58 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
route.go
4.27 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
route_classic.go
1.9 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
route_openbsd.go
1.7 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
sys.go
969 bytes
12/01/2022 06:13:01 PM
rw-r--r--
📄
sys_darwin.go
2.67 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
sys_dragonfly.go
2.67 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
sys_freebsd.go
4.58 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
sys_netbsd.go
2.15 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
sys_openbsd.go
2.05 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
syscall.go
446 bytes
12/01/2022 06:13:01 PM
rw-r--r--
📄
zsys_darwin.go
1.96 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
zsys_dragonfly.go
1.95 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
zsys_freebsd_386.go
2.8 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
zsys_freebsd_amd64.go
2.7 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
zsys_freebsd_arm.go
2.7 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
zsys_freebsd_arm64.go
2.7 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
zsys_netbsd.go
1.89 KB
12/01/2022 06:13:01 PM
rw-r--r--
📄
zsys_openbsd.go
1.95 KB
12/01/2022 06:13:01 PM
rw-r--r--
Editing: route_classic.go
Close
// Copyright 2016 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. //go:build darwin || dragonfly || freebsd || netbsd // +build darwin dragonfly freebsd netbsd package route import ( "runtime" "syscall" ) func (m *RouteMessage) marshal() ([]byte, error) { w, ok := wireFormats[m.Type] if !ok { return nil, errUnsupportedMessage } l := w.bodyOff + addrsSpace(m.Addrs) if runtime.GOOS == "darwin" || runtime.GOOS == "ios" { // Fix stray pointer writes on macOS. // See golang.org/issue/22456. l += 1024 } b := make([]byte, l) nativeEndian.PutUint16(b[:2], uint16(l)) if m.Version == 0 { b[2] = rtmVersion } else { b[2] = byte(m.Version) } b[3] = byte(m.Type) nativeEndian.PutUint32(b[8:12], uint32(m.Flags)) nativeEndian.PutUint16(b[4:6], uint16(m.Index)) nativeEndian.PutUint32(b[16:20], uint32(m.ID)) nativeEndian.PutUint32(b[20:24], uint32(m.Seq)) attrs, err := marshalAddrs(b[w.bodyOff:], m.Addrs) if err != nil { return nil, err } if attrs > 0 { nativeEndian.PutUint32(b[12:16], uint32(attrs)) } return b, nil } func (w *wireFormat) parseRouteMessage(typ RIBType, b []byte) (Message, error) { if len(b) < w.bodyOff { return nil, errMessageTooShort } l := int(nativeEndian.Uint16(b[:2])) if len(b) < l { return nil, errInvalidMessage } m := &RouteMessage{ Version: int(b[2]), Type: int(b[3]), Flags: int(nativeEndian.Uint32(b[8:12])), Index: int(nativeEndian.Uint16(b[4:6])), ID: uintptr(nativeEndian.Uint32(b[16:20])), Seq: int(nativeEndian.Uint32(b[20:24])), extOff: w.extOff, raw: b[:l], } errno := syscall.Errno(nativeEndian.Uint32(b[28:32])) if errno != 0 { m.Err = errno } var err error m.Addrs, err = parseAddrs(uint(nativeEndian.Uint32(b[12:16])), parseKernelInetAddr, b[w.bodyOff:]) if err != nil { return nil, err } return m, nil }