X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvcl%2Fldp.c;fp=src%2Fvcl%2Fldp.c;h=a8062b4ca8dbafbc0d2809b5faf2a168a0983ae7;hb=af9b7156c8fd16c671ce9332613faaf864b075b3;hp=2256a2b9061c4b08db243f9f341c63794e230f44;hpb=ae916b39049669bbada12dbcfecbb4e3f9c09c69;p=vpp.git diff --git a/src/vcl/ldp.c b/src/vcl/ldp.c index 2256a2b9061..a8062b4ca8d 100644 --- a/src/vcl/ldp.c +++ b/src/vcl/ldp.c @@ -67,6 +67,10 @@ #define UDP_SEGMENT 103 #endif +#ifndef SO_ORIGINAL_DST +/* from */ +#define SO_ORIGINAL_DST 80 +#endif typedef struct ldp_worker_ctx_ { u8 *io_buffer; @@ -2043,6 +2047,21 @@ getsockopt (int fd, int level, int optname, break; } break; + case SOL_IP: + switch (optname) + { + case SO_ORIGINAL_DST: + rv = + vls_attr (vlsh, VPPCOM_ATTR_GET_ORIGINAL_DST, optval, optlen); + break; + default: + LDBG (0, + "ERROR: fd %d: getsockopt SOL_IP: vlsh %u " + "optname %d unsupported!", + fd, vlsh, optname); + break; + } + break; case SOL_IPV6: switch (optname) {