Using sendmsg for SCM_CREDS results in EINVAL on PF_INET socket
Steve Watt
steve at Watt.COM
Tue May 27 01:30:55 UTC 2008
In <7EB9398C5B46415B96D2C20A2E261E13 at multiplay.co.uk>, Steven Hartland wrote:
[ Attributions fatally damaged, removing ]
>> :> using the following code to send credentials to a remote host
>> :> results in EINVAL from sendmsg.
>> :>
>> :> I suspect that SCM_CREDS is only valid for PF_LOCAL / PF_UNIX
>> :> sockets and not PF_INET sockets and hence the code in dbus
>> :> is actually invalid.
>> :>
>> :> Can anyone confirm this is the case or not?
>> :
>> :What would it even mean to send credentials to a remote host over an
>> :AF_INET socket?
>>
>> The only way to do it is to do a connect-back to a secure port. In
>> otherwords, to use the identd protocol.
>>
>> Control messages like SCM_CREDS (and descriptor passing for that matter)
>> only work over local protocol sockets.
>
>Thank you for the confirmation guys. I'll look to create a patch
>I can submit to the dbus project to disable the use of SCM_CREDS
>when using PF_UNIX sockets.
I think you got the sense backwards here; SCM_CREDS is OK when using
PF_UNIX / PF_LOCAL. It's PF_INET that shouldn't be going there.
Steve
--
Steve Watt KD6GGD PP-ASEL-IA ICBM: 121W 56' 57.5" / 37N 20' 15.3"
Internet: steve @ Watt.COM Whois: SW32-ARIN
Free time? There's no such thing. It just comes in varying prices...
More information about the freebsd-hackers
mailing list