From d43b0cd0fd716900a71223225fab1f084c4cc523 Mon Sep 17 00:00:00 2001 From: vimanikag Date: Fri, 29 Aug 2025 06:45:48 +0000 Subject: [PATCH 1/8] 11922 :: UdsChannelBuilder does not work with WiFi Proxy on Android. --- android/src/main/java/io/grpc/android/UdsChannelBuilder.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/android/src/main/java/io/grpc/android/UdsChannelBuilder.java b/android/src/main/java/io/grpc/android/UdsChannelBuilder.java index 7d41301704c..06d413f283f 100644 --- a/android/src/main/java/io/grpc/android/UdsChannelBuilder.java +++ b/android/src/main/java/io/grpc/android/UdsChannelBuilder.java @@ -21,6 +21,8 @@ import io.grpc.ExperimentalApi; import io.grpc.InsecureChannelCredentials; import io.grpc.ManagedChannelBuilder; +import io.grpc.internal.GrpcUtil; + import java.lang.reflect.InvocationTargetException; import javax.annotation.Nullable; import javax.net.SocketFactory; @@ -81,7 +83,8 @@ public static ManagedChannelBuilder forPath(String path, Namespace namespace) OKHTTP_CHANNEL_BUILDER_CLASS .getMethod("socketFactory", SocketFactory.class) .invoke(builder, new UdsSocketFactory(path, namespace)); - return builder; + assert builder != null; + return builder.proxyDetector(GrpcUtil.NOOP_PROXY_DETECTOR); } catch (IllegalAccessException e) { throw new RuntimeException("Failed to create OkHttpChannelBuilder", e); } catch (NoSuchMethodException e) { From 10156ed80eb49703d30f2839781b3c72f05c4f11 Mon Sep 17 00:00:00 2001 From: vimanikag Date: Fri, 29 Aug 2025 08:58:07 +0000 Subject: [PATCH 2/8] 11922 :: UdsChannelBuilder does not work with WiFi Proxy on Android. --- android/src/main/java/io/grpc/android/UdsChannelBuilder.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/android/src/main/java/io/grpc/android/UdsChannelBuilder.java b/android/src/main/java/io/grpc/android/UdsChannelBuilder.java index 06d413f283f..0f2295eb64c 100644 --- a/android/src/main/java/io/grpc/android/UdsChannelBuilder.java +++ b/android/src/main/java/io/grpc/android/UdsChannelBuilder.java @@ -22,7 +22,6 @@ import io.grpc.InsecureChannelCredentials; import io.grpc.ManagedChannelBuilder; import io.grpc.internal.GrpcUtil; - import java.lang.reflect.InvocationTargetException; import javax.annotation.Nullable; import javax.net.SocketFactory; @@ -83,7 +82,9 @@ public static ManagedChannelBuilder forPath(String path, Namespace namespace) OKHTTP_CHANNEL_BUILDER_CLASS .getMethod("socketFactory", SocketFactory.class) .invoke(builder, new UdsSocketFactory(path, namespace)); - assert builder != null; + if (builder == null) { + throw new NullPointerException("builder must not be null"); + } return builder.proxyDetector(GrpcUtil.NOOP_PROXY_DETECTOR); } catch (IllegalAccessException e) { throw new RuntimeException("Failed to create OkHttpChannelBuilder", e); From 3f7ec922db5f905cf0bdc0a664c9814755319a05 Mon Sep 17 00:00:00 2001 From: vimanikag Date: Fri, 29 Aug 2025 11:28:54 +0000 Subject: [PATCH 3/8] 11922 :: UdsChannelBuilder does not work with WiFi Proxy on Android. --- android/src/main/java/io/grpc/android/UdsChannelBuilder.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/android/src/main/java/io/grpc/android/UdsChannelBuilder.java b/android/src/main/java/io/grpc/android/UdsChannelBuilder.java index 0f2295eb64c..6f03aa0ee5e 100644 --- a/android/src/main/java/io/grpc/android/UdsChannelBuilder.java +++ b/android/src/main/java/io/grpc/android/UdsChannelBuilder.java @@ -82,9 +82,6 @@ public static ManagedChannelBuilder forPath(String path, Namespace namespace) OKHTTP_CHANNEL_BUILDER_CLASS .getMethod("socketFactory", SocketFactory.class) .invoke(builder, new UdsSocketFactory(path, namespace)); - if (builder == null) { - throw new NullPointerException("builder must not be null"); - } return builder.proxyDetector(GrpcUtil.NOOP_PROXY_DETECTOR); } catch (IllegalAccessException e) { throw new RuntimeException("Failed to create OkHttpChannelBuilder", e); From 7113a583d89705a1abbeb878cb3a6dbd2dac025c Mon Sep 17 00:00:00 2001 From: vimanikag Date: Fri, 29 Aug 2025 11:39:55 +0000 Subject: [PATCH 4/8] 11922 :: UdsChannelBuilder does not work with WiFi Proxy on Android. --- android/src/main/java/io/grpc/android/UdsChannelBuilder.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/android/src/main/java/io/grpc/android/UdsChannelBuilder.java b/android/src/main/java/io/grpc/android/UdsChannelBuilder.java index 6f03aa0ee5e..20d71418dae 100644 --- a/android/src/main/java/io/grpc/android/UdsChannelBuilder.java +++ b/android/src/main/java/io/grpc/android/UdsChannelBuilder.java @@ -82,6 +82,9 @@ public static ManagedChannelBuilder forPath(String path, Namespace namespace) OKHTTP_CHANNEL_BUILDER_CLASS .getMethod("socketFactory", SocketFactory.class) .invoke(builder, new UdsSocketFactory(path, namespace)); + if (builder == null) { + throw new NullPointerException("No builder found"); + } return builder.proxyDetector(GrpcUtil.NOOP_PROXY_DETECTOR); } catch (IllegalAccessException e) { throw new RuntimeException("Failed to create OkHttpChannelBuilder", e); From 40bf2c757c4ff8da9f29c2eb4709d74fed18453c Mon Sep 17 00:00:00 2001 From: vimanikag Date: Tue, 2 Sep 2025 06:14:31 +0000 Subject: [PATCH 5/8] 11922 :: UdsChannelBuilder does not work with WiFi Proxy on Android. --- .../src/main/java/io/grpc/android/UdsChannelBuilder.java | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/android/src/main/java/io/grpc/android/UdsChannelBuilder.java b/android/src/main/java/io/grpc/android/UdsChannelBuilder.java index 20d71418dae..e3708c657fc 100644 --- a/android/src/main/java/io/grpc/android/UdsChannelBuilder.java +++ b/android/src/main/java/io/grpc/android/UdsChannelBuilder.java @@ -82,10 +82,8 @@ public static ManagedChannelBuilder forPath(String path, Namespace namespace) OKHTTP_CHANNEL_BUILDER_CLASS .getMethod("socketFactory", SocketFactory.class) .invoke(builder, new UdsSocketFactory(path, namespace)); - if (builder == null) { - throw new NullPointerException("No builder found"); - } - return builder.proxyDetector(GrpcUtil.NOOP_PROXY_DETECTOR); + assert builder != null; + return builder.proxyDetector(GrpcUtil.NOOP_PROXY_DETECTOR); } catch (IllegalAccessException e) { throw new RuntimeException("Failed to create OkHttpChannelBuilder", e); } catch (NoSuchMethodException e) { From 6b0ef3a02f09037e42e80aace55fbc1ee4024b77 Mon Sep 17 00:00:00 2001 From: vimanikag Date: Tue, 2 Sep 2025 08:07:09 +0000 Subject: [PATCH 6/8] 11922 :: UdsChannelBuilder does not work with WiFi Proxy on Android. --- android/src/main/java/io/grpc/android/UdsChannelBuilder.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/android/src/main/java/io/grpc/android/UdsChannelBuilder.java b/android/src/main/java/io/grpc/android/UdsChannelBuilder.java index e3708c657fc..d30769cc646 100644 --- a/android/src/main/java/io/grpc/android/UdsChannelBuilder.java +++ b/android/src/main/java/io/grpc/android/UdsChannelBuilder.java @@ -64,6 +64,7 @@ private static Class findOkHttp() { * @param path unix file system path to use for Unix Domain Socket. * @param namespace the type of the namespace that the path belongs to. */ + @SuppressWarnings("NullAway") public static ManagedChannelBuilder forPath(String path, Namespace namespace) { if (OKHTTP_CHANNEL_BUILDER_CLASS == null) { throw new UnsupportedOperationException("OkHttpChannelBuilder not found on the classpath"); @@ -82,8 +83,7 @@ public static ManagedChannelBuilder forPath(String path, Namespace namespace) OKHTTP_CHANNEL_BUILDER_CLASS .getMethod("socketFactory", SocketFactory.class) .invoke(builder, new UdsSocketFactory(path, namespace)); - assert builder != null; - return builder.proxyDetector(GrpcUtil.NOOP_PROXY_DETECTOR); + return builder.proxyDetector(GrpcUtil.NOOP_PROXY_DETECTOR); } catch (IllegalAccessException e) { throw new RuntimeException("Failed to create OkHttpChannelBuilder", e); } catch (NoSuchMethodException e) { From dc90d13e669cf3729b015deff66c5864b7d759f2 Mon Sep 17 00:00:00 2001 From: vimanikag Date: Tue, 2 Sep 2025 08:38:12 +0000 Subject: [PATCH 7/8] 11922 :: UdsChannelBuilder does not work with WiFi Proxy on Android. --- android/src/main/java/io/grpc/android/UdsChannelBuilder.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/android/src/main/java/io/grpc/android/UdsChannelBuilder.java b/android/src/main/java/io/grpc/android/UdsChannelBuilder.java index d30769cc646..f1bff894a83 100644 --- a/android/src/main/java/io/grpc/android/UdsChannelBuilder.java +++ b/android/src/main/java/io/grpc/android/UdsChannelBuilder.java @@ -64,7 +64,7 @@ private static Class findOkHttp() { * @param path unix file system path to use for Unix Domain Socket. * @param namespace the type of the namespace that the path belongs to. */ - @SuppressWarnings("NullAway") + @SuppressWarnings("ConstantConditions") public static ManagedChannelBuilder forPath(String path, Namespace namespace) { if (OKHTTP_CHANNEL_BUILDER_CLASS == null) { throw new UnsupportedOperationException("OkHttpChannelBuilder not found on the classpath"); From a6bf87d0214fe9ee2e638298b6a352b5eed329cf Mon Sep 17 00:00:00 2001 From: vimanikag Date: Mon, 6 Oct 2025 07:59:13 +0000 Subject: [PATCH 8/8] 11922 :: reverted the SuppressWarnings to address review comments. --- android/src/main/java/io/grpc/android/UdsChannelBuilder.java | 1 - 1 file changed, 1 deletion(-) diff --git a/android/src/main/java/io/grpc/android/UdsChannelBuilder.java b/android/src/main/java/io/grpc/android/UdsChannelBuilder.java index f1bff894a83..6f03aa0ee5e 100644 --- a/android/src/main/java/io/grpc/android/UdsChannelBuilder.java +++ b/android/src/main/java/io/grpc/android/UdsChannelBuilder.java @@ -64,7 +64,6 @@ private static Class findOkHttp() { * @param path unix file system path to use for Unix Domain Socket. * @param namespace the type of the namespace that the path belongs to. */ - @SuppressWarnings("ConstantConditions") public static ManagedChannelBuilder forPath(String path, Namespace namespace) { if (OKHTTP_CHANNEL_BUILDER_CLASS == null) { throw new UnsupportedOperationException("OkHttpChannelBuilder not found on the classpath");