bbdb25f680
We are making a change to uevent_open_socket() in libcutils related to setting the receive buffer size of netlink uevent sockets. After setting SO_RCVBUF, we immediately read it back using getsockopt() to verify that the setsockopt() call was effective. Only if it was not effective, we call setsockopt() with SO_RCVBUFFORCE. getsockopt() previously caused SELinux denials like the following: avc: denied { getopt } for comm="usb@1.1-service" scontext=u:r:hal_usb_default:s0 tcontext=u:r:hal_usb_default:s0 tclass=netlink_kobject_uevent_socket permissive=0 Bug: 119933843 Change-Id: I7bbb1eb1fa7ade2c94afc52ab1e28762f86a7d1f
18 lines
664 B
Text
18 lines
664 B
Text
# HwBinder IPC from client to server, and callbacks
|
|
binder_call(hal_usb_client, hal_usb_server)
|
|
binder_call(hal_usb_server, hal_usb_client)
|
|
|
|
hal_attribute_hwservice(hal_usb, hal_usb_hwservice)
|
|
|
|
allow hal_usb self:netlink_kobject_uevent_socket create;
|
|
allow hal_usb self:netlink_kobject_uevent_socket setopt;
|
|
allow hal_usb self:netlink_kobject_uevent_socket getopt;
|
|
allow hal_usb self:netlink_kobject_uevent_socket bind;
|
|
allow hal_usb self:netlink_kobject_uevent_socket read;
|
|
allow hal_usb sysfs:dir open;
|
|
allow hal_usb sysfs:dir read;
|
|
allow hal_usb sysfs:file read;
|
|
allow hal_usb sysfs:file open;
|
|
allow hal_usb sysfs:file write;
|
|
allow hal_usb sysfs:file getattr;
|
|
|