Можно ли установить параметры сокета для сокета UDP другим процессом, отличным от процесса, который его создал? - PullRequest
2 голосов
/ 14 января 2020

Я создал сокет UDP через процесс A. Однако у моего процесса A нет доступа root для установки параметров сокета с помощью apts setsockopt из linux, чтобы связать его с широковещательным IP-адресом (255.255.255.255).

Итак, я создал еще один процесс B с правами root для выполнения этой работы. Я передаю дескриптор сокета новому процессу B и пытаюсь установить параметры сокета, как показано ниже:

setsockopt(iSocket_UDP_Client_bcast, SOL_SOCKET, SO_BINDTODEVICE, pszDeviceName, sizeof(strlen(pszDeviceName)))

Однако мне не удается установить параметры сокета, даже если процесс B имеет права root.

Может ли кто-нибудь помочь мне с этим или предложить какой-либо другой способ сделать это?

PS: Я не могу дать права root на мой основной процесс A.

Заранее спасибо

...