diff options
| -rw-r--r-- | tools/aconfig/aconfig_flags/flags.aconfig | 8 | ||||
| -rw-r--r-- | tools/aconfig/aconfig_flags/src/lib.rs | 11 | ||||
| -rw-r--r-- | tools/aconfig/aflags/src/aconfig_storage_source.rs | 7 |
3 files changed, 25 insertions, 1 deletions
diff --git a/tools/aconfig/aconfig_flags/flags.aconfig b/tools/aconfig/aconfig_flags/flags.aconfig index 0a004ca4e1..b66d282f0e 100644 --- a/tools/aconfig/aconfig_flags/flags.aconfig +++ b/tools/aconfig/aconfig_flags/flags.aconfig @@ -14,3 +14,11 @@ flag { bug: "369808805" description: "When enabled, launch aconfigd from config infra module." } + +flag { + name: "enable_system_aconfigd_rust" + namespace: "core_experiments_team_internal" + bug: "378079539" + description: "When enabled, the aconfigd cc_binary target becomes a no-op, and the rust_binary aconfigd-system target starts up." + is_fixed_read_only: true +} diff --git a/tools/aconfig/aconfig_flags/src/lib.rs b/tools/aconfig/aconfig_flags/src/lib.rs index 2e891273ed..b413c62b12 100644 --- a/tools/aconfig/aconfig_flags/src/lib.rs +++ b/tools/aconfig/aconfig_flags/src/lib.rs @@ -39,6 +39,11 @@ pub mod auto_generated { pub fn enable_aconfigd_from_mainline() -> bool { aconfig_flags_rust::enable_only_new_storage() } + + /// Returns the value for the enable_system_aconfigd_rust flag. + pub fn enable_system_aconfigd_rust() -> bool { + aconfig_flags_rust::enable_system_aconfigd_rust() + } } /// Module used when building with cargo @@ -55,4 +60,10 @@ pub mod auto_generated { // Used only to enable typechecking and testing with cargo true } + + /// Returns a placeholder value for the enable_system_aconfigd_rust flag. + pub fn enable_system_aconfigd_rust() -> bool { + // Used only to enable typechecking and testing with cargo + true + } } diff --git a/tools/aconfig/aflags/src/aconfig_storage_source.rs b/tools/aconfig/aflags/src/aconfig_storage_source.rs index 68edf7d3ac..3f593fe77e 100644 --- a/tools/aconfig/aflags/src/aconfig_storage_source.rs +++ b/tools/aconfig/aflags/src/aconfig_storage_source.rs @@ -93,7 +93,12 @@ fn read_from_socket() -> Result<Vec<ProtoFlagQueryReturnMessage>> { special_fields: SpecialFields::new(), }; - let mut socket = UnixStream::connect("/dev/socket/aconfigd")?; + let socket_name = if aconfig_flags::auto_generated::enable_system_aconfigd_rust() { + "/dev/socket/aconfigd_system" + } else { + "/dev/socket/aconfigd" + }; + let mut socket = UnixStream::connect(socket_name)?; let message_buffer = messages.write_to_bytes()?; let mut message_length_buffer: [u8; 4] = [0; 4]; |