• Brian Russell's avatar
    Add socket option BINDTODEVICE · b963542e
    Brian Russell authored
    Linux now supports Virtual Routing and Forwarding (VRF) as per:
    
    https://www.kernel.org/doc/Documentation/networking/vrf.txt
    
    In order for an application to bind or connect to a socket with an
    address in a VRF, they need to first bind the socket to the VRF device:
    
        setsockopt(sd, SOL_SOCKET, SO_BINDTODEVICE, dev, strlen(dev)+1);
    
    Note "dev" is the VRF device, eg. VRF "blue", rather than an interface
    enslaved to the VRF.
    
    Add a new socket option, ZMQ_BINDTODEVICE, to bind a socket to a device.
    In general, if a socket is bound to a device, eg. an interface, only
    packets received from that particular device are processed by the socket.
    
    If device is a VRF device, then subsequent binds/connects to that socket
    use addresses in the VRF routing table.
    b963542e
Name
Last commit
Last update
.github Loading commit data...
RELICENSE Loading commit data...
builds Loading commit data...
doc Loading commit data...
include Loading commit data...
m4 Loading commit data...
packaging Loading commit data...
perf Loading commit data...
src Loading commit data...
tests Loading commit data...
tools Loading commit data...
.gitignore Loading commit data...
.hgeol Loading commit data...
.mailmap Loading commit data...
.travis.yml Loading commit data...
AUTHORS Loading commit data...
CMakeLists.txt Loading commit data...
COPYING Loading commit data...
COPYING.LESSER Loading commit data...
Dockerfile Loading commit data...
Doxygen.cfg Loading commit data...
FindSodium.cmake Loading commit data...
INSTALL Loading commit data...
Makefile.am Loading commit data...
NEWS Loading commit data...
README.cygwin.md Loading commit data...
README.doxygen.md Loading commit data...
README.md Loading commit data...
ZeroMQConfig.cmake.in Loading commit data...
acinclude.m4 Loading commit data...
appveyor.yml Loading commit data...
autogen.sh Loading commit data...
branding.bmp Loading commit data...
ci_build.sh Loading commit data...
ci_deploy.sh Loading commit data...
configure.ac Loading commit data...
installer.ico Loading commit data...
version.sh Loading commit data...