# Point to Point Protocol daemon
type ppp, domain, domain_deprecated;
type ppp_device, dev_type;
type ppp_exec, exec_type, file_type;

net_domain(ppp)

r_dir_file(ppp, proc_net)

allow ppp mtp:socket rw_socket_perms;

# ioctls needed for VPN.
allowxperm ppp self:udp_socket ioctl priv_sock_ioctls;
allowxperm ppp mtp:socket ioctl ppp_ioctls;

allow ppp mtp:unix_dgram_socket rw_socket_perms;
allow ppp ppp_device:chr_file rw_file_perms;
allow ppp self:capability net_admin;
allow ppp system_file:file rx_file_perms;
allow ppp vpn_data_file:dir w_dir_perms;
allow ppp vpn_data_file:file create_file_perms;
allow ppp mtp:fd use;
