package cgo

import "gvisor.dev/gvisor/pkg/sentry/socket/plugin/cgo"

Package cgo provides interfaces definition to interact with third-party network stack. It also implements CGO wrappers to handle Golang arguments to CGO and CGO return values to Golang.

Third-party external network stack will implement interfaces defined in this package in order to be used by gVisor.

Index

Functions

func Accept

func Accept(handle uint32, addrPtr *byte, lenPtr *uint32) int64

Accept is a non-cgo stub function.

func Bind

func Bind(handle uint32, sa []byte) int64

Bind is a non-cgo stub function.

func Close

func Close(handle uint32)

Close is a non-cgo stub function.

func Connect

func Connect(handle uint32, addr []byte) int64

Connect is a non-cgo stub function.

func EpollCreate

func EpollCreate() int

EpollCreate is a non-cgo stub function.

func EpollCtl

func EpollCtl(epfd int32, op int, handle, events uint32)

EpollCtl is a non-cgo stub function.

func EpollWait

func EpollWait(epfd int32, events []syscall.EpollEvent, n int, us int) int

EpollWait is a non-cgo stub function.

func GetPeername

func GetPeername(handle uint32, addr []byte, addrlen *uint32) int64

GetPeername is a non-cgo stub function.

func GetPtr

func GetPtr(bs []byte) unsafe.Pointer

GetPtr is a non-cgo stub function.

func Getsockname

func Getsockname(handle uint32, addr []byte, addrlen *uint32) int64

Getsockname is a non-cgo stub function.

func Getsockopt

func Getsockopt(handle uint32, l int, n int, val []byte, s int) (int64, int)

Getsockopt is a non-cgo stub function.

func InitStack

func InitStack(initStr string, fds []int) error

InitStack is a non-cgo stub function.

func Ioctl

func Ioctl(handle uint32, cmd uint32, buf []byte) int64

Ioctl is a non-cgo stub function.

func Listen

func Listen(handle uint32, backlog int) int64

Listen is a non-cgo stub function.

func PreInitStack

func PreInitStack(pid int) (string, []int, error)

PreInitStack is a non-cgo stub function.

func Read

func Read(handle uint32, buf uintptr, count int) int64

Read is a non-cgo stub function.

func Readiness

func Readiness(handle uint32, mask uint64) int64

Readiness is a non-cgo stub function.

func Readv

func Readv(handle uint32, iovs []syscall.Iovec) int64

Readv is a non-cgo stub function.

func Recvfrom

func Recvfrom(handle uint32, buf, addr []byte, flags int) (int64, int)

Recvfrom is a non-cgo stub function.

func Recvmsg

func Recvmsg(handle uint32, iovs []syscall.Iovec, addr, control []byte, flags int) (int64, int, int, int)

Recvmsg is a non-cgo stub function.

func Sendmsg

func Sendmsg(handle uint32, iovs []syscall.Iovec, addr []byte, flags int) int64

Sendmsg is a non-cgo stub function.

func Sendto

func Sendto(handle uint32, buf uintptr, count int, flags int, addr []byte) int64

Sendto is a non-cgo stub function.

func Setsockopt

func Setsockopt(handle uint32, l int, n int, val []byte) int64

Setsockopt is a non-cgo stub function.

func Shutdown

func Shutdown(handle uint32, how int) int64

Shutdown is a non-cgo stub function.

func Socket

func Socket(domain, skType, protocol int) int64

Socket is a non-cgo stub function.

func Write

func Write(handle uint32, buf uintptr, count int) int64

Write is a non-cgo stub function.

func Writev

func Writev(handle uint32, iovs []syscall.Iovec) int64

Writev is a non-cgo stub function.

Source Files

cgo.go nocgo_stub_unsafe.go

Version
v0.0.0-20250605235530-a6711d1e1dc6 (latest)
Published
Jun 5, 2025
Platform
linux/amd64
Imports
2 packages
Last checked
4 hours ago

Tools for package owners.