blob: 3e7aa40fd84b64c01cf275f6c228c3e47497b7b9 [file] [log] [blame]
Tom Cherryc149ef72015-08-14 13:06:31 -07001service netd /system/bin/netd
2 class main
Jeff Vander Stoep85eb2112019-12-12 10:14:18 +01003 capabilities CHOWN DAC_OVERRIDE DAC_READ_SEARCH FOWNER IPC_LOCK KILL NET_ADMIN NET_BIND_SERVICE NET_RAW SETUID SETGID
Maciej Żenczykowski5cf00db2021-10-01 01:35:11 -07004 group root net_admin
Tom Cherryc149ef72015-08-14 13:06:31 -07005 socket dnsproxyd stream 0660 root inet
6 socket mdns stream 0660 root system
7 socket fwmarkd stream 0660 root inet
Nathan Harold601c3a02018-04-04 13:15:31 -07008 onrestart restart zygote
9 onrestart restart zygote_secondary
Lorenzo Colitti9ec46b32018-12-21 15:02:03 +090010 # b/121354779: netd itself is not updatable, but on startup it dlopen()s the resolver library
11 # from the DNS resolver APEX. Mark it as updatable so init won't start it until all APEX
12 # packages are ready.
13 updatable
Hungming Chen99aeade2022-01-16 17:25:15 +080014
15# Moved from external/android-clat/vendor-464xlat.rc. Since
16# clatd is modularized and shipped in apex, migrate the
17# clat vendor property to netd.
18#
19# Certain vendors disable 464xlat by setting a vendor property.
20# The connectivity code in the Tethering APEX needs to disable
21# 464xlat when the property is set, but it is only allowed to
22# access non-vendor system properties. So copy the property to
23# a property available to system APIs in android.sysprop.
24#
25# Arguably this script should live close to the code that uses
26# it, but scrips in APEXes are not allowed to use "on property".
27# So put it here close to clatd, which is at least related to
28# 464xlat.
29on property:persist.vendor.net.doxlat=true
30 setprop net.464xlat.cellular.enabled true
31
32on property:persist.vendor.net.doxlat=false
33 setprop net.464xlat.cellular.enabled false