Scroll to navigation

in_pktinfo(2type) in_pktinfo(2type)

NAME

in_pktinfo - information about the incoming packet

LIBRARY

Standard C library (libc-lc)

SYNOPSIS

#include <netinet/in.h>

struct in_pktinfo {

unsigned int ipi_ifindex; /* Interface index */
struct in_addr ipi_spec_dst; /* Local address */
struct in_addr ipi_addr; /* Header Destination address */ };

DESCRIPTION

recvmsg(2)

When returned by recvmsg(2), .ipi_ifindex is the unique index of the interface the packet was received on.

.ipi_spec_dst is the preferred source address for replies to the given packet.

.ipi_addr is the destination address in the packet header.

These addresses are usually the same, but can differ for broadcast or multicast packets. Depending on the configured routes, .ipi_spec_dst might belong to a different interface from the one that received the packet.

sendmsg(2)

If IP_PKTINFO is passed to sendmsg(2) and .ipi_spec_dst is not zero, then it is used as the local source address, for the routing table lookup, and for setting up IP source route options.

When .ipi_ifindex is not zero, the primary local address of the interface specified by the index overwrites .ipi_spec_dst for the routing table lookup.

.ipi_addr is ignored.

STANDARDS

Linux.

HISTORY

Linux 2.2.

SEE ALSO

IP_PKTINFO(2const), setsockopt(2), ip(7)

2025-11-26 Linux man-pages (unreleased)