NG_TEE(4)

NAME
ng_tee - netgraph ``tee'' node type

SYNOPSIS
#include <sys/types.h>
#include <netgraph/ng_tee.h>

DESCRIPTION
The tee node type has a purpose similar to the tee(1) command. Tee nodes are useful for debugging or “snooping” on a connection between two netgraph nodes. Tee nodes have four hooks, right, left, right2left, and left2right. All data received on right is sent unmodified to both hooks left and right2left. Similarly, all data received on left is sent unmodified to both right and left2right.

Packets may also be received on right2left and left2right; if so, they are forwarded unchanged out hooks right and left, respectively.

HOOKS
This node type supports the following hooks:

right
    The connection to the node on the right.

left
    The connection to the node on the left.

right2left
    Tap for right to left traffic.

left2right
    Tap for left to right traffic.

CONTROL MESSAGES
This node type supports the generic control messages, plus the following.

NGM_TEE_GET_STATS (getstats)
    Get statistics, returned as a struct ng_tee_stats.

NGM_TEE_CLR_STATS (clrstats)
    Clear statistics.

SHUTDOWN
This node shuts down upon receipt of an NGM_SHUTDOWN control message, or when all hooks have been disconnected. If both right and left hooks are present, node removes itself from the chain gently, connecting right and left together.

SEE ALSO
tee(1), netgraph(4), ngctl(8)

HISTORY
The ng_tee node type was implemented in FreeBSD 4.0.

AUTHORS
Julian Elischer <julian@FreeBSD.org>