RTLABEL_ID2NAME(9)

NAME
rtlabel_id2name, rtlabel_id2sa, rtlabel_name2id, rtlabel_unref - manipulate route labels

SYNOPSIS
#include <sys/types.h>
#include <sys/socket.h>
#include <net/route.h>
const char *
rtlabel_id2name(u_int16_t id);
struct sockaddr *
rtlabel_id2sa(u_int16_t labelid, struct sockaddr_rtlabel *sa_rl);
u_int16_t
rtlabel_name2id(char *name);
void
rtlabel_unref(u_int16_t id);

DESCRIPTION
Route labels are arbitrary data appended to route entries and can be acted upon by pf(4).

rtlabel_name2id(char *name)
    Return numerical ID of the route label named name, creating the label if it does not already exist.

rtlabel_id2name(u_int16_t id)
    Return the string name of the route label with ID id.

rtlabel_id2sa(u_int16_t labelid, struct sockaddr_rtlabel *sa_rl)
    Populate sa_rl with the data from the route label specified by labelid.

rtlabel_unref(u_int16_t id)
    Remove a reference to the route label with ID id, freeing the label if the reference count drops to 0.

CONTEXT
rtlabel_id2name(), rtlabel_id2sa(), rtlabel_name2id(), and rtlabel_unref() can be called during autoconf, from process context, or from interrupt context.

RETURN VALUES
rtlabel_name2id() returns 0 if it was unable to create a route label.

SEE ALSO
route(4), route(9)