Re: [vpp-dev] User Applications on VPP

2021-07-22 Thread Florin Coras
Hi Satish, You can set environment variables within the context of the command that you are executing as opposed to exporting them for the whole system. If you try running nginx as per the wiki page mentioned previously, you should be able to confirm LD_PRELOAD is not globally set after you

Re: [vpp-dev] User Applications on VPP

2021-07-22 Thread satish amara
Hi Florin, Thank you for clarifying. You said that when the LD_PRELOAD env variable is set just before I start the application then only that application syscalls are intercepted. Can you explain how is that mapping is done ( To determine which application socket API needs to be intercepted) ?

Re: [vpp-dev] User Applications on VPP

2021-07-22 Thread Florin Coras
Hi Satish, If the LD_PRELOAD env variable is only set when starting the application, only that application’s syscalls are intercepted. Also note that we don’t intercept all syscalls (check ldp.c for more details). So yes, the architecture in your diagram should be possible. Regards, Florin

Re: [vpp-dev] User Applications on VPP

2021-07-22 Thread Florin Coras
Hi Satish, You can find an example of how to use Nginx with LDP here [1]. In general you can find host stack documentation here [2]. Regards, Florin [1] https://wiki.fd.io/view/VPP/HostStack/LDP/nginx [2] https://wiki.fd.io/view/VPP/HostStack > On Jul 22, 2021, at 7:27 AM, satish amara

[vpp-dev] User Applications on VPP

2021-07-22 Thread satish amara
Hi, I see we have a couple of options for user applications to use the VPP TCP/IP stack. Either by VCL or LD_PRELOAD. I am trying to understand if we can selectively intercept syscalls and injects them into VLS for specific applications. Is LD_PRELOAD can application specific. If so what is the