如何从c代码中增加net.core.rmem_max值

我试图通过getsockopt(udp_fd,SOL_SOCKET,SO_RCVBUF和&rcvBufferSize,&sockOptSize)来增加值SO_RCVBUF,但是我无法将其增加到超过rmem_max值。

所以请告诉我如何通过C代码增加它。 我不想通过命令增加它:

 $ sysctl -w net.core.rmem_max=value 

在Linux内核2.6.14及更高版本中,我们有SO_RCVBUFFORCE,可用于覆盖rmem_max限制。 但是,这需要设置CAP_NET_ADMIN。

检查https://linux.die.net/man/7/socket 。

所以请告诉我如何通过C代码增加它

如果进程具有root权限,则让它printf所需的数字

 /proc/sys/net/core/rmem_max