Module libafl::bolts::os::unix_shmem_server[][src]

Expand description

On Android, we can only share maps between processes by serializing fds over sockets. On MacOS, we cannot rely on reference counting for Maps. Hence, the unix_shmem_server keeps track of existing maps, creates new maps for clients, and forwards them over unix domain sockets.

Structs

ShMem that got served from a ShMemService via domain sockets and can now be used in this program. It works around Android’s lack of “proper” shared maps.

Hands out served shared maps, as used on Android.

Wrapper for the service background thread. When this is dropped, the background thread will get killed and joined.

Enums

A request sent to the ShMem server to receive a fd to a shared map

The ShMemService is a service handing out ShMem pages via unix domain sockets. It is mainly used and needed on Android.