net

package
v0.9.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 31, 2024 License: Apache-2.0 Imports: 2 Imported by: 1

Documentation

Index

Constants

View Source
const (
	AF_UNSPEC    = 0       // unspecified
	AF_UNIX      = 1       // local to host (pipes)
	AF_LOCAL     = AF_UNIX // backward compatibility
	AF_INET      = 2       // internetwork: UDP, TCP, etc.
	AF_IMPLINK   = 3       // arpanet imp addresses
	AF_PUP       = 4       // pup protocols: e.g. BSP
	AF_CHAOS     = 5       // mit CHAOS protocols
	AF_NS        = 6       // XEROX NS protocols
	AF_ISO       = 7       // ISO protocols
	AF_OSI       = AF_ISO
	AF_ECMA      = 8  // European computer manufacturers
	AF_DATAKIT   = 9  // datakit protocols
	AF_CCITT     = 10 // CCITT protocols, X.25 etc
	AF_SNA       = 11 // IBM SNA
	AF_DECnet    = 12 // DECnet
	AF_DLI       = 13 // DEC Direct data link interface
	AF_LAT       = 14 // LAT
	AF_HYLINK    = 15 // NSC Hyperchannel
	AF_APPLETALK = 16 // Apple Talk
	AF_ROUTE     = 17 // Internal Routing Protocol
	AF_LINK      = 18 // Link layer interface

	AF_COIP = 20 // connection-oriented IP, aka ST II
	AF_CNT  = 21 // Computer Network Technology

	AF_IPX = 23 // Novell Internet Protocol
	AF_SIP = 24 // Simple Internet Protocol

	AF_NDRV = 27      // Network Driver 'raw' access
	AF_ISDN = 28      // Integrated Services Digital Network
	AF_E164 = AF_ISDN // CCITT E.164 recommendation

	AF_INET6   = 30 // IPv6
	AF_NATM    = 31 // native ATM access
	AF_SYSTEM  = 32 // Kernel event messages
	AF_NETBIOS = 33 // NetBIOS
	AF_PPP     = 34 // PPP communication protocol

	AF_RESERVED_36 = 36 // Reserved for internal usage
	AF_IEEE80211   = 37 // IEEE 802.11 protocol
	AF_UTUN        = 38
	AF_VSOCK       = 40 // VM Sockets
	AF_MAX         = 41
)
View Source
const (
	SOCK_STREAM    = 1 // stream socket
	SOCK_DGRAM     = 2 // datagram socket
	SOCK_RAW       = 3 // raw-protocol interface
	SOCK_RDM       = 4 // reliably-delivered message
	SOCK_SEQPACKET = 5 // sequenced packet stream
)
View Source
const (
	EAI_ADDRFAMILY = iota + 1 /* address family for hostname not supported */
	EAI_AGAIN                 /* temporary failure in name resolution */
	EAI_BADFLAGS              /* invalid value for ai_flags */
	EAI_FAIL                  /* non-recoverable failure in name resolution */
	EAI_FAMILY                /* ai_family not supported */
	EAI_MEMORY                /* memory allocation failure */
	EAI_NODATA                /* no address associated with hostname */
	EAI_NONAME                /* hostname nor servname provided, or not known */
	EAI_SERVICE               /* servname not supported for ai_socktype */
	EAI_SOCKTYPE              /* ai_socktype not supported */
	EAI_SYSTEM                /* system error returned in errno */
	EAI_BADHINTS              /* invalid value for hints */
	EAI_PROTOCOL              /* resolved protocol is unknown */
	EAI_OVERFLOW              /* argument buffer overflow */
)
View Source
const (
	ALIGNSIZE = unsafe.Sizeof(c.LongLong(0))
	MAXSIZE   = 128
	PAD1_SIZE = ALIGNSIZE - unsafe.Sizeof(byte(0)) - unsafe.Sizeof(byte(0))
	PAD2_SIZE = MAXSIZE - unsafe.Sizeof(byte(0)) - unsafe.Sizeof(byte(0)) - PAD1_SIZE - ALIGNSIZE
)
View Source
const INET_ADDRSTRLEN = 16

(TODO) merge to inet

View Source
const (
	LLGoPackage = true
)

Variables

This section is empty.

Functions

func Accept

func Accept(sockfd c.Int, addr *SockaddrIn, addrlen *c.Uint) c.Int

func Bind

func Bind(sockfd c.Int, addr *SockaddrIn, addrlen c.Uint) c.Int

func Connect

func Connect(sockfd c.Int, addr *SockAddr, addrlen c.Uint) c.Int

func Freeaddrinfo

func Freeaddrinfo(addrInfo *AddrInfo) c.Int

func Getaddrinfo

func Getaddrinfo(host *c.Char, port *c.Char, addrInfo *AddrInfo, result **AddrInfo) c.Int

func Htonl added in v0.9.6

func Htonl(x c.Uint) c.Uint

func Htons

func Htons(x uint16) uint16

func InetAddr

func InetAddr(s *c.Char) c.Uint

func InetNtop

func InetNtop(af c.Int, src c.Pointer, dst *c.Char, size c.Uint) *c.Char

(TODO) merge to inet

func Listen

func Listen(sockfd c.Int, backlog c.Int) c.Int

func Ntohl added in v0.9.6

func Ntohl(x c.Uint) c.Uint

func Ntohs added in v0.9.6

func Ntohs(x uint16) uint16

func Recv

func Recv(c.Int, c.Pointer, uintptr, c.Int) c.Long

func Send

func Send(c.Int, c.Pointer, uintptr, c.Int) c.Long

func SetSockOpt added in v0.9.6

func SetSockOpt(socket c.Int, level c.Int, optionName c.Int, optionValue c.Pointer, sockLen c.Uint) c.Int

func Socket

func Socket(domain c.Int, typ c.Int, protocol c.Int) c.Int

Types

type AddrInfo

type AddrInfo struct {
	Flags     c.Int
	Family    c.Int
	SockType  c.Int
	Protocol  c.Int
	AddrLen   c.Uint
	CanOnName *c.Char
	Addr      *SockAddr
	Next      *AddrInfo
}

type Hostent

type Hostent struct {
	Name     *c.Char  // official name of host
	Aliases  **c.Char // null-terminated array of alternate names for the host
	AddrType c.Int    // host address type
	Length   c.Int    // length of address
	AddrList **c.Char // null-terminated array of addresses for the host
}

func GetHostByName

func GetHostByName(name *c.Char) *Hostent

type In6Addr

type In6Addr struct {
	U6Addr [16]uint8
}

type InAddr

type InAddr struct {
	Addr c.Uint
}

type SockAddr

type SockAddr struct {
	Len    uint8
	Family uint8
	Data   [14]c.Char
}

type SockaddrIn

type SockaddrIn struct {
	Len    uint8
	Family uint8
	Port   uint16
	Addr   InAddr
	Zero   [8]c.Char
}

type SockaddrIn6

type SockaddrIn6 struct {
	Len      uint8
	Family   uint8
	Port     uint16
	Flowinfo c.Uint
	Addr     In6Addr
	ScopeId  c.Uint
}

type SockaddrStorage added in v0.9.6

type SockaddrStorage struct {
	Len    uint8
	Family uint8
	// contains filtered or unexported fields
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL