title: Grant capabilities to a running process
body: <p>An already running process needs a privileged instruction, like using the SO_RCVBUFFORCE socket option. This process is running as a normal user process.</p>
  
  <p>How to give capability/permission to this process? File-based capability settings are still a dream?</p>
  
  <p>I have tried the <code>/usr/sbin/setpcaps</code> utility from libcap package and the <code>cap_set_proc()</code> api, but the <code>CAP_SETPCAP</code> capability is blocked on the system (a legacy system based on Fedora 4 with 2.6.20 kernel), so it can not grant/remove capabilities for a different-then-self process.</p>
  
  <p>Thought about setting temporary root uid to that process, but is there a way to change the effective UID of an external, already running process ?
  The <code>setuid()</code>/<code>seteuid()</code>/... functions can just modify the current process (who is calling the function).</p>