Crate libc[][src]

Expand description

libc - Raw FFI bindings to platforms’ system libraries

Documentation for other platforms.


9.x compat

Used to hold a copy of the command line, if it had a sane length.


Equivalent to C’s void type when used as a pointer.



max ibase/obase values in bc(1)

max array elements in bc(1)

max scale value in bc(1)

max const string length in bc(1)

max character class name size

max weights for order keyword

size of returned ki_comm name

max expressions nested in expr(1)

hardware rx timestamping

manages counters internally

9000 byte MTU supported

the runtime link state is dynamic

can do Large Receive Offload

understands M_EXTPG mbufs

can be a network console

netmap mode supported/enabled

driver supports polling

can offload checksum on RX

can offload checksum on IPv6 RX

interface can offload TCP

interface can offload TCP6

can do TCP Segmentation Offload

can do TCP6 Segmentation Offload

can offload checksum on TX

can offload checksum on IPv6 TX

hardware supports TX rate limiting

can do TLS encryption and segmentation for TCP

can do TLS encryption and segmentation for TCP6

can do TLS with rate limiting


interface hw can filter vlan tag

hardware VLAN tag support

can do IFCAP_TSO on VLANs

VLAN-compatible MTU


can do IFCAP_TSO on VXLANs

wake on any Magic Packet

wake on any multicast frame

wake on any unicast frame

driver name and unit

generic stats for all kinds of ifaces

specific to the type of interface

(n) receive all multicast packets

use alternate physical connection

(i) broadcast address valid

(i) unconfigurable using ioctl(2)

(n) turn on debugging

(n) interface is winding down

(i) calls if_input in net epoch

per link layer defined bit

per link layer defined bit

per link layer defined bit

(i) is a loopback net

(n) user-requested monitor mode

(i) supports multicast

(n) no address resolution protocol

interface is not part of any groups

(d) tx hardware queue is full

(i) is a point-to-point link

(n) user-requested promisc mode

(n) receive all packets

(n) interface is being renamed

(d) resources allocated

(i) can’t hear own transmissions

(n) static ARP

(n) interface is up

number of interfaces configured

per-interface data table


Third Party Connect

Any distributed FS

IP6 Auth Header

any host internal protocol

any private encr. scheme

AX.25 Frames

Bulk Data Transfer

BackRoom SATNET Monitoring

Control Message Transport

Comp. Prot. HeartBeat

Comp. Prot. Net. Executive

Datagram Congestion Control Protocol

Datagram Delivery

dissimilar gateway prot.

divert pseudo-protocol

last return value of *_input(), meaning “all job for this pkt is done”.

IP6 destination option

exterior gateway protocol

encapsulation header

ISO cnlp

IP6 Encap Sec. Payload

Ethernet IP encapsulation

IP6 fragmentation header

gateway^2 (deprecated)

General Routing Encap.

“hello” routing protocol

IP6 Host Identity Protocol

Host Monitoring

IP6 hop-by-hop options

xns idp

InterDomain Policy Routing

InterDomain Routing

group mgmt protocol



IL transport protocol

Integ. Net Layer Security

Merit Internodal

payload compression (IPComp)

Packet Core Utility

IP encapsulated in IP

for compatibility

Pluribus Packet Core

Reliable Transaction

Locus Address Resoloution

DCN Measurement Subsystems

IPv6 Mobility Header

Mobile Host Routing

Mobile control

IP Mobility


Multicast Transport


Sun net disk proto (temp.)

Next Hop Resolution

IP6 no next header

Network Services

network voice protocol

OLD divert pseudo-proto

private interior gateway

Protocol Independent Mcast

Packet Radio Measurement

Packet Video Protocol

BBN RCC Monitoring

Reliable Data

IP6 routing header

resource reservation

Remote Virtual Disk


Satnet Monitoring

Semaphore Comm. security

Source Demand Routing

SeND pseudo-protocol

IP6 Shim6 Protocol

Strite RPC protocol

Stream protocol II.

Secure VMTP

IP with encryption

Transport Layer Security

tp-4 w/ class negotiation

TP++ Transport

Banyon VINES

VISA Protocol


WIDEBAND Monitoring

Wang Span Network

Cross Net Debugger

Controlling terminal

Current working directory

Jail directory

Root directory

Ktrace vnode

Flags for the process credential.

Steal a bit from ki_cr_flags to indicate that the cred had more than KI_NGROUPS groups.

controlling tty vnode active

size of returned ki_emul

proc blocked on lock ki_lockname

number of groups in ki_groups

session leader

Stack is valid.

Stack swapped out.

max bytes in an input line

link is down

link invalid/unknown

link is up

size of returned lock name

size of returned ki_loginclass

size of returned ki_login

max command name remembered

max hostname size

max interpreter file name length

max login name length (incl. NUL)

max simultaneous processes

max bytes in term canon input line

max bytes in terminal input

max bytes in a file name

max bytes for an exec function

functions not specific to a type of iface

/* max number groups

max supplemental group id’s

max open files per process

marker for empty group set member

max open files per process

max RE’s in interval notation


max length of devicename

size of returned thread name

size of returned wchan message


The 64-bit libc on Solaris and illumos only has readdir_r. If a 32-bit Solaris or illumos target is ever created, it should use __posix_readdir_r. See libc(3LIB) on Solaris or illumos:

Type Definitions